While Mono and C# may be the best thing since sliced bread, Java is the sliced bread.
Despite how the Mono fanatics at Novell slant things, Java is technically ahead of Mono in numerous ways: It has a huge developer base, a complete, widely-used and supported IDE (Eclipse), and a native compiler (GCJ) that allows for non-VM-hosted, speedy apps. Mono has none of these things.
And if you need proof that Java is ready for the desktop, you can find it in the form of OpenOffice 2.0’s database app.
On top of all this, other issues continue to haunt Mono. Think about the fact that .NET began life as a Microsoft technology targeted exclusively towards Windows. Even if Microsoft never ends up sueing the Mono devs (which I think they will), they will probably continue to change/add features to .NET that make Mono incompatible with every new MS release.
Sun, meanwhile, is a relatively OSS-friendly company, and has always been committed to true cross-platform compatibility. They have no problem with OSS Java development, as long as it stays compatible with their implementation. This isn’t because of some vendor-lock-in mentality; rather, they’re trying to ensure cross-platform compatibility. (Keep in mind that Microsoft already ruined Java compatibility once with its incompatible dev tools and VM.)
Now, if Red Hat et al. can actually pull off a fully Sun-compatible implementation, then hats off to them! Sun will doubtless be a lot more accomodating in this endeavor than Microsoft will be for Mono.
Btw, the main reason Miguel is such a big .NET fan, in my opinion, is that he hopes to draw MS developers to Linux. Fair enough, I agree that’s a benefit.
Mono primarily appeals to Windows developers who want to develop cross-platform applications. Those types of people are pretty unlikely to start wanting to hack the GNOME desktop. So why are we trying to force Mono down the GNOME devs’ throats?
a complete, widely-used and supported IDE (Eclipse),
Eclipse is great, but IMHO the M$ Visual Studio far better.
and a native compiler (GCJ) that allows for non-VM-hosted, speedy apps.
IMHO the gcj’s “native” code is not faster then SUN’s JVM.
And IMHO the .NET architecture (databinding for controls, web forms, properties, etc) is far better then java. Yes, with java the Gnome can be better then KDE – but the main enemy is the windows – and it will use .NET.
I have seen David in many discussions about mono on osnews. he has been trolling about mono for quite sometime.
Trolling implies that I’ve been bashing Mono without saying why. I have always said why I don’t think Mono is an option and why the hype doesn’t match up to reality.
Also, we are talking about the DESKTOP, not the SERVER-SIDE or WEB.
Funny. Microsoft doesn’t make that distinction, which is why people are having the debate in the first place.
You can also tell pages created via Java vs. something else, such as, CGI-Perl. Java is always piss-poor slow.
I don’t know where you get that bizarre idea. Java is regularly used to service high traffic sites and applications without problems. CGI-Perl isn’t close to that scalability now the development structure needed, it’s a joke. I take it that was a joke?!
Maybe the sites you’ve visited have been servicing large numbers of users? That should tell its own story.
Visual Studio may be better, but it costs money. If you’re going to compare things like that, you should compare VS.NET to JBuilder.
As far as .NET’s developer base being larger, that’s debatable; but I’d bet on Java since it’s been around a lot longer. Plus, if a .NET app uses Windows forms, it won’t run on the Mono VM.
True, GCJ doesn’t support Swing yet, but most apps these days don’t use Swing. Most .NET apps, on the other hand, do use Windows Forms.
I think the people who are such GPL zealots that they can’t even stand the proprietary software friendliness of the equally GNU LGPL license can’t see one of the things that makes Windows so popular with developers and continues to make it so.
LGPL development tools need to have an adequate funding model to continue their development and make them good enough. Here’s the clusetick – there isn’t one.
Microsoft is able to give away their development tools, or at least their interfaces (the onbes they choose to, anyway) because you don’t get a free operating system, desktop environment or even free development tools like Visual Studio to make you productive.
Here we get the thick little LGPL zealot – “LGPL everything, so I can develop everything for free, and use everything for free”. It isn’t going to happen and it just isn’t getting through some skulls. Please tell me you’re not that thick.
(Most proprietary software for Windows these days is now developed by “shareware” developers for whom the price of a QT commercial license is simply out of the question.
No it isn’t. The vast majority of software on Windows is sold at a large premium and companies make large margins on it. Shareware developers are utterly meaningless – here today, gone tomorrow. Anyway, even for a shareware developer good development tools and a copy of Visual Studio or a Java IDE are on their shopping list.
If you don’t know about software development in the real world (i.e. not in a basement), don’t comment.
I get the feeling many people around here simply aren’t going to get the realities of things.
Rediculous, I do not even have to do that on Windows. This definately is not an example of user friendly development enviroment — something GNU/Linux really needs.
Yes you do (and people still pay for Visual Studio ). You pay for licenses of Windows, Office, Windows Server, Client Access Licenses (you do know about this stuff, right?) – all of which you don’t have to buy, or can get at a very low cost, if you were to use KDE, Linux and open source software.
I do not deny the superiority of KDE, but suppose a developer wanted to create a program for KDE, and did not want to use Qt , because Troll Tech were a competitor.
If, and when, KDE gets more popular you will see ways and means of creating differently licensed components that are Qt-compatible but don’t create any Qt or Trolltech code. There are certainly ways and means of doing that, but they just simply haven’t been explored yet and there’s not yet any real demand for it.
“No, $LANG should be best adopted by the Gnome developers. $LANG is very performant, easy to learn, mature, stable, and has excellent documentation!”
Jesus, get a clue. Every professional knows that $LANG simply doesn’t cut it. It may be nice for some hobby programming, but $MYLANG beats the shit out of it when it comes to serious work.
Nobody in the real world is using $LANG, whereas $MYLANG is the obvious choice for any business out there.
On top of that $LANG is patent encumbert and not free, whereas $MYLANG is totally free and totally patent unencumbert.
Anyway, all of that doesn’t matter, as Gnome is about to die anyway.
Which of course is sad as KDE is bound to fail as its based on QT and we all know that QT just isn’t an option as companies can’t be expected to pay for software!!11!!!11
Finally, Linux will never be ready for the desktop anyway, so why bother and Windows rulez!11!!1
I think @ Guadec they don’t talk about whether its MONO or JAVA, they most likely talk whether it still makes sense continuing with GNOME or simply cease the entire project.
Well that’s stupid, isn’t it? It’s an open source project (it never ends), and Red Hat and Sun actually rely on it for their customers i.e. they actually use it for something. Every project, either external or internal, goes through trials like this.
Right, but if the key members realize that the project is getting you nowhere and that there are too many egos involved or the competition is simply far ahead then what benefits does it give continuing such a project ? They should reconsider and try helping something which has real chance to survive. Once the key members leave the projects it’s as good as dead because it will hardly find new people to work on it. Look at how many dead projects there are.
> Red Hat and Sun actually rely on it for their customers i.e. they actually use it for something.
That also explains why Red Hat has dropped out of GNOME for the Red Hat solutions and have shifted it to Fedora.
> Every project, either external or internal, goes through trials like this.
At GNOME this is not just a trial. It’s a fatal disaster.
That also explains why Red Hat has dropped out of GNOME for the Red Hat solutions and have shifted it to Fedora. ”
Red Hat currently has Red Hat Enterprise Linux and Fedora both of which use GNOME as the default DE. GTK and GNOME contributions by Red Hat developers have been pretty heavy to entertain any ideas that Red Hat is dropping GNOME
It is true, but if you a professional developer it is not too important. If not, you can use the SharpDevelop, MonoDevelop, Web Matrix.
If you’re going to compare things like that, you should compare VS.NET to JBuilder.
All right. Let’s compare. IMHO the VS far better then JBuilder. Try to create JSF with JBuilder and WebForm with M$VS…
Plus, if a .NET app uses Windows forms, it won’t run on the Mono VM.
If you talk about GNOME and any language, IMHO it is mean GTK# or java GTK bindings and not swing or windows.forms.
True, GCJ doesn’t support Swing yet, but most apps these days don’t use Swing. Most .NET apps, on the other hand, do use Windows Forms.
The most of DESKTOP applications are use swing under java and windows.forms under .NET. The server apps are uses jsf,jsp, etc under java and web forms under .NET.
KDE is controlled by a small norweigian company that charges for the toolkit. the KDE guys should base 4 on a different toolkit. That’s its only hope for survival.
KDE is not controlled by a small Norwegian company at all. If anything, KDE dictates to Trolltech what they should put into Qt. And if they based 4 on a different toolkit it would be nowhere near the quality required, as Gnome is now.
That’s why there’s such a debate about higher level languages and toolkits within Gnome right now. They can’t get enough done with the development tools they have.
See above posts for details – or maybe you have and don’t like it .
Well, I for one always had trouble getting MS .Net stuff to run on linux.
Also, as you don’t seem to know anything about mono, why do you call it a parcial implementation? While it may not have certain things the MS stuff has, it certainly has things the MS stuff hasn’t, so what’s your problem?
@Andrewg (IP: —.is.co.za):
Bah, every professional knows that using a language that doesn’t use $ isn’t an option in a seriouse enterprise setting. 😀
I don’t know anything about the legal issues of Mono, so I’ll shut my mouth on that particular subject. I think everyone should consider the transition for developers who have never developed applications on the Linux/Gnome platform. Most software developers on Windows haven’t used Java to write desktop applications, simply because it wasn’t popular due to performance etc.
If we want more contributors for Gnome, we must keep in mind what our target audience is. That includes not only the current Gnome developer community, since we also want to attract lots of other developers to create cool applications for Gnome.
Therefore, I think most developers who created desktop applications on the Windows platform will most likely appreciate Mono instead of Java. This is just an assumption and I do not have the facts/numbers to prove it. Feel free to comment or think about this.
Someone should make a GCC front-end for Python and Ruby with type inference (fall-back to dynamic typing) and be done with it. Both are really good languages for this sort of thing and would benefit from being reasonably fast. At least faster than JITted Java where it matters.
Java and C# are IMHO a waste of time because they try to do too much. Would you like to re-implement their colossal class libraries in your spare time? Me neither.
FOSS could come out and say that we are going to make it possible for developers to make money on such and such product line that FOSS is going to create for the specific purpose of making money. It would be like Java/Net/Mono and it could be done instead by FOSS as an experiment, perhaps using Python. This is your question, but the answer lies in whether or not FOSS decides that it wants to do this…for the hell of it.
Which poison is better for you; Java, .Net, or Mono? Or on the other hand does some company want to make a deal with FOSS and blow these turkeys out of the water probably with the help of IBM. Who wants to make hundreds of millions of dollars, probably nobody.
Sorry for saying this, but the developer is the fool. The developer is the money, they don’t have any power, they don’t have any control, the developer is a puppet. So it’s kind of entertaining to see the developer get strung up and tarred and feathered. It’s not right, but it’s entertaining because people choose to be victoms almost all of the time. Go and use whatever the hell you get forced to use; Java/.Net/Mono.
Java and C# are IMHO a waste of time because they try to do too much. Would you like to re-implement their colossal class libraries in your spare time? Me neither.
You only need the compiler. Use GTK/Gnome bindings for the rest. See Java-Gnome.
Java and .Net/Mono frameworks are colossal and that’s done on purpose, it’s how they close out FOSS developers from the broad market. How in the hell are you going to compete with five million lines of code?
It’s all of the other things that product lines leave out that are there for FOSS users to take advantage of but I’m not going to say a damn thing about it because I’d rather that people suffer as a means of social control if I’m not involved providing the obvious solution.
You are helpless because corporations did a little bit more than you to challenge their own helplessness, not much more, but just a little bit more, and it set them a world apart. I highly recommend .Net and Java and Mono or for that matter GTK+/mm. Persnally I wouldn’t use any of them however.
The .Net developers pretend that they are Microsoft, they pretend that they are rich, but really they are victoms. They say that Microsoft is the best, even though it has done them absolutely no good what so ever. I don’t understand why humans do this, but you can only control yourself and your own actions. Save your time and money is what I would say. There is no company that offers all of the obvious advantages that would benefit developers, even though those advantages are very obvious.
The conservative end user is the real winner in Western society and the computer industry. Specifically the Linux user who maybe splurges for the two year old hardware or the used Xbox and the fifteen dollar games that are seven months old but were fifty dollars when the came out. This is what experience is all about, but we really need the losers to waist their money in order to maintain the system.
It is not a challenge to monopolize the computer industry, no challenge what so ever, it’s just not a choice that anyone has taken up.
GCJ is now mature enough, and once gcjx replaces it, we will have complete java 1.5 ready for use on the desktop. There have been some ideas on forking gnome to 3.0 for development of new ideas while mantaining 2.x series for mainstream use. I think 3.0 could be started with gcj has the base language using the great power classpath has in its libraries to shorten the development cicle. That way both, gnome and gcj (and therefore free java has whole) would win. Using gcj and classpath as a base for a big project like gnome 3.0 would force these two projects to polish quickly. Another extra, gnome continues to be natively developed. We have the language, the tools (native eclipse and glade already work well).
Havoc makes the most sense. The sheer number of libraries and open source tools, coupled with unbelievable support from *Apache* (take a long hard look at that name, then go over to apache.org and take a look at all of the java projects sponsored by Apache), and open source applications, and IBM with Eclipse, and Sun with the commercial runtimes and having made Linux a first-class citizen before *any* other corporate entity, and the superior support for java under MacOS with Apple’s full cooperation and participation, and the wide number of JRE’s from *multiple* VENDORS (not just open source groups…those exist too), and tremendous integration work with the Desktop being done by https://jdic.dev.java.net/, and the huge, huge ecosystem around mobile apps (think Blackberry, OnSTAR….), and the overall superior security architecture and design Java platform (written from ground up for network operating environment…no buffer overflow), and SWT, and really cool projects like this: http://jrex.mozdev.org, and so many other reasons. Java on the server is a given. Java on the client is not, but it’s looking more and more obvious.
Even in the worst case, if there is something that great that happens with the Mono *runtime* (such as the multiple language support…not that Java doesn’t have it, but perhaps makes it slightly easier to interface with other classes and objects), all the work done in java can be transferred *without* being ported. There is nothing inherent in the Mono stack that’s better. C# may be syntactially better, but let me tell you something, Java’s elegance and the power in its simplicity is it’s draw. Too much syntactic sugar sucks when it doesn’t make anything inherently possible that wasn’t otherwise. Even if C# makes things 5% easier in some cases, it’s not enough to justify it. Then, you get all of these stupid rediculous efforts to “port” java code into c#. What a freaking waste of effort for little to no benefit.
Wasn’t that the whole promise of the Mono platform from the beginning?????? NO CODE REWRITING, inherently more code reuse without needlessly reinventing the wheel, exposing existing code as OBJECTS, not source??? Where’s that promise now? One big, gigantic, huge case of not invented here syndrome. Forget ADD, some drug company is going to make millions making a pill for that one.
How can people be advocating Java, when there is not even one single GNOME/GTK+ application written in it? You guys are really weird. Java is a totally untested on the GNOME platform!
The battle is between Mono and Python in my opinion, and Python wins hands down. Python is what you’ll term a “RAD” language, it is free and developed by a community of free software hackers, it has no latent patent issues, it is not directed by the whims of a corporate opportunist, it is not designed to further the gains of any corporate structure, it has the largest number of applications for GNOME/GTK+ barring apps written in C, it has bindings to almost all the GNOME libraries, it has bindings to almost all the free Unix libraries, it is the most popular language according to google, it is easy to pick up and learn, etc.
If we can put aside corporate politics, ego and geek ignorance, anyone with half a brain can see Python is the natural evolutionary path GNOME should be adopting. But that’s never going to happen with corporate geeks as leaders of GNOME. You see the corporate flavor of the year is Java and .NET. Go figure.
That way when GNOME and Novel are f**ked over by Microsoft for numerous patent infringements and the desktop ceases to be, we can still all use KDE from the Java managed code solution.
Here’s a quick overview of the 3 Qt licenses with the QPL for you:
GPL – Easy, it’s GPL:-)
Commercial – Better name should be closed source, cost from 1420euro.
QPL – Open source, only requirement are an open source license and the code freely available. For those who want to use licenses like BSD, MIT, X11 etc.
I commented on something similar before, on why gnome exists.
I wonder if Miguel is just a contrarion. He just has to be different, no? Why else waste so much time copying microsoft, and converting programs. Java is already here and usable. Why waste time?
I think Java can be worked with, especially using Netbeans which lets you design gui’s, and even eclipse, though gui design is not free.
Mono is a runtime which runs a great number of different languages, among them python. IronPython (which is a python VM for .NET) is even a little bit *faster* than the standard implementation CPython and much faster than Jython (Python for the JVM).
So if you want to use python for writing your gnome applications you should support mono. For perfomance critical applications python is not a good choice, but it is a very nice language, I have to agree with that.
For higher performance you could always use Boo, which is strongly typed but uses type inference and has a very python-like language so it will be immediately familiar to python developers.
And of course all libraries written for mono will be immediately available for use in python without the requirement to write bindings.
Patents are not about languages but about ideas. So since microsoft certainly has a whole lot of trivial object oriented patterns patented, they can cause trouble to every open source project by suing them.
Writing your program in a language with open source roots such as python will not protect you.
The only way to ensure that open source projects are not sued into oblivion is to get the protection from a company with a big defensive patent portfolio like IBM, or to reform the patent system.
> May I suggest our friend known as Anonymous, he had such
> a ravishing success with his Gnome fork.
a) (IP: —.dip.t-dialin.net) is the biggest Internet Service Provider in germany. You know it but still you use it for defamation of a single person or want to make it look like every t-dialin.net replier is that person regardless if it’s him or not. It’s easier to defamate people on the net than replying with valuable arguments.
b) Project GoneME as stated on this page was a project that provided patches to the mainstream GNOME. Thanks to the wonderful research made by OSNews.com engineers it was announced as fork over the whole world.
c) The project was quite fun as long as it lasted as public institution and made a lot of GNOMER’s rethink about their crappy situation, see several blog entries, and others even shit in their pants, like you, because of the fact that there was a possible fork. They even joined the projects IRC channel querying all type of people and telling them how bad the project was, even offending visitors or treating them like renegades or traitors.
Next time if you want to troll then at least give a try to make it sound realistic.
Learn how to post on a forum please. Your seemingly random monologs which use far too many pronouns for the readers to determine any existing reference anyone elses posts.
You’re absolutely right Rudiger. It seems that, the only way the whole software patent issue is going to be fixed (here in the US anyway) is for it to go to court and be shown as idiotic and unlawful to patent an idea implemented in software.
Regarding using one of these high-level languages for desktop development (which will eventually get the interests of folks who want to litigate, since desktops are what the masses of computer users use and pay for):
1. Maybe everyone will jump on the Mono bandwagon; then down the road MS will sue for patent infringement. Battle: MS vs. Novell/SuSE/Gnome/Miguel&Co.
2. Maybe everyone will use Java; then down the road Sun might sue. Battle: Sun vs. FSF (since GCJ and Classpath are both GNU projects). Heck, MS might sue too, claiming patent infringment on .NET.
3. Maybe everyone will use Python. MS (or Apple or whomever would be at risk of losing desktop customers) vs. the PSF.
When MS starts really feeling the pinch of users leaving in droves for GNU/Linux in a few years, I expect then to see the patent lawsuits start flying. No, I don’t have any precedent to cite here, I’m just making an educated guess. MS will protect their income stream with whatever unsavory means at their disposal. At that point, it doesn’t really matter who is taking away their business, MS will be after *them* with a vengeance. Don’t say johnMG didn’t warn you.
At that point, I want the FSF in my corner. If there’s one group of people who would doggedly fight the good fight against the patent lawyers (MS’s or Sun’s) — for as long as it takes, because it’s the “right thing to do” ™ — it’s RMS and the FSF folks. *That’s* why I think Gnome should embrace GCJ/Kaffe/Classpath/Java-Gnome for integration with its desktop. Let the chips fall where they may. Like they say on /., he (RMS) may be a madman, but he’s *our* madman.
What matters when developping an application is making sure that it will work, whatever the desktop environment used.
So this question about extending GNOME with Mono or Java makes no sense.
It is just a sign that the people behind GNOME have no idea what to do next. Their DE already seriously lacks features compared to XFCE (and I do not mention KDE). They say that GNOME is a general desktop (and this is why Anjuta is not included for example), yet they struggle about what programming language to add to their DE?? They keep adding layers upon layers on top of Linux such as a VFS. Yet forget to add basic things such as a menu editor (essential to manage a desktop I would think) and struggle with an architecture which is clearly too heavy and poorly designed/planned.
End users could not care less about Java or Mono in GNOME. They just want applications that works well, and fast. And they don’t want to be tied to a DE.
Geez! Who would’ve guessed? The Gnome guy doesn’t understand the first thing about C#/.Net/Mono technology, and was lured into believing that C# is Java + more syntactic sugar!
I would think a big shot developer would understand the fundamental differences between Java and C#, that go waaay beyond syntax. I guess not that many people took time off to inform themselves, heh?
I guess it means Gnome will make a dumb choice…once again…
Miguel: I know Mono is your child and we all get attached to our children. But I can’t help your child has been conceived at Microsoft and that’s why so many of us are afraid of it. I prefer coffee over monkeys.
Yet forget to add basic things such as a menu editor (essential to manage a desktop I would think)
If I’m understanding this correctly, maybe that’s a good reason to add a higher-lever language to Gnome for desktop development. Maybe no one wants to write a menu editor in C? Suppose a higher-level language was integrated with Gnome — such that you could knock up a menu editor using, say, Java. It would be a good experiment: would you see a menu editor much more quickly?
Are there a number of things like that Gnome needs? Would being able to easily provide them with a language like Java (as opposed to C) help Gnome more easily get the features you say it needs? The answer might be yes.
I for one agree that there are things that were not well planned on gnome. The VFS thing someone talks about somewhere up there is one of them. I always asked myself why didn´t they just follow the unix way and made modules the mount command could use. Why can I browse a samba share or a .tgz file just when inside nautilus but not from gnome-terminal for instance?
Why can´t I use my basic unix commands on every source? I think some good unix concepts were bypassed there. As for gnome using a higher level language, I do understand what motivates it. It´s true that users don´t care about these things, but it is also true that are programmers who make gnome a reality every day, and they want to have their job made easy, they want to use the facilites a high level language can offer. After all, gnome depends on them so they have all the right to make what it takes to soften their work. Lets not forget that, gnome exist because of them, can we tell them not to try making their programming better if they decide they need it? I remeber Miguel de Icaza talking about how tiring it gets to write applications like evolution using C and how much productivity you gain using C#, for instance. I still go for Redhat’s gcj solution though, my personal taste, I like java better. But once thing is clear. The problem here is, programmers, the creators of gnome trying to soften their work, we are talking about the people who actually brought us gnome, they deserve that right as long as the result is good.
We wrote a “high-performance” service using Python and we were a bit disappointed of it’s performance. It can only use a single CPU on a SMP box due to a design problem in the current Python VM (the giant interpreter lock, or GIL, among other things, AFAIK).
Python is nice, but Java scales better on SMP boxes. Even our “Python guru” over here is now thinking about using Java or C++ to write high-performance service applications!
I mainly write C++ and Java code, but I’d rather like to be using Smalltalk 🙂 I looked at Ruby, it’s very nice, but it also has the performance problem of Python (not scalable).
I’m a long time rh/fedora/rawhide/rhel & gnome user and just reading 160+ people that do/don’t matter to Gnome, it is pretty obvious that this going to split Gnome up in some way or another, or just piss enough users off that they do move to kde or xfce.
Why not
JGnome = RH builds/supports
MGnome = Novell builds/supports
What ever other distro’s chime in and then RH & Novell can flip each other the bird and move about there lifes…….
Or just keep Gnome as is, with C or push 3.0 to C++ and just carry all the bindings for all the other fluff. All the Gnome devel’s need to get in a room and hash all this crap out before they have no users left.
Yes, there are a lot of mono packages out there, Yes, take a look at jpackage, there are a lot of java packages out there.
Server Market, I work at a very large TelCom in the USA and I’ve never seen one person talk/support C#. We run the hell out of java apps however.
Pretty much, I’m for RH, I don’t like Novell’s philosphy since they took over Suse, and I sure don’t like the jagged comments that come from Miguel.
Actually, for something as small as this, Python is probably the best choice. At least one of the current third party menu editors was written in Python, although the one that will probably end up in GNOME 2.10 is written in C.
Also don’t forget that Python already _is_ accepted as a language to write core desktop tools in, so this is really just about the choice between Java and Mono (which are very similar). Python is not the right tool for everything…
You should not pay too much attention to the Gnome haters anyway. They usually show up whenever there is an internal discussion and use it as an opportunity to tell the world what they think of Gnome. They are just noise.
The problem I see with Gnome it is the lack of a solid OO API. Fortunate there is WxWidgets(wx-gtk).
A very good cross-platform library, with a liberal licence.
– Java is slow and memory hungry (never tested gcj, however).
– C# have possible legal issues.
– C++ can be a language at least as productive as Java and C# if one learn to make proper use of it.
A corect understanding of the smartpointers (see Boost or Alexandrescu library) combined to a corect encapsulation of resources eliminate the need for a garbage colector, while provide a strict control of resources lifecicle.
With a good understanding of templates (Java and C# templates are only a hack around inheritance, which take away a lot of the power you find in C++) the productivity in C++ can easy jump over what you get in Java or C#.
And, there is always STL (yes, do not jump over that chapter called algorithms).
The only issue, is the complexity of the language who can make the beginners affraid. But that’s the life, power is to be earned. Once they understand the ammount of power they can get at their fingertips, possibly, will gather the courage to do the job.
> – Java is slow and memory hungry (never tested gcj, however).
> …
> – C++ can be a language at least as productive as Java and C# if one learn to make proper use of it.
And Java is not slow or memory hungry if one learn to make proper use of it, too. Also try the latest JVM. There’s actually a benchmark shows that bytecode+JVM (Sun JVM) can goes faster than native code (gcc, icc) ! (it’s not every cases, true. but the point is, JVM is no longer that slow.).
Not that I really care. But I’d reccomend that Gnome takes a look at their own history and the people involved, when they evaluate what they want to to in this situation. Look at what Miguel said when Gnome started, and his arguments for using C as a the language for Gnome. Also what he said when he was burning for Bonobo. Then take note of the counter arguments in those two cases. How confident do you feel folowing the lead of one with that trackrecord on major technical decisions.
“LGPL development tools need to have an adequate funding model to continue their development and make them good enough. Here’s the clusetick – there isn’t one.”
Actually I find Glade with the LGPL libraries GTK+ and GTKmm
to be much easier to work with than QT Designer and Kdevelop. (When I use Kdevelop to build “release software” in ANY library I find the thing crashes like Win9x. I also find the LGPL FLTK and Fluid GUI Builder much easier to work with than QT and it will be adding the last of what it needs (skinning and common dialogs) in its second version. (This is one reason I’m working on an IDE around Glade 2, GTK+ 2,GTKmm 2 FLTK and Console development under the GPL that will be simpler and less crash prone than Kdevelop and Anjuta. I would also like to remind you that even though QT itself has been GPLed it still depends on TrollTech PROPRIETARY SOFTWARE (moc, and uic if QT Designer is used) for compiling those GPLed files.) Therefore those who say TrollTech is still controlling things even with the GPL version of QT are right.
[i]”No it isn’t. The vast majority of software on Windows is sold at a large premium and companies make large margins on it. Shareware developers are utterly meaningless – here today, gone tomorrow. Anyway, even for a shareware developer good development tools and a copy of Visual Studio or a Java IDE are on their shopping list.”
WRONG!!! Virtually all the top companies in the pc area of the video game buisness started out as SHAREWARE operations including ID Software (Do Doom and Quake ring a bell?) and 3d Realms (Named Appogee when it was a shareware operation.)
Companies like ID Software and 3d Realms only became possible ONLY because of the level playing field that F/OSS, Shareware and Packaged premium software developers all shared under Windows. (Actually Quake I even though it started out as proprietary was developed with a F/OSS product, a DOS based version of GNU C called DJGGP.) If we want linux to succeed than we have to have that level playing field too. (By the way LGPL Librries are supported financually through donations from their users. As a forinstance I support WxWidgets by buying their CD ROM when
upgrade time comes. I would like to see the others (Fox, GTK+ GTKmm and FLTK) consider the same type of financial support system that WxWidgets uses. (CD-ROMS and donations).
Mono is just an implementation of an open (?) specification by Microsoft. MS can do nothing to stop mono.
No, it is not just an implementation of the specification. It also implements libraries that aren’t covered in the C# language specification (e.g., WinForms). These are the areas where Mono could get in trouble.
No, it is not just an implementation of the specification. It also implements libraries that aren’t covered in the C# language specification (e.g., WinForms). These are the areas where Mono could get in trouble.
It is true. But the mono is not a monolithic system. You can use GTK#, Gnome#, etc without windows.forms, web forms, ado.net classes. In the binary distributions this features are in separated rpm binary package.
Python is more than a scripting language. It is a higher level dynamic programming language that supports paradigms such as producedural programming, object oriented programming, aspect oriented programming, design by contract and so on. There are hundreds of big applications written in Python including desktop applications, web frameworks, databases and servers.
Seriously…this is so much ado about nothing. Java maybe the [i]*best*<i/> language evar but it still is [i]irrelevant<i/> for the GNOME desktop.
Python is wonderful-it is by far the easiest and quickest way for new programmers to quickly code up small apps. But wake me up when we see Abiword or Koffice re-written in Python.
People scream about how evil Bonobo was. But without some kind of component technology GNOME is doomed to have little code reuse and is artifically limited in terms of growth. Mono is not the answer to everything but Mono is slowly but surely becomming a set of class libraries for all things GNOME. People have long praised QT/KDE as the ideal developer environment for Linux desktop applications-it enables lots of intelligent code reuse, is extremely modular in it’s design and has tons of functions which are custom tailored to facilitate writing applications. Well this is what Mono is providing for the GNOME desktop plain and simple.
a) there are no significant java GNOME applications in existance.
b) as long as java applications are dependent upon a sun JVM java will never become a viable platform for application development in GNOME.
c) gcj/classpath are making progress but the API coverage is not yet sufficient to form an API base to which one can program desktop applications.
d) gcj/classpath first becomes the basis for GNOME aplication development when programmers can simply program to the Java spec and know that there programs will just work-and this is not the case, not by a long shot, and not any time soon-and ‘harmony’ won’t change anything in regards to this insde the next 2 years.
e) Even if gcj/classpath fully covered the Java spec it offers zilch in terms of GNOME integration-now once gcj/classpath finallly closes in on the Java spec one could begin enhancing java-gnome to make it rather usefull-but such a project could take another 2 years to come to fruition.
Wake me up when something changes here…..
in the meantime my $LANG is better than yours
Folks this debate about Java vs. Mono is so dumb it just defies the imagination-it is a exercise in silliness. The fact is Mono is the new language for GNOME desktop applications and whether you like Mono or not or whether Redhat ships Mono or not the majority of new desktop applications for GNOME are being written in Mono. The *decision* at stake here is what developers are using and this decisions is already being made-all the talk about it pales in comparison to the code and when it comes to programming code is what does the talking
Gnome3 should move towards C++ to provide better OO design for lava, C# and whatever OO language someone is willing to write bindings for. (In my humble opinion, to keep using C is not a valid option except in some special cases.)
Two:
Gnome will focus on Java or Mono. It is obvious that when there is a final decision to go for Mono, Java or another language, a lot of people will be unpleased or even right out angry with that decision.
So Gnome as we know it might eventually die or get such a low progress it simply can not keep up. If this is not already the case. If so then forks will probably be created and the already getting scare development power will be divided even more.
Personally id like to see Mono have a change. My experience with lava is that its a nice language to program in but it simply does not give the responsiveness i want to see in desktop applications. I have not yet played with the “Java-gnome” library so i cannot comment on that. But it is no wonder that my favorite Java IDE on MS Windows is written in C++ (JCreator).
Playing with Mono gtk-sharp from SVN gives a nice peek in the things to come. As far as the patent risk in Mono… I have no doubt M$ will sue if Mono gets a lot of momentum. Since it allows applications written in Mono to run on Windows and Linux alike and it forms a perfectly bridge for cross-application development.
I do not know what Novell’s official position is towards Mono, for i have yet to read a disclaimer that they will protect it from any legal trouble. On the other hand, would Novell be backing Mono if they where sure it would result in legal cases they cannot win? I doubt it.
If Novell wants Mono to get better acceptance, they better make clear the legal issues. By claiming full protection, or by settling with M$.
Java and .Net (and Mono) were launched for political reasons. So they both are bad technical choices.
The little I have seen of Python, it seems the best technical choice (should GNOME really want to include a programming language in a DE, which I think makes no sense for the so few things a DE should really do).
And actually the GUI was invented with Smalltalk and there were tons of GUI environments for the lisp machines and there actually *are* WM for X11 written in dynamic languages..
Redhat may be right in not adopting mono into their distro. Simply because microsoft is FOR CERTAIN only waiting for them to distribute something they can sue them for and have a high probability of winning, as well as a high FUD factor.
Then they can get an order in place which forbids Redhat the distribution of their product, Redhat would be damaged financially and in front of their customers. And if Redhat gets damaged that way, Linux also gets damaged, like it or not.
Python is a nice toy for create small things, but IMHO the dynamic-typing is not useable for big and reliable applications. IMHO the enterprise sector never will use dynamic-typed applications. The “manual” memory allocation/release in the code IMHO is far less dangerous then DT, but both the java and .NET are uses the very expensive automatic garbage collection. But the python in Gnome is not absolute bad idea: it can be great if I can also use C#, or Java, Object Pascal or any similar reilable language. The best can be IMHO a language-independent runtime environment – like the CLR. In this case you can use your Python and I can use my C# or Java or Object Pascal…
Redhat may be right in not adopting mono into their distro. Simply because microsoft is FOR CERTAIN only waiting for them to distribute something they can sue them for and have a high probability of winning, as well as a high FUD factor.
If M$ want to sue linux directly IMHO it can. Doesn’t matter if you use Python, Perl, Java, COBOL, Fortran, or Assembly – M$ can find any useable patent in their portfolio to kill the project. But IMHO the M$ never will sue linux directly. They will find any company, like SCO and they will threat linux via this company. The direct attack of linux IMHO not too profitable for M$ – it can decrease of acceptance of the company. And if M$ will sue via another company the main target never will the mono, clr or any similar M$ technology.
> The “manual” memory allocation/release in the code IMHO is far less dangerous then DT, but both the java and .NET are uses the very expensive automatic garbage collection.
A good garbage collector can be much faster than naively using malloc since it’s not as if malloc/free were cheap. They need to traverse pretty big structures; just think of how much memory is malloced at a time… On the other hand, a GC can do that asynchronously.
The python guys even had to implement a memory pooling system so that they can allocate memory more quickly.
The bottom line is.. It’s all good! And disk space is too seldom an issue to think about.. So let’s all have a big heartwarming party and focus on what really matters:
DUDE, comon… The apps are important yeah… But seriously… Having MANY VM’s is really crap… I’m using around 500MB RAM memory just for different VM’s at the moment… Sigh…
I dig Mono. It’s a great initiative! The .net frameworks is proven to be good. C# is just a part of it. (Good one though)…
ONE FRAMEWORK! ONE FRAMEWORK! (and many languages INSIDE it)… TY 4 TIME
DUDE, comon… The apps are important yeah… But seriously… Having MANY VM’s is really crap… I’m using around 500MB RAM memory just for different VM’s at the moment… Sigh…
I dig Mono. It’s a great initiative! The .net frameworks is proven to be good. C# is just a part of it. (Good one though)…
ONE FRAMEWORK! ONE FRAMEWORK! (and many languages INSIDE it)… TY 4 TIME
</quot>
1. I agree with ONE VM
2. I disagree with that ONE being .NET
Rationale:
Applications are very important. Also is important for people used to run Windows to have available on Linux/BSD/Solaris the same apps as they used in Windows. This is going to make the switch very easy, and many will be happy to make the switch in order to get better security and realibility for less money, if their apps are there.
Java/Swing provide this opportunity. It is the same on Windows and Un*x. Windows Java programmers use Swing so their applications can be relativelly easy modified (avoid c:\Program Files\…) to be truly platform independent.
On both platforms we have the same very good IDE’s, and the documentation is also very good and available.
In theory C#/GTK can be the same. However, as everybody know, every single C#/Windows programmer do rely EXCLUSIVELLY on Windows.Forms. And here the issues begins. This library is proprietary and covered with some patents, so ANY implementation of it done by OSS comunity is potentially at risk. To make the maters worst, most of C# Windows programmers, are too entangled in MS realm to have any reason to start using GTK# instead of WF. Especially, when this library is still imature, not documented !!!, and not integrated into their VS, or in any decent IDE (SharpDevelop, a very nice C# GPL IDE had no suport for GTK# last time when I checked).
This being the situation I think that developers have to be directed toward Java and NOT toward .NET. .Net should be as of this moment regarded no more than VB or MFC/VC.
Of course, this mai change if:
– MS decide to standardize WF and others library and provide public waranty that no legal action is going to be taken against anyone cloning WF for any platform and under any license.
– GTK# is being integrated in ShardDevelop with full dialog editor and 100% documentation, and SD gain a sensible market share in Windows profesional developpers community.
Until then, we have to stick with Java if we want a managed language.
DUDE, comon… The apps are important yeah… But seriously… Having MANY VM’s is really crap… I’m using around 500MB RAM memory just for different VM’s at the moment… Sigh…
I dig Mono. It’s a great initiative! The .net frameworks is proven to be good. C# is just a part of it. (Good one though)…
ONE FRAMEWORK! ONE FRAMEWORK! (and many languages INSIDE it)… TY 4 TIME
</quot>
1. I agree with ONE VM
2. I disagree with that ONE being .NET
Rationale:
Applications are very important. Also is important for people used to run Windows to have available on Linux/BSD/Solaris the same apps as they used in Windows. This is going to make the switch very easy, and many will be happy to make the switch in order to get better security and realibility for less money, if their apps are there.
Java/Swing provide this opportunity. It is the same on Windows and Un*x. Windows Java programmers use Swing so their applications can be relativelly easy modified (avoid c:\Program Files\…) to be truly platform independent.
On both platforms we have the same very good IDE’s, and the documentation is also very good and available.
In theory C#/GTK can be the same. However, as everybody know, every single C#/Windows programmer do rely EXCLUSIVELLY on Windows.Forms. And here the issues begins. This library is proprietary and covered with some patents, so ANY implementation of it done by OSS comunity is potentially at risk. To make the maters worst, most of C# Windows programmers, are too entangled in MS realm to have any reason to start using GTK# instead of WF. Especially, when this library is still imature, not documented !!!, and not integrated into their VS, or in any decent IDE (SharpDevelop, a very nice C# GPL IDE had no suport for GTK# last time when I checked).
This being the situation I think that developers have to be directed toward Java and NOT toward .NET. .Net should be as of this moment regarded no more than VB or MFC/VC.
Of course, this mai change if:
– MS decide to standardize WF and others library and provide public waranty that no legal action is going to be taken against anyone cloning WF for any platform and under any license.
– GTK# is being integrated in ShardDevelop with full dialog editor and 100% documentation, and SD gain a sensible market share in Windows profesional developpers community.
Until then, we have to stick with Java if we want a managed language.
RE: By Anonymous (IP: —.owngsm01.md.comcast.net) – Posted on 2005-05-14 01:13:05
Better check your resources, Monodoc provides all the documentation you will need. And a windows port of glade makes it possible to do easy gui design on windows.
Another tool called static is on his way though, and its being integrated into monodevelop if im not mistaking.
Mono and MonoDevelops developments is pretty rapid from a developers standpoint of view.
Applications are very important. Also is important for people used to run Windows to have available on Linux/BSD/Solaris the same apps as they used in Windows.
I agree, but the GTK# based applications also runs under windows.
Java/Swing provide this opportunity. It is the same on Windows and Un*x. Windows Java programmers use Swing so their applications can be relativelly easy modified (avoid c:Program Files…) to be truly platform independent.
IMHO the swing is alien on every platform. Not windows application on windows and not linux application on linux. The SUN’s Java desktop also based on GTK and not on swing – and IMHO not without any reason.
And if GNOME3 will based on GTK (and any other low-level C library) the Java VM and the .NET CLR are eaual, at least in this aspect. And if we are compare the C# language and the java language, or the CLR and the JVM IMHO the C#/.NET is the better.
Yes, a good dialog editor (integrated to monodevelop (and VS in the future) is very important. The glade and similar things are not too productive – we need a very good RAD tool, like a Visual Studio. And IMHO the GTK# needs databinding – it is a very useful feature in .NET.
Will this discussion ever end? Are there any real plans to converge and form a single front?
Too much effort is wasted for too long… I would rather see a bad decision than no decision at all. At least then I (and many others) could decide where to put their effort into…
I have made several posts saying that Linux should be using one of the GTK C++ wrappers (WxWidgets, VDK, GTKmm) rather than Mono or Java for a consistant native code API or Python if so called “software management” (read interpretation has to be the way to go.
It is not only because of the LGPL and the level playing field it gives to all developers that I support this as Linux’s future but also because I still believe in the old Free/Open Source Software idea of DON’T TRUST CORPORATE COPYRIGHT/PATENT EMPIRES like Micro$oft, Sun, IBM and TrollTech too much no matter how much they may appear to be appearing to warm up support F/OSS but rather GNU/Linux/F/OSS should be dependent ONLY on ORIGINAL (not corporate knockoff) software that the GNU/Linux/F/OSS communities themselves built at the core and GUI levels of the GNU/Linux environment (I’m with Linus where device driver Kernel modules are concerned though and can accept corporate proprietary software and knockoffs at that level.)
I really wonder what happened to this honest self protective instinct of the F/OSS communities today. Are we falling for the “convenience” trap put out by corporate marketing hacks just like everybody eles in computing seems to do.
I have made several posts saying that Linux should be using one of the GTK C++ wrappers (WxWidgets, VDK, GTKmm) rather than Mono or Java for a consistant native code API or Python if so called “software management” (read interpretation has to be the way to go.
…
I really wonder what happened to this honest self protective instinct of the F/OSS communities today. Are we falling for the “convenience” trap put out by corporate marketing hacks just like everybody eles in computing seems to do.
</quot>
Well, things are a bit more complex. Here are some speculations:
1. We need a desktop better than MS-Windows in order to compete against them.
2. KDE is there. Gnome unfortunate is behind. (My opinion, don’t throw the stone, please !!!).
3. KDE got his advantage mainly because they use a extremely well designed OO class library (QT) and a high level programming language C++.
4. Gnome peoples finally got the point that is going to be hard to compete against KDE without a good OO language. Good and resource efficient plain old C just do not provide
the productivity you need to keep shoulder to shoulder.
5. From some reasons (possibly the complexity of the language, possibly marketing hype, possibly other reasons) some peoples are afraid of C++.
6. The 2 choices left (after eliminating C++) are C# and Java.
7. We need applications commercial developed for Windows to be available to be bought for Linux too, when corporate and home users are going to make the switch.
If I am asked, my proposals are:
– WxWidgets/C++ as the main development language for Gnome.
– Encourage the Windows developers you know to use Java/Swing instead of C#.NET for their products.
– Miguel to keep working on Mono/Windows.Forms, just in case MS is not going to sue, in order to be able to port the commercial apps, written by those hanged in MS realm.
But for core development, C++/WxWidgets will be the best choice. It is a mature class library, it is crossplatform and available to write commercial software with it (this may attract toward Gnome small businesses and independent consultants). The apps not platform specific can be developed under Windows with a good IDE (wx-devcpp), then easily ported. Having some resemblance with MFC, you may get a share of old Windows programmers wanting to jump in Linux bandwagon.
While Mono and C# may be the best thing since sliced bread, Java is the sliced bread.
Despite how the Mono fanatics at Novell slant things, Java is technically ahead of Mono in numerous ways: It has a huge developer base, a complete, widely-used and supported IDE (Eclipse), and a native compiler (GCJ) that allows for non-VM-hosted, speedy apps. Mono has none of these things.
And if you need proof that Java is ready for the desktop, you can find it in the form of OpenOffice 2.0’s database app.
On top of all this, other issues continue to haunt Mono. Think about the fact that .NET began life as a Microsoft technology targeted exclusively towards Windows. Even if Microsoft never ends up sueing the Mono devs (which I think they will), they will probably continue to change/add features to .NET that make Mono incompatible with every new MS release.
Sun, meanwhile, is a relatively OSS-friendly company, and has always been committed to true cross-platform compatibility. They have no problem with OSS Java development, as long as it stays compatible with their implementation. This isn’t because of some vendor-lock-in mentality; rather, they’re trying to ensure cross-platform compatibility. (Keep in mind that Microsoft already ruined Java compatibility once with its incompatible dev tools and VM.)
Now, if Red Hat et al. can actually pull off a fully Sun-compatible implementation, then hats off to them! Sun will doubtless be a lot more accomodating in this endeavor than Microsoft will be for Mono.
Btw, the main reason Miguel is such a big .NET fan, in my opinion, is that he hopes to draw MS developers to Linux. Fair enough, I agree that’s a benefit.
Mono primarily appeals to Windows developers who want to develop cross-platform applications. Those types of people are pretty unlikely to start wanting to hack the GNOME desktop. So why are we trying to force Mono down the GNOME devs’ throats?
It has a huge developer base
IMHO the .NET developer base is larger.
a complete, widely-used and supported IDE (Eclipse),
Eclipse is great, but IMHO the M$ Visual Studio far better.
and a native compiler (GCJ) that allows for non-VM-hosted, speedy apps.
IMHO the gcj’s “native” code is not faster then SUN’s JVM.
And IMHO the .NET architecture (databinding for controls, web forms, properties, etc) is far better then java. Yes, with java the Gnome can be better then KDE – but the main enemy is the windows – and it will use .NET.
> Mono primarily appeals to Windows developers who want to
> develop cross-platform applications.
MONO is not cross-platform compatible.
The C# becomes ECMA standard, we can use it freely, but Sun may requires royalty for Java.
I knew the Java phone vendors pay money to Sun, I afraid that We must pay money to Sun to use Java.
I have seen David in many discussions about mono on osnews. he has been trolling about mono for quite sometime.
Trolling implies that I’ve been bashing Mono without saying why. I have always said why I don’t think Mono is an option and why the hype doesn’t match up to reality.
Also, we are talking about the DESKTOP, not the SERVER-SIDE or WEB.
Funny. Microsoft doesn’t make that distinction, which is why people are having the debate in the first place.
You can also tell pages created via Java vs. something else, such as, CGI-Perl. Java is always piss-poor slow.
I don’t know where you get that bizarre idea. Java is regularly used to service high traffic sites and applications without problems. CGI-Perl isn’t close to that scalability now the development structure needed, it’s a joke. I take it that was a joke?!
Maybe the sites you’ve visited have been servicing large numbers of users? That should tell its own story.
Visual Studio may be better, but it costs money. If you’re going to compare things like that, you should compare VS.NET to JBuilder.
As far as .NET’s developer base being larger, that’s debatable; but I’d bet on Java since it’s been around a lot longer. Plus, if a .NET app uses Windows forms, it won’t run on the Mono VM.
True, GCJ doesn’t support Swing yet, but most apps these days don’t use Swing. Most .NET apps, on the other hand, do use Windows Forms.
I think the people who are such GPL zealots that they can’t even stand the proprietary software friendliness of the equally GNU LGPL license can’t see one of the things that makes Windows so popular with developers and continues to make it so.
LGPL development tools need to have an adequate funding model to continue their development and make them good enough. Here’s the clusetick – there isn’t one.
Microsoft is able to give away their development tools, or at least their interfaces (the onbes they choose to, anyway) because you don’t get a free operating system, desktop environment or even free development tools like Visual Studio to make you productive.
Here we get the thick little LGPL zealot – “LGPL everything, so I can develop everything for free, and use everything for free”. It isn’t going to happen and it just isn’t getting through some skulls. Please tell me you’re not that thick.
(Most proprietary software for Windows these days is now developed by “shareware” developers for whom the price of a QT commercial license is simply out of the question.
No it isn’t. The vast majority of software on Windows is sold at a large premium and companies make large margins on it. Shareware developers are utterly meaningless – here today, gone tomorrow. Anyway, even for a shareware developer good development tools and a copy of Visual Studio or a Java IDE are on their shopping list.
If you don’t know about software development in the real world (i.e. not in a basement), don’t comment.
I get the feeling many people around here simply aren’t going to get the realities of things.
hmm.. thinking about if we can have something similar to java-gnome but for java-xfce.
this way, you got
– mature language, with huge population — java
– good free ides — eclipse, netBeans
– nice GTK+ based desktop (with less politics) — xfce
actually there’s a lot of java-gnome project (officials and additionals) that is not gnome-specific, like:
libgtk-java, cairo-java, libgtkhtml-java
may be it’s a nicer place ..
just my two cents
Rediculous, I do not even have to do that on Windows. This definately is not an example of user friendly development enviroment — something GNU/Linux really needs.
Yes you do (and people still pay for Visual Studio
). You pay for licenses of Windows, Office, Windows Server, Client Access Licenses (you do know about this stuff, right?) – all of which you don’t have to buy, or can get at a very low cost, if you were to use KDE, Linux and open source software.
I do not deny the superiority of KDE, but suppose a developer wanted to create a program for KDE, and did not want to use Qt , because Troll Tech were a competitor.
If, and when, KDE gets more popular you will see ways and means of creating differently licensed components that are Qt-compatible but don’t create any Qt or Trolltech code. There are certainly ways and means of doing that, but they just simply haven’t been explored yet and there’s not yet any real demand for it.
No, $LANG should be best adopted by the Gnome developers. $LANG is very performant, easy to learn, mature, stable, and has excellent documentation!
“No, $LANG should be best adopted by the Gnome developers. $LANG is very performant, easy to learn, mature, stable, and has excellent documentation!”
Jesus, get a clue. Every professional knows that $LANG simply doesn’t cut it. It may be nice for some hobby programming, but $MYLANG beats the shit out of it when it comes to serious work.
Nobody in the real world is using $LANG, whereas $MYLANG is the obvious choice for any business out there.
On top of that $LANG is patent encumbert and not free, whereas $MYLANG is totally free and totally patent unencumbert.
Anyway, all of that doesn’t matter, as Gnome is about to die anyway.
Which of course is sad as KDE is bound to fail as its based on QT and we all know that QT just isn’t an option as companies can’t be expected to pay for software!!11!!!11
Finally, Linux will never be ready for the desktop anyway, so why bother and Windows rulez!11!!1
I think @ Guadec they don’t talk about whether its MONO or JAVA, they most likely talk whether it still makes sense continuing with GNOME or simply cease the entire project.
Well that’s stupid, isn’t it? It’s an open source project (it never ends), and Red Hat and Sun actually rely on it for their customers i.e. they actually use it for something. Every project, either external or internal, goes through trials like this.
> Well that’s stupid, isn’t it?
It isn’t.
> It’s an open source project (it never ends)
Right, but if the key members realize that the project is getting you nowhere and that there are too many egos involved or the competition is simply far ahead then what benefits does it give continuing such a project ? They should reconsider and try helping something which has real chance to survive. Once the key members leave the projects it’s as good as dead because it will hardly find new people to work on it. Look at how many dead projects there are.
> Red Hat and Sun actually rely on it for their customers i.e. they actually use it for something.
That also explains why Red Hat has dropped out of GNOME for the Red Hat solutions and have shifted it to Fedora.
> Every project, either external or internal, goes through trials like this.
At GNOME this is not just a trial. It’s a fatal disaster.
”
That also explains why Red Hat has dropped out of GNOME for the Red Hat solutions and have shifted it to Fedora. ”
Red Hat currently has Red Hat Enterprise Linux and Fedora both of which use GNOME as the default DE. GTK and GNOME contributions by Red Hat developers have been pretty heavy to entertain any ideas that Red Hat is dropping GNOME
Visual Studio may be better, but it costs money.
It is true, but if you a professional developer it is not too important. If not, you can use the SharpDevelop, MonoDevelop, Web Matrix.
If you’re going to compare things like that, you should compare VS.NET to JBuilder.
All right. Let’s compare. IMHO the VS far better then JBuilder. Try to create JSF with JBuilder and WebForm with M$VS…
Plus, if a .NET app uses Windows forms, it won’t run on the Mono VM.
If you talk about GNOME and any language, IMHO it is mean GTK# or java GTK bindings and not swing or windows.forms.
True, GCJ doesn’t support Swing yet, but most apps these days don’t use Swing. Most .NET apps, on the other hand, do use Windows Forms.
The most of DESKTOP applications are use swing under java and windows.forms under .NET. The server apps are uses jsf,jsp, etc under java and web forms under .NET.
KDE is controlled by a small norweigian company that charges for the toolkit. the KDE guys should base 4 on a different toolkit. That’s its only hope for survival.
KDE is not controlled by a small Norwegian company at all. If anything, KDE dictates to Trolltech what they should put into Qt. And if they based 4 on a different toolkit it would be nowhere near the quality required, as Gnome is now.
That’s why there’s such a debate about higher level languages and toolkits within Gnome right now. They can’t get enough done with the development tools they have.
See above posts for details – or maybe you have and don’t like it
.
Microsoft is distribute VSWD for free guys, why use mono ( a copy of VS ?)
http://lab.msdn.microsoft.com/express/vwd
Mono is an implementation of .Net, not a copy of VS.
You seem to be using some terrible LANG please. Please note that MYLANG soes not need some terrible $ denoting variables.
Ok, my mistake, but why use mono (one parcial implementation)when we can use for free the all product ? (vswd)
Well, I for one always had trouble getting MS .Net stuff to run on linux.
Also, as you don’t seem to know anything about mono, why do you call it a parcial implementation? While it may not have certain things the MS stuff has, it certainly has things the MS stuff hasn’t, so what’s your problem?
@Andrewg (IP: —.is.co.za):
Bah, every professional knows that using a language that doesn’t use $ isn’t an option in a seriouse enterprise setting. 😀
Because its doesn’t run well on Linux, Mac, Solaris etc, etc, etc…
PYTHON PYTHON PYTHON
This is the future, not Java nor Mono.
The first is for Sun predominance, the second one for Microsoft. Use Python, it’s run well, do all the things we need, it’s free software.
Python.
I agree with that, but when a developer are coding he choose the best program to do the job, not because it’s based in linux, windows…
I don’t know anything about the legal issues of Mono, so I’ll shut my mouth on that particular subject. I think everyone should consider the transition for developers who have never developed applications on the Linux/Gnome platform. Most software developers on Windows haven’t used Java to write desktop applications, simply because it wasn’t popular due to performance etc.
If we want more contributors for Gnome, we must keep in mind what our target audience is. That includes not only the current Gnome developer community, since we also want to attract lots of other developers to create cool applications for Gnome.
Therefore, I think most developers who created desktop applications on the Windows platform will most likely appreciate Mono instead of Java. This is just an assumption and I do not have the facts/numbers to prove it. Feel free to comment or think about this.
Mono and Java are both product lines, so neither one of them is valid FOSS technology.
Someone should make a GCC front-end for Python and Ruby with type inference (fall-back to dynamic typing) and be done with it. Both are really good languages for this sort of thing and would benefit from being reasonably fast. At least faster than JITted Java where it matters.
Java and C# are IMHO a waste of time because they try to do too much. Would you like to re-implement their colossal class libraries in your spare time? Me neither.
FOSS could come out and say that we are going to make it possible for developers to make money on such and such product line that FOSS is going to create for the specific purpose of making money. It would be like Java/Net/Mono and it could be done instead by FOSS as an experiment, perhaps using Python. This is your question, but the answer lies in whether or not FOSS decides that it wants to do this…for the hell of it.
Something like that could practically force Microsoft out of this market. It’s just that this practice is uncharacteristic of FOSS.
Which poison is better for you; Java, .Net, or Mono? Or on the other hand does some company want to make a deal with FOSS and blow these turkeys out of the water probably with the help of IBM. Who wants to make hundreds of millions of dollars, probably nobody.
Sorry for saying this, but the developer is the fool. The developer is the money, they don’t have any power, they don’t have any control, the developer is a puppet. So it’s kind of entertaining to see the developer get strung up and tarred and feathered. It’s not right, but it’s entertaining because people choose to be victoms almost all of the time. Go and use whatever the hell you get forced to use; Java/.Net/Mono.
It seems to be working well for Apple. Why not push it more in Gnome?
Luke M. wrote:
Java and C# are IMHO a waste of time because they try to do too much. Would you like to re-implement their colossal class libraries in your spare time? Me neither.
You only need the compiler. Use GTK/Gnome bindings for the rest. See Java-Gnome.
> It seems to be working well for Apple. Why not push it more in Gnome?
I think it’s already been tried, no? GNUStep/WindowMaker.
Java and .Net/Mono frameworks are colossal and that’s done on purpose, it’s how they close out FOSS developers from the broad market. How in the hell are you going to compete with five million lines of code?
It’s all of the other things that product lines leave out that are there for FOSS users to take advantage of but I’m not going to say a damn thing about it because I’d rather that people suffer as a means of social control if I’m not involved providing the obvious solution.
You are helpless because corporations did a little bit more than you to challenge their own helplessness, not much more, but just a little bit more, and it set them a world apart. I highly recommend .Net and Java and Mono or for that matter GTK+/mm. Persnally I wouldn’t use any of them however.
I wouldn’t use a damn thing unless the money was travelling directly to my own pocket.
The .Net developers pretend that they are Microsoft, they pretend that they are rich, but really they are victoms. They say that Microsoft is the best, even though it has done them absolutely no good what so ever. I don’t understand why humans do this, but you can only control yourself and your own actions. Save your time and money is what I would say. There is no company that offers all of the obvious advantages that would benefit developers, even though those advantages are very obvious.
The conservative end user is the real winner in Western society and the computer industry. Specifically the Linux user who maybe splurges for the two year old hardware or the used Xbox and the fifteen dollar games that are seven months old but were fifty dollars when the came out. This is what experience is all about, but we really need the losers to waist their money in order to maintain the system.
It is not a challenge to monopolize the computer industry, no challenge what so ever, it’s just not a choice that anyone has taken up.
GCJ is now mature enough, and once gcjx replaces it, we will have complete java 1.5 ready for use on the desktop. There have been some ideas on forking gnome to 3.0 for development of new ideas while mantaining 2.x series for mainstream use. I think 3.0 could be started with gcj has the base language using the great power classpath has in its libraries to shorten the development cicle. That way both, gnome and gcj (and therefore free java has whole) would win. Using gcj and classpath as a base for a big project like gnome 3.0 would force these two projects to polish quickly. Another extra, gnome continues to be natively developed. We have the language, the tools (native eclipse and glade already work well).
100% true, i approve, you have my beniction
Havoc makes the most sense. The sheer number of libraries and open source tools, coupled with unbelievable support from *Apache* (take a long hard look at that name, then go over to apache.org and take a look at all of the java projects sponsored by Apache), and open source applications, and IBM with Eclipse, and Sun with the commercial runtimes and having made Linux a first-class citizen before *any* other corporate entity, and the superior support for java under MacOS with Apple’s full cooperation and participation, and the wide number of JRE’s from *multiple* VENDORS (not just open source groups…those exist too), and tremendous integration work with the Desktop being done by https://jdic.dev.java.net/, and the huge, huge ecosystem around mobile apps (think Blackberry, OnSTAR….), and the overall superior security architecture and design Java platform (written from ground up for network operating environment…no buffer overflow), and SWT, and really cool projects like this: http://jrex.mozdev.org, and so many other reasons. Java on the server is a given. Java on the client is not, but it’s looking more and more obvious.
Even in the worst case, if there is something that great that happens with the Mono *runtime* (such as the multiple language support…not that Java doesn’t have it, but perhaps makes it slightly easier to interface with other classes and objects), all the work done in java can be transferred *without* being ported. There is nothing inherent in the Mono stack that’s better. C# may be syntactially better, but let me tell you something, Java’s elegance and the power in its simplicity is it’s draw. Too much syntactic sugar sucks when it doesn’t make anything inherently possible that wasn’t otherwise. Even if C# makes things 5% easier in some cases, it’s not enough to justify it. Then, you get all of these stupid rediculous efforts to “port” java code into c#. What a freaking waste of effort for little to no benefit.
Wasn’t that the whole promise of the Mono platform from the beginning?????? NO CODE REWRITING, inherently more code reuse without needlessly reinventing the wheel, exposing existing code as OBJECTS, not source??? Where’s that promise now? One big, gigantic, huge case of not invented here syndrome. Forget ADD, some drug company is going to make millions making a pill for that one.
I think the best solution to solve this issue and move on is to fork.
Let’s have a gnome camp that uses Mono, another camp that uses Java, and another camp that uses Python.
Having 3 gnomes forks is a very good idea indeed! I will start my own java fork, who will join me?
How can people be advocating Java, when there is not even one single GNOME/GTK+ application written in it? You guys are really weird. Java is a totally untested on the GNOME platform!
The battle is between Mono and Python in my opinion, and Python wins hands down. Python is what you’ll term a “RAD” language, it is free and developed by a community of free software hackers, it has no latent patent issues, it is not directed by the whims of a corporate opportunist, it is not designed to further the gains of any corporate structure, it has the largest number of applications for GNOME/GTK+ barring apps written in C, it has bindings to almost all the GNOME libraries, it has bindings to almost all the free Unix libraries, it is the most popular language according to google, it is easy to pick up and learn, etc.
If we can put aside corporate politics, ego and geek ignorance, anyone with half a brain can see Python is the natural evolutionary path GNOME should be adopting. But that’s never going to happen with corporate geeks as leaders of GNOME. You see the corporate flavor of the year is Java and .NET. Go figure.
“Having 3 gnomes forks is a very good idea indeed! I will start my own java fork, who will join me?”
May I suggest our friend known as Anonymous (IP: —.dip.t-dialin.net), he had such a ravishing success with his Gnome fork:
http://www.akcaagac.com/index_goneme.html
😀
i totally agree with you
the problem is that there’s a lot of hype around mono thanks to the PR of Miguel and associates.
and btw im starting to fork beagle using only python
who will join me ?
Awesome, that’s a good start! Are you using pylucene by any chance?
well i’ve tried ZCatalog+ZODB and pylucene
both solutions are optimal i though.
however right now im focusing on working with pylucene.
Why not let GNOME use MONO and KDE use Java.
That way when GNOME and Novel are f**ked over by Microsoft for numerous patent infringements and the desktop ceases to be, we can still all use KDE from the Java managed code solution.
Sounds like a good plan to me.
Here’s a quick overview of the 3 Qt licenses with the QPL for you:
GPL – Easy, it’s GPL:-)
Commercial – Better name should be closed source, cost from 1420euro.
QPL – Open source, only requirement are an open source license and the code freely available. For those who want to use licenses like BSD, MIT, X11 etc.
Hi,
I commented on something similar before, on why gnome exists.
I wonder if Miguel is just a contrarion. He just has to be different, no? Why else waste so much time copying microsoft, and converting programs. Java is already here and usable. Why waste time?
I think Java can be worked with, especially using Netbeans which lets you design gui’s, and even eclipse, though gui design is not free.
http://retonews.com:8080/servlet/com.ondelette.servlet.webforum.Web…
Mono is a runtime which runs a great number of different languages, among them python. IronPython (which is a python VM for .NET) is even a little bit *faster* than the standard implementation CPython and much faster than Jython (Python for the JVM).
So if you want to use python for writing your gnome applications you should support mono. For perfomance critical applications python is not a good choice, but it is a very nice language, I have to agree with that.
For higher performance you could always use Boo, which is strongly typed but uses type inference and has a very python-like language so it will be immediately familiar to python developers.
And of course all libraries written for mono will be immediately available for use in python without the requirement to write bindings.
Patents are not about languages but about ideas. So since microsoft certainly has a whole lot of trivial object oriented patterns patented, they can cause trouble to every open source project by suing them.
Writing your program in a language with open source roots such as python will not protect you.
The only way to ensure that open source projects are not sued into oblivion is to get the protection from a company with a big defensive patent portfolio like IBM, or to reform the patent system.
For user, it does not matter. Neither Java nor Mono works correctly on 64bits… so stop fooling yourself with portability and useability.
(No stable JVM 64bits client, GTK# not ported yet…)
> May I suggest our friend known as Anonymous, he had such
> a ravishing success with his Gnome fork.
a) (IP: —.dip.t-dialin.net) is the biggest Internet Service Provider in germany. You know it but still you use it for defamation of a single person or want to make it look like every t-dialin.net replier is that person regardless if it’s him or not. It’s easier to defamate people on the net than replying with valuable arguments.
b) Project GoneME as stated on this page was a project that provided patches to the mainstream GNOME. Thanks to the wonderful research made by OSNews.com engineers it was announced as fork over the whole world.
c) The project was quite fun as long as it lasted as public institution and made a lot of GNOMER’s rethink about their crappy situation, see several blog entries, and others even shit in their pants, like you, because of the fact that there was a possible fork. They even joined the projects IRC channel querying all type of people and telling them how bad the project was, even offending visitors or treating them like renegades or traitors.
Next time if you want to troll then at least give a try to make it sound realistic.
Learn how to post on a forum please. Your seemingly random monologs which use far too many pronouns for the readers to determine any existing reference anyone elses posts.
You’re absolutely right Rudiger. It seems that, the only way the whole software patent issue is going to be fixed (here in the US anyway) is for it to go to court and be shown as idiotic and unlawful to patent an idea implemented in software.
Regarding using one of these high-level languages for desktop development (which will eventually get the interests of folks who want to litigate, since desktops are what the masses of computer users use and pay for):
1. Maybe everyone will jump on the Mono bandwagon; then down the road MS will sue for patent infringement. Battle: MS vs. Novell/SuSE/Gnome/Miguel&Co.
2. Maybe everyone will use Java; then down the road Sun might sue. Battle: Sun vs. FSF (since GCJ and Classpath are both GNU projects). Heck, MS might sue too, claiming patent infringment on .NET.
3. Maybe everyone will use Python. MS (or Apple or whomever would be at risk of losing desktop customers) vs. the PSF.
When MS starts really feeling the pinch of users leaving in droves for GNU/Linux in a few years, I expect then to see the patent lawsuits start flying. No, I don’t have any precedent to cite here, I’m just making an educated guess. MS will protect their income stream with whatever unsavory means at their disposal. At that point, it doesn’t really matter who is taking away their business, MS will be after *them* with a vengeance. Don’t say johnMG didn’t warn you.
At that point, I want the FSF in my corner. If there’s one group of people who would doggedly fight the good fight against the patent lawyers (MS’s or Sun’s) — for as long as it takes, because it’s the “right thing to do” ™ — it’s RMS and the FSF folks. *That’s* why I think Gnome should embrace GCJ/Kaffe/Classpath/Java-Gnome for integration with its desktop. Let the chips fall where they may. Like they say on /., he (RMS) may be a madman, but he’s *our* madman.
What matters when developping an application is making sure that it will work, whatever the desktop environment used.
So this question about extending GNOME with Mono or Java makes no sense.
It is just a sign that the people behind GNOME have no idea what to do next. Their DE already seriously lacks features compared to XFCE (and I do not mention KDE). They say that GNOME is a general desktop (and this is why Anjuta is not included for example), yet they struggle about what programming language to add to their DE?? They keep adding layers upon layers on top of Linux such as a VFS. Yet forget to add basic things such as a menu editor (essential to manage a desktop I would think) and struggle with an architecture which is clearly too heavy and poorly designed/planned.
End users could not care less about Java or Mono in GNOME. They just want applications that works well, and fast. And they don’t want to be tied to a DE.
Geez! Who would’ve guessed? The Gnome guy doesn’t understand the first thing about C#/.Net/Mono technology, and was lured into believing that C# is Java + more syntactic sugar!
I would think a big shot developer would understand the fundamental differences between Java and C#, that go waaay beyond syntax. I guess not that many people took time off to inform themselves, heh?
I guess it means Gnome will make a dumb choice…once again…
Miguel: I know Mono is your child and we all get attached to our children. But I can’t help your child has been conceived at Microsoft and that’s why so many of us are afraid of it. I prefer coffee over monkeys.
Omega wrote:
Yet forget to add basic things such as a menu editor (essential to manage a desktop I would think)
If I’m understanding this correctly, maybe that’s a good reason to add a higher-lever language to Gnome for desktop development. Maybe no one wants to write a menu editor in C? Suppose a higher-level language was integrated with Gnome — such that you could knock up a menu editor using, say, Java. It would be a good experiment: would you see a menu editor much more quickly?
Are there a number of things like that Gnome needs? Would being able to easily provide them with a language like Java (as opposed to C) help Gnome more easily get the features you say it needs? The answer might be yes.
I for one agree that there are things that were not well planned on gnome. The VFS thing someone talks about somewhere up there is one of them. I always asked myself why didn´t they just follow the unix way and made modules the mount command could use. Why can I browse a samba share or a .tgz file just when inside nautilus but not from gnome-terminal for instance?
Why can´t I use my basic unix commands on every source? I think some good unix concepts were bypassed there. As for gnome using a higher level language, I do understand what motivates it. It´s true that users don´t care about these things, but it is also true that are programmers who make gnome a reality every day, and they want to have their job made easy, they want to use the facilites a high level language can offer. After all, gnome depends on them so they have all the right to make what it takes to soften their work. Lets not forget that, gnome exist because of them, can we tell them not to try making their programming better if they decide they need it? I remeber Miguel de Icaza talking about how tiring it gets to write applications like evolution using C and how much productivity you gain using C#, for instance. I still go for Redhat’s gcj solution though, my personal taste, I like java better. But once thing is clear. The problem here is, programmers, the creators of gnome trying to soften their work, we are talking about the people who actually brought us gnome, they deserve that right as long as the result is good.
We wrote a “high-performance” service using Python and we were a bit disappointed of it’s performance. It can only use a single CPU on a SMP box due to a design problem in the current Python VM (the giant interpreter lock, or GIL, among other things, AFAIK).
Python is nice, but Java scales better on SMP boxes. Even our “Python guru” over here is now thinking about using Java or C++ to write high-performance service applications!
I mainly write C++ and Java code, but I’d rather like to be using Smalltalk 🙂 I looked at Ruby, it’s very nice, but it also has the performance problem of Python (not scalable).
I forgot to mention that our server application was designed to be highly multi-threaded, so we were expecting much better results on SMP boxes.
Thats about it.
I’m a long time rh/fedora/rawhide/rhel & gnome user and just reading 160+ people that do/don’t matter to Gnome, it is pretty obvious that this going to split Gnome up in some way or another, or just piss enough users off that they do move to kde or xfce.
Why not
JGnome = RH builds/supports
MGnome = Novell builds/supports
What ever other distro’s chime in and then RH & Novell can flip each other the bird and move about there lifes…….
Or just keep Gnome as is, with C or push 3.0 to C++ and just carry all the bindings for all the other fluff. All the Gnome devel’s need to get in a room and hash all this crap out before they have no users left.
Yes, there are a lot of mono packages out there, Yes, take a look at jpackage, there are a lot of java packages out there.
Server Market, I work at a very large TelCom in the USA and I’ve never seen one person talk/support C#. We run the hell out of java apps however.
Pretty much, I’m for RH, I don’t like Novell’s philosphy since they took over Suse, and I sure don’t like the jagged comments that come from Miguel.
(There are already plenty of menu editors.)
Actually, for something as small as this, Python is probably the best choice. At least one of the current third party menu editors was written in Python, although the one that will probably end up in GNOME 2.10 is written in C.
Also don’t forget that Python already _is_ accepted as a language to write core desktop tools in, so this is really just about the choice between Java and Mono (which are very similar). Python is not the right tool for everything…
You should not pay too much attention to the Gnome haters anyway. They usually show up whenever there is an internal discussion and use it as an opportunity to tell the world what they think of Gnome. They are just noise.
The problem I see with Gnome it is the lack of a solid OO API. Fortunate there is WxWidgets(wx-gtk).
A very good cross-platform library, with a liberal licence.
– Java is slow and memory hungry (never tested gcj, however).
– C# have possible legal issues.
– C++ can be a language at least as productive as Java and C# if one learn to make proper use of it.
A corect understanding of the smartpointers (see Boost or Alexandrescu library) combined to a corect encapsulation of resources eliminate the need for a garbage colector, while provide a strict control of resources lifecicle.
With a good understanding of templates (Java and C# templates are only a hack around inheritance, which take away a lot of the power you find in C++) the productivity in C++ can easy jump over what you get in Java or C#.
And, there is always STL (yes, do not jump over that chapter called algorithms).
The only issue, is the complexity of the language who can make the beginners affraid. But that’s the life, power is to be earned. Once they understand the ammount of power they can get at their fingertips, possibly, will gather the courage to do the job.
DragonSt0rm
Come on guys, we all know that the language of the future should be LISP.
By ArturNT
> Come on guys, we all know that the language of the future
> should be LISP.
I used to say exactly the same, 10 years ago 🙂
> – Java is slow and memory hungry (never tested gcj, however).
> …
> – C++ can be a language at least as productive as Java and C# if one learn to make proper use of it.
And Java is not slow or memory hungry if one learn to make proper use of it, too. Also try the latest JVM. There’s actually a benchmark shows that bytecode+JVM (Sun JVM) can goes faster than native code (gcc, icc) ! (it’s not every cases, true. but the point is, JVM is no longer that slow.).
http://kano.net/javabench/
http://www.shudo.net/jit/perf/
http://www.idiom.com/~zilla/Computer/javaCbenchmark.html
http://www.tommti-systems.de/go.html?http://osnews.com/story.php?news_id=5602&page=1
Not that I really care. But I’d reccomend that Gnome takes a look at their own history and the people involved, when they evaluate what they want to to in this situation. Look at what Miguel said when Gnome started, and his arguments for using C as a the language for Gnome. Also what he said when he was burning for Bonobo. Then take note of the counter arguments in those two cases. How confident do you feel folowing the lead of one with that trackrecord on major technical decisions.
Just some observations about your comment:
“LGPL development tools need to have an adequate funding model to continue their development and make them good enough. Here’s the clusetick – there isn’t one.”
Actually I find Glade with the LGPL libraries GTK+ and GTKmm
to be much easier to work with than QT Designer and Kdevelop. (When I use Kdevelop to build “release software” in ANY library I find the thing crashes like Win9x. I also find the LGPL FLTK and Fluid GUI Builder much easier to work with than QT and it will be adding the last of what it needs (skinning and common dialogs) in its second version. (This is one reason I’m working on an IDE around Glade 2, GTK+ 2,GTKmm 2 FLTK and Console development under the GPL that will be simpler and less crash prone than Kdevelop and Anjuta. I would also like to remind you that even though QT itself has been GPLed it still depends on TrollTech PROPRIETARY SOFTWARE (moc, and uic if QT Designer is used) for compiling those GPLed files.) Therefore those who say TrollTech is still controlling things even with the GPL version of QT are right.
[i]”No it isn’t. The vast majority of software on Windows is sold at a large premium and companies make large margins on it. Shareware developers are utterly meaningless – here today, gone tomorrow. Anyway, even for a shareware developer good development tools and a copy of Visual Studio or a Java IDE are on their shopping list.”
WRONG!!! Virtually all the top companies in the pc area of the video game buisness started out as SHAREWARE operations including ID Software (Do Doom and Quake ring a bell?) and 3d Realms (Named Appogee when it was a shareware operation.)
Companies like ID Software and 3d Realms only became possible ONLY because of the level playing field that F/OSS, Shareware and Packaged premium software developers all shared under Windows. (Actually Quake I even though it started out as proprietary was developed with a F/OSS product, a DOS based version of GNU C called DJGGP.) If we want linux to succeed than we have to have that level playing field too. (By the way LGPL Librries are supported financually through donations from their users. As a forinstance I support WxWidgets by buying their CD ROM when
upgrade time comes. I would like to see the others (Fox, GTK+ GTKmm and FLTK) consider the same type of financial support system that WxWidgets uses. (CD-ROMS and donations).
Mono is just an implementation of an open (?) specification by Microsoft. MS can do nothing to stop mono.
No, it is not just an implementation of the specification. It also implements libraries that aren’t covered in the C# language specification (e.g., WinForms). These are the areas where Mono could get in trouble.
No, it is not just an implementation of the specification. It also implements libraries that aren’t covered in the C# language specification (e.g., WinForms). These are the areas where Mono could get in trouble.
It is true. But the mono is not a monolithic system. You can use GTK#, Gnome#, etc without windows.forms, web forms, ado.net classes. In the binary distributions this features are in separated rpm binary package.
Desktop environment in scripting language ? Bigger applications with dynapic typing ? IMHO it is a very bad idea…
LC,
Python is more than a scripting language. It is a higher level dynamic programming language that supports paradigms such as producedural programming, object oriented programming, aspect oriented programming, design by contract and so on. There are hundreds of big applications written in Python including desktop applications, web frameworks, databases and servers.
Seriously…this is so much ado about nothing. Java maybe the [i]*best*<i/> language evar but it still is [i]irrelevant<i/> for the GNOME desktop.
Python is wonderful-it is by far the easiest and quickest way for new programmers to quickly code up small apps. But wake me up when we see Abiword or Koffice re-written in Python.
People scream about how evil Bonobo was. But without some kind of component technology GNOME is doomed to have little code reuse and is artifically limited in terms of growth. Mono is not the answer to everything but Mono is slowly but surely becomming a set of class libraries for all things GNOME. People have long praised QT/KDE as the ideal developer environment for Linux desktop applications-it enables lots of intelligent code reuse, is extremely modular in it’s design and has tons of functions which are custom tailored to facilitate writing applications. Well this is what Mono is providing for the GNOME desktop plain and simple.
a) there are no significant java GNOME applications in existance.
b) as long as java applications are dependent upon a sun JVM java will never become a viable platform for application development in GNOME.
c) gcj/classpath are making progress but the API coverage is not yet sufficient to form an API base to which one can program desktop applications.
d) gcj/classpath first becomes the basis for GNOME aplication development when programmers can simply program to the Java spec and know that there programs will just work-and this is not the case, not by a long shot, and not any time soon-and ‘harmony’ won’t change anything in regards to this insde the next 2 years.
e) Even if gcj/classpath fully covered the Java spec it offers zilch in terms of GNOME integration-now once gcj/classpath finallly closes in on the Java spec one could begin enhancing java-gnome to make it rather usefull-but such a project could take another 2 years to come to fruition.
Wake me up when something changes here…..
in the meantime my $LANG is better than yours
Folks this debate about Java vs. Mono is so dumb it just defies the imagination-it is a exercise in silliness. The fact is Mono is the new language for GNOME desktop applications and whether you like Mono or not or whether Redhat ships Mono or not the majority of new desktop applications for GNOME are being written in Mono. The *decision* at stake here is what developers are using and this decisions is already being made-all the talk about it pales in comparison to the code and when it comes to programming code is what does the talking
As far as i see it there are only a few options.
One:
Gnome3 should move towards C++ to provide better OO design for lava, C# and whatever OO language someone is willing to write bindings for. (In my humble opinion, to keep using C is not a valid option except in some special cases.)
Two:
Gnome will focus on Java or Mono. It is obvious that when there is a final decision to go for Mono, Java or another language, a lot of people will be unpleased or even right out angry with that decision.
So Gnome as we know it might eventually die or get such a low progress it simply can not keep up. If this is not already the case. If so then forks will probably be created and the already getting scare development power will be divided even more.
Personally id like to see Mono have a change. My experience with lava is that its a nice language to program in but it simply does not give the responsiveness i want to see in desktop applications. I have not yet played with the “Java-gnome” library so i cannot comment on that. But it is no wonder that my favorite Java IDE on MS Windows is written in C++ (JCreator).
Playing with Mono gtk-sharp from SVN gives a nice peek in the things to come. As far as the patent risk in Mono… I have no doubt M$ will sue if Mono gets a lot of momentum. Since it allows applications written in Mono to run on Windows and Linux alike and it forms a perfectly bridge for cross-application development.
I do not know what Novell’s official position is towards Mono, for i have yet to read a disclaimer that they will protect it from any legal trouble. On the other hand, would Novell be backing Mono if they where sure it would result in legal cases they cannot win? I doubt it.
If Novell wants Mono to get better acceptance, they better make clear the legal issues. By claiming full protection, or by settling with M$.
Ofcause that is “Personally id like to see Mono have a chance”
Java and .Net (and Mono) were launched for political reasons. So they both are bad technical choices.
The little I have seen of Python, it seems the best technical choice (should GNOME really want to include a programming language in a DE, which I think makes no sense for the so few things a DE should really do).
is such a bad idea, yeah, I mean who the hell is ever written something in a dynamic language? I mean, apart from:
http://smalltalk.cincom.com/smalltalksuccess/index.ssp
http://www.pythonology.com/success
http://rubygarden.org/ruby?RealWorldRuby
http://franz.com/success/
http://perl.oreilly.com/news/success_stories.html
and many many many more..
And actually the GUI was invented with Smalltalk and there were tons of GUI environments for the lisp machines and there actually *are* WM for X11 written in dynamic languages..
Redhat may be right in not adopting mono into their distro. Simply because microsoft is FOR CERTAIN only waiting for them to distribute something they can sue them for and have a high probability of winning, as well as a high FUD factor.
Then they can get an order in place which forbids Redhat the distribution of their product, Redhat would be damaged financially and in front of their customers. And if Redhat gets damaged that way, Linux also gets damaged, like it or not.
Python is a nice toy for create small things, but IMHO the dynamic-typing is not useable for big and reliable applications. IMHO the enterprise sector never will use dynamic-typed applications. The “manual” memory allocation/release in the code IMHO is far less dangerous then DT, but both the java and .NET are uses the very expensive automatic garbage collection. But the python in Gnome is not absolute bad idea: it can be great if I can also use C#, or Java, Object Pascal or any similar reilable language. The best can be IMHO a language-independent runtime environment – like the CLR. In this case you can use your Python and I can use my C# or Java or Object Pascal…
Redhat may be right in not adopting mono into their distro. Simply because microsoft is FOR CERTAIN only waiting for them to distribute something they can sue them for and have a high probability of winning, as well as a high FUD factor.
If M$ want to sue linux directly IMHO it can. Doesn’t matter if you use Python, Perl, Java, COBOL, Fortran, or Assembly – M$ can find any useable patent in their portfolio to kill the project. But IMHO the M$ never will sue linux directly. They will find any company, like SCO and they will threat linux via this company. The direct attack of linux IMHO not too profitable for M$ – it can decrease of acceptance of the company. And if M$ will sue via another company the main target never will the mono, clr or any similar M$ technology.
> The “manual” memory allocation/release in the code IMHO is far less dangerous then DT, but both the java and .NET are uses the very expensive automatic garbage collection.
A good garbage collector can be much faster than naively using malloc since it’s not as if malloc/free were cheap. They need to traverse pretty big structures; just think of how much memory is malloced at a time… On the other hand, a GC can do that asynchronously.
The python guys even had to implement a memory pooling system so that they can allocate memory more quickly.
still depends on TrollTech PROPRIETARY SOFTWARE (moc, and uic
That is by far the most stupid thing I ever read about Qt and its tools.
Of course those tools are free software themselves, just check where Debian puts the respective package (hint: main)
[quote]
The bottom line is.. It’s all good! And disk space is too seldom an issue to think about.. So let’s all have a big heartwarming party and focus on what really matters:
DUDE, comon… The apps are important yeah… But seriously… Having MANY VM’s is really crap… I’m using around 500MB RAM memory just for different VM’s at the moment… Sigh…
I dig Mono. It’s a great initiative! The .net frameworks is proven to be good. C# is just a part of it. (Good one though)…
ONE FRAMEWORK! ONE FRAMEWORK! (and many languages INSIDE it)… TY 4 TIME
From Nils Ivanson:
<quot>
DUDE, comon… The apps are important yeah… But seriously… Having MANY VM’s is really crap… I’m using around 500MB RAM memory just for different VM’s at the moment… Sigh…
I dig Mono. It’s a great initiative! The .net frameworks is proven to be good. C# is just a part of it. (Good one though)…
ONE FRAMEWORK! ONE FRAMEWORK! (and many languages INSIDE it)… TY 4 TIME
</quot>
1. I agree with ONE VM
2. I disagree with that ONE being .NET
Rationale:
Applications are very important. Also is important for people used to run Windows to have available on Linux/BSD/Solaris the same apps as they used in Windows. This is going to make the switch very easy, and many will be happy to make the switch in order to get better security and realibility for less money, if their apps are there.
Java/Swing provide this opportunity. It is the same on Windows and Un*x. Windows Java programmers use Swing so their applications can be relativelly easy modified (avoid c:\Program Files\…) to be truly platform independent.
On both platforms we have the same very good IDE’s, and the documentation is also very good and available.
In theory C#/GTK can be the same. However, as everybody know, every single C#/Windows programmer do rely EXCLUSIVELLY on Windows.Forms. And here the issues begins. This library is proprietary and covered with some patents, so ANY implementation of it done by OSS comunity is potentially at risk. To make the maters worst, most of C# Windows programmers, are too entangled in MS realm to have any reason to start using GTK# instead of WF. Especially, when this library is still imature, not documented !!!, and not integrated into their VS, or in any decent IDE (SharpDevelop, a very nice C# GPL IDE had no suport for GTK# last time when I checked).
This being the situation I think that developers have to be directed toward Java and NOT toward .NET. .Net should be as of this moment regarded no more than VB or MFC/VC.
Of course, this mai change if:
– MS decide to standardize WF and others library and provide public waranty that no legal action is going to be taken against anyone cloning WF for any platform and under any license.
– GTK# is being integrated in ShardDevelop with full dialog editor and 100% documentation, and SD gain a sensible market share in Windows profesional developpers community.
Until then, we have to stick with Java if we want a managed language.
From Nils Ivanson:
<quot>
DUDE, comon… The apps are important yeah… But seriously… Having MANY VM’s is really crap… I’m using around 500MB RAM memory just for different VM’s at the moment… Sigh…
I dig Mono. It’s a great initiative! The .net frameworks is proven to be good. C# is just a part of it. (Good one though)…
ONE FRAMEWORK! ONE FRAMEWORK! (and many languages INSIDE it)… TY 4 TIME
</quot>
1. I agree with ONE VM
2. I disagree with that ONE being .NET
Rationale:
Applications are very important. Also is important for people used to run Windows to have available on Linux/BSD/Solaris the same apps as they used in Windows. This is going to make the switch very easy, and many will be happy to make the switch in order to get better security and realibility for less money, if their apps are there.
Java/Swing provide this opportunity. It is the same on Windows and Un*x. Windows Java programmers use Swing so their applications can be relativelly easy modified (avoid c:\Program Files\…) to be truly platform independent.
On both platforms we have the same very good IDE’s, and the documentation is also very good and available.
In theory C#/GTK can be the same. However, as everybody know, every single C#/Windows programmer do rely EXCLUSIVELLY on Windows.Forms. And here the issues begins. This library is proprietary and covered with some patents, so ANY implementation of it done by OSS comunity is potentially at risk. To make the maters worst, most of C# Windows programmers, are too entangled in MS realm to have any reason to start using GTK# instead of WF. Especially, when this library is still imature, not documented !!!, and not integrated into their VS, or in any decent IDE (SharpDevelop, a very nice C# GPL IDE had no suport for GTK# last time when I checked).
This being the situation I think that developers have to be directed toward Java and NOT toward .NET. .Net should be as of this moment regarded no more than VB or MFC/VC.
Of course, this mai change if:
– MS decide to standardize WF and others library and provide public waranty that no legal action is going to be taken against anyone cloning WF for any platform and under any license.
– GTK# is being integrated in ShardDevelop with full dialog editor and 100% documentation, and SD gain a sensible market share in Windows profesional developpers community.
Until then, we have to stick with Java if we want a managed language.
RE: By Anonymous (IP: —.owngsm01.md.comcast.net) – Posted on 2005-05-14 01:13:05
Better check your resources, Monodoc provides all the documentation you will need. And a windows port of glade makes it possible to do easy gui design on windows.
Another tool called static is on his way though, and its being integrated into monodevelop if im not mistaking.
Mono and MonoDevelops developments is pretty rapid from a developers standpoint of view.
Applications are very important. Also is important for people used to run Windows to have available on Linux/BSD/Solaris the same apps as they used in Windows.
I agree, but the GTK# based applications also runs under windows.
Java/Swing provide this opportunity. It is the same on Windows and Un*x. Windows Java programmers use Swing so their applications can be relativelly easy modified (avoid c:Program Files…) to be truly platform independent.
IMHO the swing is alien on every platform. Not windows application on windows and not linux application on linux. The SUN’s Java desktop also based on GTK and not on swing – and IMHO not without any reason.
And if GNOME3 will based on GTK (and any other low-level C library) the Java VM and the .NET CLR are eaual, at least in this aspect. And if we are compare the C# language and the java language, or the CLR and the JVM IMHO the C#/.NET is the better.
Yes, a good dialog editor (integrated to monodevelop (and VS in the future) is very important. The glade and similar things are not too productive – we need a very good RAD tool, like a Visual Studio. And IMHO the GTK# needs databinding – it is a very useful feature in .NET.
Will this discussion ever end? Are there any real plans to converge and form a single front?
Too much effort is wasted for too long… I would rather see a bad decision than no decision at all. At least then I (and many others) could decide where to put their effort into…
I have made several posts saying that Linux should be using one of the GTK C++ wrappers (WxWidgets, VDK, GTKmm) rather than Mono or Java for a consistant native code API or Python if so called “software management” (read interpretation has to be the way to go.
It is not only because of the LGPL and the level playing field it gives to all developers that I support this as Linux’s future but also because I still believe in the old Free/Open Source Software idea of DON’T TRUST CORPORATE COPYRIGHT/PATENT EMPIRES like Micro$oft, Sun, IBM and TrollTech too much no matter how much they may appear to be appearing to warm up support F/OSS but rather GNU/Linux/F/OSS should be dependent ONLY on ORIGINAL (not corporate knockoff) software that the GNU/Linux/F/OSS communities themselves built at the core and GUI levels of the GNU/Linux environment (I’m with Linus where device driver Kernel modules are concerned though and can accept corporate proprietary software and knockoffs at that level.)
I really wonder what happened to this honest self protective instinct of the F/OSS communities today. Are we falling for the “convenience” trap put out by corporate marketing hacks just like everybody eles in computing seems to do.
It is true. But see the result of the old FOSS idea – everybody use the Qt based KDE and the evil M$ Windows…
By Coral Snake (IP: —.015.popsite.net)
<quot>
I have made several posts saying that Linux should be using one of the GTK C++ wrappers (WxWidgets, VDK, GTKmm) rather than Mono or Java for a consistant native code API or Python if so called “software management” (read interpretation has to be the way to go.
…
I really wonder what happened to this honest self protective instinct of the F/OSS communities today. Are we falling for the “convenience” trap put out by corporate marketing hacks just like everybody eles in computing seems to do.
</quot>
Well, things are a bit more complex. Here are some speculations:
1. We need a desktop better than MS-Windows in order to compete against them.
2. KDE is there. Gnome unfortunate is behind. (My opinion, don’t throw the stone, please !!!).
3. KDE got his advantage mainly because they use a extremely well designed OO class library (QT) and a high level programming language C++.
4. Gnome peoples finally got the point that is going to be hard to compete against KDE without a good OO language. Good and resource efficient plain old C just do not provide
the productivity you need to keep shoulder to shoulder.
5. From some reasons (possibly the complexity of the language, possibly marketing hype, possibly other reasons) some peoples are afraid of C++.
6. The 2 choices left (after eliminating C++) are C# and Java.
7. We need applications commercial developed for Windows to be available to be bought for Linux too, when corporate and home users are going to make the switch.
If I am asked, my proposals are:
– WxWidgets/C++ as the main development language for Gnome.
– Encourage the Windows developers you know to use Java/Swing instead of C#.NET for their products.
– Miguel to keep working on Mono/Windows.Forms, just in case MS is not going to sue, in order to be able to port the commercial apps, written by those hanged in MS realm.
But for core development, C++/WxWidgets will be the best choice. It is a mature class library, it is crossplatform and available to write commercial software with it (this may attract toward Gnome small businesses and independent consultants). The apps not platform specific can be developed under Windows with a good IDE (wx-devcpp), then easily ported. Having some resemblance with MFC, you may get a share of old Windows programmers wanting to jump in Linux bandwagon.
My 2 cents worth of opinion.
DragonSt0rm
> I’m with Linus where device driver Kernel modules are
> concerned though and can accept corporate proprietary
> software and knockoffs at that level.
Linus doesn’t. See http://kerneltrap.org/node/1735