Just two days back, CloudFoundry community got excited about the support for .NET on the CloudFoundry framework. Even before the euphoria subsided, there is another announcement coming today, this time from Uhuru Software, about another implementation of .NET on CloudFoundry. Uhuru is a startup coming out of Stealth mode, founded by Microsoft veterans, offering comprehensive integrated application development platforms, management tools, and services to enable rapid development and deployment of solutions in private or public clouds by enterprises and service providers. Similar to Tier3, this is a fork that brings .NET PaaS without Microsoft in the picture. With Uhuru’s implementation, .NET developers can use the tools they are already familiar with, like Visual Studio and Microsoft Management Console (MMC) snap-ins, and quickly deploy software they write to whichever cloud service they want to use.
Uhuru’s .NET implementation comes with the following components:
- Core .NET fork of CloudFoundry
- Visual Studio Plugin
- MMC with Snap-ins
What is the difference with IronFoundry?
Tier3 released IronFoundry, their implementation of .NET support on CloudFoundry, two days back. Looking from outside, you may not notice any big differences between them but there are some differences under the hood, like how the native Windows hooks are implemented, etc.. CloudFoundry’s blog post highlights how these .NET implementations are done.
Unlike other frameworks supported by Cloud Foundry, .NET requires a Windows based DEA running an IIS web server. An important part of the newly open sourced code is the support for Windows-based DEAs. Note that this implementation requires customers to bring their own Windows licenses for each Windows-based DEA. Cloud Foundry itself continues to run on Linux and does not require Windows licenses, but manages the Windows-based DEAs as it does any other DEA.
.NET developers can access any application service or data store within the system, and support for Windows-based DEAs also opens the door for Windows-based applications service such as SQL Server. The end result is enterprise customers will have a common model for deploying and scaling both Java and .NET applications, as well as the newer frameworks supported by Cloud Foundry.
The contributors are also working on Visual Studio add-ons and MMC snap-ins that allow .NET developers and Windows administrators to harness Cloud Foundry through the tools they already know.
The users of these two implementations may not see any difference except for the fact that Tier3 implementation offers Windows CloudFoundry Explorer whereas Uhuru’s solution offers Microsoft Management Console plugin. However, developers taking the code of both these implementations might notice significant differences.
Like IronFoundry, Uhuru’s implementation is also released under Apache 2 license. It is the responsibility of users to bring their own Windows licenses for using it with CloudFoundry.
WTF, why would anyone want two .NET implementations of CloudFoundry?
This is clearly a case of two vendors coming out with almost similar products. Usually, market forces are expected to choose a winner. Both Tier3 and Uhuru Software were working independently on their projects and are, coincidentally, releasing at the same time. According to the conventional wisdom, one of the projects will win depending on the developer traction. Since I have very little respect for conventional wisdom, I see this in a different light. In my opinion, open source is all about choice. These two different implementations of .NET on CF offers developers more choices. Ultimately, one project might get overwhelming traction than the other. Even in that scenario, the beauty of open source will ensure that the best features of one is implemented on the other, thereby, offering the users a vastly superior product. The next several months will be a battle for the mindshare among the developers and we will eventually know how this is played out. We should also keep in mind that .NET implementation of CloudFoundry is just a piece in the overall long term plans for both Tier3 and Uhuru Software. I don’t see them as wasted engineering efforts but rather a welcome move which will eventually result in a much superior offering. A win for the CloudFoundry community.
Uhuru software is planning to monetize the implementation from day one by offering support services. Whereas, Tier3 has other plans and have no immediate plans for direct monetization of IronFoundry. There is a good chance the business strategies of these two companies may overlap in the future but, hey, market forces will ultimately decide who wins. Either way, it will be interesting to see how this plays out in the CloudFoundry community in the coming months. As I told in my Tier3 post, VMware is watching this competition and I think they will eventually embrace the project that gets highest traction.