3 ms·
I'll try a less pithy approach: In 2009 I started learning to program for an art project I wanted to get off the ground. I had taken a few courses in programmi
by abathur 11y ago
I'll try a less pithy approach:
In 2009 I started learning to program for an art project I wanted to get off the ground. I had taken a few courses in programming several years previous, but outside of the context of projects I cared deeply about, it didn't stick. I copy-paste-modify-hacked my way through a really terrible initial php project. The code was godawful, but I eventually got it to work.
Once I had this out of the way, it was only about 9 months before I saw my first opportunity to apply programming to an academic project. Once I had the modicum of confidence from scraping together a shitty project, I knew I could scrape together another one, and I had a small but growing sense of the sorts of things I could accomplish with code (i.e., the growing ability to see ways to use code).
About 14 months after I'd started hacking together the first project, I realized that there was another personal project I wanted to build, and that I was at least interested in doing a computational project for my fine-arts thesis. So I took up programming for a small text MUD I had been playing for a decade. The language used to program the MUD isn't really used for much beyond developing MUDs, though it is a predecessor of Pike. I spent the next year programming intensively on the game in my spare time, before I started building my thesis project in Python.
I didn't already know any Python, but after having learned one language pretty well, it was pretty easy to pick up along the way. I wasn't really planning to be a programmer; I was just a student in the arts using programming in ways that interested me.
Learning to program to build a project is good; you have a strong motivation and well-defined goal. You're inevitably going to make choices now you won't agree with in some number of months, because you're growing. If your first project is a keeper, you're probably going to end up rewriting it (or having someone else do it, if it's commercially successful) just to fix the problems early projects tend to have. This is why it isn't essential that it be in the right language or framework. Four years after I built it, I rewrote my initial project (still in PHP) to fix a lot of those issues. What took me weeks of round-the-clock hacking to get together in the first place took me a couple days of spare time to rewrite.