[Mono-osx] Mono 1.1.0 Cocoa# + MWF

Ron Braithwaite ron at braithwaites.net
Tue Nov 22 15:04:41 EST 2005

On Nov 22, 2005, at 10:41 AM, kangaroo wrote:
> I agree with you on the attraction/sexyness of mono wholeheartedly  
> otherwise I would be doing none of this work in my spare time.

And thank you for that generous use of your spare time and for the  
>> But the long term value Mono and the CLR represent is diminished  
>> greatly by not having a cross-platform GUI framework. Cocoa# and  
>> ObjectiveC# are not really very interesting for me in my work. I  
>> am *VERY* pleased that Gtk 2.10 will have a Quartz driver. That  
>> really does address my concern and that really does make cross- 
>> platform development practical ***From The Point Of View Of IT  
>> Management***. I cannot stress that last point enough.
> Here is where we start to disagree;  Gtk2.10 can "gain" a quartz  
> driver from Cairo which is great; its still missing the entire  
> windowing system (please see how the cairo quartz driver works) so  
> the quartz driver != instant gtk on mac.  In my opinion (and I am  
> in "IT Management") this really is pointless anyways.  If you want  
> a fully cross-platform UI; deploy a web app.  If you're writing a  
> desktop app that you expect windows/mac/linux people to all be able  
> to consume; you damn well better have a fully native experience.   
> Mac users are the worst and most notorious for this.  Hastily  
> ported windows apps that dont feel "mac-ish" die on the vine and  
> have little to no sales into the mac community.

Agreed about Mac users. Except that my point isn't about the  
traditional Mac users. It is when a Mac user wants to use a Mac at  
work, but there is this one big .Net app that she HAS to run and  
therefore can't use her Mac because it won't run on OS X and the IT  
folk aren't going to rewrite it with a whole new GUI just for her.

On the other hand, if there is a way to make it cross-platform by  
only needing to avoid some platform specific stuff, the IT department  
will go along with that. And our Mac user will put up with the  
idiosyncracies of the app because being able to run the app in the  
first place is what will allow user to use a Mac at all. The same  
goes for Linux, too, of course.

> I'm back to agreeing with you here in some senses.  I think Mono  
> provides a fantastic cross-platform solution (today) for middleware  
> and backend.  I still firmly stand by my belief that there is no  
> way to write a completely cross-platform GUI toolkit that will  
> address the needs of the 3 major audiences.  (Alt-F4 on windows  
> maps to what on Mac?  Mac users hit Apple-Q for a nitpicky example,  
> yes we could map that one; but where does this stop).

Again, I think this is where we settle for quirky stuff. There is no  
way on the goddess' good green earth that we could come up with any  
sort of automatic key mapping between operating systems. And, in  
point of fact, if you use the Terminal program under OS X, you switch  
between control and command key sequences in ways that aren't  
intuitively obvious. I run VirtualPC and have WinXP, Ubuntu, and  
Mandrake running on my PowerBook and I *regularly* oops through bogus  
stuff. I learn to put up with it and I think Linux and OS X users  
running corporate .Net code will put up with it too.

> I'm always open to suggestions / constructive criticism :)

And the biggest one, most sincerely, is keep up the good work!

> I can't speak for the entire mono project; but the long term road  
> map for Cocoa# is to evolve it into a more "first-class" citizen on  
> par with Gtk#.  A number of the changes I've instated in it map the  
> Apple-esque API to a much more ".NET-esque" API (think  
> EventHandlers; instead of action/target selector/object pairs).   
> This should ease the road of moving a presentation layer to it.  I  
> frankly see Cocoa# as the solution for windows/linux devs to get  
> onto the mac; and objectiveC# as the solution for mac devs to  
> leverage the CLR.  Toss in a mix of continuing to make sure  
> everything works well on PowerPC OSX for the next few years; and  
> X86 osx going forward as well and you have my roadmap :)

That's great stuff about the API. And that's all I'm going to ask of  
you - for the time being - for a roadmap. In the meantime, I'll try  
the wxWidgets stuff that Brian Vibber suggested (thanks, Brian!).


Ron Braithwaite
2015 NE 37th Ave
Portland, OR 97212 USA
ron at braithwaites.net

More information about the Mono-osx mailing list