Project lead: Let’s build some data-centric apps!
Developers: Hmm, you sound too keen – and anyway, how screwy is the requirements-gathering process and what crazy requests have we got from the user base?
Project lead: Relax, the requirements only evidence 10% of the normal insanity and we’re building in a data-developer platform environment specifically designed to reduce operational overhead in the face of deployment across cloud services making full use of Infrastructure-as-Code (IaC) and leveraging code libraries that allows data scientists and Machine Learning (ML) practitioners to work with data stored to build modern applications with less heavy lifting.
Developers: Have you been drinking?
Back in the real world, some of the above may actually form part of the new fabric of conversations in cloud-native data-driven software application development project environments. MongoDB certainly hopes so, the company used its developer conference MongoDB.local NYC to announce new capabilities for its NoSQL database.
The new tools include additional programming language support for using Infrastructure-as-code (IaC) to deploy MongoDB Atlas on AWS and building server-side applications with Kotlin, streamlined capabilities for MongoDB Atlas Kubernetes Operator and the general availability of the PyMongoArrow library for more efficient data analysis using Python.
NOTE: Kotlin is a cross-platform, statically typed, general-purpose high-level programming language with type inference designed to make coding concise, cross-platform (and fun) and is said to be Google’s preferred language for Android app development.
Taken as a whole, MongoDB says its new capabilities expand the company’s mission to meet developers where they are by integrating the tools they love in a single developer data platform.
Ending ‘undifferentiated’ heavy lifting
We know that developers rely on MongoDB Atlas as a developer data platform for its flexible data model and its ability to eliminate the undifferentiated heavy lifting of infrastructure management. Although this is a unified developer data platform, the firm says that for certain use cases, developers want to use specialised tools with MongoDB Atlas to integrate their established workflows and have more granular control over the operational experience.
“For example, developers who prefer provisioning MongoDB Atlas clusters with IaC on AWS or building server-side applications want to use their programming language of choice. Further, many developers want to use the MongoDB Atlas command line interface (CLI) for more tasks in their specific workflows, while other developers want to be able to use additional programming languages for data science, machine learning, and application-driven analytics,” explained the company, in a technical statement.
The new features and integrations announced today reinforce MongoDB’s commitment to providing the best developer experience for building and iterating on ideas rather than wrangling tooling.
Developers can now use additional programming languages to create, manage and update MongoDB Atlas resources using IaC with the AWS Cloud Development Kit (CDK). MongoDB provides support for IaC on AWS with the AWS CloudFormation Public Registry, AWS Partner Solution Deployments and the AWS CDK.
“Our long-term vision is to create a developer data platform that removes as much builder friction as possible and makes it easier for developers to do what they do best – build,” said Sahir Azam, chief product officer at MongoDB. “Developers choose MongoDB Atlas because it’s the best place to quickly build applications that can make the most out of their data. We continually hear from developers that they want to be able to use even more tools seamlessly on MongoDB Atlas, so with these additional integrations and expanded features, we are taking another step in fulfilling our mission to meet developers where they are and to provide the best possible building experience with the least amount of friction.”
Also here we find expanded programming language support for server-side Kotlin. The Kotlin Driver for MongoDB now allows developers to build performant server-side applications on MongoDB using Kotlin.
Previously, developers could use the MongoDB Realm Kotlin SDK for client-side development, but server-side developers relied on a community-created driver without official MongoDB support or had to write extensive custom code. As a result, developers faced longer software development cycles to build server-side Kotlin applications on MongoDB and risked application reliability without a fully supported MongoDB Kotlin driver. Now, with the Kotlin Driver for MongoDB, developers can use a better Kotlin experience for server-side application development.
Developers use the MongoDB Atlas Kubernetes Operator to manage projects and database clusters, reduce the effort required to automate the configuration and management of MongoDB Atlas and take advantage of containerised application development.
However, says MongoDB, developers want a simpler way to install and set up the MongoDB Atlas Kubernetes Operator to reduce friction and manage applications more quickly.
Reduce operational overhead
Using the MongoDB Atlas CLI, developers can now install the MongoDB Atlas Kubernetes Operator and generate security credentials for easy setup to reduce operational overhead. Developers then have the option to import existing MongoDB Atlas projects and deployments with a single command.
Finally here, we also find easier data processing and analytics on MongoDB using Python: With the general availability of the open source PyMongoArrow library maintained by MongoDB, developers and data analysts can use a Python-based analytics stack to extract insights from data on MongoDB and build data-driven applications more quickly.
“Building modern, intelligent applications that take advantage of application-driven analytics requires harnessing insights from application data and incorporating those insights back into applications to adjust business logic in real-time. The PyMongoArrow library allows developers to efficiently convert data stored on MongoDB using popular frameworks (e.g., Apache Arrow Tables, Pandas DataFrames, or Numpy Arrays) and will receive ongoing development and support from MongoDB as the needs of Python-based analytics stacks evolve.
As RedMonk analyst Stephen O’Grady reminds us while the explosion in database, development, and infrastructure tooling in recent years has put more and more resources into the hands of developers, it’s also led to a heavily fragmented and inefficient developer experience
“Increasingly, however,” said O’Grady. “Enterprises are focusing on opportunities to thoughtfully retool their workflows to make them faster and more integrated. The C-suite is making these investments not just because it benefits developers by delivering a higher quality and lower friction experience, but because having more efficient developers that are able to iterate more quickly is the single best mechanism for improving an organization’s overall velocity.”
Project lead: See, we really did tackle operational overhead and look to engineer-in better ways to combat tool fragmentation with a more unified integrated data-developer platform as a result, right?
Developers: It might just be humongous, pass the pizza.