GUI Design : I like to focus on important tasks.

I take a lot of inspiration from the iPhone, as to me its this device that fits in your hand and has not a lot of real estate, yet it accomplishes more tasks at times than most computer desktops today. I can make calls, check email, look at calendar, browse sites online, play a game, set a task, take notes, tag a song for future purchase, tag a book for future purchase and so on.

All tucked inside a small device.

I typically each morning, check email in bed when I first wake up - habit from working at Microsoft where email dominates your life - and it struck me this morning about the way the iPhone was designed. I looked at the outer frame, and noticed for the first time that it was designed in such a way to be simply a "frame" to what is important, the software.

It hit me as a profound thought that despite the look and attraction of the iPhone, the actual device itself was firstly made to look appealing as it sits in your hand, but secondly it was designed to fade into the background when you decide to actually use it.

image image

Armed with this thought, I jumped on both my iMac and Windows machine and explored the various applications I have installed and noticed that there seems to be a lot of confusion on the Windows side of things and less on the OSX side of things. It struck me that the difference between Windows and OSX isn't the brand wars, it's the subtle way things are designed to keep people focused on the task and less on the framing of the task.

In Windows, each application becomes its own pattern, or "iPhone" whereas on OSX typically most applications chrome looks the same, in fact it must be extremely hard for software vendors to deviate from Apple's look and feel.

This then made me think about how I've designed UI in the past, and I often think about the way I've approached the overall user interface. I have since then experimented with the way one project's design looks, and thought about how my chrome should be prominent at the start of the applications boot sequence (login etc). Then once the hygiene task has taken place, it's job is then to blend into the background.

Look at below, you will see that in isolation the design (even in its blank canvas form) becomes a focal point, the icon and then the panel at top etc.


Now look at the change if I simply add a rounded white rectangle, the actual chrome fades to the background, and the white overpowers your attention. You probably wouldn't of even noticed this had i not told you about it either.


This to me is where I think software design - aka interaction design - can make or break you in terms of how users interact with your solution. My theory is that a user interfaces job is to take you to the heart of a problem, its job is to connect you to the most important thing you can possibly do from within the context of the application. Sadly though, I rarely see this in software design today, all too often I see the software become more of a Swiss army knife in terms of features and needs. The argument there is well we are good at processing multiple tasks at the same time, which is true, but i also can't but help wonder if we're following the same mundane pattern over and over, resulting in no evolution in GUI.

The only evolution in GUI that I've really seen in the last 5+ years has been the introduction of gesture based interfaces (iPhone, Microsoft Surface etc). This has changed the way we've approached design, as now it's about touching the glass and manipulating design with our hands. It's about designing around the fact we can't see through our hands and traditional software GUI has to change into something that accommodates the new approach.

In doing this, we reverted back to simplicity. This to me, highlights that as much as we want to argue that Office Ribbon for example makes life easier to experience the plethora of features found in Microsoft Word etc, the reality is, they (Office Team) just found a way to simplify the overall interface to the bare minimum, and keep people focused on the important features.


The problem though is I can't seem to separate the framing of the software from the functionality, meaning as I type this blog post in Microsoft Word, I keep noticing the Ribbon Menu as I type. I instead want the UI to somehow take the life of the white document space and this is all I see, then when I need something from the office draw, I then go to it. The same as if I would on my desk at home, where if I need a post-it note etc, I turn away, open a draw and get it.


Its a rough example, but the point is hopefully made.

Related Posts:

EGOSPY – Sneak Peak.

image It’s now approx 1 week since I left Microsoft and its been an amazing and relaxing time for me, in which I've sat down and mapped out various RIA based projects I’ve wanted to work on for the past 3 years. The one project that’s taking the bulk of my latest interest is an application I’ve called “EGOSPY”, something in which I think the RIA community will probably meet with mixed feelings.

The application came to me yesterday after I watched a few comments on a blog post I posted on around Adobe and the recent iPhone announcement. The parts that struck me as being odd, were not so much the opinions expressed by folks on that blog, but it was more along the lines of what they were saying and how they went about saying it. I’ve often found the overall behavior in general around the RIA community very political when it comes to choosing a technology platform to adopt (on both sides of the isle). Its always been a fascination for me, as I've been on both sides of the firing lines and have watched in depth how various factions interact with one another.

In light of this morbid curiosity I seem to have, I thought of an idea on what if someone tracked these skirmishes? in that what if someone wrote an Application that essentially keeps score, measures the impact each event has and as well as track the behavioral patterns of the folks who comment etc. This is what EGOSPY is going to do and the chuckle part for me is I'm building this in both Adobe AIR and Silverlight Out of Browser – in case others may want to peak at the data, they can do so but not have their brand-religion impacted (choose your poison if you will).

