Understanding what you build
In February, I built vikunja-tui to experiment with rust and ratatui. Since I don’t know rust that well, I relied on AI quite a bit, which worked great for the implementation of the basics. However, soon the project was at a point in complexity where it was difficult to implement the things that I wanted. I couldn’t go from idea to code quickly because I lacked a true understanding of what I had built. That was a weird feeling. It has caused me to think about how the companies, startups and scientific labs that forego hiring anyone with technical expertise will be able to go from idea to Minimum Viable Product, but then be unable to move further because they are stuck in a maze of code that doesn’t paint a cohesive picture.
Enter vodo, a command line interface that does similar things (adds and edits tasks), written in python using typer. As opposed to rust, python is a language that I know well, and was therefore able to work so much more fluidly. There is a huge difference between looking at code and going “ah, yeah, it’s adding something there, checking for something there”, and “I know exactly what that’s doing and how to fix it if it broke”. When you need to make changes, having an understanding of how everything fits together, and your overall vision for the project, makes all the difference. Building becomes fun again.
The allure of AI for managers and developers alike is that it presents a fantasy that you can have all the skills, without any of the effort. Am I a rust developer? Absolutely not. Have I built something functional in rust? Sure. Many people feel that they are being outpaced by a world that is changing and demanding skills faster than they can manage. It took a while for me to accept this, and why earlier this year decided to stick to Python and bash as the main languages in my toolkit, I cannot become fluent in everything.
For those that have mastered a skill, they no longer need to think before acting. Messi doesn’t think about kicking a soccer ball, Micheal Jordan can dribble as easily as he can walk. There is no shortcut to that. Yet, we live in a world overwhelmed by a demand to create shortcuts for everything. If a self-help book is too long, read the 15 minute summary. Half the effort, all the knowledge.
In a recent podcast, Ezra Klein and Rebecca Winthrop discuss the impact that AI is having on education. Students are increasingly using AI for everything, and there isn’t a reliable way to catch it. Schools are still grappling with the philosophical question of what role AI should play in learning. Employers are increasingly demanding the use of AI, and so students argue that they need to learn how to use it to stay competitive. Among the many risks of AI, this is the one that keeps me up at night. Will the next generation understand what they build? Will they want to?