Linux Today: Linux News On Internet Time.
Search Linux Today
search.internet.com
Linux News Sections:  Blog -  Developer -  High Performance -  Infrastructure -  IT Management -  Security -  Storage -
Linux Today Blog
Linux Today Navigation
LT Home
Preferences
Contribute
Link to Us
Search
Linux Jobs

Marketplace Partners

internet.commerce
Be a Commerce Partner

The Linux Channel at internet.com
Linux Today
Enterprise Linux Today
Apache Today
JustLinux.com
Linux Planet
PHPBuilder
All Linux Devices
Technology Jobs

Linux Jobs

linuxtoday Newsletters
Subscribe News
Subscribe PR
Subscribe Security
Subscribe Jobs

internet.com / blogs

internet.com
IT
Developer
Internet News
Small Business
Personal Technology

Search internet.com
Advertise
Corporate Info
Newsletters
Tech Jobs
E-mail Offers
searchcats.jpg

February 2011
Sun Mon Tue Wed Thu Fri Sat
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28          

I Just Want Something to Happen When I Click

| | Comments (17) | TrackBacks (0)
In the olden days of personal computing, we were on a continual hardware upgrade path seeking better performance. Now our low-end PCs would have been supercomputers ten years ago, and they're still bogging down. Is there no end in sight?

My first PC was a borrowed Macintosh LC II, way back in the last millennium in 1994. It was fun to play with, it came with a laser printer, and that's about all I remember. The first PC I ever bought was a used Tandy running Windows 3.1 and MS-DOS. It had a 386 CPU, four, count 'em, four megabytes of RAM, and a gigantic 107 megabyte hard disk. It came with a 13" color CRT monitor at 256 colors, remember those nice blocky pixels? Paid $400 for that outfit, and it cost almost $2000 new. Those were the days.

