There’s something so satisfying about building things with code. It’s pretty amazing that with the correct sequence of keystrokes, we can make software that can do just about anything. What we can create is limited only by our imagination.
Ironically, part of the reason why I find coding so satisfying is because it took me so long to develop a knack for it. In that way, coding and software engineering have been a craft I’ve had to work hard at. But what makes this craft so enjoyable is slowly, with enough time and practice, you gain specialized knowledge and skills. You learn languages and frameworks, the interworkings of computers, how to store and manipulate data, and much more all while building products that you and others can use and enjoy.
But this craft as we know it is ever-changing and, especially today, is rapidly evolving. With the introduction of large language models learning how to code has never been easier. The knowledge that took me weeks or even months to acquire can now be boiled down to a haiku just for fun and all it requires is an internet connection and a one-sentence prompt.
Some might find this disconcerting, worrying that the moat software engineers have dug with painstakingly acquired knowledge is rapidly filling in, but I don’t feel this way. In my eyes, LLMs are tools that software engineers can leverage to make ourselves that much more productive. However; there is something I’d caution within this new landscape: don’t skimp on understanding the details.
While you might be able to produce “correct” code quickly and reliably from an LLM it’s essential to make sure to learn and understand why that code works. Truly understanding low-level details of computers and very specific intricacies of technologies is what I believe will set apart good engineers from great engineers in the coming years. Anyone can prompt an LLM, but not everyone develops a deep understanding of difficult topics. This is what I fear many newly minted engineers could lack if not cautious.
Much of the information I’ve learned has callused into my memory thanks to nothing other than how much time and effort it took for me to painfully absorb it. Take the time to master your craft. It can take many years to do so, but it makes your skillset that much more valuable.
Drop a like ❤️ and comment below if you made it to the end of the article.
I project huge advantages for Software Engineers who dig deep and understand the code.
Very very very true