Thursday Apr 26, 2007

CoolStack + MediaWiki Take 2

Here is take 2 on instructions. I moved off my SPARC Ultra 20 at work and I'm on my Gateway Solaris 10 Update 3 system. Btw, no, I never got the wireless working...instead, I put a hub in next to my Tivo and Wii and after the kids go to bed I run a not so elegant ethernet cable across my living room...but that's besides the point.

Here we go:
- Download the proper CoolStack for your platform (we need the AMP download, CSKamp_x86.pkg.bz2)
- Download the latest MediaWiki bundle

Unpack and add CoolStack
- bunzip2 CSKamp_x86.pkg.bz2
- pkgadd -d CSKamp_x86.pkg

Patch up PHP5
- Edit the php.ini file (vi /opt/coolstack/php5/lib/php.ini)
- Comment out the extensions = "" line (according to the BigAdmin tip)
- Add the line "safe_mode=off" to the end of the file

Patch up Apache
- Edit the httpd.conf file (vi /opt/coolstack/apache2/conf/httpd.conf)
- Change the "DirectoryIndex index.html" line to "DirectoryIndex index.php index.html" (This will allow index.php files to be a "home" page in a directory)

Patch up MySQL, I'm following the outline from the article SAMP (Solaris, Apache 2, MySQL 5, and PHP 5) Setup for Solaris 10 OS and Solaris Express, some of the work in the article is done by the pkgadd. I still don't quite have this perfect and had to hack around a bit:
- cd /opt/coolstack/mysql_32bit/bin
- run mysql_install_db
- cd ..
- chown -R mysql:mysql \* (this is what I'm not sure about, but I had to do it to make it work)
- ./bin/mysqld_safe & (now your DB is running)
- /opt/coolstack/mysql_32bit/bin/mysqladmin -u root password 'new-password'
- /opt/coolstack/mysql_32bit/bin/mysqladmin -u root -h myhostname password 'new-password'
- ./bin/mysql -p (enter your new password at the prompt)
- Prepare for MediaWiki using the Installation Guide
-- create database wikidb;
-- grant create, select, insert, update, delete, lock tables on wikidb.\* to 'wikiuser'@'localhost' identified by 'new-password';
-- flush privileges;
-- \\q (quit)

Unpack MediaWiki
- gunzip mediawiki-1.9.3.tar.gz
- tar -xvf mediawiki-1.9.3.tar
- mkdir /opt/coolstack/apache2/htdocs/wiki
- cp -R mediawiki-1.9.3/\* /opt/coolstack/apache2/htdocs/wiki
- cd /opt/coolstack/apache2/htdocs/wiki
- chmod 777 config
- chmod 777 config/\*

Start Apache
- cd /opt/coolstack/apache2/bin
- apachectl start

Configure MediaWiki
- Go to http://localhost/wiki
- Read CAREFULLY and fill everything out
- Hit Install...
- Move the LocalSettings.php from config to the wiki directory

Go back to http://localhost/wiki and enjoy your wiki!

That should be about it, much better than my first post on it!


CoolStack and MediaWiki

CoolStack rocks. Here was my mission: Get MediaWiki running. I started about it the same old way that Unix people do the PHP, get it compiled with the right flags, oops the dependencies are hosed up, get the latest libxml2, oops, that was too much of the latest, and on and on and I didn't even get through PHP5.

Tuesday I remembered that the CoolStack came out a while ago, and sure enough, one of the packages was the AMP I needed (Apache, MySQL, PHP). So I downloaded it to my Solaris 10 Update 3 SPARC system at work today. One package add (pkgadd -d CSKamp_spark.pkg), everything is added (remember, I was su'd to root for this).

It wasn't a slam dunk to get MediaWiki running (mostly because I am a file permissions hack, not a guru), here is some of my guidance, mileage may vary:

Be sure to tweak your php.ini file according to this tip. Also, add the line "safe_mode=off" to your php.ini file (or you will be warned later during the MediaWiki setup).

Start apache:
cd /opt/coolstack/apache2/bin
apachectl start

I went to my machine's port 80 in the browser and received the "It Works!" web page...badda bing.

I noticed that mysql was not running, but the issues seemed to be a bit deeper than that. I ended up using and modifying many of the instructions at this BigAdmin site to get mysql into the proper state (permissions, security, running, etc...). Hack around, you'll get it.

Next, I downloaded the latest MediaWiki build, untarred it and then copied it to /opt/coolstack/apache2/htdocs/wiki. Change the ./wiki/config directory to be openly writable (I'm bad, I chmod 777 everything...ouch).

Navigate to http://yourhost/wiki/index.php and run through the setup. Anything in red, address quickly.

And, that's about worked. I'll try to post more details when I do it again...and again...and again...

Monday Apr 23, 2007

Luminex + X4500, Welcome to Mainframe-land

The Sun Fire X4500 (yes, that box with 24 Terabytes of storage packed into a 4U space that is on sale at the 25th Anniversary Sale for $1/GB) is proving to be an excellent platform for partners to build upon.

On April 17th, Luminex announced their Sun Fire X4500 Data Server for Mainframes. This is a nice little appliance bundle that allows you to FICON-attach a Sun Fire X4500 to a mainframe and achieve wire speed data transfer for use of the massive disk space in the X4500 as virtual tape.

The solution leverages the Channel Gateway Software from Luminex on top of Solaris 10 and ZFS. ZFS provides massive space capabilities (zetabyte) and state-of-the-art checksumming and pool management to provide safe and simple storage management. If you are willing to go just a little bit beyond the native ZFS capabilities into more OpenSolaris capabilities, you can add Availability Suite for Point-in-time Copy and Remote Mirroring. You can also use the built in snapshot capabilities with ZFS if you don't want to expand into Availability Suite, though both solutions are interesting for different scenarios.

Why is Luminex interesting? Well, they have great software that moves the X4500 into the mainframe space...sure. But even more interesting is that the Luminex work shows just some of the benefits a company can gain by looking at our systems as the basis for their own solutions. There is no doubt Sun Microsystems has some of the best servers around, and a completely open operating system. What a great place to start a relationship :-)

Go Luminex!

Saturday Apr 14, 2007

How to Survive a Robot Uprising

I've been meaning to do a book review on How to Survive a Robot Uprising for some time now. As I sit here comfortably out back with my Chimnea and a kid bouncing on the trampoline and a military document like A Concept of Operations for Armed Autonomous Systems, now is the time. The military document was posted to Slashdot on this quiet weekend, but it certainly caught my eye.

Daniel H. Wilson authord the Robot Uprising book, the subtitle is appropriately "Tips on Defending Yourself Against the Coming Rebellion". Appropriately enough, the Concept of Operations document seeks to prevent the uprising by putting rules of engagement around the use of autonomous weapons (aka...robots).

The former, Robot Uprising, is based on real advances in robotics and common capabilities of robots in movies (an adequate baseline, in my opinion). The latter document, Concept of Operations, is also based on real developments in robotics used in wartime, less on the movies.

The basic premise of the Concept of Operations, from the military, is "Let Men Target Men" and "Let Machines Target Machines". I assume there is an implicit rule stating "Let Women Target Women"...I would hate to get a bunch of ex husbands on one side of a battlefield and the ex wives on the other side, you know some serious breaches of the rules of war would ensue.

Still, we all know eventually the robots are coming after us, even your Roomba. Oh yes, and if you think you can are wrong, unless of course, you've read "How to Survive a Robot Uprising"...which I have smartly done and will retain it as a reference for years to come, even while you attempt in vain to survive a chase with an unmanned ground vehicle. Having read the book, I will know get off-road (robots have a harder time in unpredictable terrain) and get out and hoof it (remember that there is no one IN the robot vehicle to get out and pursue you!).

This book is full of these important tips for every type of robot (humanoid, swarms, vehicles, etc...). The book goes from amusing to side-splittingly funny...yes, I'm that dork next to you on the plane laughing my butt off while you read your NY Times.

There are so many great quotes in the book, it is a great read, and very fast. It is well worth your $13 smackers. You will probably find it in the "Humor" section and as the author states, let's hope it is just that and not an unsettling glimpse into our near future...though the Concept of Operations guide certainly made me raise my eyebrows this evening.

READ THIS BOOK, if you don't, you may perish...and if there is no robot uprising, you will at least have had a few hours of rioutous fun.

I'll leave you with a quote: "Pity the fate of the ignorant when the robot masses decide to stop working and to start invading."

Gotta go, the marshmallows are on fire!

Thursday Apr 12, 2007

Kurt is up in heaven now.

For those of you who have not read Kurt Vonnegut's "A Man Without a Country", you may not know that this is a fitting tribute to one of the greatest authors of our time (IMHO). It is one of Kurt's favorite jokes, he's a humanist, its what he wanted people to say about him after he passed.

I saw Kurt Vonnegut speak at a seminar in Minneapolis when I was still in college at Winona State University. I'd have to say he was not a fan of technology and made me squirm more than once as I sat with my buddy Ann. Still, he always had great, provocative, interesting, and blackly funny things to say and comment on.

I have a picture above my foos ball table at home, it is a print from Mr. Vonnegut, it reads "Goodbye Blue Monday", its signed by Mr. Vonnegut.

Here is the obituary Writer Kurt Vonnegut, Voice of U.S. Counterculture, Dies in the Washington Post.

To use the phrase that is being passed around the web that Kurt used in Slaughterhouse-Five:

"So it goes."

Sunday Feb 11, 2007

blogging from the wii

Seriously. This is blogged from the internet channel on my wii. It is absurdly slow to type. Unfortunately some things need to be done because you can, not because they make any particular sense.

Friday Feb 09, 2007

An Inconvenient Truth, Astounding

I just finished watching Al Gore's "An Inconvenient Truth". I have to tell you, this is an astounding movie. I don't usually like documentaries and stuff, but you have to watch this. I will admit, I've believed global warming was happening for a long time and I've tried to do my part to conserve, but this movie will scare the bejeebers out of you while at the same time inspiring you to do something.

I wrote a bit about how Sun lets me Work from Home and how eco friendly that is. Here's another thing I've been doing. My house eats light bulbs, I swear it. I'm experimenting with n:vision light bulbs that I bought from The Home Depot down the street, they are Compact Fluorescent Light Bulbs (CFLs). The bulbs use a bit less than a quarter of the energy of a similar bulb (9 watts for the same amount of light as a 40 watt). So far, I've replaced 14 light bulbs (from over 560 watts to less than 140, I also replaced some over-watted bulbs). There are 3 types of brightnesses. For inside the house, make sure you get the soft white. For my garage I put the "Day" lights, they are very fluorescent (how about that spelling).

The Department of Energy says that if every household put in one CFL, it would be similar to taking 886 cars off the roads in terms of greenhouse gas emissions saved in a year.

Of course, they save money too :-)

You have to wonder what data centers can do to save. Its obvious Sun Microsystems takes energy seriously. Have you considered using our Sun Grid Compute Utility some of your jobs rather than installing new servers? Sharing resources rather than buying new ones is one of the best ways to save energy, and money. Not only does Sun take care of "data center" upkeep for you, relieving the financial burden of system's administration, you also don't have to plug servers in. We all know you don't shut them down once they are plugged in.

Just a thought.

Wednesday Jan 17, 2007

Earth [hearts] Sun WFH

There are a lot of reasons I like to work from home as often as I can. To be honest, the primary one is so that I can spend more time with my little guy and that time is much better when I'm not stressed out from a long car ride through the heart of the commute. On other days, the reason is much more global. I live South of Denver and have a view of the city when I wake up in the morning (not a great view...but a view nonetheless). There are many days where there is a deep brown smog hanging over the city. We have some major temperature inversions here that traps the bad air within the bowl that is Denver.

Still, this brown smog comes from somewhere, and a lot of it is from cars. This evening I finally decided to figure out how much my drive up to the Broomfield Campus (North of Denver) from Highlands Ranch (South of Denver) contributes to the gases that help our little global warming problem. I scanned around the net a bit. There are quite a few calculators that help with this on a yearly basis, this one from the Sierra Club tells me that if I drive my car 12,500 miles on average I will use about 595.2 gallons of gas in my Subaru Outback. I will spend about $1,280 dollars in gas this year. Oh yeah, and I will contribute 16,667 POUNDS of Global Warming Pollution (CO2) into our atmosphere.

I'll say that again, 16,667 POUNDS.

I'm putting about 28 pounds of greenhouse gases into the atmosphere per gallon of gas. Astounding.

Sun Microsystems lets me work from home, quite often in fact. I try to work from home 2 to 3 times a week, sometimes even more. My quality of life goes WAY up and my work is quite efficient these days. I've purchased all of my equipment for work from home since I still have an office, but Sun encourages the work from home program for its employees and takes care of most of the costs if you give up your office.

When I work from home, I try like crazy to keep my car in the garage and not take an extra trip to the office or something to make up for something I may have missed. This way, my work from home impacts the environment less. I can also manage my household heating a little better. My son and I walk to school so I don't take my car out, and I work with what I have and don't make an extra trip to the grocery store. If I go out to lunch I run up to Chipotle on my bike.

Get this, by working from home, I save about 3 gallons of gas (a little over), which in turn keeps about 90 POUNDS of greenhouse gases from going into the atmosphere. In a normal work from home week, I keep about 270 POUNDS of gases out of the atmosphere. I work about 48 weeks, I'm talking about over 6 TONS of greenhouse gases that just don't get put into the atmosphere.

I am going to speak for Denver here, since that is where my emissions will end up.

Thanks Sun :-) for letting me do just a little more to reduce our footprint on the planet.

