GNUSTEP 0.9.4 released (it's an OS, a distribution and live CD)

Posted 5 Feb 2005 at 15:30 UTC by tarzeau Share This

The GNUSTEP 0.9.4 distribution is released. GNUstep is an implementation of the OpenStep API. Basically, it's a programming library, a toolkit like Qt and Gtk if you want -- not only for graphic apps, but also for non-graphic apps. In fact, the OpenStep API is divided in two frameworks: Foundation (which deals with non-graphical things such as threads, files, unicode strings, etc.) and AppKit (which provides all the nifty widgets and how you use them). But, additionally to that, GNUstep *also* provides development applications: Gorm, a graphical interface builder, and ProjectBuilder, an IDE.

Actually, GNUstep runs mainly on X11, but the way it is architectured, it's not that complex to use other drawing display. For example, there is 3 backends for X11 -- one using xlib, the other using libart, and the third using Cairo. And there is a backend for Windows GDI. So in fact, it's not tied at all to a X11, and the notion of an independant window manager is specific to X11 (actually, GNUstep apps don't really need a window manager even under X11 -- they can manage themselves..).

Programmers worldwide can develop their programs on Mac OS X, Linux, the BSDs, Solaris, and with a couple of hurdles -- even on Windows. This solid and well-defined standard is reaching out to the world of software development, slowly but surely. Program your applications in days or weeks, rather than years or never. Use the advanced API of a development framework that hasn't needed significant modification for 10 years, because it rocks, is stable and just works.

You think the look is dull? The person who designed the NeXT got it right! I 'm sorry, I don't remember the guys name. But in essence, Steve Jobs got it right by hireing a professional designer to build the interface. There has never been a graphical environment before or after that lived up to that standard. Now twenty years later, there have been improvements in usabiility and there are some aspects of other environments that could be incorporated into GNUstep thereby improving on the original NeXT environment. I like most of the icons produced by Andrew Lindesay, I believe they have the right look and feel for the environment. Gnome and KDE have absolutely horrid icons and basically horrid interfaces, they have no style, no grace and were pretty obviously engendered by young adults who's only artistic sense is derived from way too much time wasted staring at Saturday morning cartoons on television.

It's a pity that, at the peak of the Linux desktop hype in the late 1990s, when evangelists predicted the near death of Microsoft, KDE and Gnome were rushed out of the door, and GNUstep development remained obscure. It was the first time that distributed free software development defected from its proven practice of implementing standardized, proven APIs and technology (like POSIX) and created major APIs of its own. The result is that KDE and Gnome have created APIs that nobody uses for serious large-scale software development projects [except those companies who have large investments into KDE/Gnome themselves, like Ximian with Evolution]. Now KDE and Gnome have a long way to go to clean up and standardize their APIs (via, usability (via UI guidelines) and code, solving issues that adherence to an existing open GUI specification like OpenStep would have prevented in the first place. Imagine the massive development efforts on KDE and Gnome, including the massive rewrites of their codebases, would instead had gone into GNUstep, so that the GNU/Linux and *BSD desktop would be OS X/Cocao source compatibile today [and companies developing for OS X port their software to Linux basically with one more compiler run]...

The main trouble - then and now - is that the majority of folks simply "don't get it" why OpenStep is superior to crippleware (please read the Booz-Allen study) APIs like Qt/KDE. KDE is "trying to do an improved Windows on Linux" (and taking a lot of its bad design choices with them in the process), while OpenStep is something entirely different. And for an average, M$-infected programmer using something like that would require some re-thinking of some of one's own assumptions how apps should be coded, so most simply don't bother. Sheep, that's what I call them... ;-) I guess the apathy towards OpenStep also stems from the fact that most people have never seen NeXTStep development in action - it left most witnesses drooling for more - and/or because they're too conventionally-minded to try anything outside their mainstream C++/Java box. To paraphrase a famous quote, "nobody was ever fired for choosing C++", right? And who's ever heard of Objective C - apart from geeks, that is?.

User Interface Evangelism, posted 5 Feb 2005 at 17:52 UTC by tk » (Observer)

Don't get me started.

Nice Thing, posted 6 Feb 2005 at 06:12 UTC by moshez » (Master)

This article is choke-full of facts, and has very little hype. Objective, well-researched, facts such as "KDE and GNOME have horrid icons" and the ever loving characterization of developers as "young adults who's only artistic sense is derived from way too much time wasted staring at Saturday morning cartoons on television". It's nice how it avoids the hype and ad-hominems traps most UI debates get into.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

Share this page