That old Tandy ran a lot of applications just fine, like Doom, Quicken, and ProComm Plus, which I used to manage BBS-surfing, and some ancient Borland compiler I forget now. (I do recall it was bleeding-edge because it supported both 16- and 32-bit programming.) But that was due to running mainly in MS-DOS and not even starting Windows, which was a steaming pile of instability. It was stapled on top of DOS, and not very securely, and just like its descendants Vista and Windows 7, needed much horsepower just to get out of its own way. (Isn't it funny how Windows 7 has the same system requirements as Vista, and performs about the same, but is touted as "leaner and faster!"?)

As the years went by, hardware advanced rapidly. Power went up, prices came down. But software was always a bit ahead, so we spent a fair bit of time waiting for something to happen even on the latest and greatest machines.

Fast-forward to now, and a quick specs comparison: My newest PC has 4 gigabytes RAM, dual-core CPU, terabytes of hard drive storage, good PCIe graphics card, and onboard everything. It should handle all tasks with ease. And yet, I still experience that familiar click-and-wait syndrome.

This happens the most Web-surfing. It's still the world-wide-wait. Click, wait. Click, wait. You know why Facebook, Twitter, and all the rest of those fun sites that bosses hate are so successful? Because people have to fill all that waiting time somehow. They're just sitting there, waiting on their computers. It's not enough time to do something productive, but it is enough time to Tweet.

I swear there are only six Web developers in the whole world, and four of them are mental cases. They write terrible, unnecessarily script-heavy pages that kick multi-core CPUs into the red zone, and have hundreds of elements per page. Pages take forever to load, and they hammer your system so hard you can't do anything else while you're waiting. Then all the rest of the Web devs in the world copy and paste from the Terrible Four. Why not the Good Two? Because humans are perverse. I laugh, I mock Google DNS because they bill it as a way to speed up Web surfing. My dear Google brainiacs, DNS lookups are the least of our problems. They won't do a thing to fix boggy Web pages or overloaded ad servers.

I think it's funny how some vendors persist in marketing netbooks as mere Web application interfaces. Sorry, but a lower-powered netbook is going to get creamed trying to run obese Web applications. Lotsa luck with that!

Some local applications are almost as bad. Click to open, wait...what the heck is the big deal about just opening the darned thing? Are they trying to hypnotize us with the little spinning cursor? Which brings me to my #1 wish on any computing platform and any application: I want a Stop Right Now button. Boom, just stop what you're doing. For so many apps, interrupting anything is like trying to get a word in on an annoying self-centered blabbermouth, the kind that never shut up, and you have to grab and shake them to get their attention.

While I enjoy mocking Microsoft's Jabba-ware, Linux is an offender as well. Too many Linux devs are all jazzed about GUIs and flashy junk, and ignoring or even trying to do away with the CLI. Dear ones, when your GUIs are as fast and efficient as the CLI, then I will quit crabbing at you. Where ever did you get the idea that I want to waste my life wading through poorly-organized menus, and waiting for lardy slow-ware to actually do something when I click, when I can accomplish the same task in one second on the command line?

So there is my computing wish for the new decade: I want something to happen when I click.


0 TrackBacks

Listed below are links to blogs that reference this entry: I Just Want Something to Happen When I Click.

TrackBack URL for this entry: https://swarm.internet.com/mt-tb.cgi/9471


17 Comments

John Helms said:

While there is some truth to what you say in the Linux world, what you are describing fits the Windows world to a tee!

A few years ago I worked in an IT department at a local clinic. I had migrated their medical scheduling software to a single Linux server the specs of which I have forgotten. The medical software ran a term based software that was very "DOS" like.
I used to sit and watch the users handling patients in reception and was always amazed how incredibly fast they could fly through the scheduling screens using only a keyboard.
Unfortunately, the powers that were decided the clinic had to "upgrade" due to HIPAA compliance requirements. I asked if it were possible to have the existing Linux based server and software upgraded to be compliant. Yes, it was. For an additional $50,000 dollars an upgrade was available...but...those powers that were had themselves convinced that the clinic needed a GUI driven Windows based solution....so.
About 1 million dollars later we had a couple racks of servers to do the job the one Linux box used to do Rather than seeing users blazing their way through the checkin screens like they used to do we had incredibly long lines of waiting patients standing around while the employees found the appropriate GUI screen. Reached for their mouse. Clicked to another GUI based screen. Reached for their mouse....rinse and repeat.
That system apparently lasted about a year and a half before it was replaced with yet another ungodly expensive Windows based solution as well as a couple generations of Windows based workstations to keep up with the horsepower demands of these systems. By that time I had thrown up my hands in disgust and left.
Yes, there is something completely ass backwards in the area of software requirements and it is way more obviously an issue in the Windows world.


There are several things that are slowing us down. Fancy GUI's with organic looking windows stretching and wobbling over the screen, too heavy web pages (waiting mostly for the advertisements to load) and limited bandwidth. Compiz is cool at first, but increasingly annoying while waiting for an extra second or two for my terminal window to expand full screen when asked, or watching the cube rotate when switching between virtual desktops. It takes twice as long for OpenOffice to load with Compiz turned on, and while off it just snaps open.

It's apparent that programmers and web developers are not making the best use of the horsepower CPU, graphics and disk makers have fit into these small boxes. Wasting my bandwidth on a ridiculous video advertisement just hastens a click to another site. Adding GUI's to previously text based interfaces clearly slows users down. Quickly typing in selections and information, tabbing between fields, is replaced with search-move-point-click-select-type, search-move-point-click-select, and so on. Thankfully “green screens” and command prompts haven't disappeared despite the ever increasing attempts to replace everything with a mouse click.

OK, my age is showing, with my first 4.77Mhz 8088 clone computer. Squeezing out every little bit of extended and expanded memory for DOS, making noticeable improvements in speed. Then the pain of cooperative multi-tasking that Windows 3.1 brought us. Now the promise of cloud computing with the dependence of DSL speeds that 56kb modems could never aspire to. My netbook has local apps that don't depend on the nature of DSL or Wi-Fi, thank you very much. The hardware brought us there, too bad we got stuck in the software bog.


Rok said:

Hello Carla!
I have to agree with your blog article. The problem I think is mostly because quality and usability in software development "don't sell" :-(. A lot of theory on user-interface design just stays there in theory.
For example in OS/2 world where I was a decade ago we had strong multi-threaded and event handling in GUI design. You would be able to kill and application while it was loading/doing something in the background. But only good programmers could handle threaded programming. Most of the UNIX new-age programmers don't "do" threads, also becouse forking in UNIX is very efficient and much easier. Also POSIX threads API is a bit ugly.


Kevin said:

Have you tried any of the small linuxes? There are several that will load the entire operating system and all the installed applications into RAM at boot Dam Small Linux and Puppy Linux are the most famous, I think). This doesn't take as much RAM as one might imagine and any PC nowadays (thanks to all the bloated software that they normally need to run) has more than enough to deal with it.

OK, so they generally don't look quite as swish, and there might not be support for quite as much stuff, but they're easily good enough for pretty much everything that I need to do. And, honestly, I didn't know my computer could be this fast. I've used Puppy Linux for a while and it's amazing. You want to write something in a word processor? Click the icon and BANG! It's open and ready to go in the time it takes to get your hand from the mouse to the keyboard. The same is true with everything, open a terminal and start typing without really breaking your keystroke rhythm. Awesome.

Although I like to use Ubuntu and openSuse, with the flashy graphics and rich hareware support and feature lists. Sometimes Puppy is just better at getting things done FAST!


1369ic said:

I just went through a cycle of trying out and being very impressed by KDE4. I had installed an SSD on my dual-core Sony Vaio laptop and finally gotten what seemed to be a good driver setup for my intel graphics chip. So I played with KDE for several weeks, and it ran pretty well. But Fluxbox kept calling my name. I liked the KDE functionality well enough, but in the end it's still about the applications and the mouse clicks, not the transparent task bars and floating tool tips. The important things work better -- meaning more quickly -- in Fluxbox.

Too many people have bought into the hype that more is better, and degrade their application performance all the time so that the once or twice a day they do something else -- plug in a usb stick, whatever -- the machine pops up something for them, instead of them having to launch, say, Thunar. It's like a friend of mine who bought a big old SUV for a family of three because a couple of times a year family visits and they need that third row of seating. So they live with the inconvenience and expense of a giant vehicle for 350 days a year.

Companies have to give you something to upgrade to -- that third row of seating -- but FOSS doesn't. Fluxbox can tick along as it is without worrying about Wall Street's reaction to its bottom line. A very big reason to stick with Linux.


Ken Jennings said:

You want something to happen when you click? Sounds like you want an Amiga.


I agree with this article, but I usually summarize it like this:

"We've been automating the same set of tasks for the last 50 years, and every year we do it less and less efficiently."


Nairb said:

Computers suck. Go outside and meet your neighbors.


renoX said:

>You want something to happen when you click? Sounds like you want an Amiga.

But the original Amiga didn't have memory protection.. Which is a big NO in my book, think about an OS without memory protection connected to Internet?? *Not pretty* as soon as it becomes a little popular!

That said, it's possible to have a responsive system: BeOS applications were very responsive on Celeron333 + 128MB of RAM (with a GUI, the GUI isn't the issue, a good design is the issue) while Windows and Linux were slow and are still slow..

