Log in

No account? Create an account

Previous Entry | Next Entry

Opening up Open Source

I've been thinking my way along a thought trail that started with Nicholas Petreley's back-page rant in February's Linux Journal (the first LJ in my life). In it he lambastes the Open Source community for recently falling into a slavish imitation of Windows: Linux got to where it is today by being both better and different from Windows, not by trying to be a cut-rate knock-off.

The next part of the path was a letter from a Mr. Gordon Findlay in the April LJ lauding Petreley's column: "We need to stop treating Microsoft's products as the de facto 'gold standard'. Of course, this means giving up the unrealistic attempt to make Linux a drop-in replacement for Windows XP, and instead letting Linux stand on its own merits—merits in terms of functionality, initial cost, TCO (as if anyone had any real idea), community, potential for learning and liberty." Findlay goes on to point out a paper by Dominic Humphries Linux is not Windows: a manifesto for Linux to be what it always has been, and for Windows users who simply want to get away from Windows to go somewhere else.

Humphries lays out a lengthy argument about why "Linux != Windows", and why it shouldn't be. I agree with many of his points, but not is underlying theses. Humphries espouses Linux for people who want to learn how their computers work and really get their hands dirty. He values ease of use, but defines it very differently from the way Microsoft does. He equates ease of use with efficiency and measures it by counting keystrokes. I think that Humphries over-values brevity in directing an application to do something vs. consistency across applications. He gives as his example of the near pinnacle of efficiency, these keystrokes to move five lines of text to the bottom of a document in vi: d5d / Shift-g / p. Contrasting it with the necessary keystrokes in Microsoft Word: Shift + DnArrow + DnArrow + DnArrow + DnArrow + DnArrow / Ctrl-x / Ctrl-End / Ctrl-v. Six keystrokes vs. twelve: case closed.

What I think he misses – and what shines some light into where we differ – is that efficiency (as measured by keystrokes) isn't the only metric for ease of use. Consistency must also be taken into account. Microsoft has made a lot of hay (and green) by flogging consistency – to the point where it really stands out when they aren't (like the authentication dialog in Outlook 2000 vs. every other Windows authentication dialog – Outlook swaps the order of Domain and Password, forever tripping me up). Humphries' six keystroke example is great – in vi. But it doesn't apply anywhere else in the realm of Linux. The Word example is applicable across every Windows text editor (including third party editors like TextPad and OpenOffice). Those keystrokes are applicable, with slight variations, for moving files around in Windows Explorer. It's not as efficient, but it is much more consistent. If we measure ease of use by efficiency x consistency, "the Windows way" comes out way ahead. The majority of computer users would probably prefer my equation over Mr. Humphries'.

And that's when the light came on about what I wanted from Linux, and why Ubuntu Linux knocks my socks off on my laptop and is driving me nuts on my server.

When I put together a server I want a stripped-down lean, mean machine that does exactly what I want it do and which I can control and understand completely. With my preferred Linux distribution – Slackware – I can trace (and understand) every command the system executes on startup. It's a little harder with Debian or SuSe, but I can still do it (the difference is a simple vs. complex systems for handling startup files). I can't do that with Windows. That's a key reason why I prefer Linux generally, and almost exclusively for outside-the-firewall servers. I can't be confident that I have secured something that I don't fully understand. When it comes to servers, I'm willing to trade ease of use (defined a la Microsoft) for clarity and control – which (along with desiring free Open Source software) puts me squarely in the Linux camp with Petreley and Humphries.

Then there's Ubuntu. I like Ubuntu Linux on my laptop. It handles all of those things that Windows handles for me – like figuring out what sound, network, and video drivers to load. It's GUI from the word go, and comes pre-loaded with all of these neat applications. It has an auto-updater that takes care of keeping the OS and applications up to date. It's even more hands-off than Windows Update. It runs an automounter that automatically recognizes when I plug in a thumb drive or external USB hard disk. As with Windows, Ubuntu hides all of the inner workings from me. I don't have much control over how the system works, but the tradeoff is that I can concentrate on using the laptop to get work done instead of working on running the laptop. This puts me in the Windows camp: when I sit down with my laptop, or at a desktop PC, I want to play with an image, or listen to music, or post to LiveJournal. I don't want to run a computer.