You can see a sneak peak at the concept in play so far (basically its a still of the console) as i’ve got the base foundation laid for both Adobe AIR and Silverlight codebase + assets. I’m now wiring the various moving parts to it, aka the secret sauce.

I intend to use both Amazon Simple Database and S3 Storage as well as ASP.NET and Windows Communication Foundation as the proxy/filter at times between Amazon and the Client.

I’ve also drafted a breakdown of the types of personas I'll be monitoring and looking to validate with some basic home grown research. Feel free to add/subtract your input here:

image High Priest/Priestess.
The architects of a brands doctrine and will often be seen at major religious events only. These entities will often command the Priest/Priestess into action in and around how they approach situations that require a response from a brand. They will at times take a passive aggressive approach to competing brands in an open format, all the while providing a behavior model in which they expect to be repeated by Disciples, Priests/Priestess and Fanatics.

Belong to the secret order of a corporation and their jobs are to ensure all believers of the brand remain so. They will typically enlist and/or encourage Fanatics/Disciples to fight for a particular cause, especially if a brand's doctrine is challenged openly. They often prefer a swarming effect to an event in the hope of drowning out all chances of the vocal minority from exerting their objections/beliefs around a given doctrine.

image Spinsters.
Are specialized fanatics who often follow a strategic transmission pattern to indoctrinate the target group. This may begin with a simple transmission such as a provocative blog post, video medium or an advertisement eluding to imperfection in a competing brands doctrine.

image Disciples.
Someone who believes and helps to spread the doctrine of a given Brand. A typical Disciple is pretty locked into the belief system outlined by a given brands priesthood. They rarely deviate from the doctrine and will typically challenge any who argue against it in an open manner. Disciples almost never provoke attacks, and are typically defenders rather than aggressors.

image Berserkers. 
These types of people are dangerous. They do not execute restraint and will often attack any who get in their way. They differ from Disciples but only slightly as these types do not favor any one particular brand. They generally are easily irritated by ignorance.

image Peacemakers.
These types of people often favor a particular brand, but will often move themselves into position to ensure that hostilities are reduced to a peaceful resolution. They typically don't outwardly project their brand beliefs onto others and are more inclined to allow others to co-exist within their community haven.

image Fanatics.
Extremists who will actively provoke arguments in order to enforce their particular brand belief system on others. They cannot be reasoned with and are typically vocal and approach situations with high amounts of emotion attached. They pride themselves of on being aggressors and will rarely make coherent points and will instead focus on ad hominem attacks etc to shift focus from a given cause.

image Apatheists.
Someone who has an indifferent attitude towards a brand and the existence of its Priesthood, Disciples and Fanatics, not really caring one way or the other about brand issues. As a general rule, this lack of interest is motivated by a disinterest in Brand but are more focused on what the Brand produces.

imageSkulking Ninjas
Someone who is obviously a fake alias, but has suspicions of being part of the Priesthood, Disciples, Fanatics or Spinsters. Typically these people often are part of the Priesthood or Disciples but can’t show their true identity for fear of open reprisals and/or are looking to defect from the doctrine but can’t due to severe penalty clauses. At times these folks are personal, and are there not to debate or interact on a given topic, but are purely motivated by an absolute hatred regarding a particular person.

The ghost who talks, typically someone who is obviously a fake alias as well (much like the Skulking Ninja), difference however is they are consistent in their alias and often will talk about a given topic/brand without ever being identified. They are a secondary identity attached to someone who either prefers to remain anonymous or can’t reveal their identity due to the possibility of either criminal charges, political retribution or career limitations imposed. They thing about these entities are that whilst they are essentially a lie, they often speak raw open and transparent truth majority of the time – given they have no fear.

The concept behind EGOSPY was inspired by this discussion via TED. As i often think that in part the social impact that the above personas have is in many ways part of a kind of brand focused censorship – aka brand dictatorship.

An example of the GUI.


Related Posts:

  • No Related Posts
Posted in Uncategorized | Tagged

Do we have one site too many?

In the past month if you’ve interacted with via twitter, email, facebook etc you’ve probably been asked by me “How many sites do you visit a week”.

I only ask is that I've got this theory or ill feeling that we at Microsoft are making far too many websites than we need to, but at this point it’s just a theory (i have no evidence or data to substantiate this theory either)

