A Silverlight CSI Challenge

caruso

One of the peculiar things about Silverlight applications is that, while SL provides the tools to create new and interesting user interface paradigms, most Silverlight apps currently being written look like revamped winforms or web form UIs.

This smells like a missed opportunity.  The problem, of course, is that it is difficult to come up with new ways for people to interface with their computers.  Developers and designers tend to fall back on the metaphors they are familiar with.

If you want to find interesting UIs, you need to look at your TV or the movie theater.  Movies like The Minority Report, while even more confusing than the Philip Dick story it is based on, succeeded mostly on its ability to show us what the future would look like.  Shows like the various CSI franchises succeed in making that future look like it is available today.

At the office, we get a big kick out of recounting the latest weird, impossible software being used on last night’s procedural drama to catch the bad guy.  What we rarely examine, however, is the fact that we can use Silverlight to build apps to look like – if not actually function like – those fictional software programs.  So why don’t we?

If we want to find new metaphors for the UI experience, it makes sense to go to the experts – television designers.  They have already done the hard creative work.  All we, as software developers, need to do is copy them and see what actually succeeds. 

So put on your Horatio sun glasses and build something from CSI, or Bones, or Criminal Minds, or The Minority Report, or any other technologically fictional world and see if you can make it real.  And when you are done, you can peer over your shades and drop a cheesy line like “Looks like his XAML finally got rendered.”

David Carradine

kungfu

As with many people, the passing of David Carradine has left me quite shaken.  David Carradine, after all, was the reason I got into consulting in the first place.

Kung Fu, the Ed Spielman TV series in which Mr. Carradine played Kwai Chang Cane, a parapatetic Shaolin monk in the American Old West, left a lasting impression on me.  If you are unfamiliar with the series, it revolved around a half-Chinese half-American man trained in Kung Fu helping people out as he travelled from town to town searching for his American relatives, all the time pursued by the Chinese Emperor’s assassins.

It may be hard to believe, but when I found out about the world of Software Consulting, I realized that it was my opportunity to fulfill my childhood dream of living the life of Kwai Chang Cane.  It’s a bit of a stretch, but think about what a consultant does. He travels from company to company assisting them with difficult technical issues they desperately need help to resolve.

Let me say that the reality has been as good as the dream.  In the past year I’ve managed to:

05/08 – 07/08

Upgrade a billing application for a national furniture chain located just off of Jimmy Carter Boulevard from VB6 Forms to an ASP.NET 3.5 application with limited ajax functionality.  In the process, I helped out a group a beleaguered shopkeepers being extorted by local thugs.

08/08 – 09/08

Gather requirements for a POC Silverlight project while investigating why a beautiful roller derby skater was killed.

10/08 – 11/08

Assist in the data migration of an insurance company’s legacy data – horribly denormalized, unindexed and lacking referential integrity – from a Paradox for DOS system to SQL Server 2008.  At the same time I was able to rescue the office manager’s cousin from a Turkish prison where he was incarcerated under trumped up drug trafficking charges.  I was able to do this with some help from friends who are Vietnam vets in hiding from the US government for crimes they didn’t commit.

12/08 – 03/09

Design a reporting framework for a mortgage company going through hard times that heavily leveraged third party charting tools while also arranging a new life for a protected Federal witness — who was testifying against his mobster brother — and help him to visit his sick mother before she died.

04/09

This was a fairly quick gig.  I had to design and build a WPF point-of-sale application for a cruise liner.  During installation of the software I teamed up with a consultant from a rival firm to defuse two sophisticated bombs aboard the cruise ship while overcoming our mutual animosity and learning to work together and ultimately develop an abiding respect for one another’s abilities.

05/09

I had some down time in June, so I reminisced about my adventures to my colleagues clip-show style while preparing for a certification exam.

If this makes consulting out to be something glamorous, I want to make it clear that this is not always the case – for instance the time I had to scrub crystal reporting data for a client or the time I had to hunt down oversized alligators in the sewers because they were eating neighborhood pets.  But between those times there can, indeed, be quite a bit of excitement. 

Consulting is definitely not for everyone.  It takes a certain mentality, a certain desire to not have the same routine every day, and of course it never hurts if you have the ability to make plastic explosives out of a matchbox and a stick of spearmint gum or can deploy a multi-tier application with only a command line utility and the spring from a ballpoint pen.

At least I look forward to coming in to work each day knowing that there will be something new and unexpected to make it different from the day before.

And I have David Carradine to thank for setting me on this path.

The Lees and Scum of Bygone Men

 

chinese_book

The following is a parable about the difference between theory and practice, which Michael Oakeshott frames as the difference between technical and practical knowledge, found as a footnote in Michael Oakeshott’s essay Rationalism In Politics.  I find that it has some bearing, which I will discuss in the near future, to certain Internet debates about pedagogy and software programming:

Duke Huan of Ch’i was reading a book at the upper end of the hall; the wheelwright was making a wheel at the lower end.  Putting aside his mallet and chisel, he called to the Duke and asked him what book he was reading.  ‘One that records the words of the Sages,’ answered the Duke.  ‘Are those Sages alive?’ asked the wheelwright.  ‘Oh, no,’ said the Duke, ‘they are dead.’  ‘In that case,’ said the wheelwright, ‘what you are reading can be nothing but the lees and scum of bygone men.’  ‘How dare you, a wheelwright, find fault with the book I am reading.  If you can explain your statement, I will let it pass.  If not, you shall die.’  ‘Speaking as a wheelwright,’ he replied, ‘I look at the matter in this way; when I am making a wheel, if my stroke is too slow, then it bites deep but is not steady; if my stroke is too fast, then it is steady, but it does not go deep.  The right pace, neither slow nor fast, cannot get into the hand unless it comes from the heart.  It is a thing that cannot be put into rules; there is an art in it that I cannot explain to my son.  That is why it is impossible for me to let him take over my work, and here I am at the age of seventy still making wheels.  In my opinion it must have been the same with the men of old.  All that was worth handing on, died with them; the rest, they put in their books.  That is why I said that what you were reading was the lees and scum of bygone men.'”

Chuang Tzu