Those who like .NET may find themselves lamenting, “I still have to deploy applications on the Windows operating system. I am still locked to one vendor – Microsoft.” If this sounds like you, Ximian’s Mono project might be the answer. The Mono project was started in July 2001 by Miguel de Icaza, cofounder of Ximian, with the aim of bringing the Common Language Infrastructure platform to free systems.
Was I the only person who did a double-take at that headline?
“Was I the only person who did a double-take at that headline?”
Nope. I did too.
GNU’s .Net implmentation? http://www.dotgnu.org/
Anybody want to run some benchmarks 😉
“GNU’s .Net implmentation? http://www.dotgnu.org/
Anybody want to run some benchmarks ;-)”
Nope. I personally dislike the FSF’s implementation. One of the neat (and great things IMO) about Mono is that it’s largely written using the technology, whereas GNU’s is written in C.
Yeah, GNU’s starts up a tad faster as things like the compiler don’t need to be loaded into the runtime, but at the same time, GNU’s includes all of the failings of programs written in C, and none of the advantages of .NET.
It reminds me of the time when GNOME was founded because the FSF didn’t like the license used for QT. All they really needed to do was to work on “Harmony;” their QT compatible library, but despite their claims to the contrary, living harmoniously with others is seldom on their agenda. In other words, it was done for ideological reasons (as well intentioned as they may be), and not for practical ones.
I am not trying to troll here, these are just my thoughts on the matter.
…but at the same time, GNU’s includes all of the failings of programs written in C, and none of the advantages of .NET.
And what are the failings of programs written in C?
It reminds me of the time when GNOME was founded because the FSF didn’t like the license used for QT. All they really needed to do was to work on “Harmony;” their QT compatible library, but despite their claims to the contrary, living harmoniously with others is seldom on their agenda. In other words, it was done for ideological reasons (as well intentioned as they may be), and not for practical ones.
Yeah, and thanks to their ideology, GNOME is a leading open source project today. I’m pretty sure you don’t use GCC either, after it’s an ideological tool too, right?
I am not trying to troll here, these are just my thoughts on the matter.
Not at all. First you dismiss the FSF saying their contributions to open source are idealogical and not practical, then you go ahead to state you won’t use their implementation of .NET for idealogical and political reasons too. Nope, that’s not trolling. It’s just your opinion, right?
So if I wished to learn .NET on WindowsXP or Linux, I could do this by installing MONO?
So if I learn MONO, I know my apps will always work on Windows and *NIX?
PS. I would like to try learning C#, is MONO my best route if I don’t have the cash for an MS development environment?
Mono is a very good start.
Subject says it all… If you want to learn .net, do it with with microsoft stuff, as it has great docs, and you won’t find yourself getting strange errors if you’re trying to use uncompleted parts of the runtime library. The SDK is free, and so is sharpdevelop http://www.icsharpcode.net/OpenSource/SD/Default.aspx it’s not as good as VS.net but it’s pretty good and getting better. Can’t beat the price, either!
>PS. I would like to try learning C#, is MONO my best route if
>I don’t have the cash for an MS development environment?
No. Get .NET SDK from microsoft.com (it’s FREE) and then you can use Sharp Develop – it’s FREE and features things like: intellisense (code completion), visual forms designer, etc.
See it for yourself here:
http://www.icsharpcode.net/OpenSource/SD/
.NET SDK (C# and VB.NET compilers and documentation) is here:
http://www.microsoft.com/downloads/details.aspx?FamilyId=9B3A2CA6-3…
Command Line Interface was _always_ part of open source!
sheesh. how lame.
But seriously folks! No, really – look at how microsoft
has even stooped so low as to try and embrace and extend
our ACRONYMS! The nerve of those guys!
Thanks everyone. I will look into it.
There’s no solid portable GUI toolkit yet.
Windows.Forms requires using Wine on Linux (thanks, but no).
GTK#/win32 is not using native widgets and isn’t stable.
C# SWT port is good idea, but isn’t usable yet.
After installing the new microsoft .net update, my laptop decided that it was going to perform 802.11b wireless authentication across my er wired network. This made all network shares and internet access fail.
Even other windows machines stopped talking to it.
Maybe I should have phoned microsoft support ROFL.
I decided to stop my efforts with mono when I saw that they (the mono people from http://www.go-mono.org) only provide binary packages through Ximian RedCarpet, which is an additional package manager (based on rpm). Running Debian/unstable, I had used alien to create debs from their rpms, but there is neither an Debian build of RedCarptet nor an up-to-date repository of mono + tools/gtk# and so on (http://www.debianplanet.org/mono/ claims that the “effort is on hold definitely”). Since I already spent countless hours of trying out stuff with mono on my former SuSE system, I find no use in compiling mono myself.
I those people want their development platform to be taken serious , they should not only provide packages for distros money is in (SuSE, RedHat (+), Mandrake), but also Debian and Gentoo.
PS. I would like to try learning C#, is MONO my best route if I don’t have the cash for an MS development environment?
You do realize that Microsoft’s command-line C# compiler and libraries is free (as in free beer) right?
Mono’s more advantageous because it will start appearing on more and more non-Windows platforms. So your C# programs written for Mono will (hopefully) be compatible across many more OSes, even the official .Net implementation I assume.
Sorry, your question already been answered. I must be getting old and slow. Good day!
wow, time has been flying, hard to belive he’s been working on it for over 2 and a half years. Seams like it was started so recently. Hope they keap the good work up.
Mono is good but I want sql server ported to linux.
you can run perl scripts on Windows, Linux, OSX, Solaris, AIX, HPUX, and probably even BeOS.
You can also compile perl scripts to both dynamic and staticly linked binaries and will soon be able to write in just about any language you want. Perl is object oriented, if you like that sorta thing. Easy to document and work with. Easy to make excellent reuse of code. Its just easy!
So what is the point of learning C# again?
So what is the point of learning C# again?
Well, Perl isn’t strongly typed, which means for large projects it’s simply unmanagable. Furthermore, Perl has some of the most obfuscated context dependant syntax imaginable, and just poor syntactic decisions overall by its designers. In order to use Perl on anything collaboratively developed a stringent set of coding standards would need to be set down.
#!/usr/bin/perl -w (note the important thing here is the -w)
use strict;
is all it takes to make large projects managable.
There’s no solid portable GUI toolkit yet.
Windows.Forms requires using Wine on Linux (thanks, but no).
GTK#/win32 is not using native widgets and isn’t stable.
C# SWT port is good idea, but isn’t usable yet.
What about the wxWindows implementation? How far along is it?
So what is the point of learning C# again?
As far as C# vs perl, AFAIK, you can’t write GUIs with perl using VS.NET 2003. And even if this weren’t a limitation, I once tried writing a GUI with perl … never again.
Python is a different story though
> So what is the point of learning C# again?
The same points like of learning C++ or Java. So far I’ve used C# mainly for a small web project, and I really like it – it’s damn fast, Code-Behind offers a reasonable way of separating (HTML-) design and implementation, and the only code on the server is a 50k-DLL that’s compiled by the press of a button in VS.NET. Portable? No. Does it work? Yes!
“C# SWT port is good idea, but isn’t usable yet.”
“Windows.Forms requires using Wine on Linux (thanks, but no).”
(Yikes, sorry about the comment above this one… you know how slippery those darn optical mice can get sometimes. ;p)
“C# SWT port is good idea, but isn’t usable yet.”
I think they stopped working on that project a long time ago…
“Windows.Forms requires using Wine on Linux (thanks, but no).”
DotGNU emulates Windows.Forms on both Linux and MacOS X with great success. They look good, and run almost as good as they look.
I have been working with Mono and GTK# for a while now cross platform(windows/linux). Some of it is working well but not all of .net is implemented yet. GTK# also has a way to go on docs and usage. Its a good thing to get into but not the best way to learn C#… I have an editor I am working on but since gtksourceview is not cross platform at this point I have not finished it. Cheers.
Perl’s OOP features are really bad in comparison to C#, Java etc.