What is d7073c02eca990a65c2c4c911fe33b20?

As many of you have guessed d7073c02eca990a65c2c4c911fe33b20 is an MD5 hash. It is actually a hash of a zip archive of documentation for the acquisition by Terracotta Inc. of Ehcache. Adding an MD5 hash into a contract caused the lawyers some angst. They hadn’t seen it before and were naturally reluctant to include it.

The MD5 went through multiple revisions but the final hash is the one I blogged and tweeted. My new colleagues at Terracotta got in on the fun and also started blogging and twittering. We then watched the fun unfold on the blogosphere and twittersphere as people searched for what is obviously a unique string and looked for the patterns.

The prize goes to Matt Raible for getting closest to the correct answer.

What is Happening

Terracotta Inc. is acquiring Ehcache. On one side we have a late stage startup and on the other an open source project. So what does that mean? It means the copyright notices in Ehcache source code change to Terracotta Inc, I join Terracotta, and we get on it. The status of the many contributors to Ehcache who have licensed their code to the Ehcache project remains unchanged.

Why is it Happening?

The timing of this is perfect for both Ehcache and Terracotta. Reflecting on it with Amit Pandey, CEO and Ari Zilka, CTO of Terracotta Inc, we realised that this would not have happened a year ago and may not have happened a year from now. Ehcache and Terracotta have been cooperating for the last two years since I agreed with them at JavaOne 2007 to do an integration. To me distributed caching was a hard problem and I have invited all comers to solve it. We now have four mechanisms: RMI, JGroups, JMS and Terracotta. The Terracotta integration provides coherence, massive scale and visibility. The integration has been so successul that fully 50% of Terracotta’s customers use Terracotta via Ehcache. This presented both an opportunity and a challenge for Terracotta. Fortunately for the Ehcache community, Terracotta have taken the opportunity to acquire Ehcache.

What about open source

Ehcache is a project committed to open source goals. Bottom up construction with the community driving innovation. As anyone who has submitted a bug report or patch to Ehcache knows, I seriously consider every contribution and incorporate most of them – all with a maniacal attention to detail and quality. Ehcache has always followed the benevolent dictator open source model. Commit access is closely guarded but contributions are welcome.

What stands behind my approach to Ehcache and other open source projects I maintain is my open source philosophy: “Simply and naively, why not make the world a better place?”. It is entirely possible to do well and help others at the same time.

News flash: Terracotta is also an open source company. The difference is they have a business model.

I also think there is a consolidation going on in distributed caching. Ehcache has been on the winning end of that, and now with Terracotta’s help, we will jointly strive to continue that past success.

What this means for Ehcache Users

  1. Ehcache remains under the Apache 2 license
  2. New feature development is accelerated with the addition of a team of engineers working full-time on Ehcache
  3. I am full-time on Ehcache. I have not had the time I would have liked to devote to Ehcache (I have been doing a miserly 10-15 hours per week for the past 6 years) but now I do. Look out!
  4. Ehcache extends its standards support. There are multiple emerging standards in this area and I plan to work with the community to lead further standardisation efforts. A lack of time has been my biggest obstacle in doing more on this to date.
  5. Ehcache gets new hosting at ehcache.org with
    state-of-the-art forums, source control and bug reporting. The changes will happen slowly and carefully.

  6. File release at sourceforge.net is retained
  7. Maven deployment to oss.sonatype.org and Maven Central is retained.
  8. Distributed caching via Terracotta is seamless. Ehcache users can have full confidence that they can start single node and scale as high as they need to with Enterprise features.
  9. Enterprise support, training and professional services for Ehcache. I have provided these for a few years now, but now we will have the full Terracotta organisation behind them with the usual SLAs.

What this means for Terracotta Users

  1. Ehcache APIs will replace Terracotta distributed cache APIs as a single caching interface / standard for Terracotta distributed caching
  2. a single-node version of Terracotta ala Ehcache will be available for the first time
  3. Full freedom to run on the latest version of Ehcache at all times, knowing it will work with Terracotta
  4. Single vendor support structure for caching interfaces / libraries as well as their scalability / reliability runtime.
  5. the investment protection of standards


See Terracotta’s news announcement for more detail.

Terracotta founder and CTO Ari Zilka has a blog post on the acquisition. He explains the same material from a Terracotta viewpoint and gives insight into the product roadmap.

At last, the important stuff

The Terracotta – Ehcache blend is a natural one that works. What has really been occupying my attention the last week is deciding pronunciation issues. Anyone who has attended my JavaOne sessions knows that I pronounce Ehcache as “ee h kay sh“. Alternative pronunciations in use are “eh cash” (USA) and “eh kay sh” (Canada and Atlassian). Given that Ehcache is going to be around for a long while and I am the founder let me state that the official pronunciation is “ee h kay sh“. Now let’s get on with it.