I didn't know I was learning to code
So some of my @svaixd friends (@tinabean @prachipun @tomharman @clickcolleen) friends started a writing club. This is my entry on theme number one, beginnings.
Beginnings that you know are beginnings are daunting. I don’t think I am alone in this experience, where starting any project of even a moderate size (i.e. will take a couple hours, with an uncertain outcome) takes mental bracing, as if I were to jump into a cold pool of water.
Which makes me wonder how any of us get anything done at all. Recently, some friends asked how I learned to program. And the truth is, I don’t know. I know when I learned to program, but I honestly don’t know how.
In the summer after the first year of college I was elected to run the IT department of a student club. Chiefly because I was willing when no one else was, and then chiefly because I didn’t know what I was getting myself into. I had built a couple static websites, which I learned to do during high school. I didn’t know this at the time, but knowing how to do mark up is very different from programming.
“So how does our website work?” I asked my senpai.
“It’s like a PHP thing.”
“What’s PHP?”
“Ok just FTP into the server. I’ll show you.”
“FTP?”
I inherited a spaghetti mess of a PHP codebase, before WordPress was even really a thing. I needed to make changes to it, so I borrowed a PHP MySQL book from the library, which I only knew to look for because I googled PHP and Sitepoint’s tutorials came up.
I remember when I discovered for loops, I thought that was genius. SQL queries was magic. I can stop making separate files now, because templates! I had never even heard of the word templates before.
All the while, I didn’t know I was learning to program. I was busy trying to put photos up for events, or automate signups to a ski trip, or make it easy for club members to communicate. I wrote a shoddy basecamp/wordpress clone in 2006 for my student club before I recognized I was programming.
Embedded in this big “beginning” was a hundred little beginnings. Beginning to look at logs instead of printing things out to the server. Beginning to recognize when I’ve created an infinite loop. Beginning to understand the fear of bringing a site down. Never was I conscious of the beginning-ness of it all.
And so maybe that’s the secret. A great way to begin is to not recognize you’re embarking on a life long journey. It might just be to step out to go to the library to borrow a book to scratch this itch you had. I recognize this is not helpful if you’re trying to be deliberate, but I suppose maybe being deliberate is sometimes overrated? It’s good to scratch an itch. Sometimes scratching an itch leads to whole life direction, but if nothing else, an itch got scratched.