On the Nature of Projects

September 04 2007

It seems as though people who are interested in Computer Science like to start lots of projects. These projects range from web based utilities, to operating systems, and even brand new programming languages.

Without personal projects, Linus Torvalds would never have created the Linux Kernel we use today and without Richard Stallman's personal projects we'd never have the GPL, GCC or even Emacs[1], at least not in the form they are today. Lots of people work on them seemingly full-time, and they produce insanely complicated things, yet I can't seem to find the time.

In the time I have, I constantly find my thoughts dominated by new project ideas, starting to code said ideas, general learning and (now) a class in something I've never really studied before, AI. It seems like the time for devoting to personal projects keeps diminishing, and yet the stack of uncompleted projects (and new ones to boot) continually rises with each project hoping to get back, for just a brief second, into the run queue for a gleam of hope at completion.

It seems as though it's time for me to settle down. Settle on some aspect of computing that inspires me the most and learn the heck out of it. There's no longer time to be interested and inspired by everything, and those who are great are great in few topics. I'm fairly certain I can find time to become great in one of them, and actually force myself to officially abandon those projects at the bottom of the stack. Pop free young ones, pop free.

[1]: I assume that despite the long history of Emacs, at some point in it's early beginnings, it was worked on off hours from the AI labs.