How I Didn’t Learn To Write Software

Robby Russell
Planet Argon
Published in
4 min readNov 23, 2014

My father, a test engineer in the hardware industry (hard drives, networking equipment), had long advocated that I learn how to write software. Back in 1985 (age five or six at the time), he gifted me a “how to make computer games” book that would, he hoped, get me interested in learning how to write software. Unfortunately, I cannot remember its name… which probably relates to the fact that I doubt I ever spent more than an hour paging through it.

One day, he pulled the floppy disk from the back of the book, slid it into the computer, closed the floppy disk drive lock switch (what were those things called?), opened up a text editor, and showed me the code for one of the games. I vividly remember a huge blob of white text on a blue background screen. I looked at the code in the book. Yes, it was exactly the same characters, arranged in the same order, on both paper and a screen.

He explained that these instructions when executed, would allow me to play a game. I remember thinking to myself, “…but someone already wrote that game on the computer; isn’t it a waste of time to write it all out again?” I’m sure we discussed this, and he probably explained that I could make some changes to the game that would be my own — but why would I want to do that?

The very idea of reading code from pages of a book and typing them verbatim into a computer seemed like the least effective usage of my time.

Don’t get me wrong, I absolutely loved tinkering with computers (and still do). Video games, customizing my DOS prompt color scheme[1], and teaching friends and family how to use their first home computers[2] were one of my favorite indoor activities. Outside of that, I would have rather spent my time outside, pursuing my career of becoming a professional baseball player.

After all, the San Francisco Giants would need me to be at the top of my game for their draft in 15 years.

This disinterest continued for years. My father made countless attempts over the following years to get me interested in coding — and outside of a few DOS batch scripts — I never learned how to program.

Having said that, I appreciate his efforts. I’m very fortunate to have had someone who saw that there would be a huge demand for this skill set and tried to help me get ahead of the curve. At the time, neither of us understood that this approach to learning how to do something didn’t align with how I learn best.

Following along with examples in a book didn’t — and still doesn’t — work for me. My brain doesn’t seem to enjoy this approach; I quickly lose interest.

If Cher had the ability to[3], I would ask her to speak to my father 25–30 years ago and frame problems that we could solve together — rather than follow along with examples in books.

For example, when I was playing Little League baseball — I was fascinated by statistics. My father would help us track each player’s stats through the season. We had a handful of Lotus 1–2–3 spreadsheets for this. If he had posed the problem, “Wouldn’t it be nice if, after each game, the computer would just ask us to answer a few questions about each player, and it would automatically update and print out the stats on paper for us to share with the team at the next practice?”

I would have loved to make that happen.

Sure, this would require me to learn some underlying software principles along the way, but my motivation would have been to solve that problem. Learning how to code along the way would have been a minor detail (in my mind). Having those stats printed out would have been the prize.

We could have expanded on this idea over the years. How was I compared to previous years? Was I better facing left or right-handed pitchers? etc.

I am sure we could have solved many other types of problems together with code that would have caught my attention. It’s quite possible that my father was the sort of person who learned from examples[4]. I still struggle with learning new things through examples and have never read a programming book…in its entirety. I need real, tangible problems to solve for myself (or clients), and then I can figure out how to make that happen.

Nearly thirty years later — the concept of coding without solving a personal or business problem — still bores the fuck out of me.

At this point — you might be asking… so how did I eventually build a career in software development and now run an agency of designers and developers?

Great question! …to be continued.

p.s. Dad, if you’re reading this… your efforts were not entirely wasted on me.

[1] One of my first passions is still a passion. http://ohmyz.sh/

[2] A story for another day.

[3] https://www.youtube.com/watch?v=BsKbwR7WXN4

[4] I shall ask him this the next time we share a bottle of scotch.

--

--

Robby Russell
Planet Argon

Founding partner / VP Engineering @PlanetArgon. Creator of @OhMyZsh. Ruby on Rails developer. Musician in @mightymissoula.