ChatGPT - A glimpse into the future of software development?
- What innovations artificial intelligence brings and what this could mean for developers -
"ChatGPT scares me". The message from a friend makes me sit up and take notice. I've known about GPT-3 for a long time: I experimented with the AI that can generate texts back in 2021. I have to do some research on ChatGPT. A chatbot, also from OpenAI, whose backers include Elon Musk and Microsoft. The bot can write texts - including source code. It was trained with text modules from the Internet.
I dig out my account and start testing the bot. I give it small calculation tasks and ask for information. The results are good. Impressively good. And it only takes a few seconds.
I continue testing: what should I get my sister for Christmas? The result is a list of sensible suggestions. I also have tweets written about noodle soup that sound as if Donald Trump had written them and have mathematical formulae explained to me. I am fascinated! Does ChatGPT know the wunschlösung too? It does. And it can write funny poems about us too:
Now I'm curious - can it also work with code? I have Python scripts generated that retrieve data from the internet and smaller Java functions. They work pretty okay right off the bat.
Result:
I give ChatGPT a piece of source code from us and ask how I can optimise it. The answer makes sense. Then I build a small bug into the code and ask ChatGPT why it doesn't work - it finds the problem and tells me how to avoid the bug.
Let's make it harder. In our YouTube video where I show the code generators, the food for the animals in our hypothetical zoo has a Nutri score. I give ChatGPT the function to store the food data and ask it to add the code so that in doing so, the nutri score is retrieved from a public API and stored in the associated field. I would have written the code more nicely by hand, but certainly not as quickly.
The results are not perfect, but they are impressive. I report the results to my colleagues. Immediately, ideas come up on how we can use the tool. Database aggregations, test cases and data models are generated. We are hooked.
A discussion ensues about whether Typescript or Java code is better generated by AI. ChatGPT comments on our request with the following rap battle:
What does such a tool do to the industry? What does the future hold for software developers?
Fact is: As of today, it already works to have smaller development tasks solved in parts by ChatGPT or similar tools like Github Copilot. We at wunschlösung have started to look at how we can integrate such solutions into our workflows and how we can extend our own code generators with AI.
Of course, there are still plenty of pitfalls to solve. Are the results copyrightable? What about data protection? What business models will be behind them in the future? And not every generated piece of code is always right. That's why Stack Overflow recently banned the tool for solving code queries for the time being.
But assuming these issues are solvable - does that make human software developers obsolete in the long run? In my opinion, there is no reason to panic yet. The best software is of no use without people who know how to use it. What is certain, however, is that code generators are part of the future of software development and AI-based solutions will play a prominent role in this. The automation of development through intelligent editors and other tools will be unstoppable. AI-generated code is still limited to fragments of manageable length. For more in the near future, it will probably still need the designs and architectures of humans.
It is more plausible that simple routine tasks will be automated first. For developers, this is also good news. This leaves more time for exciting problems, architectural questions or fine-tuning the software. We have been following this approach for years with the use of our code generators.
However, due to a higher degree of automation and the associated expectations regarding the speed of software development, the pressure on efficiency in the industry as a whole will also increase in the long term. Developers are certainly well advised to keep up to date and also build up skills in dealing with AI systems. A conscious approach is important here, because blindly adopting pre-chewed solutions does not help build a deeper understanding. Also, expertise and problem-solving skills outside of writing code will become increasingly relevant.
I wonder when AI systems will be able to develop even larger systems largely on their own. Ultimately, it will only be a matter of time - and it may happen sooner than we think. Tools that can create larger solutions from short inputs, such as certain frameworks and low-code solutions, can bridge the gap. Or even code generators like those of wunschlösung. In combination with natural language processing, they will be able to solve many use cases in the long term without the assistance of human developers.
However, there will certainly also be permanent issues where people prefer to communicate and collaborate with other people. It is therefore all the more important that we developers can not only write code, but also understand the problems and wishes of our customers and colleagues as compassionate people and find the best solutions with them. AI can't do that (yet?).
For now, I see this as a big step in the evolution of technology. The impact of AI on many people's everyday work will be gigantic. And so many questions are open. How do we deal with it as a society? Will this development create new jobs or will it make many professions that we currently need redundant? How far can and should AI intervene in people's everyday lives? These will be big issues in the coming years.
A colleague noticed today that I always ask ChatGPT quite politely to carry out my requests. Of course, that's a calculation - I hope the AI will also be nice to us.
More from our blog
Werkstudentin Interview Lena
Today in an interview:
Lena - wunschlösung back office supporter, team event planner, feel-good manager
Research & development project: Online marketplaces and platforms of the future
What will marketplace & platform business models look like in the future? Find out more in our research & development project co-financed by the EU and the state of Thuringia
Team Interview Wojciech (Frontend-Dev)
Today in the team interview: Wojciech - pixel perfectionist, bug hunter, protector of scalability
Day 2 MACHN 2024: Innovation and networking in Leipzig
Experience the highlights of the second day of MACHN 2024, from exciting workshops and inspiring presentations to practical insights into current trends and technologies.
Day 1 MACHN 2024: Innovation and networking in Leipzig
Experience the highlights of the first day of MACHN 2024, from exciting workshops and inspiring presentations to practical insights into current trends and technologies.
Bye bye #localgutscheining - A review of our voucher portal project as part of the #JenaVsVirus hackathon.
Learn more about #localgutscheining here: how our project brought Jena together in the Corona Lockdown and supported local businesses.
The difference between online marketplaces, shops, portals, platforms and stores
Find out here what exactly the difference is between online marketplaces, shops, portals, platforms and shops.
We make our way to the Start-Up Festival 2023
Our Business Development Team was on the road again last week - at the MACHN Start-Up Festival for Tech, Business and Art in Leipzig. Here are some insights!
What is an online marketplace and when does it make sense?
Find out what online marketplaces are and when it makes sense to have your own. We will help you set up your own marketplace and provide you with the right software!
Team Interview Sebastian (Project Management)
Today in the team interview:
Sebastian - Project Juggler, Keeper of the Overview and Agile Master
How do you keep the development costs of your software project under control?
Learn how to control the development costs of your software project. Get tips on project setup, prioritization, scoping and more.
What billing models are there for software projects?
Would you like to know which billing models exist for software? We show you which models exist and give you tips on how to choose.