Friday, August 25, 2006

NeXTbuntu?

I read a blog today called "nextbuntu" it can be seen at nextbuntu.wordpress.com. A few things stated on the website are entirely false:

1) That GNUstep has changed the names of the classes "and everything"
GNUstep has done nothing of the sort. For all of the classes in the published API of OpenStep and Cocoa, we have used the same class names, constants, method and function names. Period. It is trivial to port applications from Cocoa or OpenStep to GNUstep so long as Carbon and the Core* libraries (for which we have no equivalent) aren't used. The only classes which use GS as a prefix are private classes which are not part of the NS (Cocoa) framework.

It's immediately apparent that no review whatsoever was done by NeXTbuntu regarding the current state of GNUstep.

2) Graphics makeover
This is something that has been on the top of my personal list, as GUI maintainer, for a long time. RIO and others have made some progress in getting this done on the theme branch.

3) Give the user the option of using cascading menus instead of the menu bar.
GNUstep currently has cascading menus, it also has the capability to show the menu as a menu bar on the top of the screen. To change it is a matter of changing a default.

All of these concerns are known and are being addressed in GNUstep at present. The goal of NeXTbuntu seems compatible with that of GNUstep. The only thing about his post that concerns me is his "dislike" of the GPL. Currently GNUstep is under the LGPL, which is a "lesser" version of the GPL which lacks certain things that some people don't like about the GPL.

4) Mac OS X/Cocoa compatibility
Porting from Cocoa to GNUstep or from OpenStep to GNUstep is quite easy. Please see this link: http://mediawiki.gnustep.org/index.php/Portability for more information. Also, recently, as you may or may not have noticed, I've implemented nib compatibility, so it's currently possible to read/write nib files for use on OS X.

Cocoa compatibility is one of the main aims of the GNUstep project. It's a very challenging one because Apple keeps adding things, so It's a moving target.

5) The Desktop Env. vs Development Env. issue
GNUstep needs to be both, or, at least, have a separate desktop project which is the official desktop.

Conclusion
I would suggest that the person behind NeXTbuntu should contact a member of the GNUstep team such as myself, Richard, or Adam to discuss collaboration. If you are planning on re-writing all of this stuff yourself, good luck, but it would go much more quickly for you to use GNUstep. Also, I suggest you drop the attitude that you seem to have, it won't make you any friends.

6 comments:

Nicolas said...

OpenStep could run on pretty much anything. It was a complete desktop AND development environment. It was fast and stable and years ahead of its time.

You seem to think we do not know ? ;)

Try to imagine why on earth a few persons work together on reimplementing this obscure specification using this obscure language: the reason is simply because most of us actually had experience with NeXTSTEP or OPENSTEP in one form or another. I still have originals of NS 3.3 on my shelf, along with NS dev books. Actually I even have a physical tape of the randy nelson video explaining objects and NS ;-)

I appreciate that you GNUsteppers have at least tried. I'm not sure what's been holding you back. You've spent years pulling something together, and it's still not ready.

are you sure it's not ready ? ready for what ? You want an OS -- that's NOT GNUstep role. GNUstep is a bunch of libraries and development tools. It's not even a desktop, although it's easy to build one around it.

The only thing holding us back is simply the fact that there's few persons contributing on a regular basis.

I mean, can you take GNUstep today and do what Steve Jobs demonstrated in that video?

Actually, yes, we can. The only missing bit (and actually it's just not finished yet, it's on the work) is the live datalink example. All the rest you can do TODAY with GNUstep apps :-P

Check http://xdev.org/gnustep/ or http://home.gna.org/pmanager/videos.html for some videos demonstrating Gorm. They do not demonstrate a "user desktop" but that doesn't mean you can't have one -- at least you can use GW with a bunch of other gnustep apps; Check the LiveCD (http://livecd.gnustep.org) for a good example of how nice GNUstep could be when everything is properly configured and integrated (although sadly the LiveCD is seriously behind current versions, I think the guy behind it (tarzeau -- he is alone working on this) -- wants to release a new version soon, now that gnustep just released a new version of -gui.

The code and the libraries all existed at one time.

Existed at one time ? What do you mean ? GNUstep started from scratch, it's not like we reused code from NeXT...

You've had support from the FOSS community.

Which support ? The only support I know of is the Aladdin DisplayPostScript fiasco. Then GNU focused on GNOME.

Where did your project go awry? Why would it be so difficult to recreate and modernize OpenStep?

