Microsoft swings for the fences and hits it out of the park! .Net is NOW open source!
WHAT?! Oh yes, it’s true, my friends. This is a monumental time for the .Net development platform. On November 12th 2014, Microsoft released .Net Core to the open source community and it is available on GitHub.
The official story is that this is an effort to lay a foundation for a true cross platform .Net development experience. This will allow .Net developers to create and run code on more than just Windows operating systems using native .Net components. Now the framework will port fully to Linux, Mac, iOS and Andriod.
What is that you’re asking? .Net works on Linux and Mac already? Well, yes, it does, but that is through the Mono framework, which is a compatible framework for .Net, but it is still not the “real deal”. The groups that developed the Mono project literally re-implemented .Net. As many of you know, Mono supports much of but not the entire implementation of .Net and it taps out at a specific version. Now, the open source .Net Core will support all native components of the most up-to-date version of the framework.
Microsoft also hopes to leverage the open source community to innovate .Net and provide more regular updates to the platform. The idea is that if people are constantly working on the project then new enhancements can be implemented by developers themselves and help make .Net more usable for programmers across the world. Updates can be checked in, reviewed, and released by Microsoft lickety-split!
What do I think about all this? I think that expanding .Net to more operating systems cannot be a bad thing. For decades developers have been looking for a true cross platform single codebase development framework that we can use across all environments. I believe that Microsoft is keenly aware of the pitfalls and verboseness of Java and Objective-C and they know that they have done better and now they want to take over that space. They want to get developers “addicted” to the .Net languages. And if we are being honest with ourselves, C# is a pretty fantastic language. Java just sucks for the most part. I understand its usefulness, but whenever I write for a while in Java and then switch to C# I am always relieved! I get tired of convenient classes with convenient classes, try catch all over the place and 24 lines of code to do a simple task.
I know a lot of developers are going to be excited about this. I have already seen the glee throughout the circles that I inhabit. I am behind this movement and I personally hope that .Net takes it all over! Go Microsoft, and thanks for this.