Sorry for paraphrasing Marc Andreesen’s famous dictum but, somehow, I couldn’t resist the temptation. Based on the title of this post, I’m sure you can anticipate it will be about: AI and how it’s revolutionizing the computer science practice, but I want to imbue this truism with enough specificity to paint a clear picture of what the future might look like for engineers and users alike. I’ll be brief in my list of predictions and bets, so buckle up:
AI as the Ultimate Programmer
With AI’s ability to analyze vast amounts of data and learn patterns, there is no better candidate to program another computer than AI itself. Programming languages, which act as human-computer interfaces, will become obsolete as AI takes over the task of writing code in the native format and always very close to the metal: using binary. Besides, through natural language processing and machine learning, AI will understand user requirements and generate optimized code tailored to specific needs.
Redefining the Web Experience
In the not-too-distant-future, the way we interact with the web could fundamentally different. Rather than visiting individual sites through search engines, we might consult AI directly through a text prompt window. AI will understand our queries and provide dynamic information and functions through standard user interfaces designed in collaboration with humans. This shift will streamline the web experience, providing personalized and efficient access to the vast amount of information available.
Unified System Design Guided by AI
Gone will be the days of endless debates over system design choices. AI could end up providing a single optimized approach to software architecture, with different flavors based on the application’s requirements and the kind of CPUs/GPUs. Instead of grappling with decisions such as monolith vs. microservices for the backend or whether to use the React or Vue frontend framework, developers will rely on AI’s predictions and calculations to guide their architectures. This can result in more efficient and scalable software systems.
The Web or Cloud as the Operating System
In this AI-driven future, the operating system itself will likely reside on the web or the cloud. The web will continue to serve as the platform for running applications, accessing data, and performing computational tasks (even more than it does now, in a more transparent and ubiquitous way). While some mission-critical and professional applications might retain vestiges of local user interfaces and “compute” (as people say these days), the majority of software will rely on the web or cloud infrastructure for seamless and ubiquitous access.
I, for one, can hardly wait to see how AI helps us vastly improve and simplify the mess we’ve made in the software development industry over decades of standards fighting, accretion, and attrition.