Lunch & Learn

11 Mar 2014

by Dave Astels

For sometime now, we’ve been holding a weekly educational session over lunch. Our goal is to expose the team to languages, techniques, and ideas that are new to many of them; to expand how we think about programming.

I’ve run or been part of this sort of thing at various places I’ve worked. Sometimes it was a Patterns Study Group or a series of speakers (for example the GeekFest that was at Obtiva and now Groupon). While I lived in Mountain View I took part in the renowned Silicon Valley Patterns Group.

At Steelseries we’re exploring programming languages. We started with Lisp (Scheme to be precise) by working through part of SICP. Lisp is one of those languages that was so well designed that it remains relevant (see Clojure). We’re now looking at Smalltalk (still my favorite language). As I write this, I’m prepping for our first Smalltalk session. We’ll be using Pharo as the basis of our exploration. The team is looking forward to this as few have any experience with Smalltalk. I’m looking forward to the opportunity to dabble in the language I love, and to share it with a group of passionate, curious programmers.

We have tentative plans to follow Smalltalk with Objective-C (primarily in the context of OSX and iOS), and are looking at Haskel and/or Erlang for the future.

Some of these study groups get very successfull. For example, the GeekFest at Obtiva was internal (plus friends that were visiting town). When they were acquired by Groupon they had the facilities and resources to open the doors and take it public. If you work in Chicago and can make it, I encourage you to drop in.

I encourage you to do something similar at your company. Book a conference room, get some pizza, get the devs together and learn something. If you do, avoid the temptation (and sometimes management pressure) to make it work related. Use the opportunity to stretch how your team thinks about code and coding, not just learn the latest framework in your tech stack. The result will be better programmers that have new ways to think about what they do.