Linked by Eugenia Loli-Queru on Fri 14th Nov 2003 22:48 UTC
Gnome It is not a secret that Novell/Ximian will be pushing C# and Mono on Gnome in the coming years when it will be more full-featured and ready for adoption. Programming-wise, there are several advantages of using Mono over the plain GTK+ (oh, and by the way, GTK# 0.13 was released today). So, what's your opinion on a .NET/Mono-aware Gnome?
Order by: Score:

greetings santa.
by oGALAXYo on Fri 14th Nov 2003 22:52 UTC

This is hopefully NOT going to happen. Furthermore is GNOME communitywork, not dictated by either Ximian, Red Hat, Sun or any other company. GNOME is directed by the developers. And I can tell you right out of box that the majority of developers dislike MONO to become part of GNOME. So no matter how this poll result. It simply won't happen anytime soon. If so then it may end in the biggest flame festival ever. My word on this.

Sure.. but...
by johnfive on Fri 14th Nov 2003 22:57 UTC

I'm still of the opinion that the web browser and HTML/XHTML/CSS/JavaScript is the best API for graphical applications. But hey, what do I know!

IMO
by Kingston on Fri 14th Nov 2003 22:58 UTC

This would be a good thing...

Naah... !
by linux_baby on Fri 14th Nov 2003 22:58 UTC

A "monomised" gnome is definitely interesting from a technical perspective, but potential SCO-like problems are infinite. The potential downside is too tremendous, so I'd hope this doesn't happen.

hello santa.
by oGALAXYo on Fri 14th Nov 2003 23:03 UTC

I've been tracking the poll for 5 mins now and I have the sad feeling that someone is cheating here. As soon as someone votes for 'No' or 'Not sure yet' then basically one moment later someone votes for 'Bring it on'. I think someone is forcing an opinion on us here.

RE: hello santa.
by Eugenia on Fri 14th Nov 2003 23:05 UTC

No, there is no one cheating atm. Not in only 3-4 minutes of the poll is live. It just seems that people DO like Mono, it is just you who might not like it. ;)

RE: RE: hello santa.
by oGALAXYo on Fri 14th Nov 2003 23:09 UTC

> It just seems that people DO like Mono, it is just you who
> might not like it.

Well I think I am far closer to what other developer think about MONO than you. But we know you are trying to create opinions here. Specially the sentence where you say 'that Novell gonna force MONO in GNOME' is so what wrong. But It's ok we already realized that you are not aware of the fact that GNOME is communitywork. Maybe community rings a bell. It's not under control of a company or something. Coming up here and say that Novell gonna force something is only going to offend a lot of developers and participants to this open source project. Right now you demotivated me and I am not sure if I should continue contributing to GNOME whenever I hear stuff like this in the public. Maybe you realize this too one day. For someone not doing anything for GNOME you make quite some noise.

Mono and PDC
by Roberto J. Dohnert on Fri 14th Nov 2003 23:11 UTC

I think Miguel did an excellent write up, very very informative. I am surprised though that he was surprised that they used Emacs and VI, Emacs and VI are the standard on any platform I use windows now more than ever at work and I regularly use Emacs and Pico, On all of our Windows Installations, Open Source software is the standard. The one thing I am glad about is that at work we are trying to break away from QT, we are trying to decide on wxWindows or GTK, the only thing I havent seen is Glade or any of the GTK build tools for Windows. If I am wrong someone please point me in the right direction.

RE: RE: hello santa.
by Eugenia on Fri 14th Nov 2003 23:12 UTC

>Specially the sentence where you say
>'that Novell gonna force MONO in GNOME' is so what wrong.

Excuse me, but you are unfair and you are twisting facts for your own good. The exact wording is "pushing", NOT "forcing". There is a difference. The first one is normal strategy for all companies who want to see their technologies incorporated in more products and the second word is dictatorship. You said "forcing", not I.

v RE: RE: RE: hello santa.
by oGALAXYo on Fri 14th Nov 2003 23:13 UTC
v I would like to clear up with some facts
by oGALAXYo on Fri 14th Nov 2003 23:18 UTC
v RE: I would like to clear up with some facts
by Eugenia on Fri 14th Nov 2003 23:22 UTC
v cheater
by oGALAXYo on Fri 14th Nov 2003 23:23 UTC
Maybe....
by OPE on Fri 14th Nov 2003 23:26 UTC

From a developer perspective, Mono is quite interesting. This does not mean that all gnome components should be written in c#. Just that it is a supported language for the gnome developer platform.

re: re: hello santa
by John Blink on Fri 14th Nov 2003 23:27 UTC

I chose "bring it on".

Why? Because we always whinge about how to make linux better, and I think this is a good way to do it.

If you don't think mono is the solution, what do you think is a solution or can be a solution to advancing the linux user experience?

so, if Gnome becomes mono aware
by debman on Fri 14th Nov 2003 23:29 UTC

does that mean that Gnome will have a good Object oriented API to write programs to?

if so, sweet!!!

and that means that any GTK# app will run "native" on any platform that mono can run on. not bad IMHO. you might have this with Java now, but GTK is much nicer than swing or swg.

Wow
by John Blink on Fri 14th Nov 2003 23:29 UTC

I didn't realise my previous post was so abusive that it needed to be reviewed.

Current, I vote it as 'Not quite sure yet' because Mono will never work on FreeBSD correct. If they fix some issues of Mono on FreeBSD, then I will vote it as 'Bring it on'. :-)

Oh btw: I don't care what you think, oGALAXYo, at least it's better than Java. ;-P

Re: so, if Gnome becomes mono aware
by bsdrocks on Fri 14th Nov 2003 23:34 UTC

Yep, I believe so.. I think, it should have the nicer OOP API if it becomes to Gnome.NET.

Go Miguel
by Armand on Fri 14th Nov 2003 23:35 UTC

What's wrong with it, g0d what a bunch of cry babies.

Obviously I know nothing..
by MxCl on Fri 14th Nov 2003 23:36 UTC

I don't know any reason MONO/.NET/GTK# would benefit Gnome. Maybe I know nothing. Possibly true as I'm stuck in the world of Qt. Can anyone enlighten me? How would this new language and API be of benefit to Gnome?

Microsoft own C# IP implementation
by hunan6 on Fri 14th Nov 2003 23:36 UTC

The problem with C# is that MS owns a number of patents which cover features used in implementing C#. So, while Novell/Ximan develop mono they are leaving developers open to Copyright lawsuits from MS, who use these features. If I was actually serious about C#, I would look into extactly the patent numbers.

I am currently studying C# at college; when I go to job-hunting saying this is what I studied at college employers laugh. MS sells C# as an open standard. Something that could be used across any platform. However, Mono lacks the commitment of a multi-national like MS or Sun. If you want portability, then Java is a better solution.

Novell is a joke of a company; they haven't produce a marketable product since Netware 4.11 (early 90s). Novell's IPX/SPX protoco could have been the standard Internet protocol but they wanted to keep control of it. Novell Wordperfect anyone?

I have tried mono on my linux box. Maybe I just lack the patience to fiddle with it. But compiling, linking and generating executable files should be done with one program;
if they want MS C# programmers to use their product.

hunan6

Good thing
by Wee Jin Goh on Fri 14th Nov 2003 23:38 UTC

Moving to C# is IMHO a good idea, if it means that they get to leave C behind.

Mono and strings to M$
by Anonymous on Fri 14th Nov 2003 23:39 UTC

I would rather want to see java and python implemented in gnome than Mono

Mono is another SCO (M$) thing to happened


just my .02 cents.

Mono and Gnome
by RoyBatty on Fri 14th Nov 2003 23:40 UTC

For the record, I'm a .NET and mono supporter/user. To the conspiracy theorists<cough>OGalaxyo</cough>, I don't know what you're getting all worked up about. At most, all Novell could do is make a mono-enabled Gnome for Suse. If the core Gnome people don't like mono then fine. Better break out the tin-foil hat. Eugenia's brain-control waves are changing your opinion...."you will love mono.....you will love mono...."

still not best idea
by mabhatter on Fri 14th Nov 2003 23:40 UTC

C# sounds like a great language...VB meets Java, but the whole MS aspect is highly dangerous.

First, the perception will ALWAYS be that Mono is the "copier" of C#. That will never ever go away. It will always be second-fiddle to the MS version. Look at Borland's experience with C++ windows compilers as an example...they've had lots of trouble "being second" and at MS' mercy.

Second, They will ALWAYS be at MS' mercy. While the core parts will work, again, it will always work "second-best", even when it techinically exceeds the MS specs! The main thing I would ask here is this: Is Mono available for windows computers, with native mono compiler and CLR VM? Because unless the Mono apps can run ON WINDOWS, INSTEAD of the MS components, everybody will have to write 2 of everything...or just 1 for windows. That has been the real success of PHP, MySQL, and apache! The fact that they are OSS, but also play nice with the windows world...mostly that within their "sphere" things are more or less consistant across OSes. That in turn allows you to "free" your self of MS OS at your leisure, if you choose to, and with minimal pain to your apps. If Mono can't provide that, pack up and go home now.

Third, and most important, Mono takes away from many other good, solid, growing, established OSS projects [php, perl, python, GTK] to chase after a MS "holy grail". This is a bit of an anti-MS point, but why should OSS waste ANY time acknowlaging MS "innovation" at this point in the game. MS is on the path to being humbled. There is no longer any need to even pay lip-service to them...I'd even call it weakness of business model at this point. [don't flinch now!] There's a lot of really good OSS stuff that is almost there, and needs exactly the kind of effort Ximian is putting into Mono, IDEs, interface api to systems, clean paths to "glue" it all together, and most of all, a solid "marketing" push behind the whole [the OSS desktop] as opposed to the individual pieces [apache, php, mysql...]

Great!
by Sammy on Fri 14th Nov 2003 23:42 UTC

I think Mono is a good thing. .NET is a very powerful and easy to learn platform. You donīt need to learn C/C++ to program in Gnome anymore, with Mono you will be able to use C#, which is much easier, Java-like and really nice.

There might be people criticizing Mono because, well, everybody knows who is behind .NET. But .NET is definitely a step in the right direction, a really mature platform, considering that it is in version 1.1.

So, instead of disregarding Mono/.NET just because it smells like Microsoft, letīs try to use it to make Linux/Gnome better.

Maybe OT, but : what happened to qt#?
by scsimodo on Fri 14th Nov 2003 23:42 UTC

The last news I can see on the homepage is from March 2003. Is it still under development?

Anymway: Mono is a good thing for Linux even if it's evil MS's technology. And it's truely portable (not like MS's .NET, that runs only on Win platforms)

Thumbs up for Mono!



.:.
by HAL on Fri 14th Nov 2003 23:49 UTC

Is this still the same poll system which got hijacked numerous times before and is essentially useless?

Re: Microsoft own C# IP implementation
by bsdrocks on Fri 14th Nov 2003 23:53 UTC

