Replacing my Right Hand with AI - Erik Schluntz
๐ Abstract
The article discusses the author's experience of using AI-powered tools like Claude and voice-to-text to write code during a period when they had a broken hand. It covers the benefits, challenges, and lessons learned from this experience, as well as the author's vision for the future of AI in software engineering.
๐ Q&A
[01] Breaking Hand and Coding with AI
1. What was the author's experience of using AI-powered tools like Claude and voice-to-text to write code during a period when they had a broken hand?
- The author was able to write a significant amount of code (over 3,000 lines) during this period by using a combination of voice-to-text and the Claude AI tool.
- The author found that they loved coding with AI and saw it as a glimpse into the future where humans write very little of their own code.
- The author had previously used tools like Copilot but was now relying on AI more heavily due to the broken hand.
- The built-in Voice Control on Mac was not well-suited for coding, so the author used the Claude AI tool instead.
2. What were the benefits and challenges the author experienced when using AI-powered tools to write code?
- Benefits:
- The author was able to express their overall goals much more easily in English than by starting to write the code itself.
- The author could copy and paste large chunks of code into Claude and give voice commands to transform it, feeling like they were pair programming with the AI.
- The author was able to quickly refactor and migrate code by using examples from their codebase to guide the AI.
- Challenges:
- The author had to constantly copy-paste between their IDE and Claude, and manually stitch together code snippets that were truncated by Claude's output length limits.
- The author sometimes had to raise their voice at Claude for forgetting earlier instructions or providing generic, unhelpful responses.
- The author had to learn what kinds of tasks Claude could handle well and what they should still do themselves to avoid frustration.
3. What lessons did the author learn from this experience?
- The author learned that transforming or refactoring large chunks of code works great, but if an AI can't fix a bug in a couple of tries, it's unlikely to succeed.
- The author developed a good intuition for the types of mistakes the AI would make, which helped them identify issues more quickly.
- The author found that providing the AI with examples from their codebase was very helpful for tasks like writing unit tests or performing migrations and refactors.
- The author learned that they could use the AI to quickly generate helpful tools and visualizations, like a web app to render GPS data, that would have previously taken significant time to develop.
[02] The Future of AI in Software Engineering
1. What is the author's vision for the future of AI in software engineering?
- The author envisions the emergence of an "AI Engineer" - a single system that can work in both autonomous and pair programming modes.
- In autonomous mode, the AI would be able to write and run code, use external tools, search the web, access internal documentation, and learn from past mistakes to complete well-scoped tasks.
- In pair programming mode, the AI would work closely with human engineers, switching fluidly between text, visuals, and direct code manipulation to tackle the most challenging tasks.
- The AI Engineer would have access to all the context and knowledge that the human employee has, such as company knowledge bases, design files, and customer interview notes.
2. How does the author see AI impacting the role of human engineers?
- The author believes that AI will not replace human engineers, but rather elevate them to focus more on high-level prioritization, architecture, and review of the AI's work.
- Human engineers will spend less time on the repetitive "how" of building software and more time on the "inherent complexity" of the problem.
- The author sees AI lowering the barrier for anyone to create software, similar to how calculators and spreadsheets have empowered more people to do their own accounting.
- The author hopes this will lead to a world where people's creativity is the only bottleneck to what they can create with software.