I'm convinced that the best way to grow as a developer is to practice. In particular, intentionally practicing things you aren't good at or haven't tried. In that vein, I started a weekly meeting at work in the spirit of a software kata.
I am encouraging my teammates to solve these problems by practicing something they're not great at. For some people, solving the challenge in python is enough. For others, introducing tests or trying a functional programming style is their focus.
With intentions like this, puzzles you have solved many times before take on a new life. Settling into a familiar problem enables you to write more elegant code, or experiment with an unfamiliar technique.
In our last meeting, we had the familiar "fizz buzz" challenge.
Read more...