I have tried mono on my linux box. Maybe I just lack the patience to fiddle with it. But compiling, linking and generating executable files should be done with one program; if they want MS C# programmers to use their product.

Very good one, have you tried to contract over at Mono mailing list or bugzilla? Maybe, they will listen and think about it. Who knows! ;-)

What's wrong with GtK+
by Anonymous on Fri 14th Nov 2003 23:54 UTC

Call me stupid. But I still don't see the advantages of mono over GTK's robustness, maturity and polish. I will eat sand for 6 weeks before I drop GTK+/C over mono.

If Mr Miguel can convince me as to what is wrong with the current development implementations and libraries. More that half of the people advocating mono probably don't develop for GNOME or Unix. They are .NET zealots seeking refuge in free alternative .NET implementation under Linux, namely mono.

Core GNOME developers will continue to use GTK+/C. Yeah, lets leave mono to big business and Windows wannabes.

oGALAXYo
by I-Heart-Apple on Fri 14th Nov 2003 23:54 UTC

I am with ya on this. Maybe you did change the words, but its true, community is the source of this whole project. I have been following the Linux story since shortly after its inception, and do work in the community aspects of Open Source. It has been a weird two weeks, as I am watching strange (but still interesting) powerplays. Some good, some not so good, some who knows. But it is easy to be sensitive to wording, especially when it is the word "pushing". Who knows what that means? Who knows how it will be used?

We sure are gonna find out.

I will say it again. I admire Mono, I admire Ximian, Miguel, and Nat, but they have still not adequately justified their seeming hardcore love of all things Microsoft, and the fact they are pushing development of a major portion of Open Source in exactly the same direction.

I know I am going to hear (here) that they have adequately answered and justified this direction, yet, there are developers all over the net, who do not feel they have.

We have been waiting.

Pick any one.
by BR on Fri 14th Nov 2003 23:56 UTC

Wow! The majority of posts are "already reviewed". Anyway it *seems* that the only justification for going to Mono is basically "getting away from C", or "getting away from Java"(1). If those are the only reasons then why not any of the other languages out there? Languages are like standards. Pick any one. Anyway my *opinion* is bad idea. Simple as that.


(1) Doesn't bode well when something is disliked that much.

RE: What's wrong with GtK+
by scsimodo on Sat 15th Nov 2003 00:00 UTC

"Call me stupid. But I still don't see the advantages of mono over GTK's robustness, maturity and polish. I will eat sand for 6 weeks before I drop GTK+/C over mono."

Bon appetit!

"Core GNOME developers will continue to use GTK+/C. Yeah, lets leave mono to big business and Windows wannabes."

There's nothing wrong with that! But "freedom of choice" also means that you can use whatever tool you want. And if Mono is the tool the majority wants, why not? Tell me one reason why "hardcore GTK+ development" is better that developing with Mono!

Various comments
by Chris on Sat 15th Nov 2003 00:00 UTC

Hmm... About Novell not having anything interesting since 4.11, I suppose if you don't count IFolder, eDirectory, NetStorage, DirXML, and now the exteNd workbench stuff, then yeah, I guess they don't have anything...

About Mono/.NET, there are obvious advantages to both traditional languages and Java. They've been covered many times... Short story: there are problems Gnome needs to solve. Instead of reinventing the wheel, Ximian noticed that .NET did what they needed, so they implemented it. If MS gets crappy about it, they will work around it. That won't invalidate the other work they've done.

Obviously I voted yay, but not because I've developed with it. Only because I've seen the nice stuff, like Dashboard, Ettore's new picture viewer, the mono documentation center, etc. that I want to see extended. I noticed their are now Evolution bindings, I'd love to see the addressbook integrated with the rest of the desktop, for instance...

Chris

@scsimodo
by Anonymous on Sat 15th Nov 2003 00:06 UTC

To your last question. Well I just did. GTK+ is more mature, it's more robust, it's more polished, it's more portable, it has a first class compiler, it has first class toolkits (glade) and it doesn't try to be Windows. Now you tell me how mono beats all these. And save the Bon appetit is will be a while before that happen if at all it does.

No..
by Tim Hawkins on Sat 15th Nov 2003 00:07 UTC

I think more Java would be a good thing. It's very popular overseas compared to any .Net stuff.

Furthermore, This would push Microsoft's ideas. Mono and DotGNU's only purpose was created to provide an alternative to .Net so they wouldn't take over with .Net on Windows.

I do like Mono, I think Mono is wonderful. It's a great way to provide .Net stuff thats usually found on Windows on Linux to provide lower cost and to provide a better stable system.

My opinion is..

Mono = WONDERFUL!
Mono + GNOME = Nope...

RE: Microsoft own C# IP implementation
by Andrew G on Sat 15th Nov 2003 00:11 UTC

I believe you are confused. MS has patents on .Net and not C# is now a standard language. Interestingly Java is not and is controlled bu Sun.

re: still not best idea
by debman on Sat 15th Nov 2003 00:13 UTC

you don't get what the point of mono is.

it is to replace the current gnome API, or supply an application interface to program to, allowing the system APIs to be changed with out messing up with source or binary compatibility.

are they looking to compete with C# on windows or even in enterprise? I don't know if that is specifically what XIMIAN wanted, but I am sure Novel will try to turn it into some sort of enterprise solution.

all this will do is make GTK# programs easier to make and maintain.

RE: No
by TinyNinjaRage on Sat 15th Nov 2003 00:14 UTC

"Mono = WONDERFUL!
Mono + GNOME = Nope..."

So use Mono where ever you want and good luck to you, but keep it off my Gnome?

Makes no sense to me.

re: oGALAXYo
by Scott on Sat 15th Nov 2003 00:17 UTC

This is hopefully NOT going to happen. Furthermore is GNOME communitywork, not dictated by either Ximian, Red Hat, Sun or any other company. GNOME is directed by the developers. And I can tell you right out of box that the majority of developers dislike MONO to become part of GNOME. So no matter how this poll result. It simply won't happen anytime soon. If so then it may end in the biggest flame festival ever. My word on this.

Oh, but it will happen, but not directly to Gnome. I'd say that the more likely places that something like this would pop up would be in Lindows, Lycoris, Xandros, or even in Novell's own future Linux--but who's to really say.

As for .NET, it's a new technology, and even though it has Microsoft, it still has yet to prove itself entirely. However, it is quite interesting to see more and more Universities choosing to use C# as an intermediate level study language. That says something about the language in the eyes of many computer scientists.

As for the "flame festival," um, yeah, whatever. Some developers have far more important things to worry about than "flame." Or at least they should!

I'm not trolling. Just expressing my opinion. Since I live in America ...

I have no user for anything associated with MS "technology". My motto is, "ANYTHING but Microsoft." And I've never had any problems doing anything that I wanted to on computers once I took that to heart.

The KEY is choice. People should be able to choose what they want to use. That includes cars, homes, tvs, and computer technology. Any company that tries to limit choice I'm against.

More copying...
by Phil on Sat 15th Nov 2003 00:44 UTC

Good artists copy, great artists steal. Legendary artists innovate. When will the open source community stop trying to replicate software and start trying to innovate software.

My post was only on a few seconds before it was reviewed. WOW

RE: @scsimodo
by scsimodo on Sat 15th Nov 2003 00:50 UTC

"To your last question. Well I just did. GTK+ is more mature, it's more robust, it's more polished, it's more portable, it has a first class compiler, it has first class toolkits (glade) and it doesn't try to be Windows. Now you tell me how mono beats all these. And save the Bon appetit is will be a while before that happen if at all it does."

Yes, I also think GTK+ is robust, mature and nice (Ok, except the file chooser dialog). BUT: Mono is not a replacement for GTK+, it's an extension. Developing GUI apps with C is a PITA (no matter if it's GTK+/Gnome or Windows). Mono, I think, will speed up development of GTK+/Gnome apps, and that's the main reason I voted "thumbs up".

Mono is nothing now, Java also could do the job. But Mono is a clone of .NET and therefore a hype. That's what makes this technology really sexy! I'm always open for new technologies that push Linux (in general) ang Gnome (in particular). Mono is IMHO a way to show some professionality, and that's exactly what the "big business" wants. And "big business" is the key to success of Linux...


Well at least MS will be doing us a favor in the future.
by Anonymous on Sat 15th Nov 2003 00:50 UTC

When MS starts suing the .Mono Gnome folks and kills off .mono and Gnome via threats of lawsuits for violations of the DMCA. This will leave us with just KDE as the main full blown desktop GUI in Linux. I really think that the .mono folks are digging their own graves dealing with MS and their technology. I guess people never learn their lessons and suckers are born everyday. Of course this is just my own personal opinion backed by the corpses of companies which at one time thought that MS would play nice with them and that they could work with them.

Oooops, typo!
by scsimodo on Sat 15th Nov 2003 00:57 UTC

"Mono is nothing now,"

should be

"Mono is nothing NEW,"

RE: What's wrong with GtK+
by slash on Sat 15th Nov 2003 01:02 UTC

"Call me stupid. But I still don't see the advantages of mono over GTK's robustness, maturity and polish. I will eat sand for 6 weeks before I drop GTK+/C over mono. "

Advantages of Mono:
1) Security is much better. You don't have to worry about buffer overruns, underruns, memory leaks, etc.
2) Because it is compiled to interpreted code, it is easily portable to different Operating Systems, CPU architectures, etc.
3) .NET is language independent. This means whatever you program in it regardless of what language you use, it will be available to everyone else, whatever languages they use. Very powerful, if someone ever makes Perl.net, PHP.net, etc.
4) C# is a real OO language. C isn't even close, and C++ is a hack at being OO.

@scsimodo
by Anonymous on Sat 15th Nov 2003 01:10 UTC

So, basically, your support for mono stems from you dislike of the C programming language. While I respect your preferences, I think in this instance, it is rather premature. With tools like glade and GTK+, how is developing GUI apps with C a PITA?

RE:Scott
by BR on Sat 15th Nov 2003 01:12 UTC

"As for .NET, it's a new technology, and even though it has Microsoft, it still has yet to prove itself entirely. However, it is quite interesting to see more and more Universities choosing to use C# as an intermediate level study language. That says something about the language in the eyes of many computer scientists."


Not really. Universities use to teach COBOL, FORTRAN, RPG and PASCAL, and there's a slew of other languages I haven't mentioned. Throw in the modern "Teach 'em Windows apps", and Unversities don't look so hot when it comes to being a reason to do something.

RE: What's wrong with GtK+
by Kobayashi on Sat 15th Nov 2003 01:15 UTC

Yes, compared with C/C++ Mono has a *potential* to offer better security, portability, and better object orientation, but so can Python and Java. Both Java and Python have much larger mind share in OSS comunity and my opinion are a much better fit for the same purpose. If Gnome/Mono integration is ever to happen, then goodbye Gnome and hello KDE, isn't freedom of choice a good thing or what...

No sir, I don't like it.
by RdsArts on Sat 15th Nov 2003 01:20 UTC

