I’ve been programming for about 40 years now. That’s a long time in Internet time. Honestly in some ways it is more fun now then ever and it started off as fun for me. The story starts for me back in college when I took a programming course to avoid taking a math course. Really. I needed two requirements from a selection of math and science and one of the options was an introductory computer science course. I knew I didn’t much like math and had no idea what computer science was all about so why not?
I struggled a bit at first but eventually it “clicked” for me. I had, what at the time was, extraordinary access to the university computer. There was a computer in the computer lab. Yes one computer for the whole university. Used during the day for school related work students had access after 6PM until (in theory) 10PM. I say in theory because some of us were granted after hours access. With this access I started writing code for fun.
The next year the university acquired a PDP-11 computer running the RSTS timesharing OS. More fun and not a little hilarity occurred. There was a lot more computer access time for students now.
As I look back (and forward) there are a lot of reasons to learn to code. Making money is one. Software development earned me a good living for much of my adult life. I was fortunate enough to work for two great computer related companies (Digital Equipment and Microsoft).
Changing the world is an even better reason. Though I think my influence in changing the world is most likely to be a result of the students I have taught over the years rather than any of my own code. I have been fortunate enough to have many outstanding students who have moved far beyond my modest coding accomplishments.
At its heart though, for me, writing code is fun. It is an immensely fulfilling process of discovery, creativity, and accomplishment. It gives me great satisfaction to create some code that makes the computer do something I want (or perhaps need) it to do. Programming is my ultimate brain teaser and creative act rolled up into one activity.
A friend tweeted a quote earlier today that struck me as interesting.
I’m not so sure video games would have been his thing but I have little doubt that a computer would be involved in his life. Can you imagine what a creative mind like his would have done with a computer? Or Leonardo DaVinci?
"If Michaelangelo been alive today you would have been a computer programmer making video games, not a painter decorator" The Bugle— Rebecca Dovi (@superCompSci) December 11, 2013
Programming today remains as much art as science. That is both good news and bad news. The good part is that it remains a creative work that rewards people who think differently. People who may not be aware of the box enough to know they are thinking outside of it.
I write code because it is fun. I write code because it is a wonderful way for me to create things that do something. Writing code is an art of the mind. If you just see it as a way to earn a living you will earn a living. If you just see it as a way to get some task done you will get the task done. If however you see it as creation, innovation and expression you will enjoy yourself a lot more.