October 30, 2024

Thoughts on AI Tools for Developers

AI in general

AI has become unavoidable in today’s technological landscape. Organizations and individuals face a clear choice: embrace AI or risk falling behind in their respective fields. This will happen for a lot of markets, companies and individuals. The question is how do I stay up to date and what tools should I use from the jungle of tools available. There are so many things happening which makes it easy to get overwhelmed and makes you want to quit.

AI for developers

As a developer, staying current with technology trends is crucial for professional growth. Developers cannot afford to rely solely on their existing knowledge base. You must learn new things, adapt, make changes and use the best tools available to solve the problems at hand.

AI tools have significantly boosted my productivity as a developer. It’s no secret that every developer searches for solutions on the internet, often ending up at StackOverflow, Reddit or similar. Which of course is totally fine, you can not know everything. This has been working fine for years. However, one significant drawback is that online solutions quickly become outdated. These solutions often consist of single answers that get copied and pasted without context. It often lack a deeper explanation of why it solves the problem and how it is relevant in my codebase.

With AI tools this opens up a whole new way of working. AI serves as a personal pair programming assistant that you can continuously consult with. These tools can analyze your specific codebase and provide contextualised solutions to your challenges. With the latest tools it can even make the changes for you. You can create complete applications without ever writing a single line of code. That is amazing - but dangerous, and boring. However, the idea of AI independently building complex, production-ready applications feels far away. There are so many more things to consider. Context awareness and knowledge, coding rules and standards, connections to third party services etc.

In my experience, the most effective way to incorporate AI into your workflow is to treat it as a knowledgeable colleague rather than a magic solution. Use it for code reviews, brainstorming solutions, and learning new concepts, but always maintain critical thinking and validate its suggestions against your project’s specific requirements and constraints.

AI tools for developers

As of right now I am using these tools in my daily workflow:

I’m amazed how quickly these tools have grown and have become tools that I use every day. This was not the case only a year ago. I will not go into details about how and why I use them. That might come in another article.

Cursor

Cursor is basically VSCode with AI built in. You can start with the basic model for free, but I recommend going for the $20 monthly subscription. It gives you access to better AI models and keeps you updated with new features.

v0

v0 has become my go-to tool when I need inspiration or want to test ideas quickly. Instead of starting from scratch, I just write a prompt describing what I want to build. Within seconds, I get a working UI that I can actually use - not just a static design.

The components it creates are production-ready React code with Tailwind, which fits perfectly into most of my projects. No need to translate from design to code or spend time fixing styling issues. Sure, I usually need to adjust things to match my exact needs, but it’s so much faster than building everything from zero.

AI for junior developers

AI tools are amazing for new developers, but we need to talk about the risks. The biggest trap is using AI as a magic wand without understanding what’s actually happening under the hood. It’s super tempting to just grab AI-generated solutions and run with them. Like building with Lego - you can create something cool by just clicking pieces together. But if you don’t understand why certain pieces fit together, you’ll be in trouble when you need to build something on your own.

When those tricky bugs pop up in production - those are the moments when you really need to understand your code, not just copy-paste solutions.

So here’s my take: use AI as your learning buddy, not your replacement. When you get a solution from AI, take time to understand it. Break it down. Question why it works. I often ask the AI tool to explain the solution step by step. The goal isn’t just to ship code - it’s to become a better developer. AI tools are incredible for learning and getting things done faster, but they should boost your skills, not replace them. Use them to learn more, not to think less.

How to stay up to date with AI as a developer

Getting started with AI can feel overwhelming. There’s new stuff coming out basically every day, and everyone seems to have an opinion about what you should use.

For hands-on learning, I’ve found that working on a side project is the best way. Take something simple you want to build and use AI tools to help you. You’ll learn what works and what doesn’t pretty quickly.

Don’t feel like you need to know everything about AI right away. Start small, experiment, and build up your knowledge over time. The tools will keep evolving anyway, so focus on understanding the basics of how to work with AI rather than trying to master every new feature that comes out.

Thank you for reading this far! 🎉

Follow me on Twitter for more inspiration and dev tips.

Feel free to reach out if you have any feedback or questions.

Check out the blog page for more articles.