Personally, I don't see what it offers over PyGTK. The patents on C# are really the only reason I haven't played around with Mono, but I honestly think they could be the big problem here.

Luckily I'm sitting here with a mix of ROX Desktop and XFCE, so I guess I'm safe from all this. ;) But if it'll pull some of the long-standing problems from GNOME (the many segfaults, it horrid compile chain, etc) that it'd be interesting to see.

@slash
by Anonymous on Sat 15th Nov 2003 01:24 UTC

1). Yes, but you fail to mention the flexibility and power one sacrifices. Besides, there thousands of tools that prevent bufferover runs, underruns as well as memory leaks in C.

2). And we all know how slow and inefficient interpreted code is. JAVA, Python, Perl, etc. to mention but a few.

3). There exist several bindings for GTK. C++, Perl, Python to mention a few. Do we really need mono for something already exist?

4). After all these years, you still haven't realised that OO languages haven't lived up to their hype. None, of them compares to the speed, flexibility, compactness and efficiency of C. Not to mention how easy it is to get bloated and ugly code in OO languages. Besides, isn't GTK+ an OO framework in C?

v Re: Article
by Sarah M. on Sat 15th Nov 2003 01:25 UTC
Mono is good...
by Bob on Sat 15th Nov 2003 01:27 UTC

I would rather see Java make more in-roads. Java, at least, has a community process behind it, and it way more "open" than .NET.

We shall see though...

RE: No sir, I don't like it.
by scsimodo on Sat 15th Nov 2003 01:30 UTC

"the long-standing problems from GNOME (the many segfaults, it horrid compile chain, etc) that it'd be interesting to see."

- Install gentoo stage 3
- emerge rsync
- emerge gnome
- have fun (for about 4 hours)
- startx

start working (no segfaults, no glitches)

Or, if you hate gentoo, install a distro you like , push your mouse to the check box named "gnome" click on it and then click "OK" or "install". That's it!

Waste of time
by steveq on Sat 15th Nov 2003 01:34 UTC

Novell will soon be aiming at the heart of Microsoft's empire: the Windows desktop. If they are even remotely successful and Mono is in any way responsible for it then MS will just bring out the dogs and litigate Mono into oblivion. WHY use C# when that risk is there? It makes no sense and is a complete waste of time. MS did not invent anything with C#, it is already there with other languages. The right thing to do would be to enhance other true universal, portable languages like Java to perform better on the client side. I'm not saying there is anything inherently wrong with C#, just that building anything on top of C# outside of Windows is not worth the risk.

SteveQ

re: @slash
by slash on Sat 15th Nov 2003 01:52 UTC

"1). Yes, but you fail to mention the flexibility and power one sacrifices. Besides, there thousands of tools that prevent bufferover runs, underruns as well as memory leaks in C.

2). And we all know how slow and inefficient interpreted code is. JAVA, Python, Perl, etc. to mention but a few.

3). There exist several bindings for GTK. C++, Perl, Python to mention a few. Do we really need mono for something already exist?

4). After all these years, you still haven't realised that OO languages haven't lived up to their hype. None, of them compares to the speed, flexibility, compactness and efficiency of C. Not to mention how easy it is to get bloated and ugly code in OO languages. Besides, isn't GTK+ an OO framework in C?"

I didn't say there aren't any disadvantages or tradeoffs. I merely stated that there are advantages. But when developing certain types of applications, these advantages far outweigh the disadvantages. An extreme case of this is that you yourself have made tradeoffs by using C and gtk+ rather than Assembler. Just as C is one step above assembler, .Net is one step above C. .Net allows you to make extremely complex programs (using web services, SOAP, distributed computing, messaging, database connections, GUI, kerberos, LDAP, encryption, authentication, etc.) very easily. So, when developing little applications for desktop use or developing daemons that only are required to do a small task (such as serving up a web page or sending SMTP messages), you might wonder what advantages an OO language offers at a 10% performance penalty and limited functionality. But once you try to create and maintain an extremely complex program, utilizing many different technologies, you will quickly learn to respect both .Net and Java/J2EE.

@slash
by Anonymous on Sat 15th Nov 2003 02:21 UTC

I agreed partially with you until your last sentence. I don't really think you've seen a large complex project written in Java. If there are any terrible languages to read and maintain, OO languages, C++ and Java included, are the ugliest.

Try browsing through some of the large KDE projects source code, most of which are written in C++. If you don't get drowned in an array of confusing, scattered and unorganised classes, I have new found respect for your astute code orientation.

Try browsing through a similarly large GNOME project written in C, I bet you, you'll be a little impressed. However, I still don't find any incentives to move my projects from GTK+/GLADE/C to mono. I need more concrete proofs other than programming language bias that we both exhibit.

@slash
by Kobayashi on Sat 15th Nov 2003 02:34 UTC

> Try browsing through a similarly large GNOME project written in C, I bet you, you'll be a little impressed.

Actually my impressions have been just the opposite, Qt/KDE code seem to be much better organized and doesn't feature a countless number of API's involved as in Gtk+/Gnome. May be it is just a matter of which school of thought you're coming from -- OO or procedural...

.Net's Beauty
by axiom on Sat 15th Nov 2003 02:41 UTC

The beautiful thing about .Net is that its language neutral. This means that no matter your language preference, you can still create objects that can interoperate between language boundaries. Calling C objects from C#, JavaScript objects from Python, Java objects from Ruby,...etc.

I believe this to be a good thing. Remember that Mono is not only C# but potentially any language.

Java takes care of it...
by another2 on Sat 15th Nov 2003 02:56 UTC

Why would I use Mono when I have java, okay, for all of you who only know swing: LISTEN: I develop ALOT of gnome apps in java simply because the AWT library uses GTK to draw it, it runs really fast too(i.e. stop complaining about speed). on top of that, it uses Windows system libraries so it doesn't have that stand out look swing does. If I'm going to write a GUI it's going to be in java, if I need alot of speed, I'll write a program in C and use JNI (what java uses to interface with C) if I want to add a gui to that. Tell me if I'm dead wrong and missing something but, that's the way it looks to me.

typo
by another2 on Sat 15th Nov 2003 02:58 UTC

I ment the same code on windows uses windows system libraries, my bad

RE: No sir, I don't like it.
by RdsArts on Sat 15th Nov 2003 03:00 UTC

- Install gentoo stage 3
- emerge rsync
- emerge gnome
- have fun (for about 4 hours)
- startx

start working (no segfaults, no glitches)


No, it doesn't. On Gentoo, I remember GEdit would constantly complain, and sometimes die out with a segfault while quiting of all things if you didn't build or other things in a exacting order. GDM wouldn't start on my Gentoo box, at all. ACME was impossible to add to a session without it holding the panel hostage for up to 10 minutes regardless what I'd do to it. And these are only the problems I had that I found while it was in use. I've tried it on a FreeBSD box compiled with -O -pipe, a Gentoo box compiled with -march=athlon -Os -pipe, and with a Arch Linux box running packages, on three seperate computers.

If you like it, more power to you. But there are many minor problems with it, most of which have to do with seg faults and compile time problems. To say otherwise is just silly. Personally, I think as they start cleaning up and combining the libraries, and if they move to some managed code, they could stop worrying about bugs and start getting into doing some good stuff. Possibly. Although I wish it weren't Mono, I do wonder what it will look like if it happens.

pro mono
by smt on Sat 15th Nov 2003 03:21 UTC

I belive mono can bring windows developers to the comunity, some cool app for windows will run on linux too,
and that's good.
if u don't like mono, don't install it.

but java...
by Rbén on Sat 15th Nov 2003 03:24 UTC

But java has a lot of disadvantages... java is free but is not open source, mono is open source.

C# is a ECMA standard, like javascript, nobody owns it! The .NET patents are another issues. That`s that Iīm aware of.

I think that mono is great but I think that the diversity of choices is always the best answer. So I expect to live with Java, C, C++, C#, Objective C, Python, PHP, Perl, everything but javascript...

I still prefer PHP for webpages behavior, C for core things and things like Java, C# for well design (and bigger) apps.

So I will like to see GTK-php for help sake!

The community took the ideas from the usability tests that Sun did and some made it into the HIG and others were discarded.

Maybe there will be a MONO-aware Gnome maybe not.

If it means more outlandish obscure dependencies built around small projects that barely maintained then hell no.

If it means few deps and lots of new features that app developers like and use then it sounds cool.

I am much more excited by Storage and progress in Medusa and how the spatial versus navigational views in Nautilus will work out personally. Honestly, all of this is really cool, but a better layout for file association and samba/nfs (yes some of us do live in *Nix world damn you) support is needed first. No, I am not listed the file dialog because that is already in the works and down the pipe. Get the basics down tight please then add the coolness.

RE: oGALAXYo (IP: ---.dip.t-dialin.net) - Posted on 2003-11-14 22:52:39
by CooCooCaChoo on Sat 15th Nov 2003 04:15 UTC

This is hopefully NOT going to happen. Furthermore is GNOME communitywork, not dictated by either Ximian, Red Hat, Sun or any other company. GNOME is directed by the developers. And I can tell you right out of box that the majority of developers dislike MONO to become part of GNOME. So no matter how this poll result. It simply won't happen anytime soon. If so then it may end in the biggest flame festival ever. My word on this.

Well, I wouldn't say that is completely true. From what I have read and who I have talked to, the vast majority don't have anything against it as so long as it isn't rammed down peoples throats. If it is there as another option along with C++ bindings, most don't have a problem.

C# language is ECMA, however, the majority of the framework isn't, however, IMHO who cares about the framework if one can provide a better one using existing GNOME technologies.

What I think the vast majority of pragmatic GNOME developers realise that the majority of the new developers will be coming from the "windows world", why make it harder for them to move if they can provide a reasonable level of familiarity.

if patent issues NO!
by t3RRa on Sat 15th Nov 2003 04:20 UTC

I chose "No, thanks" because I thought there might be patent issues on using .NET technology. I would say "i don't care" if Novell would just fork gnome and create their own mono-aware gnome. (then who cares?)

or is it far faster than java on linux ? because if I have to wait forever jedit, or limewire launch, I believe I'd just have to wait more forever the correspondant apps writting in mono and that's not gonna happen.

I know, it's far more easier to write stuff for java like language, because the virtual machine take care of everything but it's far more annoying (the french word is "chiant", crappy) for the normal user (me, you, anyone who like doing real stuff with its machine).....
and even If I'm a programmer too, I don't consider myself as a real stuff man, I am someone who creates tools for the others and even after 15 years, I still don't understand why a tool maker would have built a hammer (java/c#) used to build stuff (programms) which are unusable in practice because their too heavy......
arrrrrrgh, my english is so poor : I do it in french, if someone could translate :
Je ne comprends pas pourquoi se casser la tete ā créer des outils de conceptions de programmes qui permettent de construire des programmes en pratique inutilisables tant par leur lourdeur que par les ressources qu'ils utilisent.

