Some recent history: the original plan for my summer was to go work for Google, however they were unable to find a place for me and have instead now offered me a fall internship. Prior to securing the fall internship I was concerned that after all the effort expended with interviews for both Google and Microsoft Research, that I was going to be left with nothing. At the last minute I was made aware of some potential funding to visit a foreign academic institution of my choice, so I applied for this with the intention of travelling to Carnegie Mellon University to collaborate with Jonathan Aldrich and his PhD students. I succeeded in getting this funding, much to my delight, and then soon after was notified by Google that they had found a placement for me for the fall. All of a sudden, instead of one awesome three month trip to the USA, I had two placements back to back totalling over 7 months of foreign travel. Logistical nightmares aside, it was an amazing opportunity.
Since I now knew I was going to be in Pittsburgh for the summer, I had heard about Scalathon and decided to go, despite still being a relative Scala novice, just to see what the buzz was like and hopefully meet some cool people. Up until this point I had been a lurker in the community. I've been involved with a number of open source communities in the past, enough to know that often they are very ego driven and unless you have the energy and patience to deal with this, you're not going to get very far. So I had watched the Scala community from afar, and had of course heard the rumours circulating that the culture was somewhat toxic, with strong personalities and people who like to wield category theory and advanced functional programming concepts in an effort to educate you, the great unwashed, whether you wanted to learn or not.
To my delight, I discovered that its really nothing like that. Sure, there are some on the mailing lists who still seem to revel in intellectual jousting matches. However, all the people I have met face to face in the North East are a very likeable bunch of incredibly smart, motivated people. It was humbling to meet people like Daniel Spiewak - during Scalathon I was playing with parser combinators to create a better parser for links in Scaladoc. Being incredibly new both to the concept and the specifics in Scala, I had a quick Google and found a blog post on the topic. Pedro Furlanetto, who was sitting next to me as I was doing this, then said "you realise that page you're reading was written by the guy sitting across the table from you?" (referring to Daniel). That was a somewhat surreal moment. What was even better, as I got deeper into the topic and had a question which couldn't be answered readily by Googling, I asked Daniel for a little bit of help and he readily obliged.
Others were also happy to help:
- Daniel Sobral, who apparently has more points on Stack Overflow than any other Scala community member (mostly through answering a ridiculous amount of questions on Scala with very detailed, thorough responses)
- Mark Harrah, of sbt fame, was happy to help Pedro and I with a class loading issue when trying to run some of the scaladoc code from within an SBT launched REPL.
- Paul Phillips, scalac Rockstar, humoured me by answering a rather trivial git related question that I immediately regretted asking as I felt like I was completely wasting his time.
- Josh Suereth, author of Scala in Depth, was more than happy to answer dumb questions about Scala style. He also lives near Pittsburgh, and invited me in to visit the office before he left for Typesafe.
At this point, I think I've made my decision about which language I'd like to use for the next decade. I might as well try to help make it the best, most accessible language it can be.