« December 2004 | Main | February 2005 »

15 posts from January 2005

Friday, 07 January 2005

footnotes and airplanes

love this explanation of the importance of specifications - from joel spolsky in a salon.com interview*

The fundamental problem that you're trying to solve here is that humans think of things in vague, mushy terms. In order to visualize something, they don't have to actually visualize every part of it. Whereas the programmer, in order to actually implement that thing, to create it, needs to have every part specified. So you can imagine an airplane without even knowing what a rudder is, yet without a rudder an airplane's not going to work very well. Partially that's just the way the brain works. …

…One of the biggest mistakes you can make in developing software is to say, "I'm going to build this thing and it's going to be super easy to use because it's going to be super simple, it's going to be unbelievably simple." And then you say, "OK, how am I going to do footnotes?" Oh, well that'll be real simple -- you just ask for a footnote and you type a footnote, and it'll just be there. Well, what if the footnote is too long to fit on the page it's currently on? Um, I don't know -- maybe you have to move part of the footnote onto the next page. Suddenly, it's not so simple.

As soon as you start to think about how to get everything to really, really, really, really, REALLY work, it becomes much more complicated. So software starts out with a simple vision and it grows a million little hairy messy things. And depending on the quality of the initial vision, those hairy things may be more or less hairy, but they're going to exist.

And therefore, because software seems so simple and is actually complicated, you can't implement it until you specify the complication. And all these people that are trying to make the same perpetual-motion machine -- where you just write your specification and it automatically becomes code -- don't realize that the specification has to be as detailed as the code in order to work. …

…And so what a programmer is doing when they translate a quote unquote spec into quote unquote code, although it seems like a translation process, what they're actually doing is filling in lots and lots of details. And as programmers are wont to do, they're trying to take something, the vague thing that the humans want, and make it very, very specific, which is the kind of thing the computer wants. That's not really a translation; it's more of an interpretation. It's a very hard thing to do.

The perpetual-motion machine is where you say, let's just take these business requirements that some business guy came up with and suddenly, instantly make code from them. And that doesn't work, because the business requirements don't actually specify what to do with the footnotes when they run off the bottom of the page. And the computer's going to have to know.

and this bit on web vs. desktop apps:

There's a couple of other issues which would be nice to solve. One is to give you a way to work offline in limited circumstances. Let's say you wanted to make Gmail, but Gmail where you could actually take it on a plane and work offline, read your e-mail and send e-mail, queue it up for delivery. And so somebody could develop some kind of standardized system for doing that kind of offline work.

Adam Bosworth has been working on this a lot -- we'll see if anything comes out of that, now that he's at Google. That would be cool. But the funny thing is, Bosworth has been talking about this same problem for a long time -- he's just obsessed with the person on the airplane. And, lo and behold, airplanes are actually getting Internet connections. And Wi-Fi is spreading like crazy. What's kind of surprising is that it has turned out to be easier to rewire the entire world for high-bandwidth Internet than it is to make a good replication architecture so you can work disconnected! It's actually far more likely that this problem will be solved that way, oddly enough.

* subscription or free day pass (watch an ad) required.

designing the future

current issue of NextD contains a conversation with Lorraine Justice, Ph.D. , Head of the School of Design at Hong Kong Polytechnic. Here's some tidbits from the conversation…

on her experience in China and their better understanding of the importance of design compared to the US:

I fully believe the US can rise to do great products, but it will have to be a top-down approach. We educators can provide the best design students (granted this is difficult!), but it won't make any difference in many of the companies. The creativity is often stopped at middle management. Senior management needs to send the signal to middle management that innovation through the design process, crazy as it can be, is effective.

on the definition of design:

Design is not just about making an object. It goes much further than that. Designers can revamp systems, systems that involve humans. Yes, our designers should be equipped with leadership skills, etc. I guess in my way, I think bringing design values and thinking to the corporation would help everyone in the long run, and at least balance out the way things are done. I am talking about the designer who wants to change the world to be a better place, object by object or process by process or environment by environment. I am not relegating design to just "cool products".

on user-centered design:

And although design education has migrated toward the "user-centered" model, it has paradoxically moved toward learning about users in order to sell to them. That seems fine on the surface, but a lot of this gets translated into "find the consumer's weak spot", design for that, and sell a million! So while I thought we were making progress moving toward designing for the needs of other people, I see it turning into something crass.

on design education:

I think we need to have programs arising out of design that take those students with leadership potential and put them through new thought courses that allow them to address the type of deep change that is needed in the individual in the business world and how to design and affect that change. So maybe it is combined with a bit of sociology, design research, business, and new thought courses that deal with the inner parts of us (physical, mental and spiritual). Yes, I said the "s" word, not the "r" word (religion)...big difference. I am largely talking about values in human behavior in relation to anything spiritual. I think these new leaders need to be supported, directed and groomed to be leaders of industry, change agents in corporations, consultants, etc. Where do products fit into all this? They do, but at the very end. We are first designing an atmosphere, culture, and places of ease for people to trust themselves again.

on design leadership:

I know I am being harsh on designers, and I am one, but I have watched our field lose leadership in interface/interaction design to the computing discipline, research to the sociology discipline, design management (and now possibly leadership in creativity) to the business discipline, anthropometrics to the human factors people, and so on. Designers have wanted to stay on the "boards" and create, rather than taking on more responsibility. Now, having said that, I believe it will take a different type of person to assume the role of a design leader.

on design's role in Hong Kong & China:

I am glad to say I sat in a meeting here yesterday at Hong Kong Polytechnic University where the President brought all the Deans, VP's, and Heads together to discuss the importance of design to the university, to Hong Kong and to China. I was astounded. It was a historical meeting for me. I never experienced this in-depth understanding and support for the design profession. He went on to tell them design is not just making products, but it is in every area and can provide innovation. He also told them that if they do not feel a direct benefit from design, they need to support it for the good of the school and Hong Kong.

more:

China does not have enough designers to design products, let alone provide design leadership. The world doesn't have enough designers to supply China. So, yes, China is throwing big bucks at design. Hong Kong has generated 250 million (HK) dollars to start design activities in the city, and the universities are strongly supporting design. So it is a government-initiated endeavor, unlike what is happening in the US, where it is almost a grassroots effort to promote design. China knows that in order to compete in the World Trade Organization they will need to improve design efforts so their products can compete in the world market. This information will be like a bullet from a silencer to the West if people don't realize what this effort in China means in the large scheme.

Thursday, 06 January 2005

champagne chairs

Contest winnerannual design within reach champagne chair contest winners have been posted. you can also check out a sampling of the entries.

"I drink champagne when I win, to celebrate … and I drink champagne when I lose, to console myself."

—Napoleon Bonaparte

Wednesday, 05 January 2005

the search problem is solvable

In response to the Edge Foundation's annual question for 2005 — "What Do You Believe Is True Even Though You Cannot Prove It?" — Marti Hearst, a computer scientist at UC Berkeley, says The Search Problem is Solvable.

Advances in computational linguistics and user interface design will eventually enable people to find answers to any question they have, so long as the answer is encoded in textual form and stored in a publicly accessible location. Advances in reasoning systems will to a limited degree be able to draw inferences in order to find answers that are not explicitly present in the existing documents.

(via todd vallie)

Tuesday, 04 January 2005

it's all in the context

uie (jared spool) article Putting "Context" Into Context

Design happens at the intersection of the user, the interface, and their context. It's essential for interface designers to understand the gamut of contexts that can occur, thereby ensuring they create designs that are usable no matter what's happening around the user.

Elements of Context:

  1. Goals: What is the user trying to accomplish? How do the user's actions fit into the objectives of the organization?
  2. Process: What are the steps the user will follow? How does information flow from one step to the next? What are the various roles (such as creator, contributor, editor, or approver) that are involved?
  3. Inputs & Outputs: What materials and information will the user need to successfully use the interface? What will they need from the interface to continue with their overarching goals?
  4. Experience: What similar things has the user done in their past? How has the organization survived without this design in the past?
  5. Constraints: What physical, temporal, or financial constraints are likely to impose themselves on the user's work?
  6. Physical Environment: How much room does the user have to work? What materials on their desk? What access do they have to necessary information (such as user manuals)? What is taped to their monitor?
  7. Tools In use: What hardware and software does the user currently use?
  8. Relationships: What are the interconnections between the primary user and other people who are affected by the tool?
My Photo

My Photos

  • www.flickr.com
    carriejeberhardt's items Go to carriejeberhardt's photostream

More Places to Find Me

Flickr LinkedIn Other... Twitter

My Tribe

  • Interaction Design Association

    Interaction Design Association

Subscribe

Powered by TypePad Member since 07/2003