ZIO plans to streamline its ecosystem in 2025 by integrating core projects and focusing on enterprise stability.
#zio
#scala
#oss
#enterprise
Written by John A. De Goes
The ZIO community is closing out 2024 with impressive momentum, including:
When peeking ahead into 2025, the natural question is: where is ZIO going to go, especially now that my consulting firm Ziverge has diversified beyond just Scala?
In this post, I’ll provide a brief overview of major improvements planned to the ecosystem, as well as more details on the future direction of Ziverge.
In early 2024, I juggled my open source priorities to focus more of my time on Golem, a new serverless platform for building and deploying elastic and fault-tolerant backends.
With less of my time spent on ZIO, a number of new contributors have risen to new heights to help continue ZIO’s history of innovation and support.
New contributors who have demonstrated exemplary leadership and technical skills include Kyri Petrou and Nabil Abdel-Hafeez, as well as dozens of other capable and motivated contributors who have submitted hundreds of pull requests to ZIO ecosystem projects.
Meanwhile, adoption of ZIO continued to rise throughout 2024, reaching our highest levels ever, and decisions that were long controversial in ZIO’s early history have become the standard.
After years in the market, ZIO has finally established itself as the “enterprise effect system”, eschewing all jargon and higher-kinded abstraction for a ruthlessly pragmatic take on how to rapidly build robust, resilient, scalable cloud native applications.
Despite this success, however, the Scala landscape has changed since ZIO 1.0. Fewer companies are using Scala for new projects, and many are adopting alternative languages that have a better stability and tooling track record.
With this reduction in the size of the Scala market, many open source projects suffer from reduced manpower. Beyond reduced manpower, the smaller community is split into tinier slivers due to the number of library choices that Scala developers have available to them.
A world in which Scala is growing is very much different from one in which Scala is shrinking. Although eventually the decline will stabilize, for now, Scala open source contributors need to be thinking carefully about how to weather the storm in a way that doesn’t compromise support.
In order to focus resources on what matters, and ensure that ZIO continues to be the “enterprise effect system”, we will be making the following changes:
In the sections that follow, I will discuss these changes in more detail.
Some projects in the ZIO ecosystem are so essential to the full ZIO experience that we will be promoting them to ZIO core. While mostly, this means relocating the code into core, in some cases, there will be additional opportunities for tighter integration, which will improve the developer experience for ZIO users who use these projects.
The goals of this promotion are as follows:
Though the final list remains up for discussion, the following projects have a high likelihood of being integrated into ZIO Core:
Though integrated into core, these projects are likely to have separate artifacts and therefore, the cost of integrating them may fall only to the applications using them.
The ZIO organization freely handed out top-level repositories to any interested contributors. This, combined with the shrinkage in the Scala market, has led to many half-finished ZIO projects that are not actively maintained.
At this point, we can safely say that most of these inactive projects will not be resumed, because there is simply not the interest and manpower from the community to make it happen.
In order to clean up the ZIO organization and ensure only active projects are represented, we will be archiving a number of ZIO projects that do not have an active lead.
As before, the final list is up for discussion, but most likely the following projects will be deprecated and removed from the ZIO organization:
Some other projects, which have modest activity, may also be targeted for this list.
Some projects, while not yet candidates for integration into core, are nonetheless indispensable to the ZIO ecosystem, and will require ongoing investment.
Among the projects that make this list:
It’s conceivable that at some point, one or more of these libraries could be integrated into Core.
Those of you who carefully read the list of inactive projects may notice that, with zio-sql and zio-jdbc being deprecated, the only maintained RDMBS library in the ZIO ecosystem is Quill.
In this case, and several others, we are accepting that ZIO will not have its own library in some major category.
In the case of database access, in particular, it is not clear that having a ZIO-native library adds much value, since any sort of result or stream can be easily adapted for use in ZIO.
So rather than take on the burden of developing and maintaining a full library for what is marginal benefit, we will take an alternative approach: identify and invest into promising ecosystem-neutral libraries that are able to host nice (but lightweight) ZIO integrations.
For relational database access, the Magnum library looks promising, but our official endorsement and investment into the ecosystem will require review and testing.
Although I have ideas for ZIO 3 – and they are unlike anything currently being explored in the ecosystem – for now, the focus must be on stabilizing core ZIO libraries, to provide a robust foundation into the future.
My goal is that companies building on ZIO 2.1 now can expect a very long life out of the 2.x line, in which backward compatibility and binary compatibility are prioritized over the latest fads.
This means that ZIO will continue supporting Scala 2.13 and Scala 3.x, and that, by incorporating some projects into Core, we will only increase the amount of code we safeguard with these same strong guarantees.
Nonetheless, in 2025, it will be time to begin exploring the next major iteration of ZIO HTTP, and I have some ideas of how to improve usability and performance of this library even further, without significant breaking changes.
It’s possible that we might see one or two libraries around current pain points (such as gRPC), and quite likely that a Golem library will emerge, for building applications on Golem.
As we head into 2025, it’s worth discussing how Ziverge is itself evolving.
Although we still primarily do Scala team extension, training, and custom software development, we are doing an increasing amount of Rust, Java, and Typescript.
Ziverge was founded with ZIO, and ZIO is extremely critical to our business even now, as we provide custom software development services with ZIO and other effect systems. We will continue to invest in open source bounties and educational resources for the ZIO ecosystem, to ensure the effect system remains the top choice for large companies.
We are also sponsoring development of “backend WASM” for the Scala programming language itself, which is an exciting contribution that will be useful to Scala developers outside ZIO.
As the number of languages and technologies we support increase across our client base, you can expect to see additional investments into ecosystems beyond Scala and ZIO – including my new passion project that I have begun talking about, Golem.
Though we have changed a lot in the past couple of years, Ziverge is still a big supporter of Scala, and will continue investing heavily into the Scala ecosystem, even as we expand from doing only Scala development into other languages and technologies.
This year has been a landmark year for ZIO, marked by significant achievements including the release of ZIO HTTP, the completion of Zionomicon, and continued enterprise adoption. As we look ahead to 2025, we’re taking strategic steps to strengthen the ZIO ecosystem and ensure its continued success as the enterprise effect system of choice.
Our planned changes will streamline and fortify the ecosystem in several ways:
While the Scala landscape has evolved, ZIO’s pragmatic approach to building robust, scalable applications continues to resonate with enterprises. With Ziverge’s ongoing commitment to the ecosystem through bounties, educational resources, and exciting new initiatives like backend WASM support, ZIO is well-positioned for an even stronger future.
These changes will result in a more focused, maintainable, and powerful ZIO ecosystem that delivers exactly what enterprise developers need: a rock-solid foundation for building modern cloud-native applications.
Stay ahead with the latest insights and breakthroughs from the world of technology. Our newsletter delivers curated news, expert analysis, and exclusive updates right to your inbox. Join our community today and never miss out on what's next in tech.