Welcome to the QA Tech-Tips blog!

Some see things as they are, and ask "Why?"   I dream things that never were, and ask "Why Not".  
Robert F. Kennedy

“Impossible” is only found in the dictionary of a fool.  
Old Chinese Proverb

Tuesday, February 22, 2011

The Only Feature Linux Needs
Concepts in usability

A few days ago while searching for something else, I found an interesting article about Ubuntu in general, and the 10.04 release in particular, which you can find right here.

Actually, to be perfectly honest with you, this guy has a rather extensive web site, (located here ), that I found most interesting.  This gentleman has a rather broad range of interests and opinions - and you could do far worse than exploring his site.

This particular article was titled: The Only Feature Ubuntu 10.04 Needs.  It was a discussion about what Canonical, (the enterprise supporting Ubuntu Linux), needed to do to make Ubuntu even better.

To make a long story even longer, (laughing!), I decided to toss my two centavos into the fray there.  And what a fray it was!

Apparently Tanner Helland, (the blog's author), touched a raw nerve with this article as there were more replies, covering a longer time-span, than any five articles I've seen just about anywhere else.

In reply to my posting, he sent a very interesting e-mail back to me:
My name is Tanner Helland (from www.tannerhelland.com).

First off, I apologize for contacting you via email. I almost never check email addresses used to submit comments to my site - but in this case, I felt it was okay to make an exception.
: )

I just wanted to let you know that your comment comparing Linux to appliances, tools, and toys was absolutely spot-on. Excellent assessment. Frankly, your comment was so good that I think it deserves an article of its own.

I see that you run your own blog - if you haven't already, might I suggest posting your comparison there? I worry that it won't get enough attention on my site's comment thread (there are a LOT of comments on that article...).

At any rate, excellent insight - thanks for sharing.
Ahhh!  Wonderful e-mail, except that I'm getting a sore shoulder from patting myself on the back. (grin!)

Re-reading the article convinced me that maybe he was right, so here it is.  Feel free to comment as you see fit.

This post is remarkably “after the fact” but I’ll put in my two kopecks.

First of all, I will say that I heartily endorse the basic premise of this thread – that, ideally, Ubuntu (or any other distro for that matter), should work “out of the box” without a herculean effort to get things to work with it.

My own basic premise about computers and the “mass market” is that they should become an “appliance” Like your toaster, microwave, or whatever; you should be able to turn them on, use them, and turn them off again without having to even think about the internals.

The problem with this premise is that computers are, by definition, incredibly complex pieces of equipment. And, unfortunately, what people expect of their computers represents a very broad spectrum of possible uses. If your microwave was expected to meet such a disparate range of uses, it too would be as error-prone as computers are today.

I divide computer users up into three very broad categories:
  • Those that want computers to be an appliance.
  • Those that use the computer as a tool.
  • Those that use the computer as a “toy”.
The appliance users want exactly that. You turn it on, click on a few icons, it does certain things, and you’re finished with it.

The tool users understand that – as a tool – the computer will have it’s moments. Everyone who has used any tool more complicated than a hammer is used to having to change the bit or blade now and then to fit the task at hand, They understand that, sometimes, the bit or blade breaks and that’s that. And, occasionally, they pick up a bit or blade that doesn’t fit the chuck or mandrel of their tool and they need to either adapt it some way, or get a different tool for that task.

However, the tool users don’t care if the motor has brushes, is a synchronous AC motor, or is a variable speed DC motor using pulse-width, (duty cycling), as a way to control the motor’s speed. They want to be able to chuck-up the right bit and get to work. In essence they want it to be an appliance, but one that is more powerful and configurable in exchange for increased risk.

The “toy” users are the ones who really want to “get under the hood” as it were – the 21st century equivalent of the ’60′s motor-heads who spent most of their time, and darn near all their pay, tinkering with their car to make it the baddest machine on the strip.

These are the ones who want to experiment with different things, perhaps they do some coding or engage in test cycles. Or they get on blogs like this one and relate how things occurred to them.

Windows – of whatever version – is primarily targeted to the first and second type of users. It’s like a ‘fridge. You can’t adapt it very well without using expensive tools that most people cannot afford or do not know how to use.

Linux, on the other hand, is trying to embrace the entire spectrum of user models ranging from the appliance users to the users that like to tinker with it and get their hands dirty.

And, I believe that this is a good thing. It’s kind-of like brainstorming, it appears chaotic but eventually becomes something really useful.

IMHO, were I Canonical, I would strive to meet these ideals by doing certain things:
  • Make the x.0 releases benchmark releases that focus on long-term stability at the expense of new whiz-bang features.  (These releases would be of primary use to those in the first two categories.)
  • Make the x.1 releases the more “experimental” releases where new features are introduced, (after, hopefully, enough beta time to make them reasonably usable).
  • Periodically release a “stop-and-catch-our-breath” x.0 release – one which is not about new features at all, but about polishing up the stuff they already have.
I would make similar suggestions about the repository organization. It is frightening to go into a “common” repository and see packages that have warnings saying that it can, and will, casually destroy your system unless you are used to Category-5 clean-room practices.

