Are we humans incorporating AI in our software work field, as it should be? We are happy with how we model AI in coding. However, what about maintenance? In our work environment, why is it a must to keep up with code? The way we are using AI coding tools as newcomers in the programming world can show our recklessness, as these tools serve everything on a plate? We are still learning how to optimize AI. Can we build better datasets on which these coding tools are modeled? What if, due to unintentional bias, a programmer loses his signature coding style?
Most of the part that constitutes programming is "maintenance of code." Positionally, code is not something at rest; it revolves around adaptation to a new environment, evolution. Have you ever seen a messed-up code and had a brief moment of "What is going on?" For this, we need to understand what a messed-up code and a good code feel like. The journey to maintaining code begins with writing clean code and making it adaptive to developers who will cross-check your code. Imagine, in code review, they are not able to understand what we have written. It makes no sense to them. These mistakes of ours can cause companies to requit at the production line. And ultimately, everything has to shut down.
One of the examples of software destruction and bad maintenance is Therac-25. Back in the 1980s, in Canada, the Therac-25 Radiation Therapy Machine, with its former versions (Therac-6 and Therac-20), was designed to treat tumors in cancer patients. Ascribed to technical negligence in its latest version, Therac-25, it caused casualties among patients under treatment. What errors or glitches caused it are not informed by the company? Even so, if we study its case, it is clear that patients died due to autonomous overradiation. Here arises a question: why was it not under human supervision? Have machines reached human-consciousness level?
Today we are living in the great era of AI hype turned into reality. Where we see non-developers building apps sensed by vibe-coding. Andrej Karpathy, who introduced the term "vibe-coding," said in a tweet:
There's a new kind of coding I call "vibe coding", where you fully give in to the vibes, embrace exponentials, and forget that the code even exists. It's possible because the LLMs (e.g. Cursor Composer w Sonnet) are getting too good. Also I just talk to Composer with SuperWhisper…
It should be noted that it is a must to keep AI on track before good vibes turn into bad vibes. Putatively, everything seems to be fine in the AI era. By degrees, what can happen in the future, related to problems with speeding AI, will not be something new. Maintenance is still required at the coding side of AI. We need to train AI in a way that it will sense bad code. For that, the person who is training AI should himself practice how to write clean code?
What is clean code? and why it is must? There are many books on this perspective. One of the books that is under my reading list is "Clean Code: A Handbook of Agile Software Craftsmanship" by Robert C. Martin. What I understood from the introduction of clean code in this book is that we as programmers/coders need a code sense to transform bad code to clean code. How to attain that code sense is a struggle. It is discipline and a sense of cleanliness that should be present in us, or else we should acquire it. Only then can we differentiate between good and bad code.
How to train AI that can sense bad code? The smart tech developers are building AI tools that are great in assisting us while coding, but they can surely make newbies to programming lazy. If we are the ones who enjoy coding, then we will use these tools as they should be used. But when we are stuck on errors or bugs, then we will simply go for autonomous suggestions by these tools rather than understanding those autonomous suggestions. We just want to rush to reach the top, where we can get monetary assets from our product. First thing first, we do not need to cope with the fast-notion trends. Good innovation takes time and patience.
Training AI should be done by data crunching. As we have bulky data, we miss quality over quantity. We need to refine our data. The database to train AI should be language conventions rather than training it on crude datasets based on users' code. As every coder has its signature style of coding and solving a problem, it should not be generalized by such a training approach of coding tools. At the end I also want to mention that to steer AI in the direction of replacing humans as a sci-fi motive will be biased to the human community.
Top comments (0)