Friday Dec 15, 2006

Tufte: Beautiful Evidence, a Partial Review

Its important to know what you don't know. In fact, this can be an architect's greatest strength (unless, of course, they know they don't know anything and make up for it by dressing well). I know I don't know visualization. As a result, it is a good idea to surround myself with people that know their stuff with visualization and also arm myself with good books, like Edward Tufte's "Beautiful Evidence" so that I at least have an idea of what people are talking about.

Beautiful Evidence is a book about presenting evidence in an effective way. Sounds simple enough. Well, its not. Consider how often you sit staring at graphs and information that purport to mean something, yet the "evidence" that is being presented is spread across multiple slides and backing documentation. By the end of the presentations and discussions, you get a queasy feeling that you don't have a complete picture of the evidence or that you wasted an hour for a single nugget of information.

Tufte's book takes you through several techniques for displaying evidence:
- Mapped Pictures: Images as Evidence and Explanation (relevant for displaying maps, product layouts, and sketches that must be coupled with real-world information)
- Sparklines: Intense, Simple, Word-sized Graphics (very relevant to succinctly displaying large amounts of data concisely)
- Links and Causal Arrows: Ambiguity in Action (particularly relevant to modelers)
- Words, Numbers, Images - Together (relevant for all of us who author technical documentation that weaves together images and technical data)

He then has broader sections of the book that assemble the techniques and cross them with common perceptions and mistakes with presenting evidence. These sections consist of:
- The Fundamental Principles of Analytical Design
- Corruption of Evidence Presentations: Effects Without Causes, Cherry Picking, Overreaching, Chartjunk, and the Rage to Conclude
- The Cognitive Style of PowerPoint: Pitching Out Corrupts Within
- Sculptural Pedestals: Meaning, Practice, Depedestalization
- Landscape Sculptures

To be honest, I am still working my way through the latter chapters, though I've skimmed many of the parts while I am deeply working through the book. The book is fascinating to read AND discover. Tufte integrates his writing with the visual facts and evidence that backs up his conclusions (this is an important point in the chapter on "The Fundamental Principles of Analytical Design" with excellent examples in "Corruption of Evidence Presentations"). The examples provided in the book range from some of the first printed writings, to sketches from da Vinci, to maps from cartographers, to modern day "evidence" in the 9/11 reports. Where examples are good, Tufte goes to detail in explaining WHY the example is good. When examples are bad, Tufte explains why the examples are bad. One of the many reasons the book is good is that Tufte then goes on to show how the bad presentation of evidence can be improved! So the book is very illustrative and contructive.

Often, people have the impression that Tufte is just for user interface people. This is simply not the case. Architects are responsible for delivering information to many different audiences. Often, this information is in the form of evidence for why certain decisions must be made
- Why did you choose this off the shelf product vs. another
- Why are you using certain throughput rates as your design point
- How did you come to the conclusion that a product / subsystem was beyond repair and needed to be rewritten

Unfortunately, many of our audiences ONLY want slide presentations (I'm being honest). As you work through Tufte's book, you realize ways that your presentation of evidence could be made better and more effective.

Let me give you an example that I just lived through.

My new boss is a number's guy. I went through about 4 iterations on a slide set before he started to nod that I was on the right track. My first slides were highly bulletized on some slides, with graphics on others. To be honest, I was skewered in the meeting (rightfully so). While I had worked on the graphics to integrate them with the surrounding text, the integration turned out flawed in many different ways, this became obvious because my boss, it turns out, follows one of Tufte's important points: "To maintain standards of quality, relevance, and integrity for evidence, consumers of presentations should insist that presenters be held intellectually and ethically responsible for what they show and tell".

While I had not engaged in corruption of evidence, I had included "Chartjunk" and in including that Chartjunk, I was not exacting in my choice of chartjunk (there were other problems, but this is the one that bothered me most). My causal lines were also not very informative. It turns out, my boss is an active consumer of information and the causal lines and visual evidence are very important.

I went through several iterations on the presentation. It turns out, he wanted 4 slides and those slides needed to tell the tale of the cause of where we were, and the effect it was having on my decisions and, in turn, his decisions. The slides were simple tables with compact information. The evidence had to be succinct and telling of the cause and effect.

Hopefully my presentations will get better and better from here on out, but it will take time. It is obvious that these things should not be thrown together.

I should tell you about the BEST part of the book, in my opinion. The chapter on sparklines was completely enjoyable. I had never really put a lot of thought into sparklines (since I didn't have a name for them anyway). Edward Tufte's web site has a discussion on sparklines with examples. Sparklines facilitate a high compression of data into a readable format. For example, in addition to a win / loss display of a sports team, sparklines could be used to show the entire season and give the reader the ability to see trends, additional information about intra vs. inter league play, and more. All of this information can be compressed into a very tiny, yet readable space.

What is even MORE impressive about this book, is that Edward Tufte CLEARLY articulates the limitations of our own presentation technologies in portraying information. During the discussion on Sparklines, Tufte shows how flaws in rendering the information can lead to mistakes in reading the information, ineffectual display of the information, and annoyances that can occur from the information rendering.

This is an ALL AROUND fascinating read. The burden of the presenter of evidence is high, especially if the consumers of the information live up to their requirements. On the one hand, I regret reading it...I know my presentation of evidence style is extremely flawed at this point. On the other hand, Tufte has provided me with a foundation for improvement...and I have lots of oppurtunities to practice the skill.

Friday Dec 01, 2006

Geek Friday, Google Maps, and Am I Web 2.0 Now?

Friday's my mind tends to wander (well, it wanders Monday, Tuesday, Wednesday, Thursday, Saturday and Sunday too...). It was time to learn something new and answer a question that's been in my head for a bit: Can I put a Google Map on my blog? In short, yes (as you can see to the right).

I continue to be amazed by Google, Amazon and others with the simplicity of doing these things. I know we had a big announcement on mashups this week, but the mashup is the result of years and years of strategy and incremental work efforts. The real breakthroughs I see are:
- Simplicity of accessing content
- Accessibility of content from multiple browser platforms
- FREE content
- Modular building blocks

When I was a kid, I walked to school five miles in the snow, sleet and rain leaving at 4 am...oops, ahem...wrong story.

When I was a kid, we talked about modular business components, lifecycle frameworks, plugins, and all the likes. The Amazon S3 APIs, the Google Web APIs, Web Services with WSDL so you can access the service from anywhere, are the realization of those initial strategies. Often, these newbies point fingers and say that the previous folks got it all wrong and that they have triumphed over evil. But nobody gets it right the first time and everyone ends up standing on the backs of others, whether they recognize it or not.

Here are a few things that these APIs (and Web 2.0) seem to acknowledge:
- They don't own the entire user experience (many initial "pluggable frameworks" were super modular, but also assumed that they owned the entire page (or application workflow). These new services are agnostic of the context they are put into, they do a job and offer multiple ways to call the service to get the job done.
- They don't take over the world, they adapt into the world
- They are content rich (who cares about infrastructure, its the content that matters)
- They are tool friendly (I can access the Google APIs or Amazon APIs from any IDE, any language, any platform)

Consumers (bloggers, etc...) have embraced the is good. But what is more interesting to me is that there is a gradual shift occurring in the applications that run the world (or your storage, or your business). These applications are slowly being broken down into pieces and rebuilt as a mashup of their own. Applications that profess to know what is best for the user will disappear. No two system administrators are alike, why should we force them into a single user experience. Granted, it is still the job of application developers to build the most-likely best user experience, but through gradual discovery, application users should be able to customize their experience to contain the information they need, when they need it. And that information should not have to be boxed from a single company.

Let's use an example of Google Maps. Google made a great APPLICATION, I can find stuff with it. But they also realized that in building their application, if they made it modular enough it could be plugged into other applications and used in ways that they didn't intend. Rather than build the one user experience for all, let developers tailor the user experience based on other contexts.

We're in a cool new world, especially if the lessons of the mashup can be brought into other applications. Application developers that don't understand the value of the mashup are doomed...doomed I ha ha haha.

Gotta run!

Tuesday Nov 14, 2006

World Usability Day: Sonic Toothbrush

Happy World Usability Day! In honor of it, I am giving out my award for usability...drum roll please... And the winner Sonic Screwdriver Toothbrush.

You thought I was going to say my new Tivo Series 2. The enhancements on my Tivo Series 2 are excellent. I especially like the removal of the power switch. There is not a single power button on the whole thing, you can put it into Standby in the menus, but the removal of all of the faceplate options is awesome. One downside though is that I can't lose my remote if I want to watch TV. To go along with the removal of the buttons on the front, I need a remote locator or something...and as myself and the kids constantly lose the remote, I have to ding the Tivo for usability since now if I can't find the remote, I can't USE it.

BUT, I love my sonice toothbrush. I just bought it, it is totally sleek. There is a single button on it for three speeds. The button is easy to touch and cycle between the speeds. The holder is built for three different heads and it is built to remove the heads easily between uses. This allows my son (who also loves the sonic toothbrush) to replace the heads simply without any stress to the engine. The most interesting thing on the toothbrush is the built-in timer. Every 30 seconds it stutters and at 2 minutes it has a more distinctive stutter to ensure you know that you can stop at the 2 minute mark (the recommended time to brush).

The handle is perfectly formed for my hand and the brush head is curved.

Very cool. Sonic Toothbrush, happy World Usability Day. Now all you need is a screwdriver setting so I can use you as a power tool.

I am looking around my desktop for some software that meets usable criteria. I have to say I am VERY unhappy with all of the IMing software, and the built in blog tools are awful all over (but getting better). The Tivo Desktop software is terrible and so is Amazon Unbox. Built-in RSS readers to the browsers are still annoying (its called a WEB PAGE...get over it) and mashups are definitely interesting, but developer focused. BitTorrent is not very user friendly either, but the reason to use it occasionally overcomes the usability issues (could someone please figure out how to get Interaction Designers to work with and be recognized by the open source community?). All of those online mail improvements using Ajax (I'm talking to you Google, Yahoo and others), you don't get the usability award since you seem to have just reproduced Thunderbird and Outlook but inserted plenty of locations for movie trailers.

So, drum roll usability award for software goes to...THE WEATHER BAR ON THE BOTTOM OF MY FIREFOX BROWSER. Whoo hoooo....Forecastfox, you rule.

And finally, Ajax, you get the Usability Plumbing award. You have all of the potential to bring the web to the point that X Windows/Swing and so-called "Fat Clients" were decades ago. Granted, you are awfully smooth and polished in many of your incarnations (often smoother than existing "fat clients") and I won't tell anyone that you are secretly a "fat" client with tons of supporting infrastructure from the browsers and secretly consuming lots of browser resources to download and cache information locally. Nonetheless, I welcome AJAX to the web experience this if only my web-based blogging tool could learn from AJAX.

So, if you are an application builder, call up your Interaction Designer and tell them you appreciate their input (even though you may not always listen to it).

Happy World Usability Day!

Monday Nov 13, 2006

World Usability Day is November 14th!

November 14th is World Usability Day! If you don't know what usability is or why it matters, there are some great posters at the World Usability Day web site. The posters are, of course, geared to the broader topic of usability as it touches us every day. As a computer guy, I am occasionally responsible for influencing (and occasionally controlling) how "usable" our products are to the consumers.

Usability in software products is a competitive differentiator, especially in a bid situation. There is a finite amount of time to make an impression on a user and if they cannot properly interact with a system to achieve their goals, you will be thrown out of a bid.

Often, software engineers believe that they can build a usable interface merely because they are good at putting widgets together and understand the functionality of the product. Unfortunately, the combination of "knowing" the functionality of the product and being able to whip together a "user interface" can be a dangerous combination. As I've been shown over and over, an engineer's gut instinct is to represent all of the components within the software and all of the possible object attributes, then uplevel these to the "user". This works great for the developers since the product functionality is relatively easy to test.

Unfortunately, this often does not work well for the REAL user of the product. User interfaces built by software engineers are often complex for real-world users and don't take into account how a user would best "interact" to achieve a desired result. I first started to understand this concept when I read the book "The Inmates are Running the Asylum", here is a review. The book discusses the art of "Interaction Design". I don't remember it very much in detail, so I'm not going to try to regurgitate it here. BUT, keep in mind a lot of what I say here originated with that single book that served as my epiphany.

Here are a few things I've learned over the years about users, many via hard earned lessons (that I could have learned quickly had my ears been open when Nancy talked to me):
- They want to be able to use a product quickly and without reading a lot
- They don't want to be intimidated by a product
- They don't mind gradually discovering things in a product as their need and expertise level increases (basic / expert modes, search bars, expandable property pages, etc...)
- Mistakes in the interaction model can kill (literally)
- Common language is important (if you are in the storage world, tell me, what is a "Volume"...seriously...its a trick question, a "Volume" has different meanings in different contexts)
- Number of clicks does matter, but no more than meaningful and expected behavior from those clicks
- Visual representations are incredibly important and if you don't put the proper graph up for the proper purpose, you are simply wasting space and confusing people

The last bullet is particularly interesting to me as my neighbor spent much time working with our user interface design teams on figuring out proper presentations for various information. I was amazed at how useless and confusing pie charts often are (especially in the storage management space), it blew my mind. On the other hand, what user's needed was often a pareto chart (even if many didn't know what one was). A pareto chart for things like capacity consumption or performance bottlenecks is like a little piece of magic. Basically, a user could look at the pareto chart and find the top 10 offenders for some parameter, and how badly they were offending, like this pareto chart that reflects IO performance on a product that I used to be the architect for. Pie charts are often confusing as to what they are really showing. Our engineer doing the pareto chart also found that the ability to offer the chart (top 10) along with a table-view was a sweet spot. It gave "at a glance" in a not-to-crowded way along with the ability to get very fine-grained details.

Still, I digress. My belief that has been built over the years is that
- Interaction design is a critical early step in product development
- Interaction design and usability does NOT hurt product schedules on average, as long as the team is disciplined
- Interaction designers and usability engineers are RARELY built from the same material as software engineers, we are just "different"
- If a software engineering team cannot truly interact patiently with an interaction designer or usability architect, perhaps they don't really know how their product will be used, which in of itself justifies their time spent with the interaction designers and usability architects
- The penalty for not using an interaction designer or usability architect is often software engineers that quickly create prototype user interfaces but then spend weeks and months tweaking it to "get it right" (and never really getting it to what a user wants). The user interface also often stacks up poorly against competitor user interfaces that did use interaction designers, especially in competitive bid situations and product comparisons.

In summary, take a few moments on November 14th, World Usability Day, to marvel at a few things that are usable, and a few things that are not usable. Pay attention to software. Think of Tivo vs. the old days of VCRs. Think of a Network Attached Storage device vs. a General Purpose File Server. Think of two competing products and what you like about one vs. another, you may be able to guess which ones have interaction designers and which ones don't. Be careful NOT to look at your own software products if you are an engineer, you will be deceived by your own deep knowledge about the usability of your product.

Friday Oct 13, 2006

Amazon Unbox: "Worst Tech", interesting ideas...

The Amazon Unbox service received the #2 placement on CNET's Worst Tech of Q3 2006. To be honest, I installed it for a while and was definitely not a believer in the first iteration. Still, there are some interesting ideas in it.

I will give you, there are annoying things about Unbox. You can hunt these down anywhere on the web. On the other hand, Amazon should be given at least a gold star for sticking themselves out there. Web 2.0 is all about the perpetual beta, getting the idea out there and incrementally improving it with use. Here are some interesting kernels that makes me wary of outright dismissing Unbox because of a few bad experiences:
- They are experimenting in a "rental" system without any physical media. This results in your PC being permanently connected to the Internet and frequently checking in with Amazon but, seriously, most of us downloading video are permanently on the Internet. Let's not mistake bugs in the system with an interesting business model. I can download a video and once I hit play I have 24 hours to watch it. I doubt these values are hardcoded and they are easy to tweak as feedback comes in. The video stays on my machine for 30 days and then retracts back to My video library on my machine is essentially self-maintaining (and with > 2GB per movie, is that a bad thing?)
- Remote Load. I haven't played with this, but here is the theory...Unbox is loaded on several of my PCs and I can purchase from 1 pc, but have it sent to another PC. While I sit here and type my blog, I can rent "V for Vendetta" and have it sent to my media center PC connected to my TV (ok, I don't really have one of those...but...) and when I'm done with my blog entry, go down and press play to watch on my movie in DVD quality! Remote load and DVD quality is a gamble on the future marriage of media center and your television, and its a good bet.
- What's going on in the download utility? Here's my thing, I can't find a dissection of Amazon Unbox download design and implementation, I googled and googled to no avail. Here's what I know: Amazon S3 and BitTorrent are married at the API level. Using the combination, you can easily conceive of a warehouse and media distribution mechanism not unlike Amazon's physical distribution system. This type of distribution system is necessary so you don't choke off Seattle's network when a big new movie comes out and people flock to Amazon Unbox to get it.

There is some interesting stuff going on here. The marrying of the sheer amount of storage required for video, the virtualizing of the connected clients into a managed storage grid, the CPU necessary to be cranking through the licensing and the client-stored video files, this is a large and complex system. Of course it will be buggy on the first time around. The question is whether they will get it right and become the defacto distributor of licensed video content. Perhaps a partnership with Tivo or another DVR company to avoid the cable company lock? Perhaps a partnership with a cable company to provide a better on-demand service than what the cable company can provide?

So, I may side with CNET on their "Worst Tech" list for Amazon Unbox, Iteration 1, but I'm not prepared to count them out. This is, if anything, an interesting case study in extending a storage grid containing licensed content into your home.

Friday Oct 06, 2006

Ode to the Movie Store and What Comes Next

My new record player has inspired me to think about all of the content distribution mechanisms I've lived through and author this astounding Ode to the movie rental store (at the end of my reminiscing). When I went to college, the dominate formats for music were vinyl and cassette. Within 2 years at Winona State University, I was fully converted to CDs. Now I'm buying DVDs and online music. My son owns an MP3 player and regularly gets music online.

Movies are undergoing the same transitions! Stores that offer just music are disappearing and have been for years. Northern Lights in Minneapolis closed its doors years ago, my mall doesn't even have a music store in it! That's unheard of! Blockbuster is closing its doors nearby as well. Not only were record stores social gathering places, they were just cool. Now, the social gathering places have moved to the net.

Is it because we aren't listening to music or watching movies at home anymore? For my family its quite the opposite...I have more music and TV at my fingertips than ever before. Its just all digital or going to be soon!

Companies are going to have to invest in massive increases in their data centers and regional data centers to facilitate digital distribution through mechanisms like BitTorrent and CleverSafe (to ensure high reliability and to facilitate the high throughput necessary for distribution). The global storage grid will be driven by digital content delivery and those technologies will, in turn, be driven into our operating systems and the network ecosystem.

You can be a part of this revolution (as I am here at Sun Microsystems), or you can drag your feet (as I decided to do when I purchased my new record player), but the obituarary has been authored and all that's left is to round up the rental stores that don't get with the program and whap them on the head with a Zune or an iPod. If they don't get it then, say your goodbyes and sell the stock!

For now, I will simply write my Ode and then get back to work getting some of these storage technologies defined and out the door ;-)

Oh movie rental store
I shall miss thee
Wandering your aisles
In hopeless fascination
Of the movies I missed
And those that I should have

Oh late fee
I shall miss thee
The excuses I've made
To account for $3.99
The arguments I've made
For being late by a day

Oh big overpriced candy box near the counter
I will see you at the grocery store
Jujyfruits to throw at friend's heads
Will have to wait for the theater
Bags of Newman's popcorn
We can't digitize you

Oh 2 hours of saved time
How shall I use you
Before I gazed at boxes on a wall
My legs with exercise
Now my thumb will be sore
As I page through my choices

Oh pointless spa
I don't need you
And I miss my movie rental store
My exercise from the couch
My endless hours of staring at your walls
And my DVD scratches


Thursday Sep 14, 2006

HP, A Thumper for your Phone Records?

It occurred to me today that with HP's increasing use of phone pretexting to track and analyze the behaviors of their board members and tech journalists, a Thumper (X4500) would be perfect.

[Read More]



« July 2016