A few months ago, Bill Wagner (my business partner at SRT Solutions) and I were talking about how companies were really pulling together in this economy and doing what they could to help others. I was really impressed with the brillant marketing of Atlassian when they rolled out several of their enterprise tools for $5 for 5 days for 5 users. Nice. And so we started to think about what we could do, how we could contribute. The result of that was the SRT Software Stimulus Lab, which we held last Monday at Automation Alley in Troy. We held a low-cost, no-frills event. We told people to bring bag lunches and their own coffee. We made it cheap for employed developers ($50 early bird) and free for those who are unemployed. And it was … fun, interesting, and productive. During the registration process, we asked registrants what they wanted to learn and we found that C#, Silverlight, WPF, and Scala were high on the list, as were version control, unit testing, and functional testing.
We started out the day talking one of the most fundamental and, in my opinon, essential tools: version control. While most people had used version control in one form or another, many of them had only used tools like Visual Source Safe (which, you will likely recall mainly led to annoyance with your coworkers for leaving files locked). We talked about tools like subversion as today's tools and looked forward a bit toward distributed version control, like bazaar and mercurial. We set up a repository for the attendees to access and made sure that everyone was able to do so.
After that, we broke into mainly 2 groups. One attendee, who I know from the Detroit Java User Group, came to learn more about Scala. He's a Java developer with a significant amount of experience in Groovy. I enjoyed my time with him, ane he seemed to have fun too. I don't think that I sold him on Scala (that wasn't my objective), but I believe he left knowing enough about it to decide if he wants to pursue it further or to determine if he wants to stick with Groovy. We compared and contrasted some features of the languages, and it was fun for both of us (I think!). People from the other group filtered in and out. One guy teaches C++ on the side, and he was interested, Another was a PHP developer who was popping in periodically. We spent some time looking at unit testing in Scala as well as at a lot of the language features, and the preview of what's to come. Fun stuff!
The other group worked mainly on WPF and Silverlight. The attendees seemed to really appreciate Silverlight (as well as the demos and tutorials that they worked on with the SRT staff). The attendees also wanted to delve into multithreaded programming a bit, so the SRT staff came up with some demos and an impromptu discussion on that topic.
All in all, the day was what a Jam session should be: a group of people self-organizing into groups to work on things that they enjoy, free to move on if they changed their minds. I really enjoyed spending time with the attendees and I think that we'll probably do the Lab again sometime. I know that I won't always get to do Scala. And that's just fine. I wouldn't have minded learning more about Silverlight myself!