News

Make it Happen – With Easter Eggs

Ever since the dawn of humanity, we’ve had a fascination with discovery. For Neanderthals, it was fire, for people of the Renaissance it was electricity, and now it’s funny cat gifs and Easter eggs hidden deep within videos. 

Despite clocking in at just 1 minute and 18 seconds, the “Make it happen. With code. | JetBrains IDEs” video contains ten developer-related Easter eggs. Did you find them all?

We didn’t make it easy! We wanted to really maximize the payoff of finding all ten. And for some, there was literally a payoff: the first few people to find all Easter eggs were treated to a one-year subscription to a JetBrains All Products Pack.

But now that all prizes have been claimed, we’ll put you out of your misery and reveal all ten Easter eggs in the video.

Easter egg #1: Brainfuck code

At the 9-second mark, eagle-eyed viewers will have caught a glimpse of code, written in the mythical Brainfuck language. It’s not often that this code makes an appearance in the wild, yet it can technically be used to write any program with just eight simple commands… It would probably be interesting to know what console output is written by the program in this scene. We’ll leave that up to you – you can run the following code snippet using your Brainfuck interpreter of choice:

+++++++++[>++++++++>+++++++++++>+++++++++++++>++++>+++++++++<<<<<-]>.>++.>++++.>----.>+.<<<.-..+++++.>-----.

Brainfuck code has been around since 1993 and is known for its extreme minimalism – but definitely not for its simplicity. Commands need to be broken down into tiny steps, and there is so little abstraction that things get very long and complicated very quickly.

Easter egg #2: hello world

As a staple part of any developer’s daily routine, coffee was bound to appear in this video. And if you thought this “cup of Joe” might be hiding an Easter egg, you were right!… sort of. The coffee itself isn’t where you should be looking – the Easter egg is the “hello, world” message displayed on the machine.

Developers all over the world can attest to the significance of these two words, as they hold a very special place in our hearts. Why? “hello, world” is usually the very first program anyone will develop with a language. They are a great first step in helping to understand the syntax of the language you are about to learn.

Easter egg #3: Kodee

If you know, you know! But if you don’t, let me explain! Kodee is the official mascot of the Kotlin language. Kotlin is a cross-platform, statically typed, general-purpose, high-level programming language with type inference. And to top it all off – Kotlin was designed and developed by JetBrains.

Including a shot of this cheeky little rascal was our way of giving a shout-out to the millions of developers out there who use Kotlin. If you want to get up to speed on Kotlin and Kodee, the recent KotlinConf featured a boatload of announcements and insights.

Easter egg #4: 418 I’m a teapot cup

Not all developers drink coffee. In fact, some prefer a nice cup of tea. Some hardcore developers managed to catch this reference to an old April Fools’ joke: the Hyper Text Coffee Pot Control Protocol

The HTTP 418 I'm a teapot client error response code indicates that the server refuses to brew coffee because it is, permanently, a teapot. Some websites use this response for requests they do not wish to handle, such as automated queries.

Easter egg #5: No tabs beyond this point

The Easter eggs could be hidden in the subtlest of places, where, if you didn’t know the reference, you could have easily missed them. However, the Tabs vs. Spaces debate is one many developers will be familiar with.

Consistent style and formatting in a codebase is important to help improve readability and maintainability – indentation being one of them. There are pros and cons to each character for indentation. And although I personally like the idea of using tabs for indentation because they help with accessibility, it’s really up to each development team to pick their preferred style. Since the scene is set in Space, we thought to include a reference to Tabs as an Easter egg here.

Easter egg #6: It works on my machine

Being a developer can be hard, and making things work 100% of the time, can be harder. 

“It works on my machine ¯\_(ツ)_/¯” is a cliché response when things go wrong… It’s up there with “Try turning it off and on again,” “It’s never done that before,” and the classic “It worked yesterday.” The environments where your application is used can greatly vary, so usually “it works on my machine” is the beginning of trying to figure out why things work on one machine, and not the other. 

This is a shout-out to all you developers (and testers, and QAs) out there who are putting in maximum effort to make sure that the software runs on all machines!

Easter egg #7: Kotlin garland

Whenever we have a chance to celebrate Kotlin, you know we’re going to take it! This is another Easter egg that’s an easy find if you know what to look for – but borderline impossible if you don’t. What do you mean you don’t have a garland of the language you are coding with hanging in your office?

It’s Kotlin again!

Easter egg #8: LEET

You have to be pretty “leet” yourself to catch the double whammy in this scene. But there is definitely something off with that clock.

Leet – or as we elite developers call it, “1337” – lets us circumvent filters and say what we really want to say. 7h15 15 35p3c14lly u53ful f0r d3v3l0p3r5 wh0 n33d 70 74lk 70 34ch 07h3r unf1l73r3d 4nd h0n357ly.

Easter egg #9: Rubber Duck debugging

What the duck? Yes, the duck! This was another Easter egg reference to the bizarre (yet oddly brilliant) practice of asking an inanimate object for help. Because, you know, asking yourself questions would just be weird

Rubber duck debugging is the act of working through problems by asking different questions to come up with ideas about what has gone wrong. The rubber duck is symbolic of having an inanimate object on your desk as something to converse with… so it is no longer weird to talk to yourself as you are actually talking to a rubber duck.

Easter egg #10: JetBrains Amsterdam office coordinates

As we said, we didn’t want to make it too easy for people! The very last scene shows one final piece of code that defines the get_office_coords function. The code snippet contains coordinates, and anyone curious enough to look them up would find that they point to the JetBrains office in Amsterdam.

This time, the Easter egg is us. We have JetBrains offices all over the world – in Belgrade, Berlin, Boston, Foster City, Limassol, Marlton, Munich, Paphos, Prague, Shanghai, Warsaw, and Yerevan – for our 2.2k employees, who work together to develop the very best tools to develop with. This is our “Drive to Develop”, so you can Make it happen. With code.

Bonus Easter egg: It’s not a bug, it’s a feature!

You’ll notice an extra bonus Easter egg hidden on the mug near the end. When Grace Hopper first discovered an actual bug in the Mark II computer, leading to an operating issue, the word “bug” was introduced to mean an issue in a computer program. A bug implies there’s undesirable behavior in software, but is every bug really a bug? Some functionality may be considered a bug by some, but not others. For cases where the interpretation is subjective, and a bug may be an accidental feature, the phrase “It’s not a bug, it’s a feature” was introduced.

That is all for today! We hope you’ve enjoyed this blog post and it has helped you find all the subtle nods we’ve given to developers. You really are the reason we do what we do and try hard to make our tools provide value and an enjoyable experience. Without you, there is no JetBrains.

Happy developing!

image description