“The current generation of operating systems is much more powerful than they were in the days of DOS. We demand more from them now than ever before, and they’ve had to keep up with all of our needs and wants. As you know, an OS isn’t just another standard piece of software. Instead, an operating system has to manage a complex set of system-level processes all at one time, and it’s quite literally responsible for running the show. Therefore, it’s easy to see why these systems take so long to develop and successfully release.”
I had expected something deeper than “OS X rulez, Classic droolz!” Perhaps even some images. Instead, the piece is entirely fluff, like some middle-schooler’s last minute essay.
This in particular jumped out at me:
“If engineers were the only ones responsible for bringing an OS to the table, then I’m sure we’d continue to see operating systems that look like DOS. After all, programmers are notoriously sloppy with design.”
It’s a good thing we have all of those non-programmers making today’s useful operating systems. /me rolls eyes.
This is even more stupid, as programmers are not sloppy with design, this is not true at all.
Programmers, when doing something for themselves, will design it in the most efficient way for them, in term of time spent coding/usability for them.
Of course, this happens to be incompatible with what someone not as expert as a programmer can manage.
Most of the time, all these cool auto-config and good usability implementations take a lot of extra time to code and get right. Even basic things like i18n and l10n take lots of time.
Engineers are lazy people (not really lazy, but they want efficiency in all things) and love a challenge.
That’s why, even in FOSS, if a usability expert guide the programmer, he will code the necessary usability improvements.
Apart from that, the article has no content …
“If engineers were the only ones responsible for bringing an OS to the table, then I’m sure we’d continue to see operating systems that look like DOS. After all, programmers are notoriously sloppy with design.”
I’d say if it was in the hands of any typical engineer who was designing primarily for ui/os features instead of backwards compatibility system’s would have progressed much faster towards what they are today. The thing this article doesn’t point out is that for a long time the company goal for dos was compatibility.
In short the quoted statement is pretty ingnorant since neither the software engineer or programmers are usually not given free reign to do whatever they want with the product. Extream Sarcasim: BeOS, now that’s an example of an opperating system engineer’s and programmers messed up!
They also don’t mention that MS-DOS target was initially machines running on 8086 and 8088’s from 1-4.77 mhz. Not to mention most software engineers and any good programmers take pride in creating software with high efficentcy that’s easy to use.
Maybe they should follow up that article with one titled ‘Why UI Matters the Least in Computing’. I could rant all day about issues with just about any UI on the market but suffice it to say marketing play’s a much bigger role in the success of a product than how well it’s designed. This has been proved since day one.
In addition PowerMacX is completely right … it doesn’t have to be an XOR! very well put.
Edited 2006-09-18 18:17
“Programmers, when doing something for themselves, will design it in the most efficient way for them, in term of time spent coding/usability for them.”
I’ll say this perfectly sums why many desktop opensource/free apps (e.g. The Gimp) unfortunately are a such a mess on the usability/interface front.
I’ll say this perfectly sums why many desktop opensource/free apps (e.g. The Gimp) unfortunately are a such a mess on the usability/interface front.
Compared to what? Photoshop?
I find it hugely funny that Adobe once sued Macromedia over the tabbed toolbox interface, and today Adobe owns Macromedia.
http://news.com.com/2100-1040-898061.html
http://www.internetnews.com/dev-news/article.php/435371
http://www.theregister.co.uk/2000/08/11/lookandfeel_wars_return_as_…
Oh and KIllustrator being sued indirectly simply because the name hints at “Illustrator.”
Commercial companies such as Adobe hold patents on things as simple as UI design. OSS developers will be hard pressed to come up with an equally nice interface.
Well, I grieve with you about the silly interface suits.
Nonetheless my point is still valid: Photoshop/Gimp is one of the examples of inadequacy of the “free alternatives”.
Commercial companies such as Adobe hold patents on things as simple as UI design. OSS developers will be hard pressed to come up with an equally nice interface.
Well, that’s another issue with open/free UI design: mostly imitating and not innovating. Why at best following (badly) in the footsteps of Windows and Mac OS when you could sidestep and leapfrog them?
because familiarity thrumps “easy to learn” any day.
i could bring out a comparison to the cars common set of steering wheel and pedals but i belive its been done to death allready.
because familiarity thrumps “easy to learn” any day
True but it’s a shortcut, and it is beginning to show its limits:by following you will be always the underdog, always one step behind.
I thought (and still think) that open and free software was not just interested in just the sheer user number but also aimed in providing a globally better alternative (and that should also include UI) moreso since it is not bound to mere market rules.
heh, then start looking outside the two main open source desktop systems. there a myriad of large and small window managers and similar out there that plays around with how a gui should work…
One person’s mess is another person’s perfect interface, and a power user is likely to have a very different set of preferences from an inexperienced user.
GIMP is hard to defend, so I won’t. 😉 But there are a lot of programs out there which have excellent UIs from a power-user perspective. Look at Midnight Commander, for example. Or ROX Filer. Or Firefox. Or NEdit. Or slrn, which some folks hate but others absolutely love.
Salient points about the UI not being the OS aside …
Although I did (eventually) learn a goodly amount of DOS commands, my ability to use the computer improved dramatically when my dad put Windows 3.1 on the computer.
At last, I was liberated from the rote memorization of arcane strings of commands where one mistyped character spelled no result or in the worst case, disaster.
At last there was a way to interact with the computer that relied more on understanding consistent system concepts and not my memorization of specific commands.
See, what I like about GUIs is, once you understand the fundamental principles, the skills transfer fairly easily.
It took me about a day to come to grips with OS X (after a lifetime of Windows).
It took me about a day to learn my way around Ubuntu.
It took me less than a day to learn Xubuntu.
The same cannot be said of CLI driven OSes. Yeah, there’s the *nixes, and even a little overlap between DOS and *nix commands, but, IIRC the amount of overlap between CP/M (yes, I remember CP/M), DOS, and the Apple IIe OS was minimal.
Edited 2006-09-18 16:49
At last, I was liberated from the rote memorization of arcane strings of commands where one mistyped character spelled no result or in the worst case, disaster.
DOS is an *extremely* bad example of a command line interface with a consistent interface (which is to say, it’s horribly inconsistent); in fact, probably the worst that was invented after 1979.
At last there was a way to interact with the computer that relied more on understanding consistent system concepts and not my memorization of specific commands.
An inconsistent GUI can easily tear the vaunted “consistent system concepts” to shreds. Plus, it’s not necessary to learn *anything* with GUI’s – you can just keep on continually poking around till you find the right option. This might make things easier, but it massively decreases productivity.
See, what I like about GUIs is, once you understand the fundamental principles, the skills transfer fairly easily.
Which is a misrepresentation of the advantages of GUIs over CLIs.
It took me about a day to come to grips with OS X (after a lifetime of Windows).
It took me about a day to learn my way around Ubuntu.
It took me less than a day to learn Xubuntu.
It wouldn’t take much more than a day to learn to do the things in a CLI that you can learn to do in a GUI in a day.
The same cannot be said of CLI driven OSes. Yeah, there’s the *nixes, and even a little overlap between DOS and *nix commands, but, IIRC the amount of overlap between CP/M (yes, I remember CP/M), DOS, and the Apple IIe OS was minimal.
The fact that it is easy to move around in KDE, GNOME, MacOS and Windows if you know one of them is nothing to do with the fact they are GUIs. It is to do with the fact that they are designed to work like each other. By contrast, a GUI like the Amiga’s, like RISC OS or WindowMaker is quite different. Besides, try renaming 500 files all with the extension .jpg[\i] to have the extension [i].jpg.old. Easy in a CLI, possible but very tedious in a GUI.
Edited 2006-09-18 17:38
“DOS is an *extremely* bad example of a command line interface with a consistent interface (which is to say, it’s horribly inconsistent); in fact, probably the worst that was invented after 1979.”
Actually it was very good for it’s time. Take a look at MSDOS version 2 compared to many other system’s out at the time. The first time computer user didn’t need something as complicated as unix (nor could they afford the couple thousand to license it).
What they had was a small simple list of commands to help them manage there disk’s and load programs. It was actually still very good software up through 6.20 though it probably was a little undeserving of it’s market share by then.
Keep in mind in the early days computers weren’t very powerful and dos wasn’t designed for a multi-user, multimedia, networked environment. You have to take everything in perspective and “extreamly bad” it was not.
That said I do agree with your other points.
Edited 2006-09-18 18:36
Agreed, the PC’s DOS (and before that CP/M) was invented for were very limited.
However, my criticism were directed not at DOS’s (resource-dependent) capabilities, but at its (design-dependent) interface: For example, pattern-matching was implemented not in COMMAND.COM a la UNIX (where the equivalent functionality is globbing implemented in the shell), but in the various DOS utilities – or not. Thus it was possible to use pattern matching with some utilities, and not with others. Of course, the UNIX shell isn’t totally blameless in this regard – arguably, one could make it more consistent by enforcing a rule that, say, the option “-a” means “all” no matter what utility you’re using. It might be possible to implement it in the shell, even, but not necessary if there were only a set of Human Interface Guidelines.
An inconsistent GUI can easily tear the vaunted “consistent system concepts” to shreds. Plus, it’s not necessary to learn *anything* with GUI’s – you can just keep on continually poking around till you find the right option. This might make things easier, but it massively decreases productivity.
Yes, but does not having to hunt for guide to look up the rarely used command that one has not yet memorized also massively decrease productivity? Especially if what you think the command might be called is not what the programmers call it?
In a gui, you learn what certain things *tend* to be called and where they *tend* to be located.
And as you pull down and poke about in the various menus, fishing for the command that you rarely use, you’ll probably see the command/option you want, even if you don’t know the proper name. e.g. “Oh, so that’s what they call it!”
An inconsistent GUI can easily tear the vaunted “consistent system concepts” to shreds.
Depends on how bad the inconsistencies are or how poorly the interfaces are designed.
However, to prove your point, the UI for GIMP comes to mind.
It wouldn’t take much more than a day to learn to do the things in a CLI that you can learn to do in a GUI in a day.
The basics? Move, change directory, opening files? Yeah, that takes about a day.
Assigning permissions to a user or a file, setting up a firewall? Since this is not something I do every day, I’d need to hit the manual every. single. time. if I had to do this from a CLI.
With a GUI, all I have to do is navigate to where this sort of thing tends to be and then read the options and click on which ones I want to allow or deny. The fact that I also have what amounts to a check list of options in front of me makes it harder for me to overlook one, too.
(As an aside, every time I’ve been misassigned access permissions to files on a server it’s been done from the CLI.)
Besides, try renaming 500 files all with the extension .jpg to have the extension .jpg.old. Easy in a CLI, possible but very tedious in a GUI.
Good point.
In the meantime, manipulating images from the CLI …?
Which is actually why I like to have *both* tools in arsenal.
By contrast, a GUI like the Amiga’s, like RISC OS or WindowMaker is quite different.
Note to self: make time to download and play with windowmaker and see just how different it is. (I’ve seen screen shots so I know that the look of the UI is unique, but unless the icons make no sense and the tools to configure the system are called something completely different, I doubt it will be completely alien.)
Yes, but does not having to hunt for guide to look up the rarely used command that one has not yet memorized also massively decrease productivity? Especially if what you think the command might be called is not what the programmers call it?
As you acknowledged, this is not just a problem in CLIs.
Assigning permissions to a user or a file, setting up a firewall? Since this is not something I do every day, I’d need to hit the manual every. single. time. if I had to do this from a CLI. [i]
You overstate both the cases. It’s not difficult to associate “chmod” with CHange MODe, nor is a GUI a panacea for set up – as webmin and the linksys web interface demonstrate.
[i]
In the meantime, manipulating images from the CLI …?
…can be done (to a limited extent), but is hard, I agree. I never said GUI’s were useless.
Which is actually why I like to have *both* tools in arsenal.
Note to self: make time to download and play with windowmaker and see just how different it is. (I’ve seen screen shots so I know that the look of the UI is unique, but unless the icons make no sense and the tools to configure the system are called something completely different, I doubt it will be completely alien.)
For completely alien, try ratpoison or wmii. As for the intuitiveness of GUIs, I submit Evolution, a mail program, and Excel, a spreadsheet.
And as you pull down and poke about in the various menus, fishing for the command that you rarely use, you’ll probably see the command/option you want, even if you don’t know the proper name. e.g. “Oh, so that’s what they call it!”
You’ve got it: GUIs are more discoverable, CLIs are easier to use.
The ease of the CLI is massive if you have already discovered how.
In the meantime, manipulating images from the CLI …?
One word: ImageMagick. Now that does take a rather extreme amount of time to learn but you can (eventually) do everything you can do from a GUI. However, it is *much more obvious* how to draw a straight line from about-there to about-here in a GUI.
Note to self: make time to download and play with windowmaker and see just how different it is. (I’ve seen screen shots so I know that the look of the UI is unique, but unless the icons make no sense and the tools to configure the system are called something completely different, I doubt it will be completely alien.)
WindowMaker is only a little different. It still uses most of the same skills. You just need to learn a couple new conventions, really. RISC would be a much more entertaining experiment.
It wouldn’t take much more than a day to learn to do the things in a CLI that you can learn to do in a GUI in a day.
This is only true if you hand out manuals and people are willing to do the rote memorization. (The alternative is the user already knowing how to get into the help, and to navigate it; I found many a ‘man’ atrocious in that regard)
And if you move on to larger programs, a pervasive GUI will usually mean a program’s internal UI is consistent with UI’s with that of other UIs (location/presence of a button to close the application etc). With a CLI there’s no such implicit impetus, unless there are interface guidelines.
It wouldn’t take much more than a day to learn to do the things in a CLI that you can learn to do in a GUI in a day.
This is only true if you hand out manuals and people are willing to do the rote memorization.
Umm, no it isn’t; that’s why there are classes, in libraries, universities, etc, on such things as using Microsoft GUIemail applications, office suites and web browsers on Microsoft GUI operating systems. And why business factor the cost of retraining into such moves as MS Office <- -> OpenOffice or WordPerfect Office.
[i]And if you move on to larger programs, a pervasive GUI will usually mean a program’s internal UI is consistent with UI’s with that of other UIs [i]
Obviously you’ve never used AmigaOS. Or indeed, MS Office next to Windows Media Player.
At last there was a way to interact with the computer that relied more on understanding consistent system concepts and not my memorization of specific commands.
I don’t remember who put it this way (some interface guru, perhaps, or was it in User Friendly?), but paraphrasing him, we’ve progressed to an interface where you point at things instead of saying what you want. Literally; like cavemen [1] dumbly pointing and grunting, trying to make themselves understood.
Fred: Ugh ugh. [points at his belly]
Barney: Ugaah! [hits Fred in the belly]
Fred: Ugh! [is confused, for he meant that he is hungry]
Yes, a user interface for a computer is not the same interface as between two people, but I kind of like the comparison.
Besides that, once you have used the CLI for long enough, you will most likely grow out of rote memorization, similar to how you learn foreign languages. You learn to think, at least in part, in the commands that the computer accepts. Mind you, this learning process is similar when learning the concepts of a GUI.
[1] supposing, for the sake of this reply, that cavemen cannot speak
Not again!
It doesn’t have to be a XOR between GUI & CLI, best of both worlds: QuickSilver.
http://www.youtube.com/watch?v=EydTYOeqIrk
Outrageous anti-programmer slander. Any time saved or gained by a GUI will be spent screwing with said GUI until an even greater amount of time is lost.
This thing was the most amusing part:
“The look of Windows XP has caused many to call it the Fisher Price operating system, but that hasn’t prevented users from flocking to it.”
Umm… did I miss something? AFAIK, users “flocked” to the Fisher Price design because it was preinstalled on the computers they bought, just like e.g. Win98 was preinstalled before and because they already owned software for Windows. Thus a move to e.g. OSX was probably not really an alternative in their opinion.
And furthermore: Most users don’t even know how to change that ugly blue design.
[partially offtopic] Hmm… I still like that old-school look of my Windowmaker desktop. It doesn’t distract me like some wobbling windows (AIGLX) or some crystalline Windowdecoration (Vista). [/partially offtopic]
One day youll see that everyone will be happy and content with everything in the gui/os that dominates, in fact that is also the day that all os:es cost nothing, pigs fall from the sky, microsoft is a small burgerstand outside the city of Falun near the coppermine. By some strange coincident this is also the day when JLG returns to the world of computers and claim to be j(B)esus reborn.
Point beeing, you cant please all. Also CLI might be harder for people with very low internal memory in the head, since all those command will surely eat up some. But i still prefer CLI to GUI (depending on task ofcourse). I dont think i will go back to doing pixel graphics with cli though. (wich btw takes bloody ages)
Did i mention that i was sarcastic. Yes i understand, mod me down if you like =P
…substandard and shallow article we have come to expect from osweekly.
And another link to a poor-quality article on OSNews…
… loss of words … man you seem to have completely skipped the OS class in college. An OS does not have to have a GUI and the GUI is by no means an essential part of it. GUI driven OSes give you an easier control over the operations of the OS and I really fail to see what 3d acceleration has to do with better OS design. The best OS would be the most unobtrusive and the easiest one to control. That said a workstation/desktop OS would not always be the best for say a server and this has a lot to do with design decisions.
Also the author seems to confuse eye candy such as widgets and fancy graphics effects with the OS. While those are what sells an *OS* these days, they are really not a part of the OS. Those are merely software products that get bundled with the OS.
As far as design comparison of OSX and WindowsXP/Vista goes, I’m going to have to go with Windows. Yes the OS robs me of my sanity at times but the design is more extensible and Apple really has to learn how to let go. But then again Apple sells you a complete product/computer and not just an OS so comparing the 2 is like comparing oranges and apples …
Anyhow, if you really want to compare them ( and I will use XP as vista is still not finished at the moment ) then here is pretty much what you get.
Transparency: XP – decent OSX – decent
Usability: XP – good OSX – good ( keep in mind that we are not talking about some biased view of say a Mac only user or a Windows only user )
Hardware control: XP – excellent(you really can’t beat the amount of overclocking and tweaking software that exist for windows ) OSX – very good
API: XP – very good ( plenty of documentation ) OSX – good ( objective-c is really not that common outside the Mac camp )
and the list could continue with some less important categories but the bottom line is that the 2 OSes are very much on par as far as an OS goes. Yes MacOS X looks great and there are certain problems with the GUI of windows that have to be adjusted ( taskbars for one ) but like I said eye candy does not really make or break the OS itself. Plus in windows you can add a lot of eye candy with 3rd party software.
Anyway, the bottom line is that when you write an article about OS design you really need to know what OS means ( not in layman’s terms ).