Last week I was in Baltimore for the inaugural edition of Surge, a conference organized by OmniTI. Ever since I signed up for Surge2010, I sow this as a conference of Velocity quality, only without the frontend track and focusing mostly on backend topics (what I was interested anyway), and in a much more distant location than Santa Clara ;) . This sounded interesting enough to make me want to go, as the first conference I will go in 2010 outside Silicon Valley. Also I could not pass the opportunity to hang out with my friend Andy and sync’up with what we’ve been up to during all this time.
The first day started with John Allspaw’s keynote (I’m a big fan of John’s) where he made a parallel between systems engineering and web operations. Next we had a second keynote, and I had the chance to see Bryan Cantrill (VP of Engineering at Joyent) for the first time speaking, and I was really impressed by his high energy. I don’t think I’ve seen any other speaker radiating so much energy, and it was hard not to follow him on his presentation about DIRT = “data-intensive real-time”. Still, I would say that his slides were way too overloaded and hard to read, but if you are such an energetic speaker this doesn’t matter much. Next, we attended Theo Schlossnagle’s talk “Scalable Design Patterns”; I’m a big fan of Theo’s, but given the fact that OmniTI was hosting the event (his company) honestly, I was expecting more than the regular ‘velocity’ talk he gives. But in anycase, it was a good talk, and Andy liked his style a lot (he never sow him talk before).
After seeing two db scalability talks: “The most common MySQL scalability mistakes, and how to avoid them” and “Database Scalability Patterns”, I sow the most interesting talk of the day by Artur Bergman: “Scaling and Loadbalancing Wikia Across The World”. Takeaways from this talk were that you can use google analytics for something else than the regular stuff; I am already using it in some places to track 404s and other errors, but I never thought you can use it with some simple js to track the load time of the page. That was quite cool. Wikia’s central piece of software (besides mediawiki of course) is varnish. They use varnish for some of the strangest possible things, and this opened my eyes that varnish can be used for something else than what I’ve used it on some projects (plain reverse proxy): like cookie manipulations, geoip, custom C code, etc. If you have varnish questions then Artur is your man as they seem to have abused varnish in all the possible ways. Andy was in Tom Cook’s talk (Facebook) and was quite impressed, but since I sow it at Velocity 2010 I anticipated it will be the same. Strange Twitter was not here… hmm…
Another interesting talk was Rasmus Lerdorf’s “PHP Performance Checklist”. This was basically a free course for how to speed up Drupal, though I’m sure there were no Drupal developers in the room ;) . Rasmus demonstrated that PHP is quite fast and usually the code people complain is slow, is the problem. He also had many examples and comparisons for various projects like drupal, wordpress, etc. running with facebook’s hiphop. My suggestion to Aquia/Drupal devs: listen to Rasmus talk and get some awesome free advice on how to make your software faster. ;).
Finally the day closed with the SQL vs NoSQL panel; nothing spectacular and most people agreed that NoSQL is a good solution for various problems, but will not replace SQL; people will use a combination of both based on their own needs. Seemed that everyone was looking forward to the afterparty and the drinks ;).
The second day started slowly, and we almost lost the first round of talks (after a long night at the Irish pub across the corner); it was a tough decision and I went to Benjamin Black talk where he presented some of the things he will be offering with his startup fastip. Even if he didn’t give much details this sounded like a very interesting product, that will offer ip flow based exports and analysis.
Next, I sow John Allspaw’s talk “Go or No-Go”; very interesting, explaining how Etsy is doing new features deploys, and how they have these meetings. I really appreciated the fact that John has presented new things and didn’t just reuse his Velocity talk. I was really looking forward to Christopher Brown talk “Design for Scale - Patterns, Anti-Patterns, Successes and Failures” to see what challenges they had building the Opscode Platform. Unfortunately, he focused mostly on his EC2 experience and didn’t even touched chef or the opscode platform. Too bad, as there were many chef users in the room that would have liked that.
At this point the inevitable happened and I had to deal with an emergency and could not follow up much of Tom Daly talk about “Anycast Routing”. By the time I finished, the break was there and actually we had to leave to the airport to catch our planes back home. Too bad I could not see Joe Williams talk “Availability, the Cloud and Everything” but I will definitely check it out when the video will be posted online.
Jason assured me that all the talks were recorded, and will be posted with the slides online (probably in 2-3 weeks). I’m really looking forward to see some of the talks I could not attend because I was in the other room. This should be also very interesting for anyone that was not able to make it this year, but wants to see the talks and have an idea on what it was like to be there. Highly recommended.