Because IT IS a complex piece of work. It took time, and considering how few persons actually worked on GNUstep, I personally consider amazing what had been achieved. I mean, you could joke of other projects too, like Hurd... easy target... What you don't realize is the reason why these projects usually progress slowly is simply because there's few persons working regularly on them, and because it's a very long job anyway. If one tenth of the people who worked on Gnome worked on gnustep, we would have everything perfect years and years ago. Sadly people preferred to work in C rather than ObjectiveC :-)

Look, you seem to think that "we failed". It's not the case -- gnustep is not as polished as we could hope, but it is certainly usable, you can even have a gnustep-based desktop simply by using a bunch of gnustep-based applications, and it fits quite well (yay for services). In addition, there are projects to create full blown gnustep-based desktop, such as étoilé (http://www.etoile-project.org)

So you come over, say we don't do any work and what we have is crap. Fair enough. But 1) you don't seem to realize how much gnustep actually does 2) how much effort was needed (as you imply it should be dead simple to create an openstep implementation) 3) there's a continuous stream of commits, it's not like people aren't coding -- it is an active project. The main problem we have is a lack of developers; we do what we can with what we have.

Frankly, GNUstep's status improved A LOT in the recent years. But of course there's always something to work on, to improve. Anyway, rather than trying to somehow blaming us for "failing", why don't you try to start hacking on it, check the code, reports bugs, send patches, etc. I don't know, it seems to me it would be a more positive move.

Stefan Urbanek said...

Greg, Rio and all steppers, try to look at it from other side. While I fully agree with you, there NeXTbuntu guy is doing what GNUstep needs. What and why?

GNUstep still dreams a dream of world domination, that it is the best environment around. It is not. Only the idea and potential behind the gnustep is the best around. Trolling is like cold shower to make the project awake, to make the project look around what is happening. It is good to make you think, to express what is obvious to you but not for others. Sometimes trolling arises, because the troll does not have enought information or the information is not easily accessible to him. I am afraid, that this is also the case...

Objective reality is irrelevant. It does not really mater what the state, completness or inovativeness of the project is. What matters is, how does the project looks like to the outside world... How does the GNUstep look like? Why do we have to explain, that GNUstep is not a window manager, or that putting a NeXT scheme will not change your desktop environment to NEXTSTEP?

Perhaps he is only a troll, perhaps not. He has some valid points, even though his talk is sometimes rude. Provocation sometimes helps... I can name several trolls, that helped me to think, to polish my arguments.

Stefan Urbanek said...

I now have seen his lastest post "Pissing Contests". He should be ashamed that he is blaming definitely the worng person. He is blaming someone, of the few, who is actually pushing GNUstep forward... I have no words for that.

Nicolas said...

Stefan,

I agree with you -- the fact is, these critics hold value, if only because all these wrong ideas should have been dismissed in five minutes browsing gnustep.org, and obviously it wasn't the case. So definitely we're not doing great at communicating properly the project's status, and that's something to work on (although it's not exactly a brand new notion..)

What starts to be more annoying is when you take the time to answer with facts (what could have simply been after all an honnest misconception) to rectify the wrong picture, and this nextbuntu guy answers by deleting the posts and by going on personal attack. Note too that he himself never wrote a mail on the mailing list, the decent posts about/from nextbuntu were written by others. All in all, personally I am not really interested by dealing with this kind of person, however good he claims to be.

Nonetheless -- the idea of creating an OS based around GNUstep is a good one (there's a reason why it's not the first time somebody's trying). And it's also a big job (well again, there's a reason why it is not the first time somebody's trying :-/ )

I only whish him the best and if he can succed, good for him (and good for us too, as we'll benefit from such a system anyway).

And yes, such a trolling seemed to have given a nice cold shower, if you consider the mailing list traffic. Never bad sometimes to stop a bit, look into the mirror and assess the situation.

So the effect of this whole stunt is probably good ;-)

Still, I gave him the benefit of the doubt in the first place, but considering his following behaviour... he's probably just a troll.

GregC said...

I have always thought that the idea of an Open Source Mac OS X/OpenStep has merit.

It should be noted, however, that there have been two attempts at making a GNUstep based distro: the GNUstep live CD and Simply GNUstep. Both are GS centric distros. Both still exist. The live CD is about to have another release.

The problem, more than anything else, is applications. Applications give the sense of completeness HMK mentioned. Applications are what's really missing. The problem here has less to do with GS than it does to do with Objective C. Most programmers have been weened on C++ and Java, so ObjC is so foreign to them they are reluctant to learn it.

Thanks for all of your thoughts on this, and please, keep it coming. The input is appreciated.

Later, GJC

RS Gold said...

Tera Items

Buy WOW Items

WOW Items Gold

Objective-C end of life?? Not a chance...

Recently, I saw this article regarding ObjCs "end of life" from JetBrains. The tiobe index seems to disagree. It’s also importa...