Down the Rabbit Hole – Google’s Secret Programming Puzzles

During our first week at Makers Academy, our tutor circulated this link from Quora, which served to encourage us as (very) Junior Developers to seek out solutions to our own problems using google, Stack Overflow and the many other resources that the internet provides us, just as it would be acceptable for any Senior Developer to do.

I didn’t need much encouragement; in the face of so many new concepts I had been frenziedly entering search terms into google in pursuit of answers. This was most evident in the dark hours of our week two pairing challenge (creating a program that replicated the behaviour of the Oyster Card), where having spent days building our framework we were then told to deconstruct it and build it again by extracting a new class from our existing code base. What ensued were hours of failing tests, refactoring code, and (in my case) frantic googling.

It was during this process that I encountered something quite strange. I was searching for more resources to clarify dependency injection that I noticed a banner appear at the top of my screen. It said: “You’re speaking our language. Up for a challenge?”. I thought nothing more of it until I (once again) searched for the same term and the banner reappeared. My pairing partner was searching for the same term and he had nothing similar on his page. At this point curiosity got the better of me, and I clicked on the button that said “I want to play”, at which point I was taken to a screen that replicated the command line and asked me if I wanted to log in. I clicked ‘log in’ and then, worried that I had just exposed myself and Makers to an onslaught of internet spam, promptly exited the page.

Intrigued, we turned to google for (yet more) answers and found that this was part of Google’s foobar, a ‘secret’ web tool being used by google to invite people to complete programming challenges, with the invite itself being triggered by certain search terms. There are stories (there are many articles, but they all seem to relate to the same one success story) of people being recruited to work for Google via this very process. However, for ma
ny, it seems that the foobar puzzles are just another fun coding challenge, with individuals sharing their solutions and approaches over GitHub and StackOverflow.

Never one to shy away from a challenge, I proceeded to make my way through the challenges, for which I will show my solutions in future posts.