The most challenging part of writing code is not writing code at all!

Richard Balmir
Sep 6, 2018 · 2 min read

I love everything about software(usually). Once I start chopping away at the keyboard, it just has me wired for hours. I find it more effective than a cup of coffee spiked with crack. It’s terribly beautiful. It wasn’t until my graduate studies that I started writing serious amounts of code but then it also became the first time in my life where I had to read serious amounts of code. It was vomit inducing amounts of code. We were intentionally given assignments, in which the only way to complete the assignment was to leverage the source of the modules provided by the professor. We could modify the source or extend it but there was no practical way around avoiding use of it. It was menacing, the source provided was intended to be very flexible so it was usually littered in layers of abstractions. It was written in a sea of templates in C++ or generics with C#. I’d normally get midway through an assignment after hours cursing the damn angle brackets, only to find myself to say “F*ck this sh*t, I’m writing this from scratch”. I would scrap all efforts to make sense of the code that actually works really well and opt to write something that worked well enough that I could understand. I would spend tons of time creating something that wasn’t flexible or even reusable in the slightest. After getting the assignment done, I’d feel angrier than I did when trying to make sense of the provided module source. Why… because of the amount of time lost writing functionality that was already given to me was immense. It just happened to be that the more advanced features of these languages felt mind bending when I was first learning how to develop software and it took years before I was truly able to digest them without mental reflux. The point is you can’t write everything because you probably will do it wrong and it takes a lot of time to do it right. Learn how to read other people’s code. It sucks until it stops sucking and it will save you a lifetime in code years.