But Microsoft don't care about the responsiveness, Linux's distributions lack of focus on the desktop won't give an answer too and Haiku will stay in Beta for a loonng time (as expected when you suffer from a massive case of NIH and rebuild an OS from scratch instead of reusing *BSD or the Linux kernel): I think that your best hope is to buy a SSD, a multicore CPU and lots of RAM, the result should be bearable even if it's ridiculously slower than it ought to be..


KDE&Gnome Stapled on Top of Linux said:

My very first computer was a Timex with 1Kb RAM(The very first $100 computer). My second was a TRS 80 with 80kb($300?)running DOS/BASIC. My third was a Tandy with a 286 processor and 256kb of RAM($2,500 with a printer and a second 5 1/4" floppy drive) running Tandy's Desk-Mate software suite sitting on top of DOS.

Agree with you on the specific point that no matter how much horsepower we pack into our machines, that web designers will figure out how to bring them, groaning to their digital knees.

You say: "Windows was stapled on top of DOS"

That's really funny because that is nearly exactly how I describe Linux's current relationship to its GUI's to people who're interested. I even use Windows 3.1 as an example for those old enough to remember how it was then. Having to use the command-line and needing to manually editing configurations files (autoexec and config .sys)for most system/hardware/startup related tasks. Something Windows 95 changed dramatically when they fully integrated the GUI so that these system tasks could be performed from within the GUI (device manager and other graphical configuration tools).

When are Linux GUI's going to catch up with Windows 95, I wonder? Could it even be possible for all the various desktops to agree to a universal version(or even a similar one, functionally equivalent but based on their various available widget sets) of a graphical device manager? Doubtful. Hence, Linux GUI's will likely continue to be little more than thin veneers "stapled" on top of a Linux kernel just as was Windows 3.1's relationship to DOS, and suffer continued rejection from the masses as a direct result. All the desktop eye-candy in the world won't take care of that massive deficiency with the GNU-Linux GUI's. Until Linux finishes its GUI's it'll continue to be viewed as an archaic and overly complicated OS as compared to Windows.

Further, your incessant, boorish, elitist attitude regarding your preference for the command-line may fly well here, within the geek community, but the vast majority of end-users would just as well have you take your command-line cheerleader pom-poms and shove them where the sun don't shine. They want no part of it, and never will.

Frankly, Carla, I can understand the really young geeks trying to force-feed all this "the command-line is like the second coming" attitude on everyone, we can chalk that up to the hubris of their youth, but, like me (same age), you are far too old and experienced with dealing with people to seriously think that you will ever change the lions share of the masses attitude toward the cryptic drudgery of the command-line. That view is wholly unrealistic.....


Charles said:

At our community computer refurbishing we have a Vic 20 set up with a Donkey Kong cartridge. When we turn on the machine the software comes up instantly (really it takes about 1 second for the machine to turn on).

That technology was one of the reasons why I resisted PCs when I first heard about the XT and ATs. Eventually I did buy an XT, then skipped a generation to 386, 486, Pentium I, and so on.

Why don't we have more fast software? Because writing something like World of Warcraft entirely in Assembler would be difficult not to mention time consuming.

Incidentally, if you do want that "instant on" software feel for your PC you can try some of the Coreboot (LinuxBIOS) payloads. There are a couple of primitive game payloads (Tetris and space invaders I think) as well as a useful Memtest86+ payload.

I've seen a couple of articles like this in the past where authors have compared the speed of applications on older hardware with older operating systems and they inevitably almost always win out against newer operating systems plus applications. Software has just become extremely bloated (but more capable in many ways). Who would have thought we'd be doing high definition home movie editing on our own PCs at such a low cost?


Golodh said:

Well, to a large extent I agree with the article.

Websites often are too baroque and loaded with useless gimmicks in the name of advertisements and corporate styling. Responsiveness takes a backseat to flashiness.

What I miss however is a little balance when it comes to GUIs in applications.

First of, I acknowledge that a tabbed text-only entry-screen can be quite superior in working speed to a trained operator. And it often consumes far less resources,and can therefore run satisfactorily on much less powerful hardware.

However ... GUI-based applications in general are a definite improvement on command-line based applications. If for no other reason than that GUI applications are much more self-documenting than command-line applications and can usually be used without a manual.

The main advantage is that you don't have some syntax that you need to memorize and in which you can make typing mistakes (with varying degrees of disastrousness). Command-line driven applications however are a must when something needs to be automated.

This is the real secret behind the immense popularity of Apple and MS Windows operating systems (still more than 90% marketshare for MS WIndows). People who don't use an application on an hourly basis simply want applications that prompt them instead of requiring them to enter commands. GUI's do tend to look neater and tidier than text-based tab-operated entry screens, even if the latter are much quicker. And most PC users don't do much data-entry and don't need to automate their work, so they don't want command-line stuff either.

So: good article, but don't trash GUIs in general. They are there end-user software for excellent reasons, even if sometimes text-based or even command-line driven apps would make more sense.


Stephen said:

Oh, I love and agree with this post so much I had to say so :)


