Today was the first day of the No Fluff Just Stuff conference here in the Twin Cities. This is my second year attending and I can’t say enough good things about this conference. It’s a great format with excellent presenters and very high quality topics. I was able to walk right up to each of the presenters after their talks and ask them questions; try that at almost any other conference and let me know how that works for you. The only real bad thing about No Fluff is that you almost always have to make a tough call about which session to go to for a given time.
For the first session I decided on Groovy for Java Programmers by Venkat Subramaniam even though I figured it would mostly be review. Venkat is a really fun presenter and he did a lot of live coding during this session which made it very engaging. A lot of the Groovy topics that he discussed were indeed things I knew about, but it was still interesting because Venkat is so excitable and funny. I also did get exposed to Categories, which I hadn’t seen before and I need to look into further. Right now, I’m not fully understanding when or if you’d use these over ExpandoMetaClass.
Up next was Domain Driven Design also by Venkat. Even though it’s kind of a repackaging of basic OO Design, DDD seems interesting and helpful, even if only because it helps to remind us of what we should be doing anyway. Unfortunately, Venkat had to skim over a lot of the last parts of his presentation, and it seemed like the end was the meatiest part. I was happy to see the stressing of DDD not meaning Big Design Up Front and the focus on largely disposable UML diagramming. This may have been Venkat’s personal views bleeding through, but it resonated with my experiences. I’m still trying to fully digest this presentation and hopefully will have more to say later.
The final session of the day for me was Building DSLs in Java and Groovy by Neal Ford. I thoroughly enjoyed this presentation. Neal gave the keynote last year about Domain Specific Languages and it seemed cool, if a little out there, but this year they seem to be actually gaining some traction. I’ve been reading up on this topic lately, so it was fun to see Neal develop essentially the same DSL in Java, Groovy, and finally Ruby. There’s definitely something to the idea of programming in a Humane Interface style where your code is instantly understandable and readable. Neal was big on the idea of BA’s being able to verify your code because it was written this way, but I actually think the advantages to the developer are just as big, because as developers we’re constantly having to reacquaint ourselves with code we wrote yesterday, last week, and even last year and anything that makes that code more readable and understandable will increase your efficiency.
Wow, just reading that makes me tired, and today was essentially a half-day, but I can’t wait to start again tomorrow. I’ll let you know how it goes.