Over the past few decades, various movements have shaken up the software world, promising either to hand over much of the programming work to end users or to further automate the process. CASE tools, fourth generation programming languages, object oriented programming, service oriented architecture, microservices, cloud services, PaaS, serverless computing, low code and no code have all theoretically lightened the heavy burden of software development. And, potentially, threatens the job security of developers.
Yet today’s software developers are busier than ever, and the demand for skills is only increasing.
“I remember when the cloud started to become popular and companies migrated to Office 365, everyone said that IT pros would soon be out of work,” recalls Vlad Catrinescu, author at Pluralsight. “Guess what: we’re still here, and busier than ever. »
The question is how the work of developers will ultimately evolve. It’s possible that artificial intelligence, applied to application development and maintenance, will finally make low-level coding a thing of the past.
Programming on the verge of extinction?
Matt Welsh, CEO and co-founder of Fixie.ai, imagines in particular that “programming will be obsolete within ten years. I think the conventional idea of ’writing a program’ is on its way to extinction,” he predicts in a recent article published by the Association for Computing Machinery. “Indeed, for all but the very specialized applications, most software as we know it will be replaced by AI systems that will be trained rather than programmed. »
In situations where one needs a “simple program – after all, not everything should require a model of hundreds of billions of parameters running on a cluster of GPUs – these programs will themselves be generated by an AI rather hand-coded,” he adds.
What will be the exact role of IT professionals and developers then? Vlad Catrinescu believes that the new generation of automated development or low-code solutions “enables IT professionals and developers to work on more complex applications. IT departments can focus on enterprise applications and building complicated applications and automations that will bring great value to the business.”
Training models to replace coding
Until very recently, “development has focused on getting more engineering out of it, or reusing more coders,” says Jared Ficklin, chief creative technologist and co-founder ofargodesign. “This has led to orchestration-facilitating tools, which allow developers of normal applications to use a graphical interface to orchestrate AI solutions using code modules called skills, written by machine experts. learning. Likewise, it allows subject matter experts in the business to orchestrate entire campaigns using one interface. »
Such machine learning-driven tools “help gather requirements and leverage engineering,” says Jared Ficklin. “Where there are gaps, code writers need to step in and fill them. In all these cases, the architecture is always managed by the IT department, because there are many points of interoperability and security to maintain. »
With the advent and rapid progression of AI and machine learning, training models could replace coding at very fundamental levels, predicts Matt Welsh: “AI coding assistants like CoPilot only scratch the surface. surface of what I am describing. It seems completely obvious to me that in the future, all programs will be written by AIs, with humans relegated to, at best, a supervisory role. If I’ve learned anything over the past few years working in AI, it’s that it’s very easy to underestimate the power of increasingly large AI models. I’m not just talking about things like Github’s CoPilot replacing programmers. I’m talking about replacing the very concept of writing programs with training models. »
Develop differently
Moving completely away from coding opens up new ways of looking at application development for more conceptual, high-level business roles. “Exciting changes come from surprising directions,” says Jared Ficklin. “The world at large has imagined low code/no code as a visual interface where you move nodes around to put code together. It’s orchestration, and it still requires knowing how the code fits together. »
Jared Fricklin illustrates this new way of developing and updating applications in action. “One of our current customers, Builder AI, has taken a unique approach of using AI voice conversation analysis to gather requirements and then continue to architect and deliver those experiences,” he explains.
“They even have a voice assistant that can be added to a Zoom call that will listen to someone describe their mobile app to a project manager, then automatically capture and list the features. A human then edits them and the AI matches them to an architecture model for an application. When code modules exist, they are added, and when they do not exist, code writers step in to add a module. Over time, this process will be increasingly automated. »
That means more real-time computing, continues Jared Ficklin. “One where software latency, rendering and assembly are invoked in real time. You could imagine asking Alexa to make you an app to help organize your kitchen. The AI would recognize features, choose the right patterns, and in real time, over the air, deliver an application to your cell phone or perhaps your handheld mobile computer. »
Source : ZDNet.com
We want to thank the writer of this short article for this remarkable material
This is the end of programming as we know it
Visit our social media profiles and other pages related to themhttps://yaroos.com/related-pages/