Category: Design

Pretty Emails

html vs plain text for emails has been a raging debate for me for a long time. I have always recommended going down the plain text route to avoid getting tagged as spam, not to mention rendering issues.

Personally, I have found html emails to be distracting and annoying, so that was another reason to stick with plain text emails.

Recently however, the explosion of html emails has made it more important to cater to this requirement. We, as an organisation are moving towards html emails for marketing purposes and are also helping our clients send out html emails. There are several reasons for this.

My favourite reason is to make emails easier to read. When sending a newsletter, there are several pieces of information that needs to be communicated. With plain text, it becomes far too difficult to highlight important parts and highlight relevant information.

How can one then write html emails that get through spam filters, get rendered correctly regardless of email client and does not distract inappropriately.

An article by David Greiner titled Rock Solid HTML Emails covers key steps to ensure that your emails has the highest chance of rendering correctly (and bypass spam filters).

The basic idea is to build for the lowest common denominator bearing in mind that the email is viewed in an email client, not a web client.

Big thanks therefore goes to David for such a useful resource…

Fluidic Navigation

I have a dream – to think as little as possible. I agree with Arthur C. Clarke when he suggests that “Any sufficiently advanced technology is indistinguishable from magic.”

Therefore, how can we get technology to “magically” make things easier for us to do. The invisible interface, which I have covered before, is one outcome of such a concept.

In this particular case, however, I am referring to web navigation. In some ways, arguably the biggest user-interaction challenge over the medium of the web.

Read more »

Designing a website

Designing a website is hard work. By design, I am not talking about making it look good. I mean designing the structure, the layout, the design itself, the information and everything else that goes with it.

It doesn’t matter if you have the best design agency and the best technology firm to support you.

The design and technology that goes behind a website are simply the tools you have access to for building a website that best represents you.

This of course brings you to the age old question – who are you?

For a company like Kraya, this has been particularly difficult. The usual problem being that by the time a website is developed and taken online, things are already out of date.

This becomes less and less of an issue as we have now grown to a size where it becomes easier to have members of staff responsible for updating and adding content. We have also reached a stage where the core of the business has stabilised and the dynamism, fluctuations and changes are more relevant to the fringes of the organisation.

The easy option is of course to start from the core. What defines you. What has been a constant over the last nine years that we have been running. The answer from my perspective is really that we have been dynamic… Now this is difficult to represent without having the website change very regularly.
There are of course a lot of other constants that we can represent as well, and some of them are challenging as well to ‘prove’ so that it doesnt just sound like we can talk the talk but not walk the walk. The reality is that we have been walking the walk for years now, we just never bothered to do the talking… 😀

Font Fun

The first time I saw the selection of fonts available for use, I went through most or all of them to pick one I liked. I probably did that another two or three times but after that I got bored. I believe that font choice should be an invisible interface decision based on semantics of the text. At the very least, the semantics of the text (i.e. is it a letter, an article, a proposal, a blog, a creative page, love letter etc.) should narrow down the font selection to half a dozen at the most.

I left it at that for several years and just chose the default font or got someone else to pick a font so I didn’t have to worry about it.

Nathan’s post on fonts and frustrations got me to thinking about the fonts on the different operating systems / devices. Fonts are such a basic “service” that it should be be simplified, genericised and unformly distributable.

There are about four formats of fonts according to Wikipedia. I have to ask – why? Going back to the KISS(Keep It Simple Stupid) concept – do we really need four formats for fonts.

For something as simple as fonts, what warrants it to be so complicated to understand. Why can we not just choose a format that provides all the features needed – lets even throw in the ability to add DRM (Digital Rights Management) for good measure and deprecate all the other formats.

Let’s then write an cross platform application to manage all the fonts and get rid of everything proprietary. Let’s stop with the hacks and half-measure solutions.

In all honesty, while I was aware of complications with the “fonts sector”, it never bothered me since the operating systems have been helpful enough to take care of it all automagically. However, Nathan’s post brought something to light for me. If you want to use a specific font, which may not be available on a platform, there is no easy, uniform way to distribute it.

