Programmers Need To Chill Out About Devin AI!
Those whose careers are built on coding ability won’t like to hear this, but we think Devin can probably code as well as the average developer, if not better.
And crucially, whatever it does comes at a lower cost – a surefire way to get CFOs salivating.
This has of course inspired a fresh wave of fears that developers will be replaced.
Now, we at Upstack Studio practice an unwavering worship of corporate capitalism.
We love it when businesses reduce us to numbers on a sheet and define us by work capacity.
Therefore, it’s with a heavy heart that we advise those thinking of replacing development teams with Devin that it would be a mistake.
Devin is a developer’s tool and not their replacement.
Hear us out.
Hearing About Devin
Along with the rest of the tech world, we read the Cognition Lab’s blog post introducing Devin.
Immediately, our knees were weak and our arms heavy.
Then we all ran outside to shake our fists at the sky.
Ten minutes later, we came back in and took a closer look at the article, specifically the list of Devin’s current claimed capabilities:
Learning unfamiliar technologies: Devin adapts to new tech by processing information and applying it to tasks, like using ControlNet on Modal to create images with concealed messages.
End-to-end app building and deployment: Devin creates and deploys apps from start to finish, such as building an interactive website simulating the Game of Life.
Autonomous codebase debugging: Devin autonomously identifies and fixes bugs within codebases, aiding in tasks like maintaining open-source projects.
AI model training: Devin trains and fine-tunes AI models, setting up processes like fine-tuning language models from GitHub repositories.
Help with open-source software: Devin addresses bugs and feature requests in open-source repositories, contributing to production-level software solutions.
Enhancing existing software: Devin improves existing software by suggesting optimizations, identifying areas for enhancement, or implementing new features.
Handling real-world tasks: Devin completes real jobs, like writing code for computer vision models and compiling reports.
We use the word ‘claimed’ because Devin hasn’t been officially released.
And startups that are hungry for venture capital aren’t the most reliable at describing themselves.
To be fair, every capability does come with a video clip showing Devin doing as claimed.
We can’t help but wonder how many takes it took – but so what?
Humans also make and learn from mistakes – heck, some don’t even do the learning part.
And we doubt Devin will be released with a 5% success rate, as much as some would love that.
All this is to say that, if we appeared on Oprah and got asked for our professional opinion of Devin purely from a coding perspective, we’d say Devin looks like it can code really well – If the claims are accurate.
So we can’t help but be tickled when developers downplay Devin’s technical capabilities.
Don’t Make it about ‘Who Can Code Better’
The party line on the developer side of YouTube is because Devin isn’t perfect, it’s not good.
To prove their point, they:
- Open GitHub repositories
- Criticize data samples, and
- (of course) Scrutinize lines of code
Basically, things only developers care about.
Look, if Devin can do these things, let’s just accept that it’s close to senior developer level.
And even if it falls slightly below senior developer, that’s still really friggin good.
Why even question it and turn this into a ‘who-can-code-better’ debate?
Business stakeholders really only care about coding if they think it affects software quality.
And they’re right – it does to a large degree.
But the code could be flawless while the product itself is horrible and useless.
And a software product that people love can be powered by very inefficient code.
After a few years and projects under their belt, developers don’t code just to code.
Instead, we build products and solutions.
We also manage non-technical stakeholder expectations.
And that’s something no inanimate tool can replace.
Devin vs Developers: A Hypothetical Situation
Let’s say a team of developers in a company is working on a new or existing software project that needs regular updates and maintenance.
Suddenly Devin comes in like Arnold in Terminator and says:
Can this company safely fire its development team?
Can they just fire all their developers and expect the software product to still get built and maintained to the same standards as an enterprise-level solution?
If the answer is yes, then every company in the world can do it, and Skynet wins.
While that makes for a cool movie, there’s zero chance it will happen in real life any time soon.
Yes, cutting down your development team headcount lowers overhead costs.
But what’s the point of incurring costs at all if the product now sucks at solving user problems?
The gaps between code, user, and solution are where good developers lie and add value.
How, exactly?
1. Requirements Gathering
Before any code is written, a development team will define the requirements of a solution.
And it’s not always an easy conversation to have.
You know how Dementors in Harry Potter suck out peoples’ souls?
Developers extract real problems from business stakeholders in much the same way.
We don’t just ask you what a stakeholder wants, then say, ok, master, and we go build it.
Instead, we keep probing you to check whether this is really the problem you need to solve.
2. User Testing
We’re not talking about code review here.
Explaining the feature: Developers communicate the purpose and functionality of a new feature through clear documentation or tutorials.
Getting users to test it out: Developers facilitate user testing sessions, allowing users to interact with the feature in a real or simulated environment.
Asking users for feedback: Developers actively seek feedback from users, including observations, suggestions, and bug reports.
Asking for their satisfaction level: Developers gauge user satisfaction by directly asking for ratings or qualitative feedback
That last part is really important – you don’t want to just give users what they say they want.
Yes, their feedback is essential, but sometimes they don’t really know what they want.
At times, what they express as a desire may not align with their actual app usage patterns or long-term needs.
Sometimes, they might desperately want it but they’re only going to use it once a year.
In such cases, a deeper understanding of user behavior and underlying needs is essential to ensure that product development efforts are focused effectively.
If that’s the case, you’ll need developers to politely tell them to take a hike.😊
3. Industry Compliance
Different countries have different laws on taxation, third-party audits, data management, cybersecurity, and many other topics that are indirectly related to software.
But even an indirect relationship can require full legal compliance.
If a business decides to build a software solution that targets certain industries like banking, accounting, legal services, medical services, or education, they’ll certainly have to ensure the software follows the laws of the country where users live.
And Devin in its current iteration is no legal expert.
Conclusion: It’s Devin AND Developers, Not OR
Back to our hypothetical situation with Devin coming asking to take over the coding.
How does the business make the most of this?
As we demonstrated, developers don’t just code when building and maintaining software.
So, in our humble opinion, the best thing a business can do is to ask its development team to learn how to use Devin and incorporate it into their workflow.
Make it clear you’re not actively trying to replace people.
Instead, you’re trying to upskill them for the sake of the business.
That’s how you get a motivated tech team powered by a tireless AI software engineer, giving you the best of both worlds.
Hey there stranger, thanks for reading all the way to the end. Consider joining our mailing list for a one-stop resource on everything from micro SaaS validation all the way to execution and promotion. Get a nifty list of questions to ask app developers when you sign up!
Download this template now so you know exactly what to ask App Development Agencies! Let us know where should we send it through the form below.