The Dark Side of Using AI for Programming

Be A Better DevAbout 3 min readMay 27, 2025Watch original
THE SUMMARYAI-generated

Key Concepts

  • AI tools in programming (ChatGPT, Claude, Amazon Q)
  • Learning and Development (L&D) cycle
  • Documentation-driven development
  • AI-assisted development
  • Understanding vs. Task Completion
  • Code review implications
  • Developer skill degradation
  • Trade-offs between speed and learning

Learning and Development Cycle Without AI

  • Process:
    1. Consulting documentation (e.g., Discord API docs).
    2. Understanding available APIs, integration types, inputs, and outputs.
    3. Experimentation and iterative improvement based on documentation.
  • Benefits:
    • Deep understanding of the system (e.g., Discord APIs).
    • Transferable skills applicable to future projects.
    • Knowledge retention and ability to explain design choices.

Learning and Development Cycle With AI

  • Process:
    1. Directly querying the AI tool within the code editor (e.g., "How do I integrate with Discord API to publish a notification?").
    2. Receiving code snippets and methods from the AI.
    3. Implementing the AI-generated code.
  • Drawbacks:
    • Lack of understanding of why the code works.
    • Inability to justify API choices during code reviews.
    • Focus on task completion over learning and comprehension.
    • Potential for using suboptimal or incorrect approaches.

The Problem: Task Completion vs. Understanding

  • The speaker argues that AI tools can lead to a focus on quickly completing tasks without truly understanding the underlying principles or technologies.
  • This is especially problematic for newer developers who may blindly accept AI-generated code without critical evaluation.
  • Example: The speaker was able to publish a notification to Discord quickly using AI, but didn't understand the reasoning behind the chosen API.
  • Quote: "I was able to get it working pretty fast but but I didn't understand why I didn't understand why it was working."

Real-World Implications and Examples

  • The speaker mentions seeing examples on Reddit and other social media platforms of developers submitting code generated by AI that is poorly written or uses inappropriate methods.
  • This can lead to code reviews where reviewers question the developer's understanding and the quality of the code.
  • Example: Code using non-standard approaches when utility methods already exist.

The Speaker's Solution

  • The speaker ultimately reverted to the traditional documentation-driven approach.
  • By reading the Discord API documentation, the speaker realized that the AI-generated code used a suboptimal method for their specific use case.
  • The speaker then reimplemented the code using the correct method, based on their understanding of the documentation.

Conclusion

  • AI tools can be helpful for quickly completing tasks, but they can also hinder learning and understanding.
  • Developers, especially newer ones, should be cautious about relying too heavily on AI and should prioritize understanding the underlying principles and technologies.
  • The speaker's experience suggests that a balance between AI assistance and traditional documentation-driven development is crucial for maintaining and improving programming skills.
  • The key takeaway is that understanding why code works is more important than simply getting it to work.

AI summaries can miss context or contain errors. Check important details against the original video.

Go a little deeper.

Have a question about this video? Load its transcript to open the video chat.