Today I’m inspired by the latest issue of Eric Normand’s Clojure Gazette which talks about why his “Joy of Programming” comes from learning and exploration.
I got into programming as a child because I was curious about solving puzzles and problems: given the (relatively) limited vocabulary of a programming language and its input and output features, and some interesting problem that came to mind, can I solve it in a usable (and hopefully elegant) way?
Over the years, I’ve written a lot of fun little programs to solve all sorts of interesting puzzles and problems that I’ve either run across or invented just to amuse myself. I learn different programming languages to learn new vocabularies for solving problems, and new ways of looking at problems.
Some of those programs become libraries that I’ve ended up using at work in one form or another, some become open source projects where I’m pretty much the only user, a very small number become widely used projects.