Something hit me in the pit of my stomach last week as Miguel de Icaza previewed MonoDevelop 2. Actually, several things did.
First, Mono is really growing up. It’s true that it doesn’t implement all of the newest framework features. And it’s true that it’s not very welcoming unless you want to fiddle with makefiles and manual compiler invocation, which strikes particularly hard since the kind of people who want a higher abstraction than C don’t tend to want to limit themselves to the language itself.
But look at what Mono has accomplished. They have stolen Microsoft’s write-once-run-uh…-here technology, they have extended it, they have written a modular compiler that’s beaten Microsoft itself to the punch by announcing and providing a REPL for C# before Anders Hejlsberg could as much as crack out his sneak peek at PDC. They have made reshaping the CLR and Base Class Library possible and they have ported it to several platforms.
They have out-embraced and out-extended Microsoft, but this time, and because it went in the other direction, it’s actually a good cause. Several Linux distribution flagship applications are now written in a language Microsoft made up ten years ago; not in the GPL-ed Java created by the renowned, Free Software-friendly UNIX vendor. If you think the mythical “year of Desktop Linux” is the only indicator of the success of the Linux-centered open source community*, I ask you to please reconsider your positions.
But that’s not why I’m excited. The reason why I’m excited is because MonoDevelop is finally heading into the territory of good IDEs and simultaneously expanding seriously for other platforms. It’ll run well on Mac OS X and Windows beyond just Linux, it’ll support the most recent language features (until C# and .NET 4 come out, I guess), it’ll support debugging through GDB which means support for both managed and native code (passably) and it’ll make building and maintaining Mono .NET projects easy even if you’re born without the “Makefiles are not a chore” flag set. I’m not sure how good it will be at GUIs because I never managed to use a designer in the pre-2 MonoDevelop version currently downloadable for OS X, but one step at a time.
If noted fan-winders and working set-guzzlers Eclipse and NetBeans for Java are taken out of the equation, the released MonoDevelop 2.0 may be the IDE that is most knowledgeable about its primary target language available on Mac OS X. And that’s a funny thought.
Moreover, I advise that the iPhone software platform must be opened.
* By “Linux centered open source community”, I do not refer to a single open source community that’d “obviously” be centered around Linux, nor am I misnaming the parallel and surely largely overlapping Linux centered Free Software community. I mean exactly what I write: the particular open source community that is centered around Linux.
No comments yet.
Leave a comment
Your e-mail address is never shown. If you type a line break in the comment, it will show up as a line break (naturally). The following HTML is allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>