The latest release of Ballerina open-source language extends unique ability to simultaneously code using text and graphical views to Visual Studio; delivers capabilities for helping developers rapidly build, integrate, and deploy services and APIs in the cloud
Enterprises are moving to cloud-native applications to accelerate their innovation and scale their digital services. Yet too often programming languages that were never designed for the cloud cause unnecessary complexity and delays. Now with general availability (GA) of the Swan Lake release of Ballerina—announced today—organisations have an enterprise-grade, open-source language that radically simplifies how developers build, integrate, and deploy cloud-native applications.
Ballerina is a 100% open-source project created and sponsored by WSO2, with all parts of the project developed openly at https://github.com/ballerina-platform. Already downloaded by nearly 10,000 developers worldwide, Ballerina is the only modern cloud-native programming language that provides features for easily using, combining and creating network services for the cloud.
Uniquely, Ballerina provides a bidirectional mapping of sequence diagrams and code, meaning the diagram is the code, and the code is the diagram. As a result, developers can easily switch between working in a pro-code or low-code view of a program as needed to maximise their productivity. At the same time, Ballerina removes much of the complexity in developing enterprise-grade cloud-native applications, APIs and microservices by providing a first-class way to represent network interactions while streamlining many functions around data usage, configurations, cloud deployments, and more.
“The move to cloud-native applications—which are inherently integrations of services, data, transactions and processes—has rendered many older programming languages obsolete,” said Dr Sanjiva Weerawarana, founder of the Ballerina project and founder and CEO of WSO2. “With our Ballerina Swan Lake release now in GA, development teams for the first time have a modern programming language that simplifies cloud-native app development and integration, facilitates collaboration, and enables developers to rapidly innovate new digital products and services.”
“Ballerina provides an integration-centric approach to building cloud-native applications that leverages an HTTP-centric programming model,” said Jason Bloomberg, president of industry analyst firm Intellyx. “As a result, Ballerina shifts integration complexity away from protocol-centric challenges to the broader architectural considerations that drive the creation of high-quality, scalable cloud-native applications.”
Maximising Developer Productivity
The Swan Lake release extends the benefits of Ballerina to the global Microsoft Visual Studio (VS) developer community with the significantly expanded functionality of its Ballerina VSCode plugin. Now developers can use the widely adopted VS Code source-code editor while taking advantage of Ballerina to simultaneously edit programs both graphically and textually. The Ballerina VSCode plugin also features intelligent code completion for the Ballerina language via the Ballerina Editor, syntax highlighting and debugging.
The plugin complements Ballerina’s intuitive syntax for developing APIs and different types of services, including RESTful, GraphQL, WebSocket and gRPC services. Also included are seamless support for JSON, XML and ProtoBuf; powerful constructs for working with data; and automatic concurrency control to support enterprise-grade applications. Configuration management is an inherent feature of the language allowing DevOps teams to securely inject environment-specific configurations into Ballerina programs. Additionally, Ballerina observability enables developers to understand the execution and performance impact introduced by the Ballerina program.Collectively, Ballerina’s capabilities enable development teams to create and integrate resilient, secure, high-performance APIs and microservices that are easy to maintain and iterate on.
Ballerina also comes with deployment abstraction capabilities and supports the generation of Docker and Kubernetes artefacts from code without additional configuration. This simplifies the experience of developing and deploying Ballerina code in the cloud. Code-to-cloud features build the containers and required artefacts by deriving the required values from the Ballerina code to deploy an enterprise’s code into different cloud platforms, such as Amazon Web Services (AWS) and Microsoft Azure.
“I am very impressed with Ballerina’s ideas. I would call this language, ‘Java for modern, agile microservices’,” said Kirill Keker, a solution architect in the Core Team at MVideo. “Thank you for that!”
Full Development Platform
The Ballerina platform provides comprehensive support for modern software engineering processes and toolchains, including:
- A framework for package/module management, including dependency and version control, which produces repeatable builds from the same source code
- Ballerina Central, a public web service for sharing modules among developers
- A framework for documentation and testing of Ballerina programs
- Built-in tooling for OpenAPI (Swagger), gRPC and AsyncAPI
- An update tool for keeping Ballerina installations up to date with the latest releases
- An interactive command-line shell for rapidly learning and prototyping Ballerina code
- A comprehensive standard library with support for many network protocols, data sources, and data formats to ease Ballerina language adoption
Availability and Support
Ballerina Swan Lake version 2201.0.0 is generally available today. As a fully open-source implementation released under the Apache License 2.0, it does not carry any licensing fees and can be freely downloaded at https://ballerina.io/downloads. Users can find support through its growing open-source community on Ballerina’s Slack Channel, Google Group, or GitHub. Additionally, resources, such as the Quick Tour and Ballerina by Examples, can be found at https://ballerina.io/learn/by-example.
Sponsored and developed by WSO2
WSO2—which enables thousands of enterprises to drive their digital transformation journeys—has invested in Ballerina to address significant shortcomings in how middleware supports the cloud-native world. WSO2’s founder, Dr Sanjiva Weerawarana, created the project in August 2016 and led its technical design in collaboration with James Clark, bringing in their decades of software development and enterprise integration experience. WSO2’s engineering effort for Ballerina has included more than 300 person-years of investment in its nearly six years of development.
Ballerina is a simple-to-use programming language whose syntax and platform address the hard problems of cloud-native integration presented by today’s distributed apps and services. Ballerina is a statically typed, concurrent programming language with both textual and graphical syntaxes. It brings fundamental concepts, ideas, and tools of distributed system integration into the language. These include distributed transactions, reliable messaging, stream processing, workflows, and container management platforms. Ballerina is an open-source project under the Apache 2.0 licenseand is developed by the Ballerina community, sponsored by WSO2. To learn more, visit https://ballerina.io.