AI language models such as GPT-3, ChatGPT or the upcoming GPT-4 will completely change the work in IT projects. Prompt engineers, experts in the use of the new AI tools, are largely replacing traditional programmers.
The other day at the coworking space, I had one of those lead-heavy days. A complicated SQL had to be written for an analysis in Google BigQuery, but I just couldn’t concentrate. When nothing worked, I thought, “Why not ask ChatGPT, everyone raves about it”. It takes me a while to translate my query into ‘normal’ language and feed it to the bot.
The answer was amazing! After a few introductory words, ChatGPT spit me a SELECT statement that succinctly solved my problem. The script was much shorter than my futile approaches and I would not have come up with this solution path on my own. Only one small thing had to be fixed.
I was so amazed that I turned to a table neighbor (unknown to me) and showed him my discovery. But he just shrugged and said, “We’ve been having ChatGPT write our Java classes for weeks now. It’s no longer a matter of coding, but of putting the results together in a meaningful way.”
How will ChatGPT impact IT-freelancer work in the future?
Now, a few days later, I am wondering more and more how tools like ChatGPT, OpenAI Codex, Dall-e, Stable Diffusion & Co. will change my work as an IT freelancer. Are programmers still needed at all? What new opportunities are there for me? What does the expert say?
Question for ChatGPT:
“As language models like ChatGPT take on more and more programming tasks, what are the opportunities or areas of activity for programmers?”
Response from ChatGPT:
“It is likely that language models such as ChatGPT will be able to perform a variety of programming tasks in the future. This could lead to (…) some traditional programming tasks being taken over by machines.
However, it is important to note that the ability of language models to perform programming tasks is limited and that there will still be many tasks that will need to be performed by human programmers.
For example, human programmers will likely continue to be needed to develop new algorithms and solve complex, creative problems.
Instead, new fields of endeavor could emerge for programmers focused on working with language models and other artificial intelligence. This could include, for example, creating user interfaces to interact with language models, optimizing language models for specific application areas, or integrating language models into larger software systems.
Overall, the future of programming work is likely to see greater integration of machine learning and artificial intelligence, and it’s important that programmers continue their education and exposure to these technologies to improve their career opportunities.”
Okay, so it will come down to improving the interaction with the bot….
I ask:
“How can I improve my communication with you right now, then, so that I can have you support me as efficiently as possible?“
ChatGPT:
“An error occurred. If this issue persists please contact us through our help center at help.openai.com.”
As annoying as error messages are, in this case it reassures me. So ChatGPT can’t do everything (yet). There was also a small error in the SELECT statement, which I would not have noticed without my expertise.
Code in ChatGPT: Codex (GitHub Copilot)
ChatGPT’s program code generation is handled by Codex, an AI module that has been available as an add-on in Visual Studio, Neovim, JetBrains and other development environments for several months under the name GitHub Copilot. Codex is designed to help developers as AI pair programmers write code faster and with less work. It pulls context from comments and code to suggest single lines and entire functions instantly.
Some colleagues in the IT project cooperative have already become acquainted with Codex.
The verdicts are mixed: In unfamiliar terrain it is a great help and saves hours of Googling. Short descriptions in the comment field are sufficient to get whole function blocks or modules suggested.
Codex offers enormous automation potential. On the other hand, the system is still too slow overall and the code suggestions are sometimes faulty. This can cost a lot of time, because the errors in the seemingly perfect code are difficult to detect.
Mark Seemann, who has written extensively about GitHub Copilot on his blog, sees no real productivity gain yet precisely because of these bugs:
In addition to programming assistance and the fields of activity mentioned by ChatGPT itself, the AI tools open up new opportunities for freelancers in implementation, customization and integration into clients’ operations.
How can language models be developed and trained specifically and exclusively? How to enhance ChatGPT with in-house knowledge without benefiting the competition? How to test results?
We had a Q&A session with ChatGPT on bogus self-employment at the IT Project Cooperative. The bot provided very convincing answers at the general level. However, if one asked, the results quickly became vague. If the bot was asked the same questions in a parallel thread, the answers varied somewhat.
New professional field: what is prompt engineering/ prompting?
The quality of the questions is anyway the key to the efficient use of ChatGPT & Co. Here the new professional field of the query expert, or prompt engineer, is just emerging.
Louis Bourchard of Hackernoon describes it this way:
Since these models understand words differently than humans, they need an interpreter, the prompt engineer. It translates human speech into the expressions that elicit the best result from the AI. In our examples above, the questions asked are the prompts. The prompt engineer, knows how to improve the question, how to ask specific questions, and how to provide information to the model that improves the outcome.
There is also already a first job advertisement. ANTHROP\C is seeking a “Prompt Engineer and Librarian” for its San Francisco office. The job description itself shows how new the topic is:
“Given that the field of Prompt Engineering is probably less than 2 years old, this position is a bit hard to fill! If you have existing projects that demonstrate prompt engineering on LLMs or image generation models, we would love to see them. If you haven’t done much in the way of prompt engineering, the best way to demonstrate your prompt engineering skills is to spend some time experimenting with Claude or GPT3 and show that you’ve managed to get complex behavior from a series of well-crafted prompts.”
For us freelancers, this opens up a new continent. We just need to learn how to ask for directions properly. Let’s see what ChatGPT has to say about it …