Niki Kovacs said:

"At our community computer refurbishing we have a Vic 20 set up with a Donkey Kong cartridge. When we turn on the machine the software comes up instantly (really it takes about 1 second for the machine to turn on)."

I have a wooden abacus my father brought me from a trip to Moscow in the seventies. The thing can do additions and subtractions and boots up in less than a second :o)


Richard Chapman said:

@ Carla
Although not quite a STOP! button, if you use KDE ctrl+alt+esc will turn your cursor into a scull and cross bones. The next thing you click on will disappear instantly (so be careful *not* to click over a barren spot on your desktop).

Unfortunately it doesn't work on Trolls. They seem to think GNU/Linux is worthless yet they persist in spending time and effort writing about it. If you believe its worthless and end-users "want no part of it, and never will", KDE&Gnome_Stapled_on_Top_of_Linux, then you have proved yourself to be an idiot. We already know that but just FYI.


homer said:

Optimisation is all that is missing these days. There's two simple reasons for that.

1. Time to market and
2. Closed hardware.

That's the only reason computers are slow. There is simple no incentive to optimise code anymore. Windows is the cause of that deficiency. When MS opened the hardware market to anyone willing to design hardware and provided the example of closed "it's mine" marketing they instantly shut the door on optimised code. Instead it's generic libraries supporting generic functionality, all lowest common denominator. "Just though a faster CPU in, or get more ram", the Windows way. Then they turned around when that didn't work in some areas and tried to fix it with things like DirectX, closer to the hardware but ultimately only so close as to maintain the yearly gfx card upgrade cycle.

