Archive for the ‘UI’ Category

TechEd US 2007

Thursday, October 4th, 2007

So far the highlight of TechEd for me has been people’s reaction to Majority Desk.  I said to a number of people before the demo that everyone’s reactions would be the same, “Oh my god…”  The problem is that that reaction would come because of two very different reasons, “Oh my god… what is wrong with you people that has no business value!” or “Oh my god… that is the coolest thing I’ve seen in a long time.” 

It seems that most people fall in the latter category.  I’ve already spoke to a number SDNers from all different industries who see how they can use this type of interface in a broad range of applications.  A airplane manufacturer navigating large engineering drawings to business people visualizing data sets in 3d to see patterns.  This was the reaction we were hoping to create in the community a true sense of innovation and possibility.  It’s also been a blast watching people mess around with the interface.

Here are some great photos from hacker night with Mark Finnern and Marilyn Pratt messing around with Majority Desk.

IMG_1673

IMG_1682

iPhone Applications

Thursday, July 26th, 2007

So, I came upon an iPhone to play with for a few days and decided I should try to learn about how the user applications run on it.  There has been a lot of great work already by the guys on the iPhone Dev Wiki around getting SSH and such on the iPhone, needless to say without their work this discovery would not have happened.

The point was to learn how the applications are structured and then see if I could add an existing application back to the iPhone with a different name and icon and have it run. Today Fred and I set out to see if we could get this to happen.

 

iPhone applications look very similar to applications for OSX, makes sense as they both run some version of OSX.  The file structure of the iPhone Calculator is this:

[/Applications] [/Calculator.app] Calculator CalculatorBackground.png Default.png [/English.lproj] InfoPlist.strings Localizable.strings Info.plist LCDBackground.png PkgInfo icon.png ring.png

[ source: iPhone Directory listing ]

For this example we will be trying to change the calculator app into some a touch more fun looking.  First step is simple ( if you already have SSH on the iPhone and the binkit on your iPhone)  tar up the Calculator app and copy it to a Mac.

Executable [Calculator]

The Calculator file is a compiled binary for the ARM platform running it from OSX produces the error message: “Bad CPU type in executable.”  We assume that this has something to with the Universal application concept in OSX.  It is opening that executable and looking to see if it has the ability it talk to an Intel/PPC processor it of course doesn’t so it craps out.  First thing we did was to rename this file to foobar.

Info.plist

This is the file that has all the information about what to execute when a user clicks on the icon in the home screen.  File is a regular plist file from normal OSX applications.  The node to concern yourself with is CFBundleExecutable.  This points at the binary you want to execute.  So, in our case we need to point this node at our renamed executable.

icon.png

A few sites have already figured out you can change these around so, I won’t go into anymore detail then pointing you at the ModMyiPhone wiki that describes the structure of iPhone pngs.  You don’t actually need to “optimize” your pngs for your iPhone.  It can render regular ones just fine.  We threw a “festive” graphic into our package.

“Deploy”

The final step is to move all these files over to the iPhone.  Make sure you get the directory structure right:  /Applications/foobar.app/ .  Reboot the phone and you should see your newly renamed and functioning Calc application on the home page.

IMG_1550

One other interesting that came of this is that the iPhone can’t have more then 16 applications on it.  The home screen does not have the ability to scroll.  We loaded 4 more copies of the calculator onto the phone and were unable to scroll down to see them.  Maybe there is a simple change to the launcher application to allow the scrolling to happen or maybe Apple has to change the application to allow it.

IMG_1551

You can see the little Handbrake icon peeking out from under the Buttonbar, but you can’t scroll down to see it.  Sad.

No, this isn’t a new native application but, it gets us one step closer to deploying applications onto the iPhone once we can compile them, which is still a long way off.

Amateur Professionals

Wednesday, July 4th, 2007

Thomas Otter has a really great post talking about how enterprise UIs need to be more like “consumer” applications and that lumping business applications into a separate pile allows us to torture people needless in the name of “enterprise complexity.”  While I agree with a lot of Thomas says — deep in there I think he may have unknowingly hit upon an important topic.

Labelling things enterprise, business or even professional enables a defence of complexity that shouldn’t be tolerated without a challenge.

People log on to consumer tools because they want to, but often they log on to enterprise applications because they have to. I don’t think this should be an excuse to expose them to any more complexity than absolutely necessary

I wondered when I read this if making the tool simpler is the correct path.  Maybe we can learn a lot from a company like Adobe — they have never made Photoshop any easier to use.  It is incredibly powerful and incredibly hard to use, just do a Google search for “photoshop training” and “SAP training” and you may start to see the correlation — approximately 265k and 270k respectively (obviously wholly unscientific but, with a research budget of zero, that’s what you get). 

“Use(full|less) Intro”

Lots of video games have totally useless and uneventful intro levels.  Learning how to jump, run and fire your weapon, etc.  Could it be possible that Adobe has done a good job of introducing the Photoshop tool set to it’s customers before they actually decide to go and spend the large amount of money on the big software package?  I can honestly say that I don’t know if Adobe does this, do you slowly work into the larger Photoshop toolset from the other available Adobe applications?  Is there some really great indoctrination path for Adobe tools?  Maybe they have some brainwashing secret sauce that SAP could get.

Casual Users = Consumer Users

If you are at all interested in UI you should go buy Design of Everyday Things by Donald Norman.  In it Norman talks about putting information into the world so that occasional users can have visual and physical clues about how to make your system work.  If you keep up with Seth Godin, he mentions a similar concept in marketing, “Be obvious about it. A sign that says First Time Here in three or four languages is a fine place to start. You can explain that while you serve minestrone, the locals come for the gumbo.”  This all combines into making the system usable for the people who only use it occasionally.  Norman also, talks about how you have to have an understanding of what people are going to use your object for before you set on the task of designing it.  Again, however, Seth has an interesting real world comparison.  Why aren’t stores organized to help us shop and help us buy things

So, all the Armani blue suits are next to each other, then by size.

So, all the boxer shorts at the Gap are on a wall, organized by style first (checks over here, stripes over there,) then by size.

So, all the power tools at Home Depot are together, sometimes by brand, sometimes by function (saw) and then by type of material to be cut (wood).

This is dumb, and the web makes it obvious why it’s dumb. It’s dumb because it makes it easier for the clerk, not for the customer. And dumb because it plays to the label’s ego, not to ours.

Does anyone say, “okay, even though my son wears size large boxers, these striped ones are really nice, I’ll buy the small instead.” Of course not.

So why not put all the large boxers right next to each other, regardless of designer and style?

Amazon and Google are designed with both these concepts in mind.  Google has 1 box and 1 button.  When you are searching you have something in your mind to type.  Well, that goes in the box.  With only one button on the screen, well human nature just forces you to push it.  Amazon does a stellar job with the latter case, you just bought a pair of shoes, other people who bought that pair of shoes bought these socks.  Simple?  Yes.  Easy to do?  No.

Who are “they”

Photoshop is made for people who already understand Photo editing — it uses terms they understand and have used for years in moving from the ranks of Amateur to Professional.  It puts those terms and arranges those buttons to support those Professionals’ normal mode of working.

This may force us to rethink how we target Business applications.  Are “business users” (thanks for the cringe Thomas) true professionals, like our Photoshop fans or are they people who move between jobs being novices in lots of areas.  Should be be designing tools to indoctrinate people into our toolset and transform them into a professional?  Or are they always going to be casual users of the business tools simply consuming them as they flow through our enterprises?