Friday, December 7, 2012

Graphical interfaces are used to make closed systems

Graphical user interfaces, such as Mac OS X, Windows Seven, or Unix X11, can be great things.

It is impossible to imagine Web browsing without one, for example.

But this is always, always, a cover for what is really going on in the system.*  A terminal interface, particularly the Unix interface (now represented mostly by linux) is an inherently and almost unavoidably open interface (though the Windows version has been increasingly brain dead since Win 98).

(*Even Xerox Parc Altos, the first GUI, which Steve Jobs saw and copied, proves this.  Xerox had a different truly open system that ran Smalltalk, where everything down to the kernel was said to be programmable from the high level object oriented language, an OO programmer's wet dream.  Perhaps my judgement should remain open on that...I've never seen anything but fake Smalltalk systems.  But Smalltalk was only marginally successful as a licensed product, and I'm not sure if actual Smalltalk  systems as I ever sold, you could only get some kind of virtual machine that relied on whatever was below it...and therefore not a fully open system of course.)

I could barely tolerate Apple's interfaces prior to OS X.  Unix has had an infinite variety of advanced graphical interfaces since X11 was unveiled in the mid 1980's.  So with any decent Unix system since then, you could have it GUI or not, as you preferred.  No GUI I ever tried was completely open, but the purpose of a GUI anyway is to run prepackaged things...you don't need openness for that.  Unix GUI's were either limited or clunky, as many of the standard ones for Sun Solaris Unix, or unwieldly difficult to set up, and least in my limited experience, like BSD or linux.  The original Unix X11 interfaces were mostly limited and clunky.  One of the best was made by a company that ultimately went under because they relied on making systems that were fairly expensive, and cheap (and actually useless) early PC's undercut everything and destroyed the independent system market, except for Apple.

The powerful GUI was in the computers made by Apollo.  However, I haven't known anything about them since the mid 1980's.

When Apple introduced OS X, everything changed.  Previously Steve Jobs during his hiatus from Apple developed the NeXT system, which was reasonably beautiful in concept.  It was intended to be an extremely user friendly system based on Unix.  I had a 2nd generation NeXT machine, and in my experience (and from what I heard) it was intolerably slow for most people.

However by the time OS X came out, the Unix based system was actually faster than the fully closed and insanely clunky Version 9.

Apple was a reasonably good actor at first too.  Most of the Unix they used was actually based on Gnu Free Software, from the Free Software Foundation.  Almost in keeping with that spirit, Apple made a lot of code free and had published interfaces.  That was a break from the past and with Windows tradition as well.  I'm not sure how much of that "almost" has been retained since then.

But I do know that Apple continues to fight the Unix command line interface.  By default, it's invisible, though it's not hard to add to your desktop or toolbar.

Recently, with Lion, they have made the Unix command line tools unavailable, unless you select them in a Preferences dialog.

Software Companies have done a great job of getting people to prefer system closure.

Mind closure is only the next step.  I'm strongly re-considering my step away from linux.

X11 was originally very limited.  That didn't really matter, because it's users were all Unix lovers anyway, and of course the Unix system as well as its command line interface are the most complete and beautiful of any I know.  So who cares if the GUI is limited?  Well that's no longer an option in the world of web and multi media.  The GUI which handles those things HAS to be quite powerful and smooth.  Linux systems in the 1990's and early 2000's were still clunky and confusing, I felt, and actually not fully capable because of the intrusion of proprietary protocols, like Adobe's flash and RealAudio.  I think that has been corrected now, so linux probably deserves another examination by me...  Though I just bought a fully loaded Mac Mini.

So far, Mac has only been annoying to me, since I can change Mac behaviors back to the way I like.  I always put Terminal in the Dock.

Windows Seven has become even more annoying.  Back in Windows 98, arguably their best product ever, your files, all your devices, rested on the desktop.  You could just click on them to open.

Now, with Windows Seven, you have to select My Computer from the menu, open a dialog, check the right box, and click before you are permitted to see your files.

And I might not need to tell you that even then many of your files require further dialogs to access, or are ultimately unavailable.

The way Apple and Microsoft wield the graphical *user* interface is clearly part of their enclosure strategy.   And so it has been, though Microsoft didn't start hiding the command interface (horribly clunkly and limited anyway) until Windows 98.  By then, all were chanting the GUI GUI GUI chorus. I attended a Windows 95 unveiling, in an auditorium of 3000.   The demonstration was cleverly designed to show one of the old horrors of the Windows command line interface...the installation nightmare.  The crowd cheered when the presenter said "you won't have to do that again."

It seems all the geeks I know think similarly.  No serious programmer I've ever met does not use command line interfaces.  But I worry about younger generations.






No comments:

Post a Comment