On Friday, September 21st, I had the pleasure of attending DevDay 2013 conference. The experience was great, because the conference was free, the food was tasty, and the presenters were top-notch (plus, you could catch them during the breaks and ask further questions)!
There were two tracks everyone could attend. I decided to stick to the "green track" and I don't regret it. I'd like to share my feelings about each of the presentations. I'm not gonna write exactly what the presentation was about though, because you can find this on the conference page.
Jon Skeet: Back to basics: the mess we've made of our fundamental data types
Jon is a great showman - that's granted. Using his puppet he called "Tony the Pony", he went on to discuss the issues people are having with the fundamental data types: numbers, text and date/time and he did it with style! There were a lot of jokes and funny anecdotes along the way. I especially enjoyed the part about date and time, when Jon gave a flood of examples why date and time is too complex for ordinary people, like when which country migrated from julian calendar to gregorian calendar (and what their migration strategies were), about timezones with the same abbreviations, places on earth where there's no midnight etc. Half through his talk I was already fully convinced I won't be able to understand this topic ever.
Thankfully, Jon is also the author of an open source library called Joda Time (Java) / Noda time (.NET) that comes to the rescue. Being a Stack Overflow Chuck Norris (by the way, I heard him saying during the conference: "It's hard living up to being Chuck Norris" :-)), it's no wonder that in Joda Time, they have tests for many issues people have and report on Stack Overflow with the built-in date-time API.
Patrick Kua: Implementing continuous delivery
I really liked how Patrick presented the topic of Continuous Delivery. A very positive guy, eager to discuss and not dogmatic at all. The presentation covered a lot of patterns for continuous delivery on many levels. Some of those can be found at Slideshare. After the talk I got to question Patrick whether inside-out or outside-in development works better with continuous delivery, and he replied that both can be used successfully - it all depends on what's easier at a given moment for the development team.
Andreas Håkansson: Guerilla Framework Design
A very interesting session where Andreas showed us, using simple examples, how C# can be pushed to the limits (he even called it "language abuse" :-)) to provide better and more expressive APIs, and how he put it to use during implementation of Nancy framework. I think the important distinction he made was that the code you're consuming yourself is very different than the code you write to be consumed by others (i.e. a framework). There were some really neat tricks shown, like using dynamics instead of dictionaries to attain better expressiveness, or patterns and gotchas for assembly scanning for extensions. He also showed how a framework can expose its IoC container to enable replacing its core components. What I liked was his stress on testability and the whole idea of using language features in a crazy way felt a lot like Ruby on Rails.
Hadi Hariri: moving the web to the client
The presentation was mainly about Angular.js, but there were also some nice comments about how server-side application should be used as an API or how web development came astray and how web developers tried to abstract the wrong things, like HTTP protocol (I particularly enjoyed the example Hadi gave about a question he got about whether to return status "200" with error message in case of error - clearly, the person asking the question forgot that HTTP has return codes for errors). Personally, I wasn't aware that client-side application development in JavaScript has moved this far, thanks to libraries such as Angular.js and HTML5. Another "taste" was a presentation of server side code written in Kotlin language and Wasabi framework.
Itamar Syn-Hershko: Full-text search with Lucene and neat things you can do with it
I knew almost nothing about full-text search, Lucene and Elastic Search, so everything in this presentation was new to me. Due to this, I had a bit of a hard time following the code examples, especially that the session was quite late during the day. Anyway, I have to say it was a valuable session, which I couldn't fully digest because of my lack of knowledge on the topic. Still, I enjoyed it!
Marco Cecconi: The Architecture of StackOverflow
The session on performance considerations and tweaks of Stack Overflow started slowly. I had the impression that Marco was suffering from a jet lag, because he felt quite sleepy at the beginning. The funny thing was that the more we were moving into crazy-geeky stuff, the more excited Marco was getting and the presentation ended on a high note with a long session of questions and answers. We could learn what technologies does Stack Overflow work with, what's their open source policy, how they make money, what tweaks do they use for performance (like real time monitoring, hand-written intermediate language code, statics all around etc.) and their approach to testing. A very interesting case study indeed.
Rob Ashton: The software journeyman's guide to being homeless and jobless
Rob is British, so I wasn't always able to understand him well (which is really funny, because we're always told we learn English at school, but it turns to be more of an American-English when it comes to accent). Still, the presentation about his year-long experiment was an exciting and energizing one. Gales of laughter poured from the audience as Rob was showing and commenting his experiences, and he won the audience completely by showing us a picture of him coding Clojure during Eurovision song contest :-). The presentation was kind of motivational one and I think it succeeded in encouraging us to make our jobs a happy experience.
Then came a closing speech, a photo of all the speakers and an after-party, which I actually didn't attend, since I was tired already.
Anyway, the experience was absolutely brilliant and I am looking forward to attending the conference in the future!