I started programming way back in fourth grade with Chipmunk BASIC. Since then, I've fiddled with just about every major language (except Python, for moral reasons). Starting today, however, I am relegating coding from being my expected primary source of income to strictly being a hobby.
I've heard comparisons between the process of problem-solving and software development before, but I can assure you that software is much, much more unpleasant. The act of programming is essentially a cycle of self-renewing frustration. Here is how I would describe it:
Imagine taking an exam in which solving any one problem causes other, unrelated problems to become more complex in unpredictable ways. Now observe that checking your answers requires creating your own problems and possibly reorganizing the exam itself. Finally, realize that the professor keeps adding new questions after the semester ends, and you're responsible for the answer key being correct at all times.
In spite of all that, I've had a lot of fun. I remember the thrill of learning about functional programming, and git, and bash scripting, and embedded systems. Hacking probably deserves a post of its own. I'm glad I got to spend my childhood the way I did.
You'd think that I'd want to keep on coding. If you love what you do, you never work a day in your life. Right?
Wrong. I've learned, through repeated experience, that being compelled or required to do something can easily turn interest into hatred. I used to enjoy writing, but I came to detest composition of any sort after suffering through years of essays about Shakespeare and other assorted bullshit. This blog is, in part, an attempt to fix that.
I don't want to burn out on programming doing useless work. I don't want to complete an assignment, whether from a professor or a boss, and suddenly realize that I never want to write another line of code. That would be the mental equivalent of an amputation, so I'm not going to risk it.
protochan is the only software I'm writing in the foreseeable future.