top of page
  • Writer's pictureVictor Hugo Germano

Will Artificial Intelligence replace all developers? Snake Oil detector


As I expand my knowledge about AI through my Masters, and end up consuming content from influencers (I know, terrible right), it is increasingly common to hear repeated stories about how the tool of the moment can potentially replace all devs in the future, and how we are all super screwed! "AI will replace all developers"


The panic created to gain more followers, using the tendency of social algorithms to favor controversial content, is destroying our ability to see the huge blow that AI is becoming, while the work of aligning and regulating Artificial Intelligence continues at a slow pace, compared to the capacity of markets to launch new tools.


This is my attempt to answer the question of the moment:

Will Artificial Intelligence replace all developers? Is the end near?

Will ai replace or set us free?
Will ai replace or set us free?


Within the master's degree, I'm still starting to work on understanding the tools more deeply, but in my last incarnation as CEO of a software consulting company , I was connected with the most varied dream sellers, and I believe that the main skill that someone in technology needs to build at the moment is Critical Thinking to identify the scam:

If a salesman wants to sell you a flying cow, it is your responsibility to be skeptical and critical of the fact that flying cows do not exist.

In the last few months we have heard:


It's not a conspiracy theory, this is all basically a marketing ploy.


Regarding the recording "leaked" to Business Insider, the company's marketing bias is clear:


A recorded conversation of a mega leader was leaked, inside a company that sells artificial intelligence tools, that sells artificial intelligence training tools, that sells artificial intelligence infrastructure and coincidentally is saying that AI will dominate all spheres of software development. 🤦 - More shameless impossible.


In the world of financial speculation and AI gold rush, only those who sell shovels make money.

As technologists, we need to learn more about the market and be aware of those who say that developers are going to disappear. Who are the leaders, influencers and companies that are most likely to sell the idea that the development environment will be completely replaced, that programmers will be replaced?


What do some devs say? It's worth trying to understand how, over time, several devs have come to the same conclusions: with experience, these tools can be insanely useful, but with no prospect of completely replacing devs.




This is a game of interests: speculative interests. It is not possible to predict how all these tools will impact the future of software development, and how much of these tools will be incorporated into companies' workflows - we know that technology is useful, in specific cases with significant gains in productivity, and that we are in a time of inflated expectations . The only players in the market who are bragging and claiming victory at this moment are **tool vendors**, whether cloud, models, hardware or frameworks.


There is a real interest in inflating the expectations of the tools to maintain the financial speculation already priced into the shares of these companies . Despite the apparent growth in the shares of several companies that sell AI solutions, there is a growing concern that AI requires so much energy and money that we may be getting close to the bottom of the pockets .





You’ll hear many of the tool vendors talking in this context, while telling investors that they need trillions of dollars to build their chip initiative . In a blatant way, they’re trying to completely inflate the perception of tools that rely on a bottomless pit of money , with no clear return on profitability at scale. For example, with the tens of billions invested in OpenAi, we’re a long way from recouping the investment made by Microsoft and other investors, who now plan to use nuclear energy to keep up with the exponential energy demand for training AI models.


Do low code and Generative Artificial Intelligence have anything to do with each other? No


I have heard many times arguments similar to those we use for AI, directed at the various low-code options. Although unusual, it seems to me an almost natural way to compare generative AI tools to the hype of a few years ago with low-code tools at a smaller scale. The sales tactics from that time are being employed now, at much larger scale, but this is very far from reality: they are fundamentally different visions of solutions.


OutSystems, Genexus and other low-code tools have a different focus than the current hype with tools like Cursor, GitHub Copilot and the dozens of tools that exist . The tools exist with a clear objective: to facilitate and accelerate the code generation process, boilerplate, following architectures that are well defined and not always flexible. Low code is a productivity tool. It is not a technology designed to allow you to generate any type of solution without having a direct and real development iteration.


The intention is to have a standardized process for generating applications.


Now, when we're talking about Copilot and Generative AI tools, the vision goes beyond that. It's not about standardizing code generation, standardizing tool usage. The intention is to have an assistant helping you solve the problems you need to solve through code generation.



Copilot for everyone! Is it just more snake oil?