I’ve created some artist mockups of where I’d love to one day position Microsoft and the way in which we interact with the community  and potential customers. It’s an ongoing project, one that I’m doing to provoke some new thinking inside the company, but first I at times need to pitch what I think the initial problem is. Have a look and tell me if you agree or disagree?

Slide 1 – What do all these sites have in common?


Slide 2 – They can be quite frustrating to discover and use?


Slide 3 – They require unnecessary persistence.


Slide 4 – They echo the same data at times a rate that makes your head spin.


Slide 5 – They require you to think in multiple personalities.


Slide 6 – They all try and be different, but the end user is usually the same.


That’s the theory anyway. What do you think?

Related Posts:

A tip on learning Silverlight. Throw away your code

You can stare at that blinking cursor inside Visual Studio all you want, it’s not going to give you an immediate insight into how you should architect your Silverlight solution so that it can be reusable and scale.

It’s not that you’re an idiot or aren’t good at programming, it’s just that you are trying to juggle learning Silverlight and building it at the same time. You’re already stressed, at making some bets around adopting the product or maybe you’re trying to still decide if this is still a good bet. Don’t add more layers of stress by trying to find a way to keep your entire code base re-usable.

Yes, your background in ASP.NET or WinForms is going to help you a lot going forward and i bet you have a bunch of best practices or albeit ones that you’re comfortable or at peace with (screw that guy who tells you you’re doing it wrong, did you ship? yes, well back off is what I'd say).

Silverlight is going to be different though, it’s going to require you to rethink a lot of things you’ve learnt in the past. Now you can blame the product for making you change your behavior, sure that can be an easy way out i guess, but you’re smarter than that and you adopted this for the right reasons. You’re rising to the challenge, and i’m telling you now, the code you right in the first phase of your adoption isn’t going to be poetic.

Stop wasting your time trying to build a framework that is scalable, you’ll do that in a few months. Instead, get used to the feeling of producing a solution one that you can throw away – yes i said it, throw away – in a few months from now.

Just ship. As time passes you’ll get experience, just like you did with the technology you’ve just spent x number of years spanking to death. Only this time, you’re going to be in the next early majority and you know what, it’s going to be more fun – i guarantee you.

I’ve spent close to 15 years programming for the web, i miss it. I enjoy it and I've used nearly all languages associated with the web (you name it, I've written an app for it) and for me as a Product Manager for Silverlight, I often grow jealous of the work you do.

Do me a favor though, practice more. As when I leave Product Management for Silverlight and I one day jump into the hot seat with you, I expect – no – demand you teach me what the best practices are.

The guys on my firewall can’t help you just yet, as we’re busy building the actual product itself, but soon once it stabilizes our teams over at Patterns & Practices and Framework crew, are going to show you the Microsoft way, but that doesn’t mean its the right way, it’s just our preferred way.

We hope by that stage you’ll contribute back and we’ll move forward in Rich Internet/Interactive Applications (RIA).

Throw away your code, trust me, you’ll be better next time.

Related Posts:

Don’t abuse the Desktop.

If you’ve read any book on design patterns, prospective memory is bound to come up. A lot of folks may read it and go “ahh, nah, i don’t know what to do with that” and i state this as i constantly wonder as to why applications continue to hassle users to “Save this to the desktop”.

The desktop inside windows in my mind is like your desk in your office. It’s your surface area where you keep things that you can recall at a later date - “I’m going to put that TPS report in the upper right of my desktop surface, so i know where it is later”.

Problem today in software land is everyone keeps asking you to keep their TPS Reports on your desk and either you’re too lazy to agree/disagree or you didn’t notice they just did it. Pretty soon your desk is cluttered with lots of paper and it’s hard to find your chosen items vs.. everyone else's.

Don’t abuse the desktop.

At present I’ve not seen an installation experience that tackles this problem other then a weak check box that is default checked (like somehow its important that you clutter my desktop) and that’s essentially your way out of this installation spam.

It doesn’t work really, as firstly you’ve got to be conscious of the fact that the checkbox is asking you “Would you like me to add to the clutter” and secondly making things “default checked” is an assertion really, much like “Push Polling” – it casts a prejudice up front and rarely have i seen actual self selection work.

Instead we should approach it differently. Instead of approaching it as a default checked item, allow the users to opt in manually and educate them on the power of the desktop itself and why it exists – as often I'd argue folks assume its simply part of the vortex of “things i don’t understand about my computer”.


Would you like to save this application shortcut to your desktop? Yes/No

The desktop is where you keep important information on your computer that helps you remember where things are – treat it like your desk in your home/work office.

Something like that anyway.