For each of the broad categories of repositories, I would divide them up into three sections:
  • Those packages that are virtually harmless – the standard utilities that people – even the appliance users – might need. Word processing, web browsing, e-mail, things like Skype (or an equivalent Open Source app), and so on. If you *REALLY* wanted to bork your box with one of these, you could, but you’d really have to work at it.
  • The packages that are more specific to a particular task and might carry an increased risk of danger – like a buzz-saw carries an increased risk – but if intelligently used won’t hurt you. These would be the more “tool” like packages. Virtually all of the system-administration packages would fall into this category. With these there is a risk, and if the tool is used carelessly, it will hurt you, possibly badly. These tools can bork-up your box rather nastily if you are careless, but you’d have to be pretty damn careless to do it.
  • The very specialized packages that are for a very particular need – or are possibly experimental releases carrying a vastly increased risk if not used very carefully – like a power-driver that uses .22 or .30 caliber loads to fire pins through solid steel or heavy concrete. These packages would be the kind that, if you really don’t know what you’re doing, you shouldn’t be here. These would be potentially powerful tools that, unless used *VERY CAREFULLY* and with a certain amount of forethought, will almost certainly bork your box.
But, by the very same token, the “appliance” level user should have trouble even finding these packages.

The tool and toy users would have, perhaps, a little less difficulty finding them. And anyone going into that section of the repository would be warned that – unless carefully used – these tools *will* cause harm.

Right now, it is much too easy for an inexperienced user to – not knowing any better – download the .30-0-6 (magnum load) tool by mistake and end up with a box borked beyond any reasonable attempt at repair.

The big issue with Linux, and why it generates so much controversy, is because of what it is, and the very broad spectrum of users that it tries to embrace without fault or favor.

Windows can be sharply focused to a particular end, whereas Linux, almost by definition, cannot be. And that creates issues and responsibilities that Linux will just have to face.

What say ye?


Sunday, February 6, 2011

The Sky is Falling! The Sky is Falling!

Today's post was inspired by the paranoia some people have about computers and the information they send.

The basic thrust of today's posting is this:

Unless you happen to be the Department of Defense, a Multi-National Bank with zillions of dollars in assets, or a company of some note that might be a target for Industrial Espionage, the chances of anyone giving a hoot about you, or your information, are slim to none.

Of course, you do need to take sensible precautions.  You would not go to the local super-mall, and leave your car unlocked; you lock your house when you leave and you don't leave expensive and valuable items just laying around to tempt fate.

To put this in perspective, if someone REALLY wants your butt, they're going to have it, no matter what you do.

In other words, if determined people can hack into sites like the Department of Defense, Citibank, or the New York Times - with their multi-layered defenses - there's not much you can do to make your computer more secure than that.

The other side of that statement is this:
These are high profile targets.  Hackers get a lot of "street-cred" by being able to hack a secure installation.  Crooks can use this to transfer millions of dollars to numbered off-shore bank accounts, or steal sensitive military secrets.

Think about it.  How much respect is a hacker going to get by saying "Oooh! I just hacked Mrs. Johnson's Linksys router!!"  It's virtually a lead-pipe cinch that Mrs. Johnson doesn't have millions of dollars laying around to wire to an off-shore bank either.  So, by and large, the hackers and script-kiddies really could care less about you.

What you should do is take reasonable and sane precautions, the same as you'd do with your home or car.
  • You don't connect a computer DIRECTLY to the Internet without a hardware firewall between you and it.
  • You don't send potentially sensitive information such as passwords, SSN's, credit card numbers, etc. in clear-text.  If you absolutely MUST send sensitive information by e-mail, you can exchange public keys with the recipient and send encrypted mail.
  • You make sure any wireless routers you have use strong encryption and a strong passphrase.
  • You make sure your computer is up-to-date with the latest security updates.
  • If you have a laptop, and you use it in public places, you make sure you have a good software firewall installed.
  • And you make sure your anti-virus and anti-slimeware software automatically update themselves so they remain up-to-date..
If you are the typical  computer user, this should be enough and more than enough to keep you and your sensitive information safe.

Remember; you need to view all these recommendations as just that, recommendations and you should apply them to your specific situation.

You don't have wireless?  Then that part doesn't apply to you.

You don't use public WiFi hotspots?  Then you don't have to worry about a rogue hotspot trashing your computer.

Just like the automobile advertisements say - Your Mileage May Vary.  Adopt what you need to adopt and don't worry about the rest.

If you really want a belt-and-suspenders security plan, you don't store sensitive information, (such as electronic copies of your tax returns), on your local computer - you write them to disk and file them away.

Of course, there are other things you can do as well.  You can virus-check incoming e-mail.  You can check for attacks from rogue web-sites and you can check for suspected spyware.

Bottom line:  Take reasonable and sensible precautions.  Don't be stupid, but don't get hyper about every little thing either.

Above all, enjoy the technology that lets you see and talk to your darling kids/grandkids who are 8,000 miles away, in real time.

What say ye?