Coding Horror

programming and human factors

Go, Monkey!

There's an interesting interview with Miguel de Icaza at Miguel is the primary developer behind the open-source port of the .NET runtime known as the Mono Project. This project was recently purchased by Novell, ostensibly to bolster the development tools available on Linux. Miguel seems refreshingly free of the dogma I expect from Linux and open source developers in general:

Oh, Unix is a world of pain for developers. Now, basically what we got is very modern IDEs (integrated development environments) for developing software on other platforms.

So, for example at Novell--and this was a choice that I really wasn't involved in--but they looked at the (Mono) technology and they found exactly what they were looking for implementing this thing called iFolder 3.0, which is a new version from scratch with many new features, similar to the Longhorn WinFS with synchronization of data, backups, all kinds of interesting things. They could write in C++, but the schedule would just go out the window, or they could do it in C#, but it would be Windows. And when Novell acquired Ximian they had the option of building the same software that runs on Windows and on Linux.

So today they support Windows, Linux and the Mac OS with the same tool base. It helps developers focus more on what they are doing instead of with the nitty-gritty details of the specific platform. There's a lot of new development happening on Mono. We (at Novell) are centralizing on Mono as our internal development platform.

Also some interesting insights on the J2EE vs. .NET discussion:


It also seems that mono has focused on the server side of things with ASP.NET and basically punted on the whole GUI/winforms side of .NET, and I can't blame them.
Q: Will you be able to port everything that Microsoft does on Windows to other operating systems?

The new UI stuff, I have struggled a lot with what we are going to do with our toolkit.

Still, it's great to have options. Who doesn't like the idea of having flexibility in platform deployment choice, at least in theory? It certainly helps .NET's credibility a lot in comparison with "write once, debug everywhere" Java.

That's why I say, go, Monkey!

Written by Jeff Atwood
