[Mono-osx] Opinion Please - honest answer? Java or .Net

pablosantosluac at terra.es pablosantosluac at terra.es
Sat Aug 30 04:54:03 EDT 2008


I think it's fair I drop a line here since we're long term mono users.

Of course I wouldn't like to create wrong expectations and probably 
there are easier ways to get the job done, but I'd like to share my 

We're using Mono since August 2005. We've a server, a command line 
client and a GUI (winforms) client. There's something important to note 
and it's that we only went for .NET because Mono was there. Only because 
Mono was there. We all had a C/C++ and Java background, but we rather 
preferred Mono to get the job done. If I only had to choose one thing 
I'd get remoting, and it would be enough to stick to mono.

The server is rock solid since day one, and when it wasn't solid it was 
not due to mono problems but our own. It runs on every platform where 
you can set up a mono framework including MacOS, Solaris (x86 and SPARC, 
in fact we fixed some "endian" related bugs there). We can tell the same 
for the CLI.

Now we enter the GUI. I've to tell it wasn't an easy business. Now we 
have a stable one running on Linux and sharing 100% codebase with its 
windows counterpart. Our main challenge right now is making it stable on 
MacOS. In fact it's a priority since more and more people is demanding 
MacOS support. We submitted some test cases in the past and even our 
full source code, but now it's time to not only be "involved" but also 
"committed" (you know, the pig and the hen joke) so we're trying to 
locate the small issues which prevent a big winforms app to smoothly run 
on the Mac.

Being that said: if we all step away from winforms in MacOS then chances 
are it will take longer to get stable. I think we're pretty, pretty 
close to get it production ready (I'm talking about weeks, not months, I 
think Geoff will shout at me but I still believe it's true) if we all 
try to help the core team. The huge benefit is clear: you write and 
build once and you run everywhere. Ok, this is the same you get with 
Java (you're supposed to) but look at our screenshots at flickr: our app 
looks good on windows, good on linux and superb on MacOS. That's not 
easy to get, and we're all really close.

Of course, a proper debugger with IDE support (which is also almost 
there, finally!) is, IMHO, the biggest step ahead we'll all have in the 
mono platform. I'm probably wrong but I'm not so interested in having 
the latest 3.x .NET features as much as I'm in having a good debugger. 
Mono is a platform in its own, obviously having full .NET support would 
be great, but I think it is not that important compared to what can be 
achieved on non-windows environments *right now* and what could be done 
if we only had a cross-platform debugger everywhere.

So, I'd say go for Mono before going for Java!. I might be wrong, but I 
truly believe it because our whole development is committed to it already.




Christoph Standler escribió:
> For me it all comes down to whether you will need a GUI that is at all
> sophisticated.  Mono in general seems to work great, but I just can't get
> Windows Forms on my Mac to work acceptably, with the biggest problem being
> that a form that refreshes instantly on my PC refreshes over several seconds
> on my Mac, with bits appearing one piece at a time.  If you have a simple
> GUI, Mono may work well for you.
> That's actually a good point, I came to the same conclusion after the last
> two Preview Versions of the Mono 2.0-Framework: If you use Mono for
> program-logic in the background (in my case Webservices, Managing and
> reading/writing files, Xml-Handling, etc) it works just fine (except for
> some smaller issues). But as soon as you start using a GUI that provides
> more interaction that just a menubar and some Labels and Textboxes, things
> get pretty messy. The mono-framework is not nearly as stable in GUI-terms as
> the Linux-part.
> Another thing, which might speak more for Java than for the Mono-Framework:
> It's just not finished yet and judging by the latest two releases (Preview 1
> & 2), one cannot tell how stable the Mono 2.0-framework might be in it's
> final release version. When Preview 1 came out, it took me about two weeks
> to get a stable running version of our companie's software on the Mac
> (baring in mind that I am a tota newbie to the Mac-world and worked alone on
> it). When Preview 2 came out, I had about 30-35% of the software stable on
> the Mac... Installed Preview 2, started the program -> Back to the start,
> because nearly nothing worked anymore. Most issues seem to come from the
> GUI-part of the Mono-Framework, which makes it even more frustrating to
> fix...
> Long terms short: In my oppinion it is not really possible to judge HOW
> stable the Mono 2.0-framework will be on mac in the final version. And for
> the planing of a software, this might be a bit of a No-Go. To our company,
> the 8th (where hopefully the first Release Candidate will be released) is a
> kind of a brakepoint: If the Mono-Framework proves to be way more stable on
> this point, we will concentrate our efforts on the framework, else Plan B
> will be invoked, which currently includes using Java ;) )
> Regards
> Chris

More information about the Mono-osx mailing list