If I created a font, there is not easy way to distribute it. In the modern computing world. This is not acceptable – especially for something as simple (but important) as fonts.

Invisible Interface

I am a fairly avid reader of Jeff Atwood’s Blog and the post on Is Email = Efail post was particularly interesting. This led me on to Tantek Çelik post and several other articles relating to this.

The HCI (Human Computer Interface) has always intrigued me. This was partly due to the fact that I never enjoyed working with it – adjusting all those widgets by a few pixels so things could fit and it might look that little bit cleaner. Thinking about where a particular field should go and how it would all fit together was a little too bothersome for my liking. Precisely the reason why I enjoyed web development. Someone else could work out all the aesthetics and all I had to do was plumb in the functionality behind that.

Of course, it is never quite that straightforward – there was often plenty of to and fro before the interface was nailed down. However, the worrying of where something should go could be left largely to someone else.

It turns out however, that (like with most everything else in life) – I am very much opinionated about the user interface and design. The only difference is that actually doing the work does not excite me – but the concepts do.

In Tantek’s original post, he points out:

“The fewer fields in an interface, the lower the cognitive load.”

This is something that is vital to Interface design but something that is easily missed.

It was pleasant when I went back to one of our first high profile projects – megabus and checked the user interface on there. The number of fields on there truly was minimal. In fact, there was originally only one field on there and this had a reasonable default value. All the other fields are drop downs. There are now three fields on the uk version and two on the us version of the site. All with sensible defaults.

The other advantage of the megabus system is that when you hit search, the results are usually returned under a second. This is with a very complex algorithm to calculate the availability/pricing and around two searches happening every second. At peak, we have handled up to around 5 searches a second with the results being returned in under two seconds.

After this page, there are no more fields for entry apart from when you make payment. The benefits from the simple user interface and fast search response is, at least in my view, one of the key reasons for the success of the site bringing in people from all walks of life. This includes students as well as old age pensioners who learnt how to use computers and the internet just to be able to book megabus.com tickets.

It did get me thinking thought about the perfect user interface… Is it possible to reduce the interface down to nothing…?

Installation of Thunderbird/Firefox has a good example of user interfaces that can be removed. In particular, I am referring to the import from interface…

Import Data During Thunderbird Install

Import Data During Thunderbird Install

While this is a useful step, why does Thunderbird not do this in the background, find out what other applications are installed, do the import anyway (if possible) from any and all applications, merge them together as sensibly as possible and give the user the option of whether they want to use it, or parts of it.

I realise this opens a whole can of worms…

Q. Does this not mean that Thunderbird thinks that it is smarter than the user (as per my reference to Windows being “smarter” than the user in Evil Linux)?

A. No.

  1. Thunderbird should inform the user of what it is doing – don’t miscommunicate.
  2. Have a cancel button, so that the user can cancel if the process is taking too long and they won’t be using that information
  3. If the process fails dramatically for some reason such that the install crashes, this should be detected on the next try and the installation should be “more careful” when trying again or skip that step entirely

Another example is the Microsoft Office Installation process, The name and the company of the user is already in the System somewhere (User Account Details). Why not just use this information instead of asking for it again.

Same goes for Eclipse! Why does the author information not pick up the users name from the account information?

To summarise, the point that I am trying to make is that applications should not ask the user questions if it can figure it out itself. Most modern applications can pick up most if not all the information it needs from the system itself. This even includes theming information (as per my post on Design). While the majority of the theming in most operating systems is fairly pervasive in terms of application look and feel, applications have enough control over their look and feel to be different.

While this customisation can be useful, it can also be a hindrance to productivity and an allure for procrastination!

If I have specified somewhere on my system that my name is Shri Shrikumar, every single application on here should then be able to pick that up instead of asking me over and over again per application.

I look forward to a day when I never have to type the same information more than once… 😀

WordPress Themes