I’d argue the desktop today has fast become the wasteland of “icons that i’ve long forgotten” or “those icons that get in the way of viewing my desktop background”.

Related Posts:

What does a potential Silverlight Adoption Lifecycle look like?

I’ve been working in this industry since i left high school back in 1995, and I often think about my journey to date and how I've adopted a technology. I then as a Product Manager on the Silverlight Team constantly try and put myself in you, the adoptee’s shoes. I’m constantly thinking about what it takes for you to adopt and what are the motivational events that have impacted you along your journey.

The below is my own personal experience / observation of the industry in general. It doesn’t stop at Silverlight either as prior to Microsoft I watched folks do the same with Macromedia Flash and then Macromedia Flex.

Not to mention AJAX and so on, even HTML! – yes, I watched the birth of HTML unfold into what is now a commercial entity known as oxygen ;).

The Adoption Curve.


Contact. You’ve found the word Silverlight fly past your senses, you’ve not pinned down what it is but its the talk of the town

Awareness. You just finished reading something about it and have a somewhat bit of knowledge in and around what it’s capable of doing.

Understanding. You just finished a tutorial, training session or brown bag, overall you’ve got what we commonly call a “basic” understanding of the product.

Evaluation. You’re now writing a quick prototype of a project you’ve thought about making in Silverlight. You’re still unsure, but the product has captured your interest levels.

Trial Usage. You’ve built a first draft of your Silverlight solution, and you’re essentially shopping it around for feedback and help you up sell / include this into your peer’s technology radar.

Adoption.You’ve built your Silverlight solution and are ready to deploy, you’ve troubleshooted your way through learning the product and are now what we would call an “Adoptee”.

Institutionalization Your solution is in play, you’re now thinking about the next release or next project, you’re well on your way to success and have either a positive or negative feeling towards the brand.

The Learning Curve.

I’ve often thought about the whole competitive story around what it takes to adopt a technology. I know I've personally learnt more technologies than i thought my long-term memory could contain, but none the less they are there, crammed deep within the dark matter of which i call my brain (Java, PHP, C#, ActionScript, Flex, XAML, XSD, Maya, VRML etc).

The reason I do think about the competitive nature of technology is that in many ways when you read a Flash vs. Silverlight style post (insert Apple vs. Microsoft etc) it at times reads as if that technologists are easily conned into adopting a technology they’ve never used before.

In that the x number of years they’ve spent nurturing their chosen technology could easily be diverted to the new shiny toy that they have before them.

I put it to you that, folks aren’t that easily swayed, that often its simply a case of a number of factors. They are:


Boredom.You’ve been using X technology for the past N years. You’re essentially peeked in terms of all that you want – not can – learn from the said technology. It’s time you explored your horizons and shop around for what’s the latest & greatest, that or research an old technology simply because of the nostalgic geeky cool flavor it brings to your technology palette.


Goldrush.You’ve seen how much others are making off the Y-Technology and you’re keen to get some of that action. You are motivated my greed, but that's ok, as in the end getting a leg up in life is fair game. You typically would of probably ignored this technology in the past, but all the other kids are doing it, so you’re essentially force fitting yourself to the adoption.


Duress.You didn’t want to adopt, but you’re forced to due to a project you’re working on or about to. You start off in a negative state, in a duress state. You’re constantly trying to marry your existing skills over to this new technology but are finding it a rough road to follow. Eventually you figure it out and have an overall negative / positive emotion around the technology. It’s at this point you decide to either continue to pursue the adoption or abandon and retreat back to your preferred X-Technology of choice.


Curiosity.You’re neither bored or motivated by gold / project. You’re simply one of those people who love to explore no matter what the technology. To you, technology is about the art of creation and problem solving and you tinker with them like someone explores a music library – all music is good, it just depends on the listener.


There are different motivational reasons as to why someone adopts. There is no one fits all approach, and given in today's IT environment there are so many moving parts to keep track of, it’s not an easy thing anymore.

In the old days, I remember learning Delphi vs Visual Basic. I choose Delphi simply because I couldn’t grok the VB way of code, to me the Delphi seemed more natural. Delphi didn’t get the uptake as much as VB did, so what happened?

Companies like Adobe, Google, Microsoft, Apple, Sun etc all have an offering to provide you all. The main mission overall is to highlight the technologies strength, divert from the weakness and encourage you to at least get as far as the Understanding stage in the life cycle. From there its entirely up to you, as that's where the freedom of choice really kicks in (there is only so much a company can market).

