AnnouncementNew serverless free plan with 3x capacityLearn more
Learn

AI-powered and built with... JavaScript?

Aug 11, 2023
Author
Zachary Proser

Staff Developer Advocate



Projecting several years ahead, digital builders will unlock some of the most exciting innovations. Six technology trends are positioning JavaScript developers to reap the rewards of a society increasingly hungry for AI applications.

Python has been synonymous with AI and Machine Learning tasks for years and remains the primary language of choice. The Python ecosystem is rich with powerful open-source libraries, such as TensorFlow, Keras, Pandas, and Numpy, purpose-built for tackling complex data processing and AI tasks.

That said, the shifts we’ll examine in this post empower JavaScript developers to build applications that connect multiple AI services and deploy these experiences globally across any device, from desktops to tablets to electric vehicle panels, with incredible speed.

1: The Edge is expanding, increasing demand for AI apps that run on any device

The Edge comprises smartphones, robots, autonomous lawnmowers, swarms of drones, sensors, and the Internet of Things. As more devices and users come online, the globe-spanning network of data and intelligence expands, requiring new control panels and data visualization dashboards.

Responsive web design empowers developers to build one web application that runs well on large screens like TVs or desktops, medium screens like laptops and tablets, and small screens like mobile phones. JavaScript is ideally suited for building responsive web experiences accessible on any device because modern JavaScript frameworks provide this functionality out of the box.

2: Heavy-duty compute clusters in the cloud are available via APIs.

Cloud data centers can train and host the most powerful AI models.

The models we know today that help us code, reason through complex tasks, and generate writing, images, and audio upon request, can do so because they've been trained, and are running on, large clusters of highly specialized supercomputers — at tremendous cost.

For the foreseeable future, the cloud will likely remain home to the machinery required to support the ongoing development and effective operation of the AI capabilities we know today.

For everyone except the most prominent players in the tech market, it makes more sense to call upon cloud-based services as needed to perform GPU-intensive tasks like fine-tuning models or performing predictions with existing models.

How does one tap into these powerful behemoth machines on an as-needed basis? Via the third technology trend: powerful application programming interfaces (APIs).

3: JavaScript developers know APIs. They connect the Edge and the mighty cloud.

APIs are potent building blocks of functionality that developers can combine to produce rich experiences without being a deep expert in every computer science discipline that was necessary to build the APIs in the first place.

It’s this abstraction layer that makes APIs so powerful. A developer must only understand the usage of APIs to harness advanced storage, image recognition, semantic search, logical reasoning, data crunching, and high-speed retrieval capabilities without reading a single research paper. APIs empower builders to compose rich experiences very quickly.

The worldwide developer community has proliferated decades of tooling, best practices, books, talks, documentation, and patterns, making API creation and consumption a bread-and-butter skill for almost every web developer working today.

Since APIs are the lingua franca of the Internet and its builders, you can see a decision, such as OpenAI’s, to make their powerful models available via API for what it is: a disruptive empowerment of software developers and their end users.

All programming languages can call APIs, but JavaScript has well-established patterns for handling the asynchronous nature of calling REST and JSON-based APIs in a performant manner. Recent syntax improvements continue to simplify the weaving together of multiple asynchronous operations. Sometimes, JavaScript can even be elegant.

JavaScript consistently becomes more usable. Developers rally around the patterns that best enable them to produce rich experiences quickly.

JavaScript uniquely positions its developers to build the frontend and backend of their applications in a single language, enabling them to connect clients on the Edge with the heavy-duty AI services running in the cloud. Consider the possibilities when JavaScript developers combine interfaces their users can touch, drag and speak to with today’s and tomorrow’s most potent AI models.

4: JavaScript frameworks bake in effective development patterns. Hosting platforms deploy frameworks directly.

Frameworks like Next.js encode years of hard-won learning around the fastest and most effective ways to build and deploy web applications. Hosting providers are optimizing their infrastructure to deploy JavaScript frameworks directly, requiring zero configuration or DevOps knowledge to push a full-stack application into production.

JavaScript developers can rapidly iterate on their application locally, then perform a git push command to deploy their application on infrastructure that scales to support millions of users.

This deployment pipeline allows modern JavaScript developers to leverage Boyd’s law to their advantage: “Speed of iteration beats quality of iteration.”

For JavaScript developers, the loop starting with a killer app idea rattling around in their brain and ending with a live prototype they can link to their manager on the opposite side of the earth has never been shorter.

5. Digital builders who compose AI services and iterate quickly will win.

Forthcoming standout applications will compose pipelines of AI services to perform feats of productivity and intelligence not previously possible. Imagine combining computer vision APIs that identify objects in a satellite feed with an advanced Large Language Model (LLM) that can reason about the scene and a vector database like Pinecone’s to retrieve context from long-term memory.

Apps could scan for deadly wildfires as they’re beginning, look up emergency response assets geographically closest to the start of the fire, and route them around traffic to help humans squash a devastating fire before it reaches full strength, all while issuing alerts to the smartphones of everyone who lives in the area so that they can get their families and pets to safety.

These advanced solutions, and others we can’t yet conceive of, will belong to the digital builders who can most rapidly compose AI services, test locally, iterate, and deploy globally to all form factors - from smartphones to drone panels to electric vehicle dashboards.

When developers can rapidly weave together the latest AI services and tap into global sensor networks, data feeds, and remotely operable devices, they see the Edge as a programmable extension of their imagination. They can connect intelligent agents to perform work that is too dangerous or tedious for humans. It’s truly a remarkable time to be alive. And it’s a perfect time to learn how to code in JavaScript.

But if you still feel squeamish at the mention of JavaScript powering complex services in production, consider the players who have already used Node.js as part of their production tech stack, such as Netflix, PayPal, LinkedIn, Walmart, Uber, eBay, and even NASA, to name a few.

6. JavaScript receives tooling improvements and robust AI libraries.

Transformers.js is a JavaScript library functionally equivalent to HuggingFace’s transformers Python library. Transformers.js allows developers to include natural language processing (NLP), computer vision capabilities, speech recognition, classification, and more in pure JavaScript. This library is just one example of how the JavaScript ecosystem continues to receive powerful AI tools that were initially the sole purview of Python libraries.

Pinecone’s fully managed vector database, which provides long-term memory for AI, is available via JavaScript and Python.

LangChain is one of the most popular open-source frameworks for working with LLMs and building Generative AI applications. Notably, it is available in both Python and JavaScript.

TypeScript recently brought type safety to JavaScript, empowering developers to refactor large codebases more confidently and build large applications with a team more effectively.

Developer-facing tooling continues to receive tremendous investment from the open-source community and critical sponsors, and given the language’s enduring popularity and steadily increasing capability, we see no signs of this investment slowing down.

What does this mean for JavaScript and Python developers?

Is Python going away? No. Projects such as Mojo will improve the developer and deployment experience for the Python community.

But the expanding appetite for data-rich applications that can run anywhere, the accessibility of advanced AI capabilities that are one API call away, and the ongoing marriage of powerful JavaScript frameworks to highly optimized deployment platforms represent unprecedented empowerment for JavaScript developers. It is an excellent time to be a JavaScript developer building in the AI space.


Share via: