Monday, March 19, 2012

Keyboards and accesible technology

Of all the pieces of high technology I interact with, I interact with the keyboard the most. If I didn't have to, I wouldn't be using a mouse-- my hands have memorized most of all the shortcuts I'll ever need to know for Windows, Ubuntu and the Mac... not to mention shortcuts for all sorts of applications; the mouse, actually slows me down.

Then I've realized, out of all the hardware I've used, the one piece that hasn't improved at the breakneck speed of technology is the lowly keyboard. Computers crunch numbers faster than ever and after we've hit the mhz barrier, we've promptly started adding more cores to our CPUs, I have no idea what is next after that. Monitors have gotten bigger and so have hard drives. Despite all the money being thrown to making our hardware go faster, our systems are still input limited. Humans, interacting with their machines is the the biggest bottleneck.

I've always found it funny, coming from a semiconductor background, seeing the billions of dollars and the extreme high tech being used in the field to make ever finer patterns and faster circuits. It is no easy feat, I know for sure, but yet we march on to create cities of circuits on the equivalent of a pin head.

Technological breakthrough is really about solving important problems. There are infinitely many hard problems in the world, but what are the most important? I suggest, if you have time to read the writings of R. W. Hamming, especially that of his essay, you and your research. There are few writers in the world that I enjoy reading, Hamming is one of them. I would recommend reading Hamming's book The Art of Doing Science and Engineering: Learning How to Learn because he presents many important and interesting ideas, especially one about finding important problems to work on and the second which I like is to act with a sense of direction, because the furthest you will ever go on a random walk is approximately equal to the square root of all steps you've ever taken. Such is the difference of excellence and mediocrity.

When it comes to important problems, I really do think it is a matter of making technology accessible to people. There are too few people that truly understand how to harness the power of technology. With a few thousand dollars and a couple of computers, I can easily crush my competition at crunching data. The same goes for putting simple robots together and automating repetitious tasks. People that know how to command technology, have a force multiplier advantage. Literally, they can have the power of an army of brains at their command. Unfortunately, for those that are unequipped with these skills, they are defenseless.

It has been thought that technology would be a great equalizer, unfortunately this isn't the case. The more correct saying is that technology is a great enabler for those that understand how to wield it, yet too few understand how to do so. As I push further to look for better input mechanisms to write programs better, I come to realize that I am fighting the input bottleneck barrier harder and harder. Am I look for great frameworks? Am I looking for a great text editor? What more is there that would allow me to interface more naturally to the guts of a program I wonder? I imagined using voice command to like Apple's Siri to write programs and then it struck me, they're on to something with human computer interaction, but they're not quite there yet, but I can see the direction where things could be going.

Technology needs to be more accessible; companies that understand this and know how to empower their users will eventually become as profitable as Apple.

No comments: