AI Driven Development: My Thoughts on GitHub Copilot
As a developer, I'm always on the look out for tools that can help me work smarter and write better code faster. Github Copilot, an AI-powered code assistant, had caught my attention since summer 2022, ever since Colin Dembovsky, a principal engineer at Github, introduced me to CodeSpaces last year. I had been keeping an eye on Github's developer tools ever since.
After going back and forth, I finally decided to take the plunge last month and try out Copilot. For the past 30 days, I've been experimenting with Copilot in development for a few hours every evening. Meanwhile, Chat-GPT has been generating its own buzz for code-generation and almost every other task imaginable, but let's focus on Copilot for today.
It's worth noting that Copilot is ultimately predictive text, and while it's usually correct, it can also be incorrect. I found it works particularly well with statically typed languages since it's privy to more specific context and constraints for the code I'm writing. It's also great for generating boilerplate code and common functions.
On the other hand, comment-prompted development, much like asking Chat-GPT to write code, is only as effective as your ability to validate the output of the code. While I trust engineers would review and test the output thoroughly before using it anyway, it's important to remember that none of these tools are a silver bullet.
Copilot isn't perfect, but it definitely speeds up development. The branding is spot-on, suggesting that you're the one in the driver's seat, and Copilot is there to offer suggestions along the way. It's not meant to replace developers, but rather assist them. So, keep that in mind and consider Copilot as a tool in your arsenal, not a replacement for your expertise.
The most exciting part of these AI-driven tools is how quickly they mature and evolve. Copilot will only get better over time. As more developers use it and provide feedback, the machine learning models behind Copilot will improve, making it an even more valuable tool for developers.
In conclusion, my experience has been positive overall. While it's not perfect, Copilot has the potential to significantly improve a developer's workflow and help them write better code faster. As the title suggests, AI won't replace people, but people using AI will. So, I encourage developers to adopt and work alongside AI tools like Copilot, it's hard to quantify the value but I think you'll see for yourself when you try it.
If you don't like it, you can always try purr programming: