Designing the Future

Saturday, December 17, 2005

Update to "Antiquated Metaphors"

There is an article at The Tech Zone related to my previous Antiquated Metaphors post. There is also semi-intelligent discussion on Slashdot. The article spends a lot of time talking about how 3D might make more headway into the desktop interfaces. I can't say I'm convinced, but that might only be because I haven't seen a really good demonstration of how it will improve things yet. In any case, its a useful article for extending the discussion.

Tuesday, October 04, 2005

Education without teachers.

I've been reading a book called "The World Is Flat: A Brief History of the Twenty-First Century" by Thomas L. Friedman. For the most part, it talks about the effects of globalization and how, if properly managed, they are a good thing in the mid to long term (in the short term, a lot of people have some rough times, which is why it needs to be properly managed). However, he spends some time talking about the realities of the world, and some of the forces that could prevent the "flattening" of the world, one of which is the huge portion of the world's population that has either never been inside a classroom, or had to leave the classroom to help their family survive.

As Friedman relates in his book, one of the companies that has spent some effort to address situations like this is HP. They went to rural India and spoke to people in villages about what they would like to see in the next few years that would significantly improve their lives. One of the people HP brought was an artist, because many of the villagers were illiterate; seeing their ideas visualized helped the villagers develop their thoughts and encouraged them as well. One of the ideas that came out of these talks was a solar-powered digital photo cart. Apparently, the process of getting quality photos, which are needed for government IDs among other things, was laborious and slow, requiring at least two treks to the closest photo lab, and more if the first batch of photos didn't come out correctly. HPs solar powered carts charged a digital camera and a photo printer, and were light enough to be easily portable.

This story got me thinking. With all the software and low cost hardware out there today, what is stopping the production of a solar powered "classroom in a box"? Lets call it the eBox, because potentially good ideas should start of with really lame names, just in case the idea turns out to be lame too. The purpose of an eBox is not to give its user a high school education. Rather, its intended to give them the basics: reading, writing, 'rithmatic. Ideally, the solar panel would provide enough charge in, say, half a day, to run the eBox for at least two hours. Assuming users are all at least 15 (and the lower that age can be pushed while keeping the eBox effective over the widest range of users, the better), the eBox could start by making sure the person was able to read their native language. At some point, it would begin teaching them to write; I'm pretty sure that webcam or phone-camera type optics would provide a high-enough quality image for optical character recognition, and if the students writing can be recognized by the computer, it should be readable by a literate human as well. Finally, it would teach basic mathematics: addition, subtraction, multiplication, division, fractions, percentages, decimals, and maybe some geometry and algebra as well. The mathematics portion would have to be very practically oriented.

The eBox would need to be constructed cheaply (with a bulk sale price of between $50 and $250 US per box); the idea would be the company making it would have a small profit margin (or maybe would be a Non-Profit Organization?). It would need to be constructed ruggedly to survive rain, snow, being dropped, hit, and otherwise physically abused, and still be usable in temperature ranging from -5 C to 50 C. Expensive parts should be well protected by easily replaced (and very inexpensive) parts.

But the final goal would be to manufacture these boxes and sell them to developing or impoverished nations (or the charity organizations working there) so the adults who never had the opportunity to go to school and the children who can't afford to go, can still get enough of an education that they can begin to educate themselves. Once a person knows how to read, write, and do basic math, they can read more traditional books (of course, eBooks would be better still) about whatever subject they would like.

As far as I know, throughout history, whenever a population has increased its level of education by even a small amount, the effects were felt for generations. Imagine what the difference between no education and even a 3rd grade equivalent would be for someone in a developing nation. The eBox might not be the fastest way to educate a population, but maybe it could help.

Sunday, September 25, 2005

Antiquated metaphors

In the beginning, there was the punch card. Actually, I think it was more like a switchboard if you go back to WWII. And I'm not sure what Ada Lovelace used to program the machines made by Charles Babbage (circa 1822). After the punch card came the terminal, or command line interface (CLI). And then, out of Xerox's Palo Alto Research Center (and other places) came the Graphical User Interface (GUI). And it was good. The GUI was popularized first by Apple, and then by Microsoft. Xerox always had trouble making any money off the research done at PARC, and if they'd gotten a patent on the GUI, it would be the Xerox monopoly all the tech people bitch about today.

So lets look at the timeline (limiting ourselves to the past 75 years or so). In the 1940s, we had switchboards and "programming" a computer meant connecting wires to particular combinations of switches. In the 1950s we had punch cards, followed by the CLI in the 1960s. But after the development of the GUI in the 1970s, we stop. Its hard to imagine what could come after the GUI; most of us grew up with it. Perhaps a holographic display like "Star Wars"? Or a more tactile interface like "Minority Report"?

So the 2D GUI, perhaps with slight 3D-ish effects to make buttons and other interface features easier to see, is still the state of the art. But the desktop metaphor that was created around the 2D GUI is beginning to show its age. In the 1980s, hard disks were expensive and held a tenth of what will fit on a cheap memory stick today (there are Swiss Army knives with more storage than a mid-1980s hard disk). When the desktop metaphor was conceived, the average office computer user had floppy disks with a few hundred kilobytes of storage capacity. There are only so many files you can fit in that space. Computers today come with hard drives capable of storing a few hundred gigabytes - a million times more space. Suddenly, there are hundreds of thousands of files on an individual's home computer. How are we to keep track of that many files? Imagine trying to organize and maintain that many pieces of paper.

One idea comes from Sun Microsystems, where they are developing a 3D Desktop called "Looking Glass". But I don't know of many people who believe a 3D desktop metaphor on a 2D computer monitor will be more efficient for a user to navigate than the existing 2D desktops we're already used to. If we had true 3D displays (back to Star Wars), maybe they'd have something more interesting. Until then, I think "Looking Glass" is little more than "Eye Candy".

I don't think the answer is going to be a new kind of interface (though that "Minority Report" thing was pretty cool!). I think we're going to need to re-imagine the metaphor we use to interact with the computer. The files and folders of the desktop metaphor were useful at the time because they were familiar to office workers and they had physical equivalents. Most of today's users have outgrown the limitations of the desktop metaphor; they are ready for metaphors that don't have a physical equivalent, but rather, are based upon concepts.

I present to you, the Project metaphor.

If you think about it, nearly every task you might do in a computer (aside from playing games) can be categorized as a project: this year's taxes, last year's taxes, a report, research for a class or meeting. For the most part, projects are created, worked upon, and then either end or are transitioned into a new project. For example, developing a report on the safety of a new car model. Even tracking your finances can be broken up into monthly (or perhaps annual) projects. In this new metaphor, the computer doesn't show you files and folders (though perhaps they are still available), it shows you the items you have in the current project. These items can be categorized by dynamic keywords which can be browsed in a hierarchy. For example, lets say you're looking at the 2005 Finances project for your family. Keywords might include: Dates, the names of each month, Accounts, each of your credit cards, each of your loans, each of your bank accounts, and the income and expenditure categories you've created in your budget. If you want to see the CitiBank Visa statement for June, you could access it via "Dates >June > CitiBank Visa Statement" or "Accounts > CitiBank Visa > June". And once the year is over, and your taxes are done, you can flag the 2005 Finances project as "Finished", and it will be archived by the computer (compressed, perhaps), and the data in it will not be included in any information searches you perform, unless you specify that "Finished" projects should be searched as well.

Applications could be designed to deal with data alone (an image editor), or projects (a word processor). If you are working on a report, paper, or newsletter project, the application you are using can provide basic image editing capabilities (as Microsoft Word does today) and give you the option to use a more powerful image editor (such as Adobe's Photoshop or Illustrator). As the user, you would not "Launch an application"; instead you would "Display an interface" or "Display a toolset", allowing you to use image manipulation tools developed by Adobe, without ever leaving the paper project environment provided by Microsoft Word.

In terms of the technical implementation, each project would be essentially a database, with some standard tables, and some project-type dependent tables. Each project would be categorized according to metadata associated with it, and instead of browsing folders, the user browses the metadata hierarchy. This allows the same project to appear in multiple browsing paths (as in the credit card statement before). In addition to metadata keywords, the user could browse projects based on type, exact date (created or modified), age, and other intrinsic attributes. Local search technologies (like Google Desktop Search and Apple's Spotlight) have reached the point where it is feasible for the user to search for a project if they are unable to remember how it was categorized (the search would include all data within the projects).

The user should also be able to turn on a version control attribute for each project, allowing the entire history of the project, including the addition, deletion, and modification of data files, to be examined. This would not mean the user could watch each keystroke as it was entered, but rather that the differences between successive "Save" operations are tracked. This type of technology has been used for decades in software development, and its about time it found its way to the mainstream user. While versioning some files (like a home movie) might be expensive (in terms of disk space) even by today's storage availability, most files would incur a relatively small overhead over the lifetime of a project.

There is one type of data that doesn't seem to fit well into the Project metaphor — multimedia. Organizing your photos and home movies, or listening to your music isn't really a "project". Certainly editing a home movie, or creating new music fits well in the project metaphor, but it doesn't make sense to organize all of your photos, movies, or music in a "project". Instead, I see the computer providing a library service, where these types of files would be organized and made available to every project. Email probably fits into this category, as would a user's schedule. When a project should include or make use of one of these library files, it would use a reference to the original (saving disk space) unless the user specifically asks for a copy to be placed in the project. If the library file is edited, the original is saved to ensure other projects that might reference it aren't inadvertently altered by the changes. Projects that are to be copied from one computer to another, or burned to CD/DVD can be automatically made all-inclusive as part of that operation; referenced library files would be automatically copied into the project copy.

But most of that is for sometime in the coming decades (unless someone else comes up with a better idea before I get around to implementing this). Some of it, however, will be incorporated in Whisper. Specifically, Whisper's communities will be able to categorize themselves in a hierarchy that can be browsed by users. Also, users will be able to define keywords and a hierarchy for those keywords; the keywords can then be associated with papers and other files in their digital libraries, providing more flexible organization than can be achieved with traditional folder hierarchies.

Saturday, June 18, 2005

Getting off the ground

Starting projects isn't particularly difficult for me... its finishing them that give me trouble. Now, for this one I do have a spur in the form of my advisor, Jim Whitehead. I have been... absent... from my own weblog for a number of months as I start to get this particular project off the ground. I wouldn't say I've accomplished that just yet, but there's at least smoke coming out of the engines.

But now I'm ready to answer a question I posed a few months ago: What does this blog have to do with design or the future?

My Ph.D. project is called Whisper, for Web Information Sharing Project. The purpose is to provide academics with a single web-based environment in which they can perform their daily work. This is useful because academics are expected to know nearly everything that is going on and has been done in their field; most of us end up with folders (physical and computerized) of papers that are barely organized and hard to search. We're also expected to work with others, sometimes people we've never met who live on opposite sides of the world. And finally, we need to publish what we find so others can build on our work. While there are many tools to assist with any one of these major tasks, and sometimes two, I have found only a few tools that can be adapted to provide assistance at all three levels of an academic's work: personal, project, and community. Whisper is intended to fill this need. While some have suggested I should adapt an existing package, such as DSpace, I strongly believe that Whisper needs to be a new system, unencumbered by the historical design decisions of other programs, and one which I can control the evolution of (at least until I get my Ph.D.).

This blog is intended to document the design and evolution of Whisper, and the ideas that feed into it. If Whisper is successfully deployed, academics will find many of their daily tasks easier, leading to more productive research. And there's nothing that says the ideas and techniques developed for Whisper can't be applied to other fields, such as law, politics, construction, or even people's daily lives. For example, politicians would be able to create a community of their constituents where discussions about pending bills could occur. Or your grandmother could start to share the family recipes, but only share them with the family... its intended to be that easy to use. But we start with academics because I'm in a Ph.D. program and around here, its hard to swing a 2 inch stick without hitting four or five of the intended users.

Sunday, December 05, 2004

Advancing my future

In my department, before you can start your Ph.D. work, you have to pass an oral exam of sorts - an Advancement Exam. This consists of a 45 minute talk given by the student to the public and a panel of four professors or external researchers in the field with Ph.D.s. After the talk, anyone present can ask questions, but after a few minutes, the public is asked to leave so the panel of professors can ask the tough questions. When they finish, they ask the student to leave so they can talk about the project. After some time, the student's advisor finds them and either brings them back to the panel to explain why they haven't passed, or the conditions upon which they will be allowed to pass (usually a small paper with more details about some aspect of their project); or the advisor simply tells the student that they've passed. In my case, I simply passed. This was a big deal for me, as I've been working on the proposal for the past few months, and got to my own exam almost an hour late because of road construction and an accident on Highway CA-17 (two lane, through the Santa Cruz Mountains... notorious for delays from accidents).

So the end result is that a panel of professors and an external researcher (who essentially invented the field my project is in) all agree that I'm ready to begin work. The next thing I have to do is the hard part (the actual project). Then, in two years or so, I'll write up my results and defend my work at a similar event, the Thesis Defense. If I pass that, I get a Ph.D. If not, I either get to do more work, try again, or find a different career path. But hey, no pressure.

Sunday, November 28, 2004

A two minute overview

When I say two minute overview, I mean that's about how much time I plan to spend writing it; hopefully you can read it a lot faster than that. Unless I go into overtime...

Why is this here?

This blog exists so that I can see what blogging is all about.

What are you going to write about?

As I understand it, blogs are here so people can say whatever they damned well please; I will be no exception.

However, I do plan to stay close to the general theme of my Ph.D. research: improving the mechanisms of knowledge transfer.

Why should I read what you write?

You probably shouldn't.

If I'm as successful as I possibly can be, it will probably take a good few decades for most of the world to catch up. Until they do, you'll be associating yourself with a raving lunatic who imagines a world that can never possibly exist (for reference, look up Doug Engelbart, Ted Nelson, and Charles Babbage... I'm nothing like any of them, but that's about as successful as I can ever dream of becoming. And most of their contemporaries called them crazy. But hey, we all need role models.).

If I'm not successful, than you're probably wasting precious time that you could use to catch up on the latest geo-political events in your part of the world. They are far more important than anything I will ever say here.

What the hell is knowledge transfer?

This blog is knowledge transfer! I write, you learn. To be more general, any time you learn something new, knowledge has been transferred to you.

What does that have to do with design or the future?

Opps! Sorry, I've just run out of time (double overtime actually).

Wednesday, November 24, 2004

What's in a blog?

9:45 PM PST, November 24, 2004. My first blog post. Actually, I really don't like the word "blog"... it sounds like something you'd say if your mom tried to feed you brussel sprouts. Weblog sounds better somehow. I've never really wanted to have a weblog; they seem like diaries for adults, and really, they're just one more thing to deal with. But, my Ph.D. project calls blogs a useful tool, and since I wrote the project, I must see them as useful... despite my best efforts.

So here I am, with my shiny new What to do now?

Let's start with links to my other internet homes:

My school - UC Santa Cruz, School of Engineering
My Ph.D. research - Whisper: Web Information Sharing Project
My (future) company - Humane Software

More will have to wait until later.