Quel est l'interet de rendre une machine largement plus rapide qu'un cray 2 aussi réactive qu'un mac avec 128k de ram ???? je vois l'interet pour le programmeur pas pour l'utilisateur.

Et le pire c'est que je dois me farcir du java ā longueur de temps. pfffff.........

anyway, my question was : how mono compare to c/C++ in term of speed ?








Mono a-no-go
by Anonymous on Sat 15th Nov 2003 04:30 UTC

I don't believe that the community would be so naive as to believe the Microsoft won't tighten the screws if this becomes a popular alternative to .net on windows(or if it succeeds in taking the sails out of java). In a sense this is like inviting the SCO mess, with MS as SCO. The difference being that Microsoft would be in the right, since they have retained the rights to strategic parts of the technology. Why would any open source advocate in their right mind willingly get in bed with MS. This has nothing to do with the technology on techinical terms but simply in practical and strategic terms. Unfortunately, open source developers seem to be overly optimistic that everyone including M$ "will do the right thing". If mono is widely sucessfull, then when M$ tightens the screws then this will go down as the strategic blunder that significantly hampers open source(similar to the blunders that got closed source companies creamed by Microsoft in the market place, ie. Lotus 1-2-3 initial reluctance to develop a windows version until after Excel was viable and comparable products or Novell's attempt to out-Microsoft Microsoft with Wordperfect, Quattro, etc.)

Forget about beating M$, but maintaining a competitive offering aside from M$ requires that open source is strategic in those initiatives that it persues. In a sense, this might be asking too much from developers and is in my opinion the biggest problems of the open source model. Given the relative lake of hierarchy, not enough business strategy goes into promoting one approach vs. another. The only strategy seems to be keep it free(as in cheap). This has the unfortunate circumstance of creating a lot of ok but not that quite done software. I digress, in a nutshell the main problem with mono is that it requires that you put a lot of faith in the open sources ability to deal with M$ lawyers.

RE: Andrew G (IP: ---.sc.rr.com) - Posted on 2003-11-15 00:11:39
by CooCooCaChoo on Sat 15th Nov 2003 04:33 UTC

Interestingly Java is not and is controlled by Sun.

Incorrect. Java is controlled and guided by the Java Community NOT SUN.

Why do people insist on repeating the same FUD again and again and again. The statement has been made and correct by others so many times, it isn't funny.

The only people who whine about Java are those who want to call their implementation Java but not pay for the certification process. Too bad. SUN offer the service and if you don't want to take advantage of it, tough luck.

SUN implements their OWN version of Java according to the specifications set down by the JCP. Microsoft just didn't want to play ball because their ideas were not instantly adopted. Unlike Microsoft, SUN has submitted ideas and not all of them are accepted into the standard. Instead of running of and chucking a hissie fit, SUN takes it on the chin and works out WHY it wasn't accepted into the specification, corrects the problems then resubmits it.

People forget...
by Jason Lotito on Sat 15th Nov 2003 04:36 UTC

Considering that Mono is an open source project, why not allow Gnome to be Mono aware? All these people claiming "MS will destroy Mono" forget that C# is a standard.

Simply put, Gnome needs to become aware of more than just C by default. For myself, I would prefer if Gnome was Python aware by default without needing to download a ton of extra packages as well. Python would be an excellent language to support out of the box, and mixed with Glade, would do what VB did for Microsoft (in terms of lots of developers, lots of development) for Gnome.

_that's_ wrong with switching to .NET shite
by M Partap on Sat 15th Nov 2003 04:50 UTC

> Tell me one reason why "hardcore GTK+ development" is better that developing with Mono!
errr, IP. M$ 0wN5 the patents. They might just wait until many people have learned to write .NET code, and then stomp MONO and assorted projects with IP issues.
So supporting this as optional component is just fine, but seeing it really gain upwinds is something I would rather not like to see in the OSS world before there is an independent consortium managing .NET specs and patents, which if happening at all could take a while.
regards

Re: But java
by LC on Sat 15th Nov 2003 05:03 UTC

IMHO java is like the dinosaurs. Big, slow and ugly. No properties, every program start new virtual machine, etc. IMHO .NET will kill the java. And if linux not will support .NET linux will disappear from destkop (because microsoft will give client side .NET support for internet explorer - and the web designers will use it /as the most of web pages are optimized to IE/). It is very sad but probably will happen.

Another thing the Mono and Gnome. IMHO it is also a good idea: linux needs a good programming environment for business or other desktop applications - and C++ not the ideal language for this purpose. The secret of the windows success on the desktop the good development environments - like Delphi and now the Visual Studio .NET.
But if Mono will mono-aware the developers must divide mono to ISO standard and .NET compatible parts, and GNOME# must build to only standard part. In this case nobody can attack Gnome but the developers can use C#.

Two Words: Binary Compatibility
by azazel on Sat 15th Nov 2003 05:04 UTC

If you develop in scripted or bytecode-compiled languages,t hen binary compatibility is a non-issue. If Java had've taken off on the desktop, it would've been a good thing. However, it's too slow and swing sucks.

As long as you have mono and GTK# installed, then a GTK# binary will run on it. It doesn't matter if it's SPARC/Solaris, Alpha/Linux, x86/FreeBSD, the same binary will work. This makes software installation a lot simpler, especially for Linux. Instead of linking to rpms for SuSE 8.0, 8.1, 8.2, 9.0, Mandrake 8.2, 9.0, 9.1, RH 7.3, 8.0, 9.0 at a website. It could link to a mono "package" that has it's own bootstrap installer (or noarch rpm), and just integrates into the environment no matter what distro (we could technically do the same with python, but python isn't a "conventional" C-like language, thus attracting less developers).

I just hope they get performance/mem usage at a reasonable level, compared to Java.

update:
by bact' on Sat 15th Nov 2003 05:16 UTC

current version of Sun's implementation of Java platform is not that slow, and Swing performs a lot faster.

anyway, i think C# support for GTK development is good,
it will be better if it also supports Java (as a programming language + strong GTK-Swing/AWT binding).

Mono should die
by Anonymous on Sat 15th Nov 2003 05:55 UTC

C# is an abomination. Why, for Pete's sake, would we want to take a half-baked Microsoft rip-off of Java and stuff it into Gnome. That just makes no sense. They should just have used Java in the first place.

Re: CooCooCaChoo
by Andrew G on Sat 15th Nov 2003 05:56 UTC

I like SUN!

Was just making a point that C# != .Net

Sun only gave more control to the community recently, and after C# was a standard. Java is not a standard. I also thought that Sun still has the final say regardless of the JCP of what goes into Java even if they go with what the community says.

I am open to correction and feel free to point me in the right direction.

Re: but java...
by bsdrocks on Sat 15th Nov 2003 05:56 UTC

So I will like to see GTK-php for help sake!

I have played with PHP-GTK and it was cool. I am looking forward for PHP5, then the PHP-GTK will start work with GTK2 so it's going to be fun to play with PHP-GTK again.

Mmmmm...
by erktrek on Sat 15th Nov 2003 05:58 UTC

I wouldn't worry about lawsuits from MS anytime soon. They are already well aware of Mono etc. and are not taking steps to prevent development (Wouldn't this cause trouble in any potential future litigation?). In addition even if MS decided to go their own way and prevent others from following the idea of Mono is STILL beneficial to linux which is why Miguel is avidly pursuing this..

Just because MS combined a set of existing technologies into an interesting framework doesn't make the framework itself any less valid.

This is only my humble opinion of course, I am NOT a lawyer nor do I know Miguel..

refer to "Patents" section - http://www.go-mono.org/faq.html

See white paper for the rationale - http://www.go-mono.com/rationale.html


Cheers,

E.

RE: RE:Scott
by Scott on Sat 15th Nov 2003 06:06 UTC

Honestly, listening to voices express things like "do we really need another" and "there's no use for it" is difficult to bare. I genuinely feel that we need as much experience in every which way imagineable if we're going to progress toward full potential. In fact, I am fairly positive that we will indeed progress in this manner, with a full understanding of just what we are capable of.

BR wrote:

Not really. Universities use to teach COBOL, FORTRAN, RPG and PASCAL, and there's a slew of other languages I haven't mentioned. Throw in the modern "Teach 'em Windows apps", and Unversities don't look so hot when it comes to being a reason to do something.


And there is nothing wrong with this history. Devoted Professors and researchers used what was available, what was meaningful, and what was researchable. Each decision that is made by a researcher in contrast to that researcher's study is profoundly critical toward accomplishment and growth.

RE: Mmmmm...
by Andrew G on Sat 15th Nov 2003 06:11 UTC

From what I understand to be true of patents, the owner can enforce them when they want and also selectively.

Like the owner of the plug-in patent that was awarded $500 million plus from Microsoft recently does not have to sue the Mozilla foundation.

Also look at the whole .gif files compression patent that Unisys decided to enforce years later.

IBM also has a knack for suddenly remembering they have a patent on something included in a standard years after it has been adopted.

So basically bottom line, Silence in know way jeopardizes the patent, unlike Trademarks I believe.

Polls :(
by Insensitive Clod on Sat 15th Nov 2003 06:37 UTC

I'm not sure why this site tries to have polls. Every single one gets tampered with. Is there a better way have polls?

Re:Mono should die
by LC on Sat 15th Nov 2003 07:08 UTC

Java is died now. It wasn't accomplish none of original goals: you can see java applets on the net relative rarely, only few chat and similar little applets. And java is a big fall on the desktop: you can see relative good RAD tools, but the business desktop applications mostly written in Delphi, Visual Basic, etc. Only the JSP seems successful, but IMHO only because there is not better technology. At least until .NET released. At this moment there is only one argument for using java: the platform independency. And IMHO it is not enought to survive.

The second thing is the .NET applets: IMHO it can kill linux on the desktop (and in the long run on server) if linux will not can use this applets.

And at this moment only the Kylix the useable tool to create business applications. But the future of Kylix also not too bright and the Kylix not comparable with .NET if you develop big applications. And without commercial business applications linux will disappear or will be only the hacker's toy.

Mono attraction
by Reformist on Sat 15th Nov 2003 07:11 UTC

As a developer, I find Mono quite amazing. It is just really attractive to be able to develop in a newer, higher level language like C# with native GTK bindings (GTK#), as opposed to developing in pure C, or even C++ (as some Gnome projects are now considering). Many of the students emerging from the academic community do not have experience with C, but have most of their experience in Java and are valuable coders nonetheless. Many are turned off from developing Gnome apps when confronted with the attitude "C or bust..."

This framework (not the company(ies) behind it, despite popular belief), that is, .NET and the nice GTK# bindings, has attracted one more developer (me) that would have had his interests consumed elsewhere if not for the new ability to develop in C# in Gnome. I assume this is true for many (especially developers migrating from windows technologies), so I wouldn't be opposed to it quite yet; this could be the biggest attraction in the Linux developer community since g++. We should never be opposed to attracting more developers. C# is not going away, and if we were to cut this very popular language away from Linux/Gnome, we would be alienating many devs.

RE: Andrew G (IP: ---.sc.rr.com) - Posted on 2003-11-15 05:56:33
by CooCooCaChoo on Sat 15th Nov 2003 07:17 UTC

Sun only gave more control to the community recently, and after C# was a standard. Java is not a standard. I also thought that Sun still has the final say regardless of the JCP of what goes into Java even if they go with what the community says.

I am open to correction and feel free to point me in the right direction.


1) Every member of the JCP has one vote and one vote only. SUN only has one vote just like Oracle, IBM and BEA.

2) SUN implements the Java specification as set out by the JCP. What is hosted on java.sun.com ISN'T Java but an implementation OF the Java specification, just as Linux is an implementation of the UNIX and not actually UNIX.

3) http://www.jcp.org/en/procedures/overview are the steps in required to get something into the specificatiopn, and NO WHERE in that document does it state that SUN has the final say. They may have the final say in what goes in THEIR implementation of Java but it doesn't stop anyone else creating their own clean room implementation of Java based on the specifications that are documented.

4) An openstandard ONLY works as so long as the developing company is willing to update the specification as they add new features. The fact of the matter is I doubt very highly that Microsoft is going to submit C# 2.0 to the ECMA body for ratification.

5) SUN Holds the Java TRADEMARK, just like the OpenGroup holds the UNIX trademark. Like UNIX, if you want to call yourself "Java", your implementation MUST conform to the Java specifications laid out by the JCP. If you don't want to pay for the right to use the trademark "Java" then call it something else; Coffee 1.0 VM if you want.

Responses
by Rayiner Hashem on Sat 15th Nov 2003 07:34 UTC

@Anonymous: Hmm, I've looked at both GNOME and KDE code and I've found KDE code to be much nicer. Qt is an absolute dream to work with, while GTK+ is less so. Of course, I'm a C++ programmer, so I'm probably coming from a different place.

On .NET: First, its not "innovative." Not only has it been done before, but the particular implementation of the CLR that Microsoft uses wasn't even done by Microsoft! I don't see innovation in either the MS or Mono camps. Second, its only language independent if your language looks like C#. Even something like C++ is too different to map well to the model, and I'll be very interested to see if F# can keep all the features of Ocaml without having a very hacky implementation (ala generics in Java). Third, this whole managed code thing annoys me. You can have safe code without running on a virtual machine. Studies done on languages such as Common Lisp and Scheme have shown that advanced compilers can implement features like bounds checking with a negligable performance hit. This is because the compiler can usually deduce when extra safety code is not necessary, and when it can't, the extra safety checks can usually operate in parallel with the mainline code --- using processor pipelines that would otherwise be empty. After decades of ignoring great languages because of speed concerns, its just the most intense of ironies that they've gone off the deep end and sacrificed half their performance for fully managed APIs,

@Raynier
by RoyBatty on Sat 15th Nov 2003 07:49 UTC

Who cares if it's not innovative. Hardly anything is innovative. Java isn't innovative. Linux isn't innovative. Almost everything in technology is evolutionary not revolutionary.

And you just had to bring up lisp and scheme didn't you. I was right about a week ago when I said you always bring up lisp or some derivative - you also criticized me for it. You lisp people can whine all you want about how lisp has had this feature and that feature since the early 60's, but that's not going to change the fact that nobody is going to use it for mainstream development.

By the way, did you read my response to you on the article about the costs of recoding everything to linux and linux acceptance for joe-sixpack?

@Roy Batty
by Rayiner Hashem on Sat 15th Nov 2003 08:49 UTC

I agree with you on the innovation point. Most computer science is evolutionary, not revolutionary. I said that because a lot of people were criticizing Mono for not being innovative.

As for Lisp:

1) I am not a "Lisp person." I am, however, one of the many programmers who are irritated to see the commercial world constantly ignore technically better solutions in favor of solutions with more hype. It irritates me as a developer -- because I'm stuck using inferior technology, and it irritates me as a user because they're pissing away my clock cycles and memory in the process. It irritates me as an academic to see many "instituitions" just churning out Java programmers (god bless France for teaching Ocaml to most first year programming students!).

There is yet hope, I guess. Apple's Dylan had real potential in the mainstream, though they dumped it just like they did a lot of good technology (the Newton). Smalltalk got pretty close with IBM. Apple has made Objective C pretty mainstream thanks to Cocoa. Modern C++ (a much better "language" than the dialect that crap like MFC is written in) seems to be quickly catching on, and has a very promising future with the changes slated for C++ 0x. The popularity of Python and Perl and Ruby (and to some extent advanced C++ libraries like Boost) have exposed an entire generation of programmers to languages with powerful features like lambdas and dynamic typing. Hell, even F# may make an impact. Even if none of this ever comes about, advanced languages aren't going anywhere. Research institutions keep working on them (the current focus seems to be on type theory) and the commercial world will get the trickle-down a few decades later.

PS> Like I said, I'm not a "Lisp person." My primary languages are actually C++ and Python, with Dylan (which is admittedly derived from Lisp) being my favorite, even though I'm a relative newbie to it. I'm not trying to be like those Lisp-bigots who espouse it as the solution to every problem. I am, however, trying to point out that there are lots of better solutions to this particular problem.

And another important things
by LC on Sat 15th Nov 2003 08:51 UTC

The language is one thing, the CLR is the other one. You can develop managed C/C++, Java, Pascal, etc. code if gcc, fpc, etc. will produce assemlbies for CLR. And IMHO it is only queston of time.

Another problem is the class lib. IMHO mono must be divided two parts: the ISO standard and the .NET compatible part. And the new API (GTK#, etc) must based only the ISO standard and the GTK, Mono class libraries. In this case Gnome will not be vulnerable (I am not a lawyer but IMHO the microsoft.* namespaces really dangerous parts of mono class library).

I wouldn't like it
by /dev/null on Sat 15th Nov 2003 11:12 UTC

Presenting links to two toy Gtk programms as showing the advantages of Mono/Gtk# over Gtk+ is completly misleading. I can present you another toy in Gtkmm:

#include <gtkmm.h>
#include <iostream>

using namespace std;
using namespace SigC;


class HelloWorld : public Gtk::Window
{
public:
HelloWorld() : button("Hello World")
{
set_border_width(6);
add(button);
button.signal_clicked().connect(slot(*this, &HelloWorld::on_button_clicked));
}

~HelloWorld() {}

private:
Gtk::Button button;

void on_button_clicked()
{
cout << "Hello World" << endl;
}
};


int main (int argc, char **argv)
{
Gtk::Main kit(argc, argv);

HelloWorld helloworld;
helloworld.show_all();
Gtk::Main::run(helloworld);

return 0;
}


which is no more harder to understand as the Gtk# one. Reducing the advantages to syntactic sugar does not do a favour to Mono. Besides other languages such as Python are even more pleasing to the eye.

Basically the *only* thing that makes .NET somewhat likeable is the relative independence of programming languages. But until all those C/C++, Python, Perl, ML, etc. are available on Mono, I don't see any reason for it to become part of the core of GNOME. Pushing people towards C# will not be work. They had seen Java before and did not switch, now the hype is about C#. Concentrate on the CLR and it might be an attractive runtime target, but so far I don't see it happen. A managed C++ would be a start ;)

...
by Anonymous on Sat 15th Nov 2003 11:38 UTC

I'm i'm not mistaken, I don't see any conflict between GTK+ and Mono because they are different software layers. I also think that Novell should shape Gnome or rather specialize Gnome for their product line. This is not a bad thing.

...
by Anonymous on Sat 15th Nov 2003 12:06 UTC

I'm not a fan of any technology related to Microsoft, so I will not use C# or any Mono stuff. However, I know that nobody cares what I do, and that Mono will satisfy a need for a business solution development strategy using Linux, although Java does accomplish this as well, yet Java is not open source, ...but I don't necessarily believe that it should be. They are both okay.

I wouldn't get frustrated over Mono because if you separate in your mind Linux the platform from Linux the product, than community projects and vendor software can co-exist. In fact their relationship is symbiotic, but we need to discover how to write software that is strategic, keeping these things in mind.

Mono-aware gnome?
by Fredrik on Sat 15th Nov 2003 13:32 UTC

You got the question backwards. Gnome doesn't have to be "mono/.NET-aware", it's mono that needs to be gnome-aware (which it is). There's nothing stopping you from writing Gnome apps in Mono.

As far as the ECMA/ISO standard goes, that's just an act. No one really cares what's in the official standard, it's what Microsoft says that counts. New revisions of the language/runtime are made by Microsoft beyond anyone elses control and may or MAY NOT be standardized. Also, ECMA only requires RAND licensing AFAIK, which is potentially incompatible with free software (Microsoft may ask for a something $0.01 license fee wich would invalidate the GPL/LGPL).

