So you have heard of the AI craze, and YouTubers all over the world are “creating apps with a simple prompt”. Does that spell “the end” for programmers and software developers? As a developer who has adopted AI, I came to a simple conclusion:
If it is not obvious enough, AI is not capable of developing complex applications. At least not at the current level of “intelligence”. If that does not put some ease into your mind, let us walk through some hard facts and expectations. Read on!
TABLE OF CONTENTS
FACTS – CURRENT LEVEL OF AI
First, let us get some facts straight – The current level of AI technology is far from “enter a prompt and create an app within minutes”.
AI IS RESOURCE HUNGRY
To put things into perspective, let us take Meta’s Llama2 AI model as a benchmark. (Source: EasyWithAI)
- The smallest Llama2 7B model requires 8-10GB VRAM.
- The 13B model can barely run on 12GB VRAM after some tweaks.
- 70B model requires an 80GB VRAM commercial/industrial grade graphics card.
- The famous ChatGPT4 has 220B parameters, and it will take an “extremely costly server setup” to run.
At the time of writing, only the mid-to-high range gaming laptops have more than 8GB VRAM. That can barely run the smallest and lightest AI model. So yes, it will be many years before common consumer hardware can support AI properly.
THE TRUE COST OF AI SOFTWARE DEVELOPMENT
Now, let’s assume that “AI is capable of processing complex projects”. Even so, companies will still need to:
- Hire a team of project managers, AI experts, designers, and developers.
- Purchase “extremely costly server setup”.
- Even if they use GPT-4, processing millions of tokens is not going to cost “just a few dollars” nor does it take “a few minutes only”.
Don’t get me wrong though, AI does help to reduce cost and speed up development. It’s just that a “single prompt 10 minutes app” is impossible… Not if your app is along the lines of “add two numbers”, or “a recursive function to find all image files in a folder”.
AI IS NOT FULLY CAPABLE OF GENERATING CODE
If you poke around the Internet, you will run into a ton of such “AI can generate an app within minutes” videos. Wow. It’s amazing how people conveniently miss out on the prior, after, and the caveat:
- There is a learning curve to using AI for generating code.
- You need some technical knowledge – Functions, libraries, plugins, etc…
- AI will generate erroneous code at times, you need to manually verify the generated code. Sometimes even manually fix it.
- You need to do plenty of trial and error for “prompt engineering”.
- There’s a limit to how much text/code AI can process at once, AI can only work with simple projects for now.
Clickbait, get it? One does not enter “create an e-commerce system” and get a fully working website, database, API, libraries, design, and mobile support out of the box.
AI IS A “BETTER AUTOCOMPLETE” (FOR NOW)
Of course, these cannot create an entire complex app with a single prompt. But it does help to speed up development with better suggestions and auto-complete. The best rating I can give the current level of AI and ML is “a better and clever autocomplete”, not a “replacement for programmers”.
EXPECTATIONS – AI WILL REDUCE MANPOWER
Nobody has a perfect crystal ball that can reveal the future. But as AI technology matures, here are a couple of changes we can expect.
LESS HARD CODING, MORE CREATIVE WORK
- We can grant AI permission to download, install, and do whatever is required to “make things work”. No more struggling with installing a code editor, IDE, compiler, interpreter, server stack, plugins, settings, etc…
- The limitations of AI will be raised, they can study existing projects, programming styles, and deal with more complex systems.
- “Super autocomplete” becomes a reality.
- We only need to create the skeleton frame of a new library or API, AI will figure out the rest.
- Highlight a function, and enter a prompt such as “create a form that submits to this function via the API”.
- Testing will pretty much be fully automated. Create your test sets, feed them into AI, and all the rest is magic.
The era of hard coding and manual testing will come to an end. AI can generate code and debug within seconds, the role of humans becomes “provide directions” and “what to build”.
UI design will also be automated to a certain degree.
- Artists can train their own AI models, and generate art/ideas of their style within seconds.
- AI can “see” and “design” – Feed the brand guidelines into AI, and generate ideas for the interface design.
- Simple drag-and-drop GUI and AI-assisted design will become mainstream.
A CHALLENGING ENVIRONMENT FOR NEWBIES
- AI will reduce technical difficulty. The barrier of entry becomes very low for anyone to hop into programming.
- Everyone will be able to do programming to a certain degree with the help of AI.
- Everyone can troubleshoot and fix their projects to a certain degree with the help of AI.
- AI will take away most of the “simple programming jobs”, the remaining ones require specialized and skilled programmers/developers.
- Companies will prefer an “AI-assisted programmer” over a “non-AI programmer”.
Long story short, programmers will still be around. But it becomes a highly competitive environment where newbies compete with each other, and with every other “wannabe AI programmer”.
THE WORLD WILL STILL NEED PROGRAMMERS!
If you are worried that a “normal person with zero technical knowledge” can take over programmers, let’s challenge them to do these:
- I develop AI.
- Debugging and troubleshooting.
- Design a database.
- Design a system.
- Come up with operating procedures, and design the process flow.
- All kinds of concepts – Classes, functions, API, OOP, logic, CRUD, MVC, SDLC.
- UI and UX. Responsive design.
- Security and encryption.
Just like how it takes an artist to produce art, and musicians to produce music – It will take a programmer to produce professional software. So yep, anyone smart enough will hire a “knowledgable programmer with AI” over a “wannabe with AI”.
THE FUTURE IS NOT ALL GRIM
- If you think in scarcity & adversity – AI can do work faster and better than humans, we don’t need that many programmers.
- But if you think in abundance & opportunity – We are so much more productive with the help of AI. Let’s create more jobs and projects.
Yep, we don’t know for sure. Given how AI takes away the technical difficulty, the indie games/apps market may also start to explode with more jobs and opportunities.
HOW TO STAY RELEVANT IN THE AGE OF AI
My advice as a senior web developer – “Adapt to the inevitable change. Adopt AI and pick up more non-technical skills”. AI Haters are not going to like this, but as mentioned above – A knowledgeable person who uses AI is going to be much more productive and has an edge over others.
Also, don’t stop at “I know how to write scripts”. That skill set is easily replaceable, even without AI. Become a person who offers direction and adds value. “This feature is worth implementing”, “this will streamline the process”, and “automating this will cut cost by N”. That is a skill that cannot be replaced by AI. Yet.
Thank you for reading, and we have come to the end. Haters gonna hate, but sometimes, we have to pick up things that we don’t like to survive. Fill your stomach before you feed your ego. If you want to share anything, please feel free to comment below. Good luck and happy coding!