Satya presenting Microsoft's investment in Brazil
Satya presenting Microsoft's investment in Brazil



The intention to replace devs, in my view, has little to do with technical issues: what will dictate the replacement is the intention of the business. Obviously, we are not at the point of technological advancement where we can simply reduce the number of people on the team because Devin will replace 20% of developers. If that were the case, the technology companies that sell these tools would be doing the same (and they are not).


Making a distinction: I really like Microsoft and Google's positioning of their tools as allies to development work so that results can be boosted. But even so, the bias is loaded with interest in building a community dependent on the ecosystem that cannot work in other environments. The intention is to maximize developers' ability to solve problems and improve code throughput through lock-in, not to replace devs (in theory).


A person with an AI tool can be more efficient than a team without AI—in the short term. Software development also depends on the length of time a system is up and running, and we don’t yet know for sure what the impact of long-term use of copilot tools is for very complex codebases. Here’s what we know:


  • There is a clear perception of increased productivity from the use of copilots

  • There is a benefit in use when starting a complex work, serving the ideation process

  • Suggestions are not always correct, professional judgment is always essential

  • Rubber Ducking: copilots in IDEs act in the ideation process, expanding decision-making capacity, looking much like a conversation buddy rather than a decision-maker in development

  • Code quality will be negatively affected


Code quality


I suggest reading a case study that was published in the first quarter about the use of Copilot and the correlation with the software development process, seeking an understanding of professionals' productivity.




At the same time, it is possible to find studies highlighting a significant increase in Bug Reports in the use of AI Copilots in development teams. Most of the data, in my opinion, provide a worrying view on the subject.


The Uplevel Study , which is relatively small in scale, points to a different reality than what tool vendors say:



Copilot can increase code bugs by up to 41%
Copilot can increase code bugs by up to 41%


Increasing code throughput does not solve any problems in the world of professional software development. It is not solution throughput, it is not strategy throughput, it is not feature throughput, it is just code throughput . The article is clear in pointing out a significant increase in bugs in code, suggesting that the use of Copilot decreases code quality.


In my last post about the world of AI , I presented the intention behind the industry's interest in putting these tools into teams. Obviously, there is an intention to enable operational cost reduction through increased individual productivity: if I have 100 Devs working on the team, perhaps using artificial intelligence I can deliver the same with 20, or maybe 80 people, but no longer with a team of 100.


GitClear has produced a very interesting analysis of the use of Copilot and how code quality can be affected by evaluating code operations and identifying a real and significant increase in code operation churn, which basically means "bad code" submitted to a codebase, which is eventually replaced. The study projects that this situation will only get worse with the use of new tools like o1 from openAi .


Code Churn and the reduction of code quality
Code Churn and the reduction of code quality


The article describes a major challenge when using Copilot for software development:


  1. Being inundated with suggestions to add code, but never suggestions to update, move, or delete code. This is a limitation of the user interface of text-based environments where code authoring takes place.

  2. The time required to evaluate code suggestions can become costly, especially when the developer works in an environment with multiple competing auto-suggest engines (this includes the popular IDEs from JetBrains, Cursor, VisualStudio, etc.).

  3. Code suggestion is not optimized by the same incentives as code maintainers . Code suggestion algorithms are incentivized to propose suggestions that are more likely to be accepted. Code maintainers are incentivized to minimize the amount of code that needs to be read (i.e., to understand how to adapt an existing system).


GitClear itself comes to the conclusion that:


When developers are inundated with quick and easy code suggestions that will work in the short term, there is a constant temptation to add more lines of code without really evaluating whether the systems could use some kind of refinement and reuse of existing structures.

The problem with code quality is that the person who pays the price is not always the person who made the decision, and the various incentives to change companies when work is tight make the situation even worse.


If brown field was already difficult to work with, it will be much worse in the future. Anyone who has to work with legacy code knows very well the price they will pay in the future for the wrong decisions made in the present.



How do you lose your job?


Artificial Intelligence won't replace all devs, but your boss will.

There is a natural force for efficiency, which in our case means reducing headcount while maintaining the same code/feature throughput in the present. It is good to listen to what the tool developers are saying, but it is better to point your ears to the executives who buy these tools: the intention is clear, even if it sinks the entire codebase already created.


