How Many CTOs?

Is the 'slot machine' approach to coding a new problem introduced by AI?

Short answer

The 'slot machine' approach to coding, where developers repeatedly try solutions without understanding them, is not new and predates AI. However, AI tools may make it easier for developers to engage in this behavior without gaining deeper insights.

Is the 'slot machine' approach to coding a new problem introduced by AI? Not really. The 'slot machine' approach, where developers repeatedly try solutions without understanding them, has been around long before AI. However, AI tools might make it easier for developers to engage in this behavior without gaining deeper insights.

The term 'slot machine' coding describes a behavior where developers keep trying different solutions until they find one that works, often without understanding why it works. Scott pointed out, "It's going to make it easier for people to be slot machine developers." ▶ 0:00 This isn't a new phenomenon. Developers have long been pasting code from the internet without fully grasping its function. Brad shared a story from his past where he encountered a problem in computer graphics. He tried to solve it by copying code from Stack Overflow, only to find it didn't work as expected. The engineer who helped him had also copied code from the same source. This was well before AI was a factor, highlighting that the issue isn't new. ▶ 10:27

### The Role of AI in Exacerbating the Problem

AI tools like large language models (LLMs) can indeed make it easier for developers to fall into the 'slot machine' trap. These tools can generate code snippets quickly, which might encourage developers to rely on them without fully understanding the underlying logic. Scott noted, "And the people have always put code in their applications that they don't understand how it works because they've copied it from the" ▶ 15:09. The ease of access to AI-generated solutions can reduce the incentive to learn and understand the code.

Brad expressed concern that AI might make it simpler for people to be lazy, stating, "so that you can be lazier and lazier on increasingly complex systems safely," ▶ 27:58. This could lead to a situation where developers are less inclined to develop a deep understanding of the systems they work on, potentially affecting their growth from junior to senior engineers.

### Learning and Growth in the Age of AI

Despite these concerns, AI also presents opportunities for learning and growth. Scott argued that AI can be a powerful tool for those who use it to explore and understand new concepts. He emphasized, "where whenever you use it, you use it to grow yourself," ▶ 24:06. Developers can ask AI to explain code snippets, helping them to learn and understand complex topics more quickly.

The key is curiosity. Developers who approach AI with a mindset of learning rather than just finding quick fixes can use these tools to enhance their skills. This approach mirrors traditional learning methods where developers would read books, talk to peers, and experiment to deepen their understanding.

### The Path from Junior to Senior Engineer

The journey from junior to senior engineer has always involved building a lot of stuff and learning from those experiences. Scott highlighted that this path hasn't changed fundamentally with the advent of AI. He said, "The path to being a good senior engineer is build a lot of stuff." This requires curiosity and a willingness to understand the systems being built, regardless of whether AI is involved.

Brad and Scott both agree that while AI might change the way some aspects of development are approached, the core skills of curiosity, understanding, and problem-solving remain crucial. AI can be a tool to accelerate learning, but it should not replace the foundational skills that define a competent engineer.

### Conclusion

In conclusion, the 'slot machine' approach to coding is not a new problem introduced by AI. It has been a part of the software development landscape for a long time. However, AI tools can make it easier for developers to engage in this behavior. The challenge lies in encouraging developers to use AI as a tool for learning and growth, rather than as a crutch. By fostering a culture of curiosity and understanding, developers can continue to grow and thrive in the age of AI.