The simple fact is that while no-one knows the inner workings of the hardware the software cannot be made efficiently. The person above that said it would not be possible to write World of Warcraft in assembly is mistaken. If the libraries, tools and necessary components are already optimised in assembly then it would be no different to writing it in a high level API. Where it all went wrong was when people starting discarding great software libraries for quick and nasty money making api's. When we discarded the optimised assembly for Visual Basic is when it all went to hell. When programmers were trained by MSFT it all went to hell. The sheer size of the hardware market that makes it cheap for us to compute, is also the reason our computing is substandard. That includes Linux. The only people close to optimising code for specific hardware is OSX, but they too don't optimise as they could. It's too expensive and no one places any emphasis on it.

That supposed great 90% desktop market share is made up of people that were taught to accept sub standard performance as the norm. They don't know it can be different, and until they demand it to be different, it won't be. Only the abortion that was Vista was enough of a performance hit to ruffle the feathers of the eternally tolerant. The vast majority of people don't like Windows because of it's instability and speed, they use it, but no-one likes it. For the other 10% EVERY version of Windows has been comparatively too slow, too unstable and too unsafe to use. That's why people push Linux. To that 10% it represents the only opportunity to show the other 90% how it should be. Sadly Linux is starting to become less optimal as well. I blame this on the variety of programming languages now available. Had we stuck to C we'd be better off. Problem is it's too hard to find a lot of good C programmers compared to a lot of bad python programmers, and that Windows mentality of simple api's, simple languages, is pervasive here as well. Object Oriented programming is possibly the worst thing that ever happened to computing.

There is a place for GUI programs and a place for fast text based UI's, that isn't what this is about. It's the fundamentals that are wrong, both should be instantaneous and the goal of computing should have always remained on speed and efficiency as it did in the 8 bit days. But a market that doesn't demand it will never see it and unfortunately the market is full of people who know no better.



A passer-by said:

I don't really see what you're seeing. For me, things work in a snappy fashion.

Have you forgotten time when you didn't need to use |more when getting directory listing, because the listing was so slow you could read it as it was printed?

Have you forgotten how ugly screen fonts looked like without smoothing?

Have you forgotten the tiny, ugly, indexed-color images of era before jpegs, and in the early days of WWW? Or the incredible slowness of decoding the first jpeg images?

Have you forgotten time when you didn't even have enough memory to just load a truecolor image of HD resolution (approximation of current display resolutions), let alone do something to that image in real time?

Now scroll this page up and down with mouse (preferably with "free wheel", but scroll bar is good enough) as fast as you can, and observe the smoothness. Then ponder the sheer amount of text and images that get rendered (or more likely the sheer amount of cached already rendered bitmap bytes copied) when you scroll. Now put another window partially on top of the browser window (Task Manager in Windows for example) and scroll again, and observe that it still scrolls smoothly, even with rounded window corners and semi-transparent title bar and stuff updating in thtat overlapping window. Have you forgotten time when anything like this would have been pure fantasy? Then note that most of the stuff you're seeing in the browser is actually controlled by an interpreted language (which allows all kinds of fancy things like browser extensions).

And here I have a laptop with single-core Celeron, and an on-board Intel video adapter, and 2GB of memory with Vista, and the slowest possible 3G cellular data connection (40KB/s or so). Imagine more cores, more memory, better video adapter, non-Vista, DSL, and it should only be better.

So what on earth are you talking about?



Leave a comment








All times are recorded in UTC.
Linux is a trademark of Linus Torvalds.
Powered by Linux, Apache and PHP