Ballerina

Join the Ballerina Track
Ballerina is a cloud-native programming language that incorporates fundamental concepts of distributed system integration into the language and offers a type safe, concurrent environment to implement microservices with distributed transactions, reliable messaging, stream processing, and workflows.
Join the Ballerina Track
Track mentors

3 Mentors

Our mentors are friendly, experienced Ballerina developers who will help teach you new techniques and tricks.
Track students

66 Students

Join the many students who have enjoyed learning and improving their skills by taking this track.
Track exercises

9 Exercises

Hundreds of hours have gone into making these exercises fun, useful, and challenging to help you enjoy learning.

About Ballerina

import ballerina/http;
import ballerina/io;

service<http:Service> hello bind { port: 9090 } {

  sayHello (endpoint caller, http:Request request) {
    http:Response response = new;
    response.setTextPayload("Hello Ballerina!\n");
    _ = caller -> respond(response);
  }
}

Ballerina is a compiled, transactional, statically and strongly typed programming language with textual and graphical syntaxes. Ballerina incorporates fundamental concepts of distributed system integration into the language and offers a type-safe, concurrent environment to implement microservices with distributed transactions, reliable messaging, stream processing, and workflows.

Ballerina is a language designed to be integration simple. Based around the interactions of sequence diagrams, Ballerina has built-in support for common integration patterns and connectors, including distributed transactions, compensation and circuit breakers. With first-class support for JSON and XML, Ballerina makes it simple and effective to build robust integration across network endpoints.

Join the Ballerina track

Exercism is a great website

The reviews are incredibly helpful because they help me see things that I missed, learn about new ways and sometimes interesting discussions that can add a fun twist to maybe a simple problem.

Relaxed. Encouraging. Supportive.

Meet the Ballerina Track mentors

Once you join the Ballerina language track, you will receive support and feedback from our team of mentors. Here are the bios of a few of the mentors of this track.

Avatar of Manuri Perera

Manuri Perera https://github.com/Manuri

This mentor has not added their bio yet.
Avatar of Chanaka Lakmal

Chanaka Lakmal https://github.com/ldclakmal

As a contributor of Ballerina language, I find Ballerina makes it easy to write microservices that integrate APIs while maintaining reliability, scalability, observability, and security.
Avatar of Lynn Langit

Lynn Langit https://github.com/lynnlangit

As a Cloud Architect and Developer, I find the Ballerina language to be useful for many enterprise integration scenarios.
Fun. Challenging. Interesting

Community-sourced Ballerina exercises

These are a few of the 9 exercises on the Ballerina track. You can see all the exercises here.

Echo Service
easy
http
services
strings
Order Management
easy
http
json
map
Hello World Service
easy
strings
services
http
Hello World
easy
strings
Greeting Service
easy
http
services
strings
Service Invocation
easy
http
services
strings
log

Get started with the Ballerina track. As with everything on Exercism, it's 100% free!

Join the Ballerina Track