So far, no one has offered any explanation why Mono is better than Gtk/*nix. Sure, C# is nicer than C in many ways, but that's not the question, .NET is so much more than C#.
Try PyGTK/Glade for instance. Mono looks like a step backwards in comparision. Based on my experiences with java, Mono will be slower too, as they are using JITing. JIT works well on the server, but on the desktop a simple interpreter combined with underlying libraries written in C (the PyGTK/Glade model) ends up beeing faster (especially startup performance!). And this is compared to the java client vm, which is pretty damn quick and awfully complicated. Don't expect Mono to reach parity with that anytime soon.

You could hack up gcc to compile C# as it already handles java. This is how microsoft solves it and is a better solution on the desktop IMHO. Don't know whether Mono has any plans for this, though.

If you look at where microsoft is going with mono, you see that their focus is what they can build on top of Mono. Standardization will mean little when everyone is using the proprietary add-ons.

All this doesn't really matter because i KNOW mono won't ever be integrated in Gnome. It's just not possible.
The reason is that Mono is a complete framework, and as such an "all-or-nothing" prospect.
That means a considerable amount of consencus is needed. And there's no way all gnome developers would accept a framework that is:

* Designed by Micrsoft (for NIH reasons, for anti-M$ reasons or for "i-want-to-create-not-copy" reasons)
* Designed for Windows (yes Mono has issues with this, .NET assumes it's running on windows. It's NOT a crossplatform framework like Java)
* Under the control of an external entity (which happen to be the second most disliked entity in the industry after SCO)
* Produces .exe and .dll files (the psychological implications of this are bigger than most people realize).
* Doesn't really solve the hard problems.

The approach that Mono takes to software interopability is a little passe IMHO. The filosofy there is "if everyone uses the same framework all software can talk to each other". Very cathedral-like, but it works for Microsoft.
It doesn't work that well for OSS though. KDE tried that model, but then came GNOME, then Mozilla, then OpenOffice, then Mono etc...
What you need is technology that enables your software to work together DESPITE using different frameworks. In other words, adapt the techology to the enviroment instead of adapt the enviroment to the technology. The cathedral model is very sexy, and "architecturally clean", so a lot of developers is attracted to it. It's a bit like esperanto in that way. A very nice idea in theory, but then comes reality and screws it up. Esperanto is pretty dead nowadays.

v cheating?
by Fredrik on Sat 15th Nov 2003 13:38 UTC
man...
by Anonymous on Sat 15th Nov 2003 14:08 UTC

these polls are less then worthless.. every one gets tampered with...

Why not
by Vanh Phom on Sat 15th Nov 2003 14:16 UTC

Bring it on! Or better yet Invent a better one!
Vanh

...
by Anonymous on Sat 15th Nov 2003 14:33 UTC

I see lots of potencial in mono.

RE: all the c# is crap talk
by alan6101 on Sat 15th Nov 2003 14:45 UTC

C# isn't crap. I do a lot of development for large corps and government and they want everything in .Net (c# and asp.net are what I use). I've worked on and have several projects in the pipe that at least partially consist of porting an app from java or vb or c++ or delphi to .Net. I like Linux and it needs something like .Net for RAD.

I know everyone likes to think about beautiful, clever code but when it comes down to it, for corp/gov apps you need something quick. And don't take that to mean messy thrown together crap. You can write the same app much, much quicker in c# than in c++.

And as far as choosing java because of platform independance, I like that idea, but I never speak to a client or peer (in person) who seems to even care about that.

A couple of notes
by J5 on Sat 15th Nov 2003 15:23 UTC

To those who say GNOME should work on Python and other bindings instead of C#/.NET - There are alrerady usable bindings with Python having the best bindings so far of any of the languages including C#.

To those who say Mono is always going to play catchup this is perhaps true in the compatablility area where legalities are grey but anything developed for GNOME would work with the published standards and the home grown stuff like Gtk#. No legalities would enter core GNOME. The compatibility layers are just a good way to allow for Linux to support some of the new Windows applications out of the box.

A lot of the cool development under Gnome application space is happening in C#. Just read the gnome planet blogs. A lot of it is happening in Python too. Why limit what bindings we can use. A binding for every language I say.

--
J5

Bring it on!
by Majix on Sat 15th Nov 2003 15:36 UTC

Look, are we still going to be dinking around with C+GTK in 3, 5, 10 years time? Or do we start to move to something better. There's a lot of GUI programs being written in C for the only reason that no other language has been given first class status on the GNOME platform yet. As surely as PHP/ASP today has beaten the old C/Perl+CGI model when it comes to web applications, so will C#/Python beat C and to some extent C++ for GUI applications. There's just no justifying spending all that time spent on boilerplate code for memory management and generic data structures for a simple application. With C# you get straight to the problem domain of your program and hopefully have a working program at the end of the day. Unless you're doing performance sensitive work, why make it harder for yourself?

I don't give a damn about the portability of C#, that's just a small bonus if it works out in the end. What I care about is that it appears to be a great language for writing *nix applications using GTK for the GNOME platform. Python's good too, and I'm happy to see that more and more applications are being written in it. I think this is because it has finally achieved critical mass and overcome the chicken/egg problem of libraries not being installed by default with distros because of a lack of applications, somethig which is very critical. Interestingly, all of Red Hat's configuation tools are written in Python nwo, including AFAIK the Anaconda installer, Gentoo's portage and tools, BitTorrent etc.

For the record, I am a GNOME developer and Foundation Member. I vote "Bring it on" and eagerly await a stable version of Mono. Good luck to all you Mono developers.

Mono Not Going To Overtake Gnome
by alanj on Sat 15th Nov 2003 16:35 UTC

First of all, Mono isn't going to "take over" Gnome, like many seem to believe. It may well become commonly used, but at the same time, it may suffer from the same lack of support that Gnome development in general suffers from, and from the same lack of updated bindings that the rest of Gnome suffers from.

Also, I don't think that community desire, per se, still pushes Gnome development. Many changes to Gnome of late have met with majority resistance, but the developers have done what they thought best, rather than most popular, guided by the many companies pouring money into Gnome. With that said, C is probably always going to be the foundation of Gnome, and things will probably continue as they are now, with Python projects creating the foundation for newer Gnome technologies.

C# means no more buffer overflows
by Interfacer on Sat 15th Nov 2003 16:38 UTC

which is to me very important.
no more invalid pointers.
if anyone says 'java', they probably never worked in a mixed code environment, where you have to reuse COM components, ActiveX, and dll's.

Int.

too long for a comment, but that's my opinion:
http://www.kdedevelopers.org/node/view/235

Cloning the competition?
by Miguel de Icaza on Sat 15th Nov 2003 17:22 UTC

Hello Tim,

I agree that building complete class libraires that work on .NET and Mono and are completely open benefit both as opposed to only benefiting open source.

But I see .NET and Mono as a new wonderful foundation, and we should encourage as much as possible cross-polination: open source code being used in Windows, and allow Windows users to get a taste of open source. And we should do the same.

The Mono job is to bring this platform to Unix. If you want to do other things, like highly innovative things you are free to do so. Mono is not the end of the world, and nobody is stopping others from building fantasitc things on top of Mono, or fantastic things that compete with the Mono vision.

This is not directed to you Tim, I think your post is well thought out, and I like it.

But I often encouter the `Mono should not do X, and instead should do Y', where Y is `innovate, do something new' or `work on my fav project' or what have you.

My answer to those people is: if you want to do that, feel free to do it. We are enjoying our work on Mono very much, and we are enjoying the applications we are building. We have only control over our time and our lifes, not over yours. This world needs more innovation and more ideas, please, please, go ahead and build those, everyone wants to be marveled, everyone of us wants to see what the future holds. The Mono project has one particular objective: bring a platform that we love to Unix. Whether you will innovate on top of it or not is a different matter (I think you will enjoy it though ;-)

Miguel.

Java is here stable and scalable
by Anonymous on Sat 15th Nov 2003 18:03 UTC

Java is a mature language than C#. I bet on java .

People misunderstand Mono
by Maynard on Sat 15th Nov 2003 18:33 UTC

I think people need to realise that Microsoft is not shy to take ideas from open source and implement them in its own products. Why should open source developers do different. They should take good bits out of what Microsoft does, not just dismiss it because it came from there.

Mono does implement bits of .NET which are questionable, but only to those who wish to write platform independent code, or more specifically, software which uses those parts that are currently of most use to Windows software. The rest, open source products can pretty much do without. Heck, with GTK#, one can write apps that probably work on both Windows and Linux, and might actually avoid using the Windows bits. Might look a bit out of place though on WIndows, but not much more than Ofice System 2003 looks out of place on Windows XP. (Don't believe it, check it out)

Linux will exist without GTK# and with it. It might be hard for Microsoft to justify why it want to basically own all developers who use C# and the .NET. If yo uuse the standard parts of Mono only, you will be ok.

real world
by Anonymous on Sat 15th Nov 2003 18:35 UTC

The thing is.. I've used apps that are written in perl and python for gtk2... They are fast and work as well. You could not tell they were written in a scriting language. That is one thing I can't say about Mono or Java.

re: People misunderstand Mono
by Anonymous on Sat 15th Nov 2003 18:38 UTC

Thats until Microsoft starts the law suits.. justified or not.. with the money they have they could pull one hell of an SCO.

Choice
by eT on Sat 15th Nov 2003 18:46 UTC

It's all about, if mono is just another choice to get my work done (like language bindings now) bring it on, but if mono means * mono - culture * for some things, forget it.

Language transparence
by Torsten Marek on Sat 15th Nov 2003 18:56 UTC

I am really happy to see that so many people are mentioning Python in connection to GTK/Gnome, because it is a very good language for GUI design (and maybe everything else), you have easily maintanable code, you are not (!) forced to use only OO techniques, but also functional ones (though they are not as powerful as Lisp/Scheme/Haskell - but there are many news ideas for Python 2.4), and so on.
Looking at all the articles written by people having been to the PDC and are now full of praise for the new technologies and shouting "Linux has to catch up to this or it will die! Horribly!" I just think, that all this what we have seen is in the first hand a great marketing blurb. And nothing else. It becomes reality in 2006, not earlier, presumably later. And why does OSS have to catch up? This, of course, makes perfect sense if you are either
1. a Microsoft user, who feels (!) warm for Linux, but is to <fill in your favourite adjective> to switch to Linux (may he even use OS/free software) .. who cares, I mean really? I do not think that those people's opinions count
2. some hacker with a vision
3. some hacker with a plan for world domination.
On osnews.com, there are plenty people of kind 1, and we (at least I) have to read their articles over and over again. But I do not know, whether the people of Ximian/Mono/Novell/whatever belong to type 2 or 3. Anyway, both ways can lead into great success or great disaster.
What I personally would like to see would be some language-transparent thingie like Fresco has, so that every language supporting Corba can be used to program it. In contradiction to .NET, where a runtime has to be written for each language.

...
by Anonymous on Sat 15th Nov 2003 19:43 UTC

Mono could fail if it is not well documented. There should be several easy to find tutorials aimed at beginners and intermediate solutions developers. Don't forget to market your product.

It also should be preinstalled on SUSE professional.

re: real world
by Anonymous on Sat 15th Nov 2003 19:53 UTC

Mono with GTK looks exactly like Python with GTK or C with GTK. It is the same toolkit, it renders the same. Packaged properly (with RPM for example) a Mono app will run without you knowing what's under the hood, as long as you've got the mono RPM installed (same as Python).

What does Mono-aware Gnome really mean
by RoyBatty on Sat 15th Nov 2003 20:31 UTC

Someone else said it's really a gnome-aware mono. I don't really know what a mono-aware Gnome really is - maybe someone can clue me in. Is it that certain core parts of the Gnome desktop would/could be rewritten in c#/mono?

Mono is just basically a compiler, some libraries that will/are compiled down to MSIL, and the run-time engine.

I think the core should probably still be written in c(so it's fast as possible), and then apps could be written in gtk#/Gnome# or any other language the developer chooses.

I think in a way the title is misleading and gets the anti-mono/.NET people all worked up.

You can embed mono into a c application, but I don't know what gains that gives the Gnome desktop. Maybe someone else knows what mono can REALLY give to Gnome.

...
by Anonymous on Sat 15th Nov 2003 20:58 UTC

I did not research the implementation but I gather that Mono C#/GTK# code is translated (the whole program) by a compiler into an intermediate language, and than the intermediate language is interpreted by an interpreter which translates the intermediate language to machine code (line by line or rather instruction by instruction). So fundamentally there is a compiler and an interpreter.

It appears that you are correct, that Gnome would be implemented in C#/GTK# so that it takes advantage of the dynamic runtime capabilities of managed code.

...
by Anonymous on Sat 15th Nov 2003 21:04 UTC

Think of it as a software layer, or as some call it, a virtual machine. So Gnome would be ported to a higher layer of software.

...
by Anonymous on Sat 15th Nov 2003 21:33 UTC

I imagine that some of Mono's infrastructure was implemented in C such as the interpreter, so that it would be portable.

If you want to know more about computer organization than get a book such as "Structured Computer Organization 4th ed" by Tanenbaum. The other popular author is Hennessy.

v Polls and truth ?
by Anonymous on Sat 15th Nov 2003 22:06 UTC
Not that it matters..
by Chuck Hunnefield on Sun 16th Nov 2003 02:03 UTC

MS will find a way to break compatibility one way or the other. It's an option, fine, but if this is some new way of legitimizing GNOME, then it's a bad idea.

Look, didn't you GNOME critters out there support GNOME because it wasn't based on a proprietary standard (like KDE?)

Re: Not that it matters
by Erwos on Sun 16th Nov 2003 03:47 UTC

"Look, didn't you GNOME critters out there support GNOME because it wasn't based on a proprietary standard (like KDE?)"

You're confusing the issue. Qt's problem was licensing. The potential issue with Mono is patent-related. Mono's licensing is absolutely fine.

There are a couple circumstances that mitigate against Microsoft ever suing anyone over this:
1. Anti-trust agreements. Suing Mono over inter-compatibility wouldn't go over big in the courts, patented or not.
2. Microsoft has no history of using patents against anyone, and they have not made any objections whatsoever to Mono thus far.

But, most of all, I don't understand what the poll question is even about. Is it really going to hurt anyone to slap on yet another binding for GTK+? Even if I prefer GTKmm (which, incidentally, kicks ass), why should I deny someone else the choice to use something else?

You guys didn't interpret the poll as "should we use Mono only?", right?

-Erwos

Mono is for UNIX OS's yet so many are left out
by Anonymous on Sun 16th Nov 2003 03:49 UTC

I have mixed feelings on Mono. First I can't find a good reason to really use C#. It looks like a decent langauge, but nothing to really explain why people seem to be drooling over it and why Linux people want it so badly.

Also how come it says on Mono's page it's for UNIX OS's and yet Mac OS X the biggest UNIX OS out there doesn't have a download, neither does any of the BSD's (at the minimum i'd expect FreeBSD), and I can only see like 4 Linux distributions on the download list ? Is this a UNIX thing or is that statement just a guise to hide behind while only supporting 4 some OS's ? And yet DotGNU is attempting to do the same thing except it's for Mac OS X, FreeBSD & many Linux distributions. Im not trying to be a troller here, but I see so many projects say they are for all UNIX's and yet leave so many of them out of the cold at the same time.

I'd have to agree this is a bad thing in terms of copying something someone else has already done. Why can't Linux seem to innovate if Apple does it every year with Mac OS X. After Mac OS X 10.3 Panther came out I heard a bunch of Linux people talking about making something similar to Expose on Linux. Again your not innovating, your copying. I think Linux could be a really good OS, but it needs to come out with something good that makes everyone else jeaous, im still waiting for something like that to come out. I don't doubt there are some really smart Linux programmers out there so why can't you seem to think of anything really innovative ?

Personally I like Objective-C the best, but I also really like C++. I don't get how some people say C++ isn't really OO when it's entirely OO. But im also going to learn C#, I've read the specification and seen some code, but still don't see any big deal about it. Im willing to learn C#, but personally I'd like to see a good and ORIGINAL IDE for Linux with an easy to use language and interface.

i didn't do it.
by CroanoN on Sun 16th Nov 2003 04:27 UTC

--: )

@Anonymous
by Rayiner Hashem on Sun 16th Nov 2003 04:41 UTC

I don't get how some people say C++ isn't really OO when it's entirely OO.
>>>>>>>>>
There are elements of C++ that aren't OO (like the STL). The language itself can support OO just as well as Java, but a lot of the library is (with good reason) not OO. The STL is actually a little bit functional (the designer didn't believe in OO). What's funny to me is that people criticize C++ for not being "pure OO" and then point to Java as the solution. Java lacks a lot of advanced OOP features. Then, there is still the huge schism between built-in types (strings, integers, floats, etc) and full objects.

Im willing to learn C#, but personally I'd like to see a good and ORIGINAL IDE for Linux with an easy to use language and interface.
>>>>>>>>>>
PyQt/PyKDE is getting there. KDevelop has preliminary support for Python (they are working on fuller support for Python in wizards or whatnot). Also, it has full support for GUIs layed out visually using Qt designer. Lastly, there is Psyco, which gives a 4-100x boost to your unmodified Python code.

http://developer.kde.org/documentation/library/cvs-api/kdevelop/htm...

It could be a good thing
by snorkel on Sun 16th Nov 2003 05:17 UTC

Having Gnome Mono aware would make creating apps for it much easier.
Just think if Borland Delphi 8 for .net supported it, it would make creating desktop apps trivial and super easy, and because everything you need for deployment would already be in place, we would not run into Kylix type deployment issues.
Deployment was the big downfall of Kylix.

Languages
by LC on Sun 16th Nov 2003 06:51 UTC

1. Java: IMHO it is obsoloted. No properties, no operator overloading, stupid virtual machine (every java application start new one), it is a big fall.
2. PHP/Python: IMHO scipting languages very good for scripting, but not too good idea to create professional business applications.
3. C++: it is a very good tool to create system applications (RDBMS, compiler, etc) but for desktop or server applications IMHO not too good idea. I wrote a relative big (> 20 000 lines) business application it C++ and wxWindows, and IMHO it is not a good idea. The next version of my application written in Kylix, because it is more efficient and easier to maintenace. But IMHO the future of Kylix and Object pascal a little bit doubtful.

But if gnome support CLR anybody can write PHP, Python, Perl compiler to .NET.

The "microsoft-dependency" IMHO not a problem. The current Gnome also use similar technology: CORBA, html, etc...

@LC
by Rayiner Hashem on Sun 16th Nov 2003 06:56 UTC

Python isn't really a scripting language. Its an extremely powerful real language that happens to be interpreted. With Psyco, its runtime performance is usually good enough for most applications.

If people don't want Mono, don't use it.
by Maynard on Sun 16th Nov 2003 07:21 UTC

This is the classic case of scratching an itch here. Migual and other parties decided they wanted to implement .NET because it was good ofr developing applications they wanted to make, and they made Mono. Just like it will be possible for people to just use plain old C++ on Windows and avoid Mono, it will remain possible on GNOME, in fact, more likely than not, Mono will be a secondary, albeit very very viable devlopment option.

But many people will just move to .NET and I would like to think if Mono is superior to whatever is there, people will take to it and use it instead. Its about using the best tool for the job.

Linux programming
by Anonymous on Sun 16th Nov 2003 07:35 UTC

Thanks for the info Rayiner. I do work mainly on Mac OS X right now and i have done programming on Windows also. However Linux seems to elude me, I consider myself to be a pretty good programmer ( I know C,C++,Objective-C,Java,Visual Basic,assembler,etc.) but for me in Linux programming it's hard to figure out what to use, and whats god & bad.

On Windows the best IDE is Visual Studio, on Mac OS X the 2 best are Apples Developer Tools or Codewarrior. However whenever I load any Linux distro it's not clear if you use 1 of the 3-4 that usually come with whatever distro you use, what the app will be able to run on and what languages are supported or how you get started. How hard/easy is Python to learn?

RE:@LC
by LC on Sun 16th Nov 2003 07:58 UTC

IMHO the CLR is better solution. You can write your code in Python, C++, C#, PHP, Object Pascal, VB.net if your compiler can produce CLR output, and you can use Python code from C# or Pascal code from Python, etc. Let's see PythonNet.
The speed will be relative slower then C++ but IMHO not slower then Psyco or other similar tools, and faster then interpreted PHP, Python, etc. And without processor dependecy. If anybody write CLR code to his compiler it can produce output all of CLR supported processors (in practice all processors, because if JIT doensn't exists you can run interpreter, slower but it always work).

@LC
by Rayiner Hashem on Sun 16th Nov 2003 08:11 UTC

The CLR really isn't good at supporting dynamically typed languages like Python. For production work, dynamic typing is a preference (a lot of people like strict typing like in Haskell or Ocaml) but for rapid development, its commonly accepted that dynamic typing lets you usable results very quickly.

dynamic typing
by Anonymous on Sun 16th Nov 2003 09:11 UTC

"The CLR really isn't good at supporting dynamically typed languages like Python. For production work, dynamic typing is a preference (a lot of people like strict typing like in Haskell or Ocaml) but for rapid development, its commonly accepted that dynamic typing lets you usable results very quickly."

although I never wrote a program with a dynamic typed language I doubt it. I mean what's the advantage? You type a word less but spend a lot tome searching for errors and have no IntelliSense. I'm not a pro developer but I think the opposite is the case, what's the problem with making a cast? Unlike VB C# sytax is very nice for that ((int)myInt/myInt as int/Convert.ToInt(myInt)). Maybe I'm missing something. Also I think .NET ca handle dynamic typed languages like VB with option strict off or JScript .NET good

Re: dynamic typing
by LC on Sun 16th Nov 2003 10:02 UTC

I agree. The dynamic typing not too good idea if you want to create complex applications.

Re: dynamic typing
by Torsten Marek on Sun 16th Nov 2003 10:08 UTC

"although I never wrote a program with a dynamic typed language I doubt it. I mean what's the advantage?"

First try it out, then judge about it. Otherwise shut up.
In Python, I never had the use for a debugger.
In C/C++, I am dependent on it.

Re: dinamic typing
by LC on Sun 16th Nov 2003 11:04 UTC

> In Python, I never had the use for a debugger.
> In C/C++, I am dependent on it.

It is very nice :-D And in your opinion it is argument for dynamic typing ?

Re: dynamic typing
by Torsten Marek on Sun 16th Nov 2003 11:10 UTC

No, but is argument against the fud that you spend a lot time for searching errors introduced through dynamic typing

RE: dynamic typing
by /dev/null on Sun 16th Nov 2003 11:11 UTC

"I'm not a pro developer but I think the opposite is the case, what's the problem with making a cast?"

The problem with casts is that you circumvent the type system, which is not the same as a dynamic type system. I don't want not repeat the debate about dynamic vs. static type systems -- use google if you are interested in it.

Just let me tell you this: static typing means the type of an entity is determined during compile time while dynamic typing determines the type during runtime. Casting is neither static nor dynamic (Forgive me if I do not consider here the various forms of casts that C++ offers). The advantage proponents of dynamic systems cite is that it is trivial to develop generic containers and algorithms. In static type systems you need a form of generics (eg. templates) to achieve the same.

Why do Miguel de Icaza start a project like Mono?
by Andreas Davour on Sun 16th Nov 2003 11:54 UTC

Have he, and his followers, forgotten?

"Don't imitate, inovate"

It's still so true...

RE: @LC
by keiname on Sun 16th Nov 2003 12:13 UTC

The CLR really isn't good at supporting dynamically typed languages like Python. For production work, dynamic typing is a preference (a lot of people like strict typing like in Haskell or Ocaml) but for rapid development, its commonly accepted that dynamic typing lets you usable results very quickly.
I hear this a lot but I never seen any technical information about this issue.

what about gtkmm
by tonywob on Sun 16th Nov 2003 12:58 UTC

I would love to see gtkmm/c++ adapted into gnome, currently not many distributions have it installed by default, and in my opinion gtkmm is alot nicer to use than the standard gtk and c.

Why betting on .NET and not in Java?
by Cogumbreiro on Sun 16th Nov 2003 13:47 UTC

I still don't get it why do linux users/developers still bet on .NET technology more then they do on Java, they prefeer to adopt a Microsoft tactics to overthrown Sun in using a good technology then to go against it and make Unix use Java. It just doesn't make any sense! And btw Java is not slow, Swing is, ever tried Java-Gnome? You should.
I know that we need mono/dotGnu like we need wine and samba but making it standard for a platform is just insane, seems to me that there are alot of windows migrated users that just feel that they are not at home until they have all the useless mombo jambo they had before.

Why betting on .NET and not in Java?
by LC on Sun 16th Nov 2003 14:07 UTC

Because the technology is better. Because the developers of .NET learned the fall of java and skipped the dumb things of java. Java is slow because always start a new virtual machine for every application. And not only the swing slow: the eclipse platform also not too fast but at least very slow :-D (with Intel P4, 512MB RAM, on linux).

Re:Why do Miguel de Icaza start a project like Mono?
by LC on Sun 16th Nov 2003 14:14 UTC

IMHO in this area (virtual machines, class libraries, languages) nobody can produce too innovative (and useable) thing. Languages and platforms are developed from about 1960. It is evolution and not revolution. If you see .NET it is not a bunch of a new innovations, only the synthesis of the best parts of the existings systems (Java, C++, Object Pascal).

Java IS NOT READY FOR LARGE PROJECTS
by mendred on Sun 16th Nov 2003 14:26 UTC

My company has a product an accounting package.Version 4.0 was written in C/C++. Its was fast reliable and ahead of its time in terms of the interface. Our clients loved it.

Then the Buzz word Java cropped up(this was a while back). Stuff like cross platform compile once. The product manager decided that for version 5.0 we will shift to java.

In addition we made many changes. It became client server enabled and used servlets for its backend. And a whole new plethora of features making it a mini erp package.

We released it for jdk 1.3. It was slow, resource hungry. The clients hated it. Finally we shifted the entire backend to C++. The servlets were there to recieve the client's request and make native calls.

But the client was still in java and needed a minimum 128 mb ram to run properly. For an accounting package that is a joke. Our clients weren't happy but they needed the features (Besides they had payed a bundle) So they upgraded. But even then there were so many problems. We kept getting 'out of memory' exceptions client side because it just couldn't handle the sheer volume of data sent by the servlet. So we implemented our own classes, to enable harddisk caching just like windows virtual memory thingummy. I wonder when sun will implement that ??

Look java is an easy language no doubt. But it is just too resource hungry. There is so much that goes under the hood that the programmer doesn't know about. And I don't think it really is the language's fault. The higher the level of abstraction., the more generic it becomes and less flexible. It is very very frustrating.

IF there is something ****ed up in there, there is nothing you can do, except throw the damn thing away and reimplement it with his own classes, and for cripes sake that's what we anyway do in C++, so why do it in a language that sacrifices performance??

And besides please don't give me that bull about memory management and crap in C++. You try to use it directly and you will have hell. Obviously it expects you to take care of every detail, which u can't do on a large scale . So take care of the minor details first. Write some small efficient memory management classes/functions that are pertinent to YOUR PROJECT/PRODUCT. There is no one size fits all in this world, because machines are still not that fast. Maybe one day in the world of 256 bit processors and 1 terabyte ram or something java will run decently but that day is pretty far off. And my company has been burnt and they have learnt their lesson.

Right now we are striking a balance. The actual classes make native calls for efficiency. But the general framework is is in java.And now everyone is happy. You can't write an entire damn thing in java, or a higher level language, they just aren't efficient enough. So strike a balance and stop going to extremes. C/C++ is useful when you have a tight-knit team of 10-15 people who know what they are doing and good QA (The inner circle). 100 ppl using C++ you are looking a disaster in making. The outer circle is a bunch of ppl who use java or a another high level language to use the components written by the inner circle. You can't get the sheer performance of pure C++ true, but this model helps you to deliver stable robust products on schedule without the client going to fits of apolexy. For OSS, this is not a problem so use C/C++. Just look at the performance of BeOS/Abiword/Gnumeric. Now imagine it written in Java.

MORAL: Use the right tool for the job and don't think about trying to make fashion statements.

AND THE SAME PPL WHO COMPLAIN THAT THEIR APPLICATION IS NOT RESPONSIVE AND THAT THEY WANT IT FAST, WILL BE HOLLERING FOR JAVA.(This is a client who really got on our nerves!!!).


RE: Java IS NOT READY FOR LARGE PROJECTS
by Cogumbreiro on Sun 16th Nov 2003 14:42 UTC

First of all, what JVM did you use? Looking at some benchmarks sun's JVM is know for to be bloated in memory usage, you should use IBM's jvm if you really want to achieve performance. J2EE is known for it's speed, stability and good threading abilities, JIT really makes things faster in long term usage. My question is the following is .NET/Mono/GnuNet good enough? I think not, so i still ask again, why not support a good JVM like Kaffe or GCJ (which even they have a smaller memmory footprint then sun's JVM) and make it mature enough to be usuable in that kind of projects?

resources and performance
by Anonymous on Sun 16th Nov 2003 14:58 UTC

The best program microsoft created so far is probably VisualStudio 2003. It is impressive in any aspect. As for resources and performance, it takes maybe 100 Milliseconds to load and uses 10 MB memory after startup, it's .NET based, like .NET very well designed. Time consuming assemblies like the forms classes are compiled using a technology called ahead of time compilation. Try VisualStudio 2003 C# for a few weeks and you probably fall in love with it like Miguel

.NET + Linux/*BSD
by Exdaix on Sun 16th Nov 2003 15:36 UTC

Novell might release a C# version of Gnome or GTK or whatever, but I highly doubt it will ever be included in Gnome itself. Gnome is part of the GNU project, even the G in Gnome stands for GNU. There is now way the Free Software Foundation is going to include Microsoft's .NET in it. It's just not going to happen. Think about it.

RE: .NET + Linux/*BSD
by Exdaix on Sun 16th Nov 2003 15:39 UTC

"there is now way" = "there is no way"

Oi, spooty typos.

RE: Java IS NOT READY FOR LARGE PROJECTS
by Wee Jin Goh on Sun 16th Nov 2003 15:50 UTC

Too many possible reasons as to why your product is underperforming when written in Java. One of the big things that I found Java to be really slow in is the UI. Swing is really well designed, but if you're doing anything with tables, trees, etc you'd do well to write your on model classes as the supplied ones just don't cut it. You mentioned an accounting package, so I'm guessing you'll use these components a lot. Rewriting the datamodel class normally helps a lot, and is recommended procedure.

That being said, there are big apps that use Java, and isn't immediately obvious that it is Java. Take ThinkFree office for example. It is a pure Java app that runs well on my Powerbook. Sadly, it doesn't have certain features that Office has, else I'd be using it exclusively.

...
by Anonymous on Sun 16th Nov 2003 19:17 UTC

It's none of the FSF's business what Novell does. They can implement GNOME using code mangaged by their MONO runtime. The only constraint is that it probably has to be open source.

It's wrong that the FSF or the open source community control vendor interest in Linux. They need to give up some control so that a vendor can have a unique product line. It's in the FSF's interest to promote competition on Linux. The system itself, that is, the operating system layer is always going to be open source, but any layers ontop of that will be commercialized. That's the way it should be.

...
by Anonymous on Sun 16th Nov 2003 19:28 UTC

Linux has to allow a vendor to differentiate it's product, it has to clearly support business interest in Linux or else I think that businesses should go elsewhere.

If you make the system open source and protect it with the GPL, than that will prevent one company from controlling the factors of production. On the other hand, any layers above the operating system have to support vendor freedom to establish a product line and not have that stolen from them.

If the open source community wanted more control over the higher layers than they should generalize software that they build so that a vendor interest can specialize that software and differentiate itself, yet the open source community would be supplying their leadership.

Dude, VS is not created with .net, that is why it loads so fast. It's a c++ non managed app.
Check out SharpDevelop, it is a pure .net app and it loads much slower.

Responses
by Rayiner Hashem on Sun 16th Nov 2003 20:41 UTC

@Anonymous:
I ended up writing a bit more than fits here. You're very misinformed about dynamic typing. Please read:
http://www.prism.gatech.edu/~gtg990h/dynamic-typing.txt

@Keiname:
See http://www.parrotcode.org for rationales on why .NET isn't well suited for dynamically typed languages.

Hiding to nothing
by Steve on Mon 17th Nov 2003 01:05 UTC

Where the fsck is MdI hoping to go with this? Attending MS marketing speil to try to catch up with what they will be doing in the future, hoping only ever to catch up with their latest toy, regardless of the quality.<BR>
Refreshing to see that he does question some of their decisions, but he's happy to go along with (and take Novell along with) whatever MS does.<BR>
Still, I guess Novell are used to taking "that position" with Microsoft.

Re: Responses
by keiname on Mon 17th Nov 2003 15:54 UTC

I am sorry Rayiner but I didn't find anything of a technical nature indicating why the .NET runtime is unsuited for dynamically typed languages.

Re: dynamic typing
by Dolemite on Mon 17th Nov 2003 18:15 UTC

"I ended up writing a bit more than fits here. You're very misinformed about dynamic typing. Please read:"

thanks a lot, not everything was easy to understand for me because I know only .NET and things like generics are not supported yet (will be in the next version) but I will save it for later studies

"I use Python a lot, and most of my errors are not due to dynamic typing, but Python's propensity to auto-vivify variables. So if you do something like k.myVariabl = 2 (note the spelling error) it will create a class member called "myVariabl" in 'k', even if you meant to assign to an existing memeber called 'myVariable'"

why not simply using a editor capable of code/auto complete/IntelliSense like features? It appears to me as extremely helpful, maybe it's just my laziness or lack of keyboard skills, I think without I would have a problem

Dude, VS is not created with .net, that is why it loads so fast. It's a c++ non managed app

Large portions of VS is written in managed code.

mono
by Dan Stromberg on Tue 18th Nov 2003 17:06 UTC


It's a seriously awful idea to try to do .net on linux.

Microsoft can be counted on to support mono in the beginning, when .net needs all the help it can get, and then to break mono compatibility when MS no longer needs the help and just wants to lock up the .net software market for itself.

Microsoft is just the worst business partner anyone could have. They're all about backstabbing with just the right timing - just right for them, not for their partners, not for the industry, not for endusers.

I don't object to implementing something with some of the advantages of mono/.net. In fact, I think that'd be a good idea.

break mono compatibility
by Dolemite on Tue 18th Nov 2003 19:16 UTC

they can't breack it because different .NET versions run side by side. For every MS version there will be a Mono äquivalent