creative soul - Fotolia
IBM is trying to woo and support new developers, as the battle for skilled AI talent ramps up.
AI is among the hottest technologies on the horizon, and subtopics like machine learning have emerged as a must-have for many new applications. IBM and others want to empower developers with tools to simplify the creation of AI-powered apps.
The vendor hopes to rope in developers of all types to extol the benefits of the IBM platform and services, particularly its Watson-based AI services, at a developer event aimed at open source programmers.
At the Index Developer Conference this week in San Francisco, thousands of software developers will meet to discuss a host of topics, including artificial intelligence, programming languages, microservices, containers, blockchain and more.
Large vendors have taken time to woo developers because, to many, they are considered the "new kingmakers," said Stephen O'Grady of RedMonk, an analyst firm in Portland, Maine.
Indeed, nearly all developers today are involved in buying decisions and platform choices, said Willie Tejada, chief developer advocate at IBM. More specifically, 87% of developers with a leadership function and two-thirds of frontline coders are involved in purchasing decisions for their companies, according to a report by SlashData, a London-based analyst firm.
IBM not only builds tools of its own, but also partners with others to provide resources for developers to help shorten the AI talent gap.
As an example, IBM and Unity Technologies, a San Francisco-based game development platform provider, will bring the power of the IBM Watson AI services to the Unity developer community with a software development kit to help developers integrate Watson cloud services -- such as visual recognition, speech to text and language classification -- into their Unity applications.
AI talent shortage
Tools to simplify AI app development are in demand because there's a shortage of developers.
Ronald Schmelzeranalyst, Cognilytica
"The AI talent crunch is real," said Ronald Schmelzer, co-founder and senior analyst at Cognilytica, a Washington, D.C.-based analyst firm that specializes in AI. "It's becoming harder and harder to find good AI talent, and that's because AI skills are not like simple programming skills."
To build truly intelligent apps that solve problems that simple programs can't, developers require machine learning approaches and algorithms that attempt to simulate how the brain thinks, he said.
"The emergence of deep learning is making whole classes of problems solvable now that weren't before, such as facial recognition, natural language processing, autonomous driving, and knowledge- and context-based tasks that require some amount of understanding of context, intuition and higher-level thinking," Schmelzer said.
This means straight-forward programming skills don't easily apply, he added. Developers can use a raft of existing programming languages to interact with machine learning capabilities, such as Python. But all the major platform vendors want to abstract the black box of AI with APIs that non-AI experts can call to take advantage of these capabilities. These include Microsoft Cognitive Services; AWS machine learning toolkits and SageMaker; Google Cloud AI and TensorFlow; Facebook Caffe2 and machine learning APIs; and, of course, IBM's Watson machine learning APIs.
Low-code and AI app development
With the basics of these tools under their belt, developers and even nonprogrammers can then use low- and no-code tools to assemble various models, algorithms and approaches to deal with the sort of problems that AI can handle, but ordinary programming and rules-based approaches cannot, Schmelzer said.
The whole purpose of AI is to handle problems that usually require human cognition, insight and problem-solving that can't be adequately addressed with simple if-then, rules-based programming. Developers don't necessarily write programs for AI. Instead, they work with large data sets and use techniques for a best fit or neural network approach to identify patterns and match to those patterns to solve problems.
"In this way, using tools from Appian or Mendix or even BPM [business process management] tools and RPA [robotic process automation] flows can orchestrate business processes with AI-enabled capabilities from platforms provided by IBM," he said. "However, the key is that you need to know how to apply it."
Low-code platform provider Mendix has features to weave Watson services such as speech recognition into applications, said Hans de Visser, the company's vice president of strategic alliances.
However, there are still lots of issues to address in AI application development. Where do you get the models you need to train the AI systems? How do you know when your models are trained properly? How do you know which AI algorithm to use, or whether to apply graph-based knowledge learning or neural network approaches? How do you deal with unsupervised and supervised modes of training?
"These are the things that simply low-code composition of AI APIs won't handle and why there's still such a huge shortage of skilled AI talent," Schmelzer noted. "We need to solve that knowledge gap to truly enable enterprises to make the most of the AI capabilities provided by platform vendors like IBM, despite how capable those platforms are and how easy it is to create apps using low-code approaches."