The software development landscape is rapidly evolving, and it seems like every week, there’s a new paradigm, a new approach, and a sea change in how we do things. With advancements in AI-powered tools like Copilot, ChatGPT, and advanced IDE plugins, some are wondering: are SDKs still relevant in the AI age?
It’s a fair question. SDKs have been a staple of developer toolkits for decades. But if systems are surfacing information directly in development environments, are SDKs still relevant to the modern development workflow? Below, we’ll look at SDKs as a concept and figure out their relevancy — and value — in a post-AI world.
Why SDKs?SDKs, or software development kits, are collections of tools, libraries, code samples, APIs, and systems that are designed to help developers create applications and instances for specific platforms. They are, in essence, the developer’s guide to everything for a given system. In this vein, SDKs help effective development at scale.
SDKs have some major benefits:
While SDKs are obviously highly effective additions to the API offering, the introduction of generative AI has shifted the conversation somewhat. While developers at one point had to reference materials for their development, consistently using documentation and SDKs to govern their implementation, the advent of AI solutions such as Copilot or ChatGPT has resulted in a much different experience. When you can reference an AI solution to get your answer, why use an SDK? Or, more to the point, why create an SDK for developers?
The reality is that these AI solutions do not exist in isolation. Much of what AI does is summarize content that it finds across its training set. What it doesn’t have actual material for reference, it will generate based on its best understanding. While the AI responds authoritatively, it is often unclear where this information is sourced and how accurate it is.
The reality is that these AI solutions are not replacing SDKs. In many cases, they are using the SDKs to generate their answers. This becomes problematic when the SDK does not have the answer that is needed. In these cases, the AI can hallucinate.
AI hallucination is an interesting issue. AI will often provide an answer that it has no basis for with a level of authority that makes the solution seem acceptable. This has resulted in many answers being outright incorrect despite being framed as and presented alongside factual information. This is a core problem with AI that has yet to be entirely resolved. As such, without SDKs, AI could make finding answers about an API product more difficult.
SDKs and AI: Partnership, Not ReplacementThis issue exposes the true nature of SDKs in the age of AI. AI is not some omnipotent being with all the answers — it needs a data source to pull from. Even when it can access an API and its entire code base, the answers that it will generate will depend highly on how the AI is programmed and how it interfaces with the system. A more efficient model, in any case, is for the AI to understand and digest the SDK itself to provide these answers.
Imagine a library filled with all of the world’s books. Imagine this library is staffed by a knowledgeable and capable librarian who can answer any question you may have by diving into their memory of reading these books. Would you argue that the library should be deprioritized in such a case? Of course, you wouldn’t. This nearly magical librarian requires the library to do their work, and if you were to prioritize the librarian over the books, you’d be implementing value in the reverse order.
Now imagine that the librarian will answer any question you have, and if the book doesn’t exist, they’ll simply make it up. How much would you trust that librarian now? Would you trust it to tell you how to draw a picture? Maybe. Would you trust it to tell you what foods are poisonous? Probably not. Would you trust it to tell you how to detect cancer or how to control access to private information? Definitely not.
This is the state of AI. While AI is a powerful tool and, in many ways, stands as the most disruptive technology of this era, it’s still in its infancy and requires a data source to work effectively. In this context, the question of whether SDKs are still relevant in the AI age is easy to answer: not only are they relevant, the age of AI depends on effective SDKs to deliver value.
Why Not Just Use Specifications and Documentation?This could easily beg the question: if an AI needs an SDK to learn from, why not just use something like the OpenAPI specification or some other documentation? In theory, these systems should have everything the SDK has, correct?
In this context, it might help to actually define these terms:
This gets a little complicated in terms of where these systems live and at what stage they are created. Often, the API specification is tightly coupled to the API design process. Because of this, the specification will describe the promise of an API or the core function as principally designed. Unfortunately, design drift is typical, and it’s entirely possible that a specification doesn’t represent all the API behaviors.
Documentation can also suffer from this problem, especially if documentation comes from a manual process. Documentation can be a significant problem, and the mismatch between documentation and production code has plagued many systems.
To be clear, SDKs are not perfect either. They, too, can suffer from drift, issues of accuracy, or out-of-date content. In this case, the benefit of having an SDK is not to have an “end all be all” answer. It’s to have as much data as possible that is built for specific purposes for the AI to actually parse and work with.
What AI Means for API Providers and DevelopersAI is fundamentally a tool, and while it can be used to greatly improve efficiency and efficacy, it must still be guided by factual data sets and context. Accordingly, SDKs are paramount to the ongoing evolution of this sector. For API providers, that does not mean the era of SDKs has passed or that SDKs are less important — quite the opposite. SDKs have never been more critical, and as more people use AI to understand and digest APIs, SDKs will only become more important.
Effective implementation of SDKs has some considerable benefits in the context of AI for providers and developers alike:
SDKs are not going anywhere fast, and to that point, neither is AI. Instead, both technologies are likely to continue to coexist and evolve. While AI provides efficient access and understanding, it requires quality data and training to accomplish this. Likewise, while SDKs offer ample information and context, they carry a cost in effort to do so, and could benefit from an AI to surface this understanding.
Moving into the future, we can expect both SDKs and AI to become ever more powerful and intertwined. It is likely that AI solutions will ultimately become more efficient and effective at surfacing knowledge and insight, and that SDKs will benefit from these tooling solutions for analytics, testing, and more.
The convergence of SDKs and AI will redefine much of how programmatic development is undertaken. Still, a future where either SDKs or AI simply “go away” in favor of the other is unlikely. SDKs are — and remain — a critical aspect of development, and the rise of AI has only made this an even more crucial point of investment.
All Rights Reserved. Copyright , Central Coast Communications, Inc.