From: hugo@IRO.UMontreal.CA (Hugo Desrosiers) Subject: Re: Linux vs. NeXTstep Date: 1 Apr 1993 18:18:00 GMT
Think about those questions:
1) Is it suppose to be a development tool ?
2) Is it suppose to be a work tool (ie, something like a super-pencil) ?
3) Is it going to be used to do many things, or just one ?
4) How much time I am willing to spend working on configurations and the like ?
My personnal experience about those topics:
1) If it is a development tool, I want to get a working prototype real quick,
test it, let it be used by real users so that I get their feelings, etc.
After having done those things on Linux, SunOS, NeXTstep and (yeark) Windows,
I put NeXTstep first by a few light-years. Its problem is that it uses a
different approach, much more efficient but at the same time more constrai-
gnant that the others (everybody today likes standards, but no one wants to
use them. NeXTstep does so, and pushes you to do it too !). Further more,
the integrated environment gives you a huge advantage (it seems that you
have this big CASE software running, just because from the editor you can
look up a word in the doc, or in a dictionnary, or in a Header file parser,
or you can do the same thing from the debugger, or from the shell, or etc).
This kind of functionality is now appearing on OS using X, but it just a few
years behind when you really get to work. Now, if you want to get down to
writing device drivers and similar things, it is more complicated (at least
it seems so to me), because there much more conventions to look up and then
to follow. I got my first driver in Linux running in about a day, I was
quite impressed by that. For SunOS, I was told not to bother to try (and
I didn't).
To be honest, Windows (NT beta) is a joke...
2) If it is a work tool, then you want to get to work as quick as possible.
If you know Unix, then Linux and SunOS are immediatly usable as a normal
Unix box. NeXTstep is different, since it gets you in the window manager
mode by default (note that you can get out of this mode by doing a few
modifications in the rc and ttys file (I've never tried it though), but
it would be an incredible waste). If you are ready to spend a day or two
to learn how your system is working, then after that time NeXTstep inter-
face and X/* are about as efficient. After a week or two, X/* start to
appear limited, while you still find more and more efficiency in NeXTstep.
The reason is simple: NeXTstep is an integrated package which is made of
Mach (kernel support), Unix (user support), Display Postscript (2d support),
RenderMan (3d support), NetInfo (network info support), Kits (functionality
support in an object-oriented way), and so on. X/* is a graphic thing more
or less patched into Unix.
With SunOS, you know that you are stuck at that level, no more, no less.
In Linux, you are bound to an experimental OS environment (it is a damn
good one too !). So it may crashes a bit more often that you would like to,
and when it does, you are on your own. With NeXTstep and SunOS, there is
a company that is (theoreticaly) very interested in making sure that you
are having no troubles with their product.
There is also the amount of tools that you will find in you environment.
I think that anything that is gnu will run in SunOS or NeXTstep. Anything
that is X/based should be able to be runned on SunOS and NeXTstep, given
a compilation (hey, it is standard Unix and X11, isn't it ?). Linux is
still missing a few things, so it is not exactly the "compile-and-run" or
"install-and-run" product. It is still very much a hacker-needed kit.
3) If you are going to be running one software, then probably that SunOS or
Linux have an advantage over NeXTstep. It is that you waste less of what
you have running in your computer ! The look-and-feel interest of Motif
and Open Look and AppKit (NeXTstep graphical objects) is probably too
personnal to be one day evaluated correctly on the net (I just can't be-
lieve that Bill C. Riemers prefers to run X over AppKit, but he does, as
some other prefer Open Look over Motif...). If you are doing many things
with your computer (as most people using a Unix box do), then NeXTstep is
a getting the lead because of the way it implements the sharing of resour-
ces between programs. You can usually get some of this sharing on a less
integrated environment, but again, it just ain't the same thing (and the
same amount of frustration when it doesn't work, or when you spend hours
to get it to work).
4) The time that you spend on taking care that your system doesn't brake
apart as it is getting maturity is again putting NeXTstep on the highest
step of the podium. I have installed NeXTstep and Linux on computers,
never SunOS. There is an unfair situation here, since Linux is stuck in
the chaotic world of PC architectures, while the other two are running on
very well defined machinery. Linux was easy to install for that situation,
but NeXTstep is only a few clicks of buttons away, which makes it the
easiest I've ever seen. I was told that SunOS is not exactly a joy to
install. Once it is running, there again managing NeXTstep is simple com-
pared to SunOS and Linux. But it is not done in the same fashion, so you
have to learn how to work with a menu and a client browser and the like
instead of emacs or vi. I also find NetInfo much better that NIS (proba-
bly because of the tools that let me access to it). Putting a NeXTstep
on an AppleTalk or Novell network was easier than hooking a Mac or a PC.
Doing remote administration or NFS mounts is also very easy, but then
again it is just not the old way of doing it, and so I've seen that a
SunOS administrator got real confused when he tried to plug a NeXT on a
net of Suns. He eventually found that it could do it the same way as it
is done in SunOS (almost...), but that was not immediate, since NeXTstep
was trying to make his life simpler by doing things differently, but against
his religion ("you shall always use vi to edit /etc/hosts...", etc).
The NeXTstep environment uses a lot of conventions that make system adminis-
tration much easier on the long run (3 months and up), but you definitely
need to spend a few days learning all that. If you want to set up a machi-
ne in one day and know just plain vanilla Unix, Linux and SunOS are better
choices (given (1), (2), (3)). If you plan to use the system for a long
time (like a few months), then NeXTstep is more efficient.
As a conclusion, NeXTstep is the best work environment I've seen so far (and
I've seen most of the usual ones). If you spend about a week reading the doc
about it (EVERYTHING is online, not just the man pages), you will probably
come to the same conclusion.
But it is not the plain Unix or X environment (which seems to be a problem for
some peoples). And it is not free (which is also a problem for some peoples).
Linux cost 0$, and it runs on '386 and up. NeXTstep/Intel has an approximate
cost of $900-$2000 (user, developper), which may change when it will be
officially sold at the end of May, and it runs on Motorola '040 and on '486
and up.
If your time has some value, you can evaluate which one is the cheapest, and
then which one is the most productive per $. This is probably the decision
factor that anyone whom living depends on a computer should be the most inte-
rested in. Then look at the colors, the 3D effects, etc.
Hugo DesRosiers.
p.s.: I forgot to mention Windows (NT) in the last part. It sucks. AmigaDos
was better made in its first release ('85) than Windows.