A decade ago, when I began my university 'journey', I was amazed by the abilities of my fellow students. While I was struggling with System.out.println during an intro course, they were already tackling rendering in Java3D. During that semester, I learned more about properly naming classes and properties. I witnessed polite but sometimes heated discussions among students how to name this function to reflect its itention and soul. I realized that programming for some was an art form: how to communicate my intentions to computer, and later at work, how to compose programs that are understandable to my colleagues.
Frankly, I decided to study computer science because people said it could make you some good money. I wasn't really into getting the most out of C++ or making super-efficient algorithms. But at work, I realized that speed did matter; sometimes it was even fun! My friends from uni and work, though, were super passionate about pushing programs to the max. They took a great pride in their craft and held it as a badge of honor. They are great beast masters, communicators with powerful machines that can positively affect the workflow of millions of people.
While I read about the Gang of Four, Uncle Bob and extreme programming, it concepts never resonated with me. My goal was to automate processes and reach the end of a problem asap, coding was merely a tool to solve the problem. When encountering a challenge, I could spend hours attempting to solve it, similar to my colleagues. However, my attitude differed when I discovered that a single faulty line caused the entire issue.