It’s from here that you decide based on merit and personal experience (aka Time vs. Commitment) and ultimately this is the true test for these companies. As for us in Silverlight this is where if were to take a pulse at your confidence level, you’d tell us data that I'd rate as pure signal. As this ultimately for us is the tipping point of success vs. failure for the product as its our job to make sure you understand what the product is, ensure it’s easy to learn and lastly reassure you that you’re not alone – as nobody likes to actually bleed when it comes to bleeding edge adoption.

Is that all?

Next Post, how the human mind absorbs the adoption lifecycle, lets dig into cognitive science. The new fad i like to call “Cognitive Load Theory”, as once you fully understand how the human mind works and ways to seed information in both short-term and long-term memory, it gets really interesting… well for me anyway.

Related Posts:

Apple vs Microsoft – Web Usability.

Microsoft vs AppleI recently found a site via a colleague today, which basically outlines the way in which we approach our customers/consumers via the web compared to

[ Click here to view the post ]

At first I just simply groaned, and waited for the beating, as I know internally I've moaned about our approach, so i was expecting to see us slaughtered in a pro-Apple fashion. The Author however, did approach the post from an unbiased perspective in my opinion, and i don’t see anything outrageous about the post (other than the stupidity in the comments in parts).

I happen to agree with the majority of the points and have arrived in many ways at similar conclusions to the author.

For me, I recently (early this month) took ownership of our site (specifically the User Experience) and it’s a site I've agonized over for weeks on how to fix. The current version of the site is not one we as a team are content or happy with. We can do better, and we will, but its posts like this that help me navigate the best approach with regards to user experience and information architecture.

Silverlight is one of these products that we are keen to simplify more in terms of understanding of what it is, why its important you invest in and lastly what the possibilities are in using it.

Keep it Simple, Don’t make me think – are the mantra for my next version of the site and it was blog posts like the one mentioned that simply help.

I love this kind of open raw feedback, we need to see more of it.

Send me your vision of how we should build 2.0, i.e. what is it we can do better, what we aren’t doing, lets paint a vision of the future? If you feel in the mood to redesign the sites and want to pitch your design to that team, PLEASE DO SO.. I will walk your pitch to the team(s) myself personally.

Related Posts:

Apple stole my whitespace.

I often meet up with a co-worker (Michael Bach, Product Manger & Designer for and we talk all things design. As it for us is therapy given we are constantly surrounded by engineers within Microsoft 🙂 One insight Michael came up with the other night is that Apple own white. It got me thinking and the more we looked at how other sites are designed, the more we both agreed that in the end its very hard today to come up with a site design that uses a big picture and is done in white without someone saying “dude, that’s so apple”. I’ve done some design mockups for that i want to pitch to the team, but am very annoyed as the more i look at them the more i can see them being labeled “that’s so apple”. Another insight is that we noticed these days a lot of the brightest and best website designs seem to evolve around a central image, in that photography is playing a vital role in the way sites are designed. A big vibrant picture can actually hide a lot of “meh” in a design. Example: With a big vibrant image, i found my initial reaction to this site to be well designed. image Now without. image It just seems flat? and very monochrome. You can find more at (Web Creme Web design inspiration) and have a look at BIG Image vs SMALL Image. Now lets take a throw-away design I was tinkering with for image The design is ok, but the image for me lacks life in that without the image, the design would look very basic. Now lets see what happens if I add some other elements that i got from another site (as it struck me as a great concept to mood-board together from). image The two look completely different imho, and it sort of brings new energy levels to the design – even though its a very very basic design in the first place. Damn you Apple, damn you and your white space designs. image Scott Out.

Related Posts:

User Experience – The Kettle.

image How many kettles have you owned over the years? is it more than one? has it always been the same one? It’s a pretty straight forward device, you fill it up with water, it heats up and then you tip the contents out into a container. Why then are there so many varieties of Kettles? Why are there constantly new ranges or approaches to the Kettle that come out each year? The answer lies in the fact that end users are like Kettle owners, each has a unique preference and taste towards something we often take for granted each day. image Each time a kettle is designed, it’s done so typically with an idea of who the end user is and how it could blend in with the rest of the owners kitchen style. Software is no different to the kettle in many ways, its job is to blend in with the end users desktop, compliment their confidence level and ensure it upholds the core functionality required in order to carry out the task. I all too often see folks go off the deep end with the User Experience in their RIA solution, and I often ask if they’ve stopped boiling water and are doing everything but that simple task. Keep it simple; keep it fashionable and always think about User-Centric Design first, engineering second. You’ll find life gets easier that way. Brought to you by RIAGENIC.COM – Where Design + Technology Intersect.

Related Posts: