Central Ohio Software Symposium 2011 Wrapup (No Fluff, Just Stuff)
I attended the Central Ohio Software Symposium in Columbus, Ohio this past weekend. What follows are my reviews of the event overall and the individual sessions I attended.
Most conferences suck, frankly. They're usually put on by a single company, and are a combination of too much marketing pitch, too little content & reality. As it's name would suggest, a No Fluff/Just Stuff conference is none of that. No vendors. No showy crap. Just industry-leading experts presenting what they're doing and how they're doing it.
This conference was at the Embassy Suites Airport. I found the rooms and venue nice (It's a Hilton Hotel!), though the conference rooms themselves were too cramped for the # of attendees. This conference was sold-out, and it showed.
Executable Specifications: Automating Your Requirements Document with Geb and Spock by Matt Stine
This session was a passionate examination of how specs/requirements/stories get lost in translation to code, and how you might use a Behavior Driven Development Framework (Spock), combined with Geb (pronounced "Jeb") to basically write your specs VIA the tests. This removes the impedence mismatch between natural languages and computer code, as the customer can see that you do/do not have tests to verify his requirements.
I liked Matt's style and delivery. I think we're working towards integrating a BDD framework now thanks to this talk and others at the conference about Spock.
Resource-Oriented Architecture: REST II by Brian Sletten
Let's get this out of the way. Brian and Kevin Smith were separated at birth. This session was a meaty dive into the nuances below the REST movement: How to do security, how to allow flexibility and cache performance. Basically, how to allow the Internet's architecture to work with you, rather than forcing it to be something it's not. Good talk; obviously transitional between the intro and the later talks on Resource-orientation that I'd miss.
NoSQL w/MongoDB and CouchDB by Peter Bell
We have new "Not Only SQL" databases, and Peter took us through a high-level view of MongoDB and CouchDB. Loved Peter's accent, as well as his delivery. I didn't like this session much, as I'd expected it to be a live-example session. It was not. It was lecture and whiteboarding (?!) in a tiny packed room. Also, the treatment was uneven (We got a blurb on Couch, and then an hour or so on Mongo), as Mongo'd attracted Peter's attention and he's using it in a startup currently. Peter did set expectations at the start of the talk about that, so I don't hold it against him.
Scala for the Intrigued by Venkat Subramaniam
This was probably my favorite session. Venkat wrote the book on Scala. His presentation had no pre-canned slides. It was an hour and a half of him doing live coding and evaluation, while fielding questions from the attendees. Realistically, it was like getting the first 90 minutes of a 3 day training on Scala, and it was wonderful. Pumped to do this language in "7 Languages in 7 Weeks" soon.
The Busy Java Developer's Guide to Akka by Ted Neward
Let's get this out of the way: Ted Neward is an alpha geek asshole. He's also captivating, engaging, and challenging. This was the first time I got to hear the man speak, on a topic near and dear to me --> Making parallelism and concurrency usable by the average developer. The Akka framework makes that possible from Java (or Scala), and shows promise to be at least one answer (if not The Answer) to our multicore scaling issues in the years ahead. Enjoyed this talk, and I'm looking for way to prototype something with Akka for our big iron server projects.
Git Going with Distributed Version Control by Matthew McCullough
I lied. This was my favorite session. We had geunine "ooh" and "ahh" moments, and Matthew's style was the anti-Ted: He puts himself in the background (while remaining confident and assertive); He manages his slides and time well; and he leaves you feeling like you're a better person/developer after the talk. Great, great stuff.
Busy Java Developer's Guide to Android: Basics by Ted Neward
Ted again--Funny, loose, and uneven (while realistic!). I got enough out of this to want to go develop on Android, and he gave us some "inside baseball" on it all to keep things moving.
How to Select and Adopt a Technology by Peter Bell
Peter again. This was a good "business to technologist" overview of how to evaluate tech and get it adopted in your context, without any BS or "win-lose" thinking. I think, long term, this preso will be the one most useful back at LXK, as it formalizes the interactions and players required to move something from a geeky new idea to something that makes you money.
Hello Groovy by Dave Klein
Dave is a gentle soul, and I found his introductory treatment of Groovy engaging. His presentation style is SO gentle, however, that it was sometimes difficult to get excited about what was (really) some cool stuff going on up on the screen. His preso was a good mix of live coding (Venkat) and Pre-canned examples (Matt).
Pragmatic Architecture by Ted Neward
I'd pretty-much had enough Ted by this point, and this is the sorest topic within my soul: Architecture. WE NEED ARCHITECTURE. However, software architects have no common notation or language for the things we are building, and most developers reject architects as "people who can no longer code who get paid more than I do to tell me to do the wrong thing." Ted drove home that point over. And over. And OVER AGAIN.
Yeah, I get it. My issue with it is, he drove it home for an hour and 15 minutes, leaving only 15 minutes to talk about the "Periodic table of architecture elements." I felt cheated --> I needed a non-BS treatment of those topics and he "[left] those to the reader." To me, that was crap.
- Base Java may be in its dotage (Java 7? Really?), but the JVM ecosystem is vibrant and growing, especially in the Grails/Groovy space. Also, the new Actor-model (Scala/Akka) and STM (Clojure) models show promise for solving the shared mutable state concurrency issues that we'll face when 8 core processors become 64 to 256 cores
- Columbus is a heck of a nice place to live ;-)
- Git or Mercurial is where every dev shop needs to move. It's (potentially) a bigger leap for productivity than the change from (PVCS/CVS/ClearCase) to SVN.
- They need a bigger venue. The 2nd-tier conference rooms were too darn small.
- Having the realtime tweets during sessions via the #nfjs hashtag was great, if only for the @TedNeward quotes.
Overall, I really enjoyed the conference, and the "meat" available was amazing. Looking forward to going again.