Visual Storytelling

I've always been obsessed with user experience; the way an 'experience' is crafted through software communicating to the user via their senses, and thus user interface design. It's something that's always intrigued me - we find certain experiences beautiful and immersive, and others clunky and ugly. It's a striking challenge: how do we present to the user something that will immerse and enamour?

A friend of mine asked me an interesting question after taking a look at my resume. At the top, I had described myself as a visual storyteller. I'm a software developer. What does visual storytelling have to do with software? Isn't that like... making movies?

Tom Cruise doing what he does best

Well... sort of.

Storytelling is one of the most interesting parts of human existence - a huge part of everyone's life involves storytelling. It's universal, and it's ancient. It's not just making movies. It's communicating.

If you want to communicate effectively and intimately, you need to know how to tell a story. This statement holds true whether you're talking about writing a book, shooting a movie, pitching an idea, writing effective software - anything. And what's more exciting than hearing a great story? Even moreso, experiencing a great story?

Story time.

Let me give an example... a very run of the mill story.

Julia wants to use her calendar on her computer or mobile device to mark down her plans to see a movie with her friends later.

You might think instantly of Google calendar, or whatever calendar app you might have on your phone. What's the story presented to you there? Well, there's a visualization of your schedule - you can see what you're going to be doing throughout the day, and hopefully, depending on the quality of the application, you can change and update the event listings to fit your schedule.

This isn't a very rich story, but there are many ways to craft it into one that is.

Calendar software today is very run of the mill

Imagine Julia creates an event: "Movie with Alex and Katie". Usually you might set a date and time and call it done. But software is smarter now, it has more resources - why can't it dig deeper and tell a more detailed story? Julia's calendar knows Alex and Katie - they talk all the time on Facebook. They both keep their calendars online, so Julia can be presented with times that work for everyone. Clearly this event is about seeing a movie - where are the theaters that are most convenient for everyone? What sort of movies are Alex and Katie most interested in? Suddenly this is more of a story about a trip to the theater with friends than it is an event entry on a calendar. Which do you think is more compelling?

All of the information that I described above is available or can be made available. But how do we present it and use it to tell this story? It's not as simple as it might sound - It's easy to overload the user with information. How do we give them just what they want exactly when they need it, even if they might not know they want it? That's the challenge of telling a good story.

The time has come.

Here's the best part - with today's technology, we not only can deliver a story - we can deliver an entire experience. We have the ability to deliver almost any kind of content we want to almost all of your senses. We can render any sort of visual experience we can think of. We can generate the sound. We can change the environment around you.

And what do the very best stories do? They understand you. They create an experience around you. Again, technology is unlocking this world - projects like Kinect can track your body and voice in real-time, gauge your emotions, and understand your language. The proliferation of open APIs grant access to a wealth of information - information about people, things, ideas: the world. As in the calendar example above, this enables us to tell more detailed stories about anyone and anything. Combine all of these elements, and it's hard to find limits on what can be done.

That is why I am a storyteller.

To be continued...