You will probably be "replaced" by an AI not because the tool is good, but because there is a goal of increasing financial efficiency that your company's executive needs to meet! (read: "cost reduction")


In the end, if something like that happens, it will be like this:


  • The company's simple perception of productivity gains generates pressure for more deliveries

  • More individualized deliveries give the perception of greater team efficiency and greater execution capacity

  • Teams are split and reduced to reach the previous baseline, which now requires fewer people, even though the codebase is being degraded to the point of no return

  • More stressed teams produce worse code, accelerating the degradation of the codebase. What was bad gets even worse.

  • Maintenance issues and code complexity further reduce the delivery capacity of teams and will be the next hiring driver, who will need to rewrite products to compensate for the state of previous systems.





You lose your job because of a management decision, remember that.



Nobody writes javascript by hand anymore


In the early 2000s, when I started my life as a developer, we were still studying Pascal, writing HTML and JavaScript by hand to automate form validations and other stuff. The way I worked back in 98/99 building websites on Geocities is completely different from today. And that is the only certainty in your life in the technology market.


The way we engage with code changes every decade and never goes back to the same. Nowadays I would venture to say that the vast majority of software development work is platform configuration and integration, with only a tiny fraction being actually writing algorithms, worrying about performance, and the like.


We have built a series of mechanisms to extend software development abstractions to be more productive in representing problems, in solving problems, in integrating tools. The only certainty is that programming will be completely different in the future.


Generative AI can be incredible to support the software development process and the ideation of new solutions. In fact, last week Martin Fowler described on his website an article about the use of GenAI to plan the migration and modernization of Legacy Architectures, which is worth reading .


The moment you blindly delegate your decision-making power and knowledge to this type of tool, the only result is that you will end up losing your face in the future. Knowledge of software development is essential to know whether what you are putting into production really works or is really the best strategy.


I can safely say, in almost two decades of working with software consulting, whether as a consultant, entrepreneur, executive or programmer, that 80% of software project problems are not about code. They are about communication, alignment, prioritization, strategy and people. Our work will never be merely technical: our ability to organize ourselves to solve complex problems is what keeps us alive. Artificial Intelligence does not do that. Code Generator and Copilot do not do that.


If you are measured by lines of code produced per hour, you may have your work challenged by a code wizard, but you are also wasting most of your professional capacity. But if your work has minimal complexity, which requires alignment, conversation and relationship to solve a problem, you are relatively more relaxed in your day-to-day work and may have to incorporate new tools that bring greater productivity to your professional life.


That's why it's important to evaluate who is bringing the message of total replacement of developers, who is bringing the message of the end of the world? There is probably an undeclared interest behind the message.


Without naivety: Jobs that are merely reproducible scripts, jobs that are repetitive and jobs that require only direct knowledge will be greatly impacted by artificial intelligence, and we will have dark times ahead. Document generation for legal services, medical diagnosis and care are some of the activities that will be most impacted. And we might be on a brink of a massive lost of jobs to automation.


Automation allows for greater productivity, not necessarily fewer people.


Impact of Automation
Impact of Automation


How to prepare for the future?


The most important skill for the next decade, as a technology professional and as a person working within the corporate world, is critical thinking.


Combining your technical knowledge with what you see in the world so you can make better decisions. Finding out before it's too late when you're being scammed will be the biggest investment in your career.


In general, whenever you hear futuristic propaganda disguised as realistic predictions, pay attention to who is sending the message: what is the point in creating a stir in the market? Are we in the middle of a financial speculation shootout?

We, as technologists, programmers, agilists, analysts: It is important to know what is happening in the market. It is important that you have technical knowledge, but, above all, it is important that you have critical sense to understand when you are being deceived and when things seem too good to be true.


For those who have read this far, thank you. I always seem overly critical of the world of Artificial Intelligence, since my stance is always combative: but make no mistake, I am also preparing for the future in which AI will be the greatest driving force in the world, for better or for worse.


See you on the front lines as we try to debug the messed up code that the copilot generated in the 2022 version.

the front lines as we try to debug the messed up code that the copilot generated in the 2022 version

5 views

Comments


bottom of page