From keeping every piece of furniture in place to eating every grain of rice on my plate, I’m usually a neat person for a guy. However, it seems that I’m not a very neat coder. Learning a programming language is nothing like learning an instrument or a sport. Coding is not a team sport or an orchestra concert, it’s more like a solo on open mic night. The first programming language I learned was HTML (I think), it was from an online course that focused on basic functions and syntax. College introduced me to C and a variety of languages, but I don’t think I’ve ever heard of coding standards until this assignment. Before then, and even now, there was only code that works and code that doesn’t. If it doesn’t work, the compiler tells me what I did wrong and I learn coding standards in that trial and error process. As a Computer Engineer, I’m focused entirely on functionality and neatness is a by-product. Maybe this mindset kept me from seeing a bigger picture, but the importance of coding standards still hasn’t occurred to me.
To make coding seem more fun that it has been in the past few years, I’ve tried taking on coding projects such as writing board games like Battleship in C++. Despite my best efforts, coding seems like a rinse and repeat process of failure and “improvement”. It didn’t take long for the constant errors and segmentation faults to take a toll on my spirit. Even the power of IntelliJ hasn’t saved that spirit, but I’m still impressed with its power and features. I’ve never had an IDE that could help me write code, browse libraries and plugins, and debug my code in the same window. This is an IDE I would love to have for my projects. Although I’m not sure if this IDE would work for C++, that would make character recognition and image training a lot easier to write. I usually had to wait to compile a program before receiving warnings and errors, but IntelliJ helps me comply with coding standards as I’m writing, like a live Spellcheck on a Word document.
Despite the impressiveness of IntelliJ, I’m not very happy with how much it requires. I never had to spend 30 minutes on writing a simple Underscore function, although it’s worth it since this time is dedicated to using Github Desktop to preserve my work online. Coding standards has meant nothing to me prior to this class, but I believe IntelliJ will help me gain a better appreciation for them as I write larger programs that require more precise organization.