I feel comfortable in web development. I have a background in art, and there is something appealing to me about writing styles in CSS and seeing them come to life in the browser. It feels direct, you get visual feedback. If you make a mistake, you can see the error immediately. As a result I always felt a little discomfort in going beyond web development to other forms of programming. When it came to a language like C, I would double down on my excuses. I’d heard that dealing directly with memory allocation can wreak havoc if you make mistakes and that was enough for me. “No thank you” I would say to myself, “I’ll stick with CSS and JavaScript”.
Recently I’ve started to learn C. What changed? It was a simple phrase, I actually forget exactly where I heard it, but it was something like “you should do the things that you talk yourself out of doing.” I figured, if I am a bit uncomfortable, and I use a (let’s face it irrational) fear of bricking my computer as an excuse not to do it, there is probably a lot to be gained from doing it. C is, after all, pretty foundational to all things computer related.
Recently I have been feeling the desire to go a bit deeper into Computer Science and move away from the visual comfort zone of Web Development. But I had told myself that I would do so by stripping away the layers and going to something higher level like Python before traversing to the depths. In my effort to go deeper however, I started to watch Harvard’s CS50 lectures, and I noticed that they start with C (after covering some foundational concepts in Scratch). I figured maybe actually there is merit in taking the ground up approach.
Having made a start into learning the basics (data types, functions, arrays, pointers etc.) I can see the benefits of starting out with C. I can see where higher level languages have built upon it and simplified it, (and taken the programmer away from some of the danger zones). It’s a very insightful process, and I haven’t bricked my laptop yet.
If you find yourself in a similar position, talking yourself out of doing something, take a good look at what it is you’re making excuses to avoid. The chances are you might benefit a lot from doing it. I look forward to sharing more on this journey with you.