How to become a better developer: highlights from the Polyglot Unconference

vancouver polyglot software conference 2By Matt Delaney, DevOp, Edmonton

Last week I attended the 2013 Vancouver Polyglot Unconference. Having never been to an '€œunconference'€ before, I was a little uncertain what to expect. A traditional conference tends to have talks organized in advance by a committee, whereas an unconference does not have a predetermined set of talks. It is up to the participants to decide what will be discussed on the day.

The process began at Polyglot with an open invitation for anyone who wanted to either give a talk, or even just lead a discussion on a particular topic, to write their idea on a post-it-note. Each person then had 20 seconds to pitch their idea to participants. After all the topics had been pitched, the post-it-notes were attached to a window and participants checked off the topics they found most interesting. Organizers then scheduled the topics such that the most popular were not scheduled at the same time (and were given appropriately sized rooms).

The session I found most interesting was a discussion about '€œbecoming a better developer'€. There was an excellent mix of people, ranging from new developers fresh out of school to veterans that had been doing this for years. A lot of great ideas came out of this session. Here is a brief rundown of my major takeaways:

  1. It'€™s hard to become a better developer without writing programs. A great way to accomplish this is to contribute to an open source project. Another way is to do focused programming practice, such as code katas.
  2. It'€™s good practice to learn a new programming language, especially one from a paradigm that you do not normally code in. For example, if you normally work in a multi-paradigm language, try learning a single-paradigm language, maybe a functional language like Lisp, or a logic based language such as Prolog. This will force you to think differently when solving problems.
  3. Perhaps some of the best advice I heard was centered around communicating and interacting with people. This is an area that is all too easy to neglect. Interacting with other developers provides a great opportunity to share ideas and learn from others'€™ successes and failures. Joining a developer meetup, user group or attending conferences on a topic or technology you find interesting is a great way to accomplish this.

Here is a longer list of ideas that came out of this session.