When I sit down in front of a server I'm concerned with running the server. That's why Petreley's and Humphries' interpretation of the Linux way works for me on the server. And that's why Ubuntu's Windows-like nature is driving me nuts on the household file server. Some day Real Soon Now, I'll pull all the data off that machine, blow it away, and rebuild it as a Slackware box.

Nick Petreley and Dominic Humphries would probably say that what Ubuntu is doing is exactly wrong – that it's catering to the type of users who don't give anything back to the Open Source community. Humphries would rather have these people run OS/X if they want something that works like Windows, but isn't Windows. And they're missing the point. OS/X isn't free, and it only runs on one proprietary, closed hardware platform. Ubuntu Linux is free, and it will run on any Intel or AMD system. Not all users want to get their hands into the guts of their PCs, and not all users can afford a commercial operating system and the commercial application software that goes with it. I think that the set of users who don't want to be computer experts is three or four orders of magnitude bigger than the set of users who want to be hackers. I also think that the intersection of that set and the set that needs a free OS that can run on cheap behind-the-leading-edge hardware is bloody huge.

The point is that there is a place in Linux for mimicking Windows, just as there is a place in Linux for being different and for being bleeding edge. These Linux fundamentalists need to understand that if you oversimplify your analysis, your analysis loses its applicability to the real world, because the real world ain't simple. Even if I want to nuke it off my server with a flame-thrower, Ubuntu is a Good Thing with a valid reason for existing. The "be like a hacker or get lost" guys need to lighten up and remember that Open Source makes for a big table with room enough for all of us.


( 49 comments — Leave a comment )
Page 1 of 2
<<[1] [2] >>
Mar. 13th, 2006 07:02 pm (UTC)
This is exactly my feeling as well.

I would never even consider using Windows, or increasingly Ubuntu, to run a server. That style of design simply doesn't match my expectation of a server-OS interface. I want to be able to manually edit config files in a very rapid and keystroke-efficient manner. I want to be able to quickly SSH to other machines. I want that level of control that Linux offers over what packages and what versions of those packages are installed. I don't want to have to worry about how the GUI interfaces with the underlying processes, and whether editing things manually might be breaking something higher up. I just can't imagine running a server with a Windows-like interface.

Yet on the desktop, everything that was bad about that style becomes good. In a desktop environment, I'm not concerned with the underlying processes. I only care about the end result; i.e. using a web browser or word processor. That end result needs to be reachable in a consistent and hassle-free manner. I really don't care how messy the background machinations are, as long as what I'm trying to do happens, and keeps happening the same way every time. And that's really what the windows-style GUIs try so hard to do.

In the end the debate just seems very silly to me; you can't point at one operating system, or one style of doing things, and say that it is the 'best' or the 'worst.' Everything has its place.
Mar. 13th, 2006 07:04 pm (UTC)
Server Install
You can do a server install of Ubuntu which will much more stripped-down, I believe.
Mar. 13th, 2006 07:16 pm (UTC)
Re: Server Install
That's kind of not his point. I'm sure he did that on the server. The problem is Ubuntu's handling of startup scripts and configuration OS-wide. It's designed to be managed by a user at a desk with a GUI, not a sysadmin at a remote site with a terminal.

This is likely to change somewhat with the 6.04 release, which has a much better server-oriented install path. However, the base configuration still differs widely from an approach like Slack's, and may not appeal to control freaks.
Re: Server Install - netcurmudgeon - Mar. 14th, 2006 02:52 am (UTC) - Expand
Re: Server Install - (Anonymous) - Mar. 14th, 2006 07:56 am (UTC) - Expand
Re: Server Install - (Anonymous) - Mar. 13th, 2006 07:54 pm (UTC) - Expand
Mar. 13th, 2006 07:05 pm (UTC)
Nicely Put
You have summed up beautifully what I have been trying to convince many individuals of. The vast appeal of the M$ Behemoth is that across all apps. barring a small minority, the layout of commands and keystrokes remain the same. I have had great success in opening up many peoples eyes to Linux via Ubuntu/Kubuntu, and it is due to simplicity. Most Windows users believe that they require a CS degree to operate a linux distro. It may have been the case in the past, but in order to obtain across the board adoption by as many people as possible and foster further growth of Linux OS'; Linux variants must be everything to everyone. I mean that we must accept that most users do not want to operate their computers, but to use them. This is why we have so many variants. Start them off slow and allow them the room to learn and dig as deep as they wish.
Mar. 13th, 2006 07:17 pm (UTC)
Yes, I think you've hit on a better metric for ease of use... but I don't think that's the same thing as mimicking Windows. (A lot of people would say, for example, that Apple does a better job of it than MS.)
Mar. 13th, 2006 07:33 pm (UTC)

