Slashdot Mirror


A Non-Dogmatic History of the GUI

Zoxed writes "Jeremy Reimer provides an 8-page history of GUIs from the early 1930s to the present day. For example, from the conclusion: 'the truth of the story is that the GUI was developed by many different people over a long period of time. Saying that "Apple invented the GUI" or "Apple ripped off the idea from PARC" is overly simplistic, but saying that "Xerox invented the GUI" is equally so.'"

17 of 305 comments (clear)

  1. I'm missing... by Anonymous Coward · · Score: 1, Interesting

    I'm missing CDE and Looking glass in that article, nice sumary otherwhise. Well up to 1989 anyway, then it starts to lack a bit IMO.

  2. Re:Love of the Mouse by Janitha · · Score: 4, Interesting

    The mouse subject was accidental, I was initially writing about the mouse when I realized this, and your are right a mouse wouldnt really work well.

    Would be pretty nice to have a a simply point and touch in a real space, or simply just have the computer track eye movements, where you can just simply stare down a item you wish to click (or look at it and click) or a combination of touch and look.

  3. Re:Love of the Mouse by elgatozorbas · · Score: 3, Interesting
    Would be pretty nice to have a a simply point and touch in a real space

    Nice, but probably also very tiring and difficult, without point of reference. Besides, what would all these 3D gui's be suitable for? 3D-modeling, mechanical CAD and the likes are obviously a good candidates. But apart from those? I never felt the need for either a 3D pointing device or display. Can you give some more examples of applications where such devices would have an added value?

  4. And yet even this is simplified a good bit by mcc · · Score: 5, Interesting

    They go directly from Smalltalk/PARC to Apple/LISA as if nothing happened in between. There actually were a decent number of GUI/windowing systems in the late 70s / early 80s, and a number of pre-X attempts at making a UNIX GUI, that time has totally forgotten. PERQ is the only one I can seem to find evidence of the existence of on Google offhand. If you can somehow find a copy of the book containing this history of GUIs written in 1986, it's rather fascinating...

    1. Re:And yet even this is simplified a good bit by sydb · · Score: 3, Interesting

      I used to have a PERQ II. They were made by ICL. It was a washing machine sized brown box; it was heavier than a washing machine though. The screen was a remarkably clear black & white portrait job. It ran Unix/X and it came with a copy of the Bell Labs manuals. I believe it came from a local university via a couple of friends.

      The "mouse" was a "puck" - no ball it was used with a tablet (like a Wacom). The puck had a bit of transparent plastic at the top with cross-hairs - I presume so you could trace out a drawing. IIRC the buttons were different colours.

      This was my first exposure to Unix and I loved it. My biggest regret, other than falling in love with the wrong woman, was taking this to the dump six years ago because I had no room for it. Now I have lots of room :-(

      --
      Yours Sincerely, Michael.
  5. A Pictorial History of the Apple Desktop Interface by Anonymous Coward · · Score: 1, Interesting
  6. Thank you by sahrss · · Score: 2, Interesting

    A "thank you" goes out to the author of this article, from me. At my college, we have two different version of OS history: The one where Windows was the first real OS, and the one where Linux is the newbie version of the first real OS, which is really UNIX. (note this was sarcasm)

    Those are the two versions our Win32/UNIX teachers preach. Neither bothers to look at the facts or the history of any other OS. *growl*

    I'll be showing this to some of them who aren't totally hopeless.

  7. Re:Cool by MichaelSmith · · Score: 4, Interesting

    I work for a company which sells air traffic control software. Lately I have been conducting training courses for software engineers working with our product.

    I offered the opinion to my students that the radar display, implemented as computer graphics, is one of the best graphical user interface metaphors that you can find.

    And there it is in this article:

    During the war he had worked as a radar operator, so he was able to envision a display system built around cathode ray tubes where the user could build models of information graphically and jump around dynamically to whatever interested them.

    Which makes me think that the CRT radar display where theta on the screen tracks the radar head revolution, and R represents the time for the echo to come back was the first true, working GUI.

  8. Ever heard of Xanadu? by rmallico · · Score: 3, Interesting

    http://xanadu.com.au/ted/ This guy is one of those folks who happened to have gone through the growing pains of the gui, hypertext world as it came to be (at least form its inception to its current state) i could say he is my crazy uncle but... 1. he is definately not crazy 2. he and my aunt just won't marry (but i still think of him as one helluva uncle) 3. he's pretty cool..

    --
    sig goes here!
  9. Poor description of X windows by Anonymous Coward · · Score: 2, Interesting

    Pretty feeble description of X-windows-- no mention of the fact that X is network aware (or network transparent); i.e. X clients do not need to be running on the same machine as the X server they display to. This was a revolutionary idea at the time and allowed for the X terminal thin-client architecture. This is STILL a pretty radical idea for folks in the Windows world...

    Maybe VNC also deserves a mention?

  10. Pine Email! by iamlucky13 · · Score: 2, Interesting

    Just four years ago, Pine was still the standard for remote email access at my school. Going from hotmail to that took some getting used to, but now I'm hooked. I can check for new messages in the time it takes Firefox to start up and load the hotmail login page. Of course, I don't even need to touch the mouse. The only downside, in my opinion, is downloading attachments is slightly more complicated, since I have to FTP them.

    Of course, progress has a nasty tendency to ruin the best things in this world. This summer, my school is ditching Unix and migrating to Microsoft Exchange. No more Pine. I wonder if we can convince google to offer Pine, or some kind of CLI access, for gmail? Port 23 anyone?

  11. Smalltalk GUI by ipoverscsi · · Score: 2, Interesting

    I had no idea that Smalltalk implemented the GUI on the Alto, and all I can say is "wow". That has got to be the most powerful programming concept ever. You've got all the introspection and application-hooking capabilities you can imagine to customize every feature of every application, including the window manager! Of course there was probably no memory protection nor access controls, making it totally useless for today's desktop. But, damn! it would be cool to play with.

  12. Re:Rather omissive article by Anonymous Coward · · Score: 1, Interesting

    Amiga had "screens", which were similar (but not identical) to virtual desktops. In the amiga screenshot in the article, you can see buttons in the top right-hand corner, these flicked you to other screens in a stack. You could also drag the screen down by the title bar to reveal the screen below it (the "Enlightenment" WM has a a poor imitation of this feature).

    One key difference is that on the Amiga, screens were named and associated with applications. A version or two after the GUI version pictured, "public screens" were introduced. These allowed multiple applications to share screens. Most serious applications that used GUI toolkits like MUI supported them. If I had a public screen called "internet", say, with I had associated my browser and email client, when either or both of those applications were open, the screen was summoned into existence in the stack of screens and contained them much like a virtual desktop (and the screen went away again when no applications associated with it were open).

  13. Regions...the core of a fast GUI by mveloso · · Score: 4, Interesting

    One incredibly important tidbit is buried in the article: regions.

    "One critical advance from the Lisa team came from an Apple engineer who was not a former PARC employee, but had seen the demonstration of Smalltalk. He thought he had witnessed the Alto's ability to redraw portions of obscured windows when a topmost window was moved: this was called "regions". In fact, the Alto did not have this ability, but merely redrew the entire window when the user selected it. Despite the difficulty of this task, regions were implemented in the Lisa architecture and remain in GUIs to this day."

    That man was Bill Atkinson, and he came up with region drawing code that Apple patented. It's the reason that Apple's GUI was brutally faster than any other GUI out there. What was great about it was that it not only did rectangular regions, it was able to handle arbitrarily complex regions.

    It's worth it to go over the patent, if you get the chance. It just goes to show that a misunderstanding can have incredibly positive repurcussions.

  14. Re:Obsolete? Not keeping up with trends. by cahiha · · Score: 2, Interesting

    But the NeXT foundation and Objective-C together are actually very pertient to the world we live in today. [...] Objective-C is actually where the industry should have gone instead of C++.

    Objective-C is indeed better for GUI and application programming than C++. It would have been great if people had adopted it in the 1980's, because it might have allowed C programmers to find out about, and transition to, better approaches to programming. But even in the 1980's, Objective-C was not state of the art; it was an uncomfortable and not particularly well-conceived compromise between C programming and OOP. Today, it offers little that Java or C# don't offer in a better, more convenient way.

    It's easier to learn and use than C++ (I've done both) and might be a little behind Java or C#, but then again it's also not really been overhauled for a while.

    I think that's an understatement: Objective-C hasn't changed significantly in 20 years.

    The rapid degree of progress Apple has managed to make in the OS and with other programs is a good demonstrator for how efficient Objective-C can be.

    I don't believe that's true. The thing that makes Macintosh so attractive to many people is its apparent simplicity, and that is achieved by keeping the user interface simple. So, the progress on Macintosh is due to careful design, not due to heroic programming efforts.

    If you give, say, the iTunes design to a Cocoa programmer and a programmer using, say, Java/Eclipse or VisualBasic programmer, you'll probably find that the Cocoa programmer will take longer to implement it.

  15. People who still don't "get" GUIs by Zobeid · · Score: 2, Interesting

    More than 20 years after the introduction of Macintosh, there are still a lot of people who don't seem to "get" the GUI concept. I suspect a lot of them are Linux programmers.

    My first exposure to a GUI was when I got my Atari 520ST in 1985. I approached it with skepticism, it was a newfangled-looking thing at the time, but I soon became a true believer. The ST didn't have any command line -- everything you did on it, you did using a GUI. That applied right down to application programming, which was done using a GUI-WIMP based text editor, IDE, and visual GUI editor (i.e. resource editor). Likewise, every third-party utility, no matter how technical in nature, came with a GUI interface. They had to, because that was the only way to do it.

    And you know what I found out? The Atari ST, despite its limitations, was an easy computer to use -- and an easy computer to program.

    It's remarkable today to observe how many programming environments *still* don't come with features like an IDE or visual GUI interface creator, and to ponder the reasons why not.

    Example: Python is hot. . . I'm sure it's OK for simple scripting, but why are people getting so excited about a language that doesn't even come with a good WIMP-based IDE and visual GUI creator? Are we really expected to create applications with this?

    The problem as I see it, as that a lot of programmers from the Unix tradition still view "user friendly" computers with contempt. To them, user-friendly means idiot-friendly, and a GUI exists only so that Grandma can launch her web browser without getting confused. They don't program their Unix/Linux boxes using a GUI environment, and it would never occur to them that they should.

    And here's the revelation. . . The GUI wasn't invented for Grandma. It was invented for everybody: office workers, scientists, artists, publishers, musicians, network administrators . . . and yes, programmers. The purpose is to make complicated things easy, not simple things.

    I find one of the most frustrating aspects of Mac OS X is the occasional need to work with utilities from the Unix world (Subversion being a recent example). As long as I stick with Apple-supplied software, everything is easy and natural. As soon as I need to install and configure any program from the Unix/Linux world, and I'm forced to dig "under the hood" of Mac OS X, everything quickly goes to Hell. Sure, I can make it work eventually -- after enough tinkering and fiddling and digging around for documentation -- but I find myself asking why. Why should I have to put up with this nonsense in the year 2005?

    The problem goes beyond the lack of GUI interfaces for programs coming from the Unix and Linux world. There's also the poor quality and inconsistency of those programs that have a GUI. These are interfaces designed by somebody who doesn't want to use a GUI himself. They're tacked on as an afterthought because "the dumb users" want a GUI, not because the program's designer wants or appreciates a GUI. And can you blame them? The only kind of GUIs they have regular experience with are the desperately *bad* and confusing ones typical of Unix and Linux applications.

  16. Re:GUI is over-rated by jc42 · · Score: 2, Interesting

    Isn't a text config preferred by ALL admins?

    Indeed. I've been involved in a number of network-management projects. In all of them, we've eventually had discussions of an interesting phenomenon: When you watch network admins in action, and a problem occurs, they invariably (and instantly) abandon the fancy GUI tools on their workstations. They open up 2 or 3 text windows and start typing commands.

    If you talk to them about it, you'll find that their attitude is "Oh, those fancy GUI things are for impressing suits and lusers. They don't do anything useful. To diagnose and fix problems, you have to use the tools that work, and those are all text-based."

    While generally agreeing with this, I'd also have to admit that I've written a number of GUI tools that admins grab and use when they see them in action. One is a simple tcl tool whose window contains N lines, each one running a ping subprocess. You enter a hostname or IP address in one cell, the ping happens at S-second intervals, and the line shows the results. The response times are colored to show the delay, changing from green to yellow to red as the delay gets longer.

    But note that this "GUI" tool shows nothing but text. It's merely a front end for N repeating ping commands, with color used to indicate problems. You could do the same thing in N text windows. The GUI is used merely to package this in a convenient (and compact) form. So it's using the GUI for the one thing that a text window isn't very good at: running a flock of background commands and summarizing their output. Also, it reduces the needed screen space, unlike most GUI tools that waste screen space. And it's nothing very special; any tcl hacker could turn it out in half an hour or so.

    Someone else has pointed out that google does the same thing. Their main page is in fact a purely text-oriented interface. The GUI is used minimally, to get the text on your screen. And google works just about as well from lynx as from a GUI browser.

    The real advantage of a GUI, from a "power user" viewpoint, is that it lets you run N text windows together, and resize them on the fly. This is better than N dumb terminals. But aside from this, most GUI tools don't lead to increased productivity. They're just pretty pictures, aimed at people who can't type and can only point with one or two fingers. That's fine for selling computers to such people. But it's not really great for someone with full use of all their fingers (or brain).

    --
    Those who do study history are doomed to stand helplessly by while everyone else repeats it.