Yes, but they'd be half wrong. :) It's only Apple users saying this, and for some reason this has been taken as truth - while the actual truth of the matteris that "it depends".

First and foremost it depends on your expectations, and what the task at hand is. I go absolutely crazy when sitting down at an Apple machine, but I'm only somewhat discomforted at a Windows or KDE machine and I prefer Gnome right now, almost no discomfort at all. Does that mean that Apple is the worst? No, but they don't do things the way I expect or maybe the way I want - so it's bad usability for me.

If I want to resize a window on the Mac, I end up moving it instead - is that usability? Perhaps, to someone who expects it. :)

To me, Apple isn't usable at all. To an Apple user, it is.

Expectations - (Anonymous) - Mar. 14th, 2006 04:07 am (UTC) - Expand
Mar. 13th, 2006 07:27 pm (UTC)
Consistency and Ubuntu/Gnome

I agree completely, and thankfully that is the attitude of both Gnome and Ubuntu too - many blast Gnome for their Human Interface Guidelines, but at least they have the above all goal that all apps in a system should behave consistently. This Ubuntu can take advantage of and it does - even enhancing it.

That the Gnome guys have completely misread the Joel Spolsky UI ideas to mean that nothing should be able to be user configurable is more sad, but that's how it is, and that gives us the recent screen-saver controversies as well as a window manager that can't control where the windows are started... and more. (You can trace this yourself by reading some old Havoc Pennington posts and then reading the actual "UI for programmers" texts and see where it all went wrong).

I think that in the end, sanity will punch through this though. The HIG is excellent in parts but it's too much treated like holy vatican law - it still needs work.

Mar. 13th, 2006 07:28 pm (UTC)
Ubuntu as a server
> when I plug in a thumb drive or external USB hard disk. As with Windows,
> Ubuntu hides all of the inner workings from me.

This magic is all hidden in the desktop install of ubuntu. If you don't want or need
that, then don't install it.

> When I sit down in front of a server I'm concerned with running the
> server.

Yes. However, it sounds a lot like you installed the _desktop_ version
on said server and not ubuntus server counterpart. If so, why would you
expect it do behave any different from your laptop?

> And that's why Ubuntu's Windows-like nature is driving me nuts on the
> household file server. Some day Real Soon Now, I'll pull all the data
> off that machine, blow it away, and rebuild it as a Slackware box.

Try this first:

Pop the ubuntu install cd into the server, and type "server" on the grub prompt.
Examine your options by browsing the startup docs available on the function keys.

This would give you a lean linux server installation. No bells and whistles, but total
control. Then "apt-get -u install" any servers you want running, and control them by
editing files in vi/whatever.

Geir Helland

Mar. 13th, 2006 07:57 pm (UTC)
Re: Ubuntu as a server
His complaint refers to the System V vs. the BSD style init script system, rather than the bells and whistles of the system. Slackware uses the much simpler BSD system.

I'd have to agree with the author here about that.
Re: Ubuntu as a server - (Anonymous) - Mar. 13th, 2006 11:59 pm (UTC) - Expand
Re: Ubuntu as a server - elitegrunt - Mar. 13th, 2006 08:05 pm (UTC) - Expand
Re: Ubuntu as a server - netcurmudgeon - Mar. 14th, 2006 02:59 am (UTC) - Expand
Mar. 13th, 2006 07:30 pm (UTC)
Efficiency vs. Consistency
In "Tog on Interface" (1985ish) Bruce Tognazini points out that not while using keyboard shortcuts may seem to the user to be more "efficient" the cognitive load causes the user to -- literally -- lose track of the time spent retrieving them. The reason the Mac UI was designed with a restricted number of keyboard shortcuts is that -- except for very frequently used commands -- it's actually faster to use a mouse than remember the keyboard shortcut and use it. Putting in keyboard shortcuts for everything would allow power users to memorise huge numbers of combinations, but actually make them less efficient. (Witness how quickly you can precisely select a bunch of text with a mouse on a Mac versus with elite keyboard skills in vi.)

You can argue that it's wrong for Apple to decide what commands should have keyboard shortcuts but it's a design decision, just as making the volume knob easy to use and burying obscure surround sound settings in a menu on a stereo amplifier is a design decision. There will always be folks who prefer using a soldering iron to change their stereo's settings, or want every feature accessible directly via its own unique button, but that's not what most people want or need.

Another point worth making is that the error rate for complex keyboard shortcuts is very high. A messed up set of keystrokes -- if detected -- adds up to lost time or -- if missed -- leads to data loss/corruption every bit as bad as a bug in database code or the file system. Once you treat usability as being just as important as correct programming (the absence of either leads to crashes and data loss) your perspective changes. Or ought to.
Mar. 13th, 2006 07:56 pm (UTC)
Re: Efficiency vs. Consistency
The flip side of this is that if you know exactly what you want, looking for it in the GUI is also time consuming. I guess this works more for things like files that for specific actions in a program. But consider: in windows, if you want to start some program, you click on the start menu, look through the start menu for the appropriate submenu, etc. If you want to open a file, same thing, point and click hunting. But on linux, if you know what it is you're looking for you just type in its name, and there it is. No looking, no effort. That's the power of names.
That's also why the new GNOME file selector anoys me so much: there's nowhere you can just type in the name of the file, if you know exactly where it is. The old one also let you type in a path and hit tab, and it would go to that path. The best of both worlds: go directly as far as you can, and then browse the bits you can't remember. But always having to browse is annoying.
Re: Efficiency vs. Consistency - (Anonymous) - Mar. 13th, 2006 09:05 pm (UTC) - Expand
Re: Efficiency vs. Consistency - (Anonymous) - Mar. 14th, 2006 12:26 am (UTC) - Expand
Re: Efficiency vs. Consistency - (Anonymous) - Mar. 14th, 2006 01:07 am (UTC) - Expand
Re: Efficiency vs. Consistency - (Anonymous) - Mar. 13th, 2006 10:48 pm (UTC) - Expand
Mar. 13th, 2006 07:50 pm (UTC)
When my GF wanted to try Linux, Ubuntu was the first distro I suggested for her, and I was very happy that it set everything up for her.

The point of the Vi example, and of Linux != Windows as a whole, was never that Linux is better or more efficient than Windows. Just that there's a radical difference between it not being what you're used to, and it not being good at its job.

Kind regards

Dominic Humphries (http://geekblog.oneandoneis2.org/)
Mar. 13th, 2006 08:19 pm (UTC)
Re: Actually...
In the late Jef Raskin's "The Humane Interface", he notes that the oft cited Tognazini report where keyboard shortcut users were slower but believed they were faster than mouse users should of course be taken with a grain of salt. The software in the tests was designed to be used graphically with a mouse. Then keyboard shortcuts were thrown on top of that. Raskin states that a GUI system designed for keyboard use like his Canon Cat or his more recent Archy (formerly The Humane Environment), using a command based interface, was faster than the mouse interface.

I've seen the Tog report bandied about quite often. I really should get to reading it as I expect that, like myself, most people have not actually read it. Its acceptance as gospel truth is very similar to the fiction of the "7 plus or minus 2 rule". The actual report merely concludes that the human short term memory can hold about seven random and disconnected items at once. This has been mistakenly applied to all sorts of areas such as PowerPoint presentations and billboard laws where the information being presented is neither random nor disconnected nor even expected to be memorized verbatim. The PowerPoint 666 rule (6 bullets per slide, 6 words per bullet, forgot the third 6) results in presentations on the level of a child's book "see spot run" when people are clearly capable of understanding information far more dense. As E. Tufte questions, should the phone book follow the 666 rule?

Ok, that's getting a bit off topic, but the point is that conclusions from studies are often mistaken and applied to areas where they are not relevant.
Re: Actually... - (Anonymous) - Mar. 13th, 2006 08:21 pm (UTC) - Expand
Re: Actually... - (Anonymous) - Mar. 13th, 2006 10:37 pm (UTC) - Expand
Re: Actually... - netcurmudgeon - Mar. 14th, 2006 03:15 am (UTC) - Expand
Re: Actually... - (Anonymous) - Mar. 14th, 2006 09:27 am (UTC) - Expand
Re: Actually... - netcurmudgeon - Mar. 14th, 2006 11:19 am (UTC) - Expand
Mar. 13th, 2006 08:29 pm (UTC)
The beauty of choice
Linux is all of these things - the quick text editor for the server user, the desktop system for the multimedia/productivity user, and everywhere inbetween. the reason there are so many variations of Linux is only party because it's what the author of that distro wanted, but rather it's what the Open_Source_Community wants. a print server that sits in the corner and runs for 5 years without maintenance or a desktop/laptop that sees 8-5 usage. but the fault of linux is not the distros being created in one image or another - use the right tool for the job - it's that underneath it all, Ubuntu or Slack or my personal fave SuSe, it's still Linux. which means that by using Open Source software, you're freeing yourself. there are many Linux users who are not contributors to the community, there are many who aren't even technical people, nor are they interested in giving back; the community didn't used to care whether or not you were willing to contribute, although remaining optimistically hopeful.

you mention that users do not want to get into the guts of their computers, how then do they have access to Linux? not everyone is blessed/cursed enough to have a geek as a friend, and no matter where you buy your computer you have_to_know what you're doing in order to get one without an OS, if it's even an option. you then have to install Linux yourself, and from there have to configure it to your liking. Windows is not in any means complete out of the box - you need to install Office, AIM, usually codecs for multimedia, and anything else you would use. the difference is that users will install software if it means that's the only way they're able to use it, but will not install an OS knowing that their new computer will ship with one. the Ubuntu users who sit in the Windows camp need persuasion, although not much, to leave windows. they need a computer that comes ready to use with an OS on it. Dell offers 3 workstation choices, Wintergreen systems (TigerDirect) offers two underpowered desktop systems. there is nothing for the user who has the normal computer buyer's budget.

the Ubuntu user is not the Slackware user, although both are Linux. your assesment is 100% correct, and i agree with every general point you've made.
Mar. 14th, 2006 03:07 am (UTC)
Re: The beauty of choice
One the the real pieces of enlightenment for me was realizing that, depending on the role, I was both a Slack user and an Ubuntu user. ...That my own conception of 'one size should fit all of my needs' was wrong.
Mar. 13th, 2006 08:35 pm (UTC)
Matching the UI
Surely what we are looking for is diversity based upon interoperability. Not all applications and (by inference) not all operating systems need the same user interface – some benefit from a graphical user interface and others need something else (preferably not the hideous Linux command line but something with that flexibility certainly).

Users at all levels and users of all systems need effective software tools matched to the task in hand and not to some interface philosophy. Having said that we also have to strive for something that is in some way intuitive and that allows different objects (document types or what ever) to work in harmony.

There is much to be done in this respect.
Mar. 13th, 2006 09:01 pm (UTC)
I agree... mostly
I agree with most of what you have to say and I believe that it's reflected in the steadfast refusal to use anything but FreeBSD for servers. Furthermore, I feel that it's reflected in the fact that I droll every time I see a Macintosh. While I would agree that Microsoft does consistancy much better than Linux does I have to say that sometimes they do things consistantly wrong.

The part of Petreley's argument which resonated for me was the slavish devotion to the idea that Microsoft has gotten the GUI right. I don't think that they have. In many places I think that they are much closer than Linux is . But Linux isn't encumbered with an inflexible entrenched user base that expects the perpetuation of broken UI metaphors. I think that Petreley's rant was also about the fact that no one is exploring those things in the UI that MS does wrong. A small example of these things is the UI assumption that you have to use the mouse for everything. UI designers shouldn't annoy touch typists by requiring them to take their fingers off of the home row because then the touch typists have to refind the home row to resume their train of thought. One of the larger ones is the entire File->Save metaphor which was designed at the time of the floppy disk so it was reasonable to assume that saving the file would break up workflow. The net result of this is that I have to teach my 65 year old mother how the filesystem and man memory work on a computer so that she can write a letter. Yet we have multiple Ghz dual core processors which could spawn a thread and periodically save the document that she's working 99% of the time without her needing to know the difference between the copy of the letter in main memory and the one that she picked up off of the hard drive at the start of her editing session.
Mar. 13th, 2006 09:50 pm (UTC)
Re: I agree... mostly
umm... Ctrl-S?
Re: I agree... mostly - (Anonymous) - Mar. 13th, 2006 10:03 pm (UTC) - Expand
Re: I agree... mostly - (Anonymous) - Mar. 13th, 2006 10:06 pm (UTC) - Expand
Re: I agree... mostly - (Anonymous) - Mar. 13th, 2006 10:40 pm (UTC) - Expand
Re: I agree... mostly - (Anonymous) - Mar. 13th, 2006 11:08 pm (UTC) - Expand
Re: I agree... mostly - (Anonymous) - Mar. 14th, 2006 12:57 pm (UTC) - Expand
Re: I agree... mostly - (Anonymous) - Mar. 13th, 2006 10:40 pm (UTC) - Expand
Mar. 13th, 2006 10:02 pm (UTC)
Very well said
I work as an interaction designer doing software usability. Your article touched on a lot of key concepts that some people just don't understand. Very nice read.
Mar. 13th, 2006 10:22 pm (UTC)
The article says, "not all users can afford a commercial operating system and the commercial application software" I have the impression the pricing is mostly artificial. That is it is not the effort to develop the OS or applications that determine the price. It is more an image thing.
Mar. 13th, 2006 10:26 pm (UTC)
The "be like a hacker or get lost" guys need to lighten up and remember that Open Source makes for a big table with room enough for all of us.

this is so damn true.
Why do you guys ubuntu zealots are speaking about how to get ubuntu to be a server ffs ubuntu and his forks were never created to be server unices they were created to be desktop OS'es and thats where they perform well. On the server market you need a stable OS like debian stable or yes my favorite slackware stable ... Going through config files is easy for admins because normally servers do not run X so they cannot use X apps ! I hate when this happens this is a good review but some ppl will feel hurt and go flaming
Mar. 13th, 2006 10:47 pm (UTC)
Documentary heritage (Linux now appeals to multiple market segments, and that's a great thing!)

Linux is a great OS for people who want to get to know their computers. It is also a great OS for people who just want to get things done. People "just using" their Linux box are in fact contributing something, even if they never contribute code or documentation or anything the rest of us see.

They are contributing numbers and support. And numbers and support are more important than most people have yet realized, IMHO.

I made (well, am making) the switch to Linux because I am tired of others owning my data (e.g., MS 0wnz my email since only their application can access it for me). The more I think about this, the more I believe that open, unencumbered, and standardized data formats and protocols are vital to our future documentary heritage.

Unfortunately vendors of proprietary operating systems and applications will likely always break standards - and certainly will do so behind closed doors - in an effort to gain every single bit of competitive advantage they can. And that threatens our future documentary heritage.

We are moving, slowly slowly slowly, to an electronic world. We must conserve and protect that documentary heritage now before it becomes endangered. Open source is a great enabler - perhaps a necessary enabler - of this conservation.

The more people we get "just living" on open source systems, the more people who will be "just using" open and standardized systems (as we get them built and out there). And the more people there will be thinking about these issues, thinking about the viability of open source and wondering why they ever considered paying a vendor to hold their data hostage.

Users who are "just users" make open source spread into and beyond the mainstream. And that's where we need it to be to protect our own data and our documentary heritage.

One day, we will wonder how we ever let vendors control our information. That day cannot come, IMHO, until we no longer depend upon them. That takes many, many, many "just users" consuming and loving what a few thousand motivated developers and writers and testers and project managers have done, even if they never actually think about them or make contributions in the expected or desired way.

Page 1 of 2
<<[1] [2] >>
( 49 comments — Leave a comment )

Latest Month

January 2017


Powered by LiveJournal.com
Designed by Lilia Ahner