When Innovation Exceeds User Needs – The iCloud Case Study

Yesterday I saw a video about a talk given by Johnny Chung Lee, a human-computer interaction researcher currently working at Google on the Project Tango platform, at Stanford HCI Seminar – «Interface Technologies That Have Not Yet Left the Lab». I was impressed about the amount of extraordinary ideas which still haven’t reached the market. For many of them the time hasn’t yet come. Though as Johnny Lee mentions, one of the reasons why they may fail is the lack of good experience design. Interfaces are there to capture the human intent. Technologically driven people still tend to ignore the frustration felt by a user when he/she can’t achieve his/her goal. The over-excitement about new technology blinds them and puts the user into second place. That’s why one should always ask oneself – Why should a user use my product?

The Era of Specialization

During his talk, Johnny Lee was mentioning that we are facing a change of the technological paradigm. Firstly we had an «Era of Conversion» when we tried to combine multiple functions into one device, like for example our mobile phones. But now with the cost drop of multiple devices people can afford to buy the best product for each use case. Let’s say people prefer to buy a GoPro camera than to film with their mobile phone, they prefer to read a book through Kindle than through a regular tablet and so on. We are entering into an «Era of Specialization». Products are there to serve only a few use cases, though these have to have a good hardware, software and ux design, otherwise they won’t succeed in the market.

The Foggy Cloudy

The talk of Johnny Lee made me think about my personal experience with «new» technologies which lack a good user experience and don’t match society’s current needs. Then I thought about the first time I came across iCloud. Although I consider myself almost a digital native, I never trusted this «cloudy» invention. Maybe because I still remember writing letters to my friends, which means I’m not that much of a digital native. Or could it be because I wasn’t properly introduced to it? I felt like digging deeper into this subject and began to research about other users’ opinions, until I realised that I wasn’t the only one feeling lost when getting in touch with iCloud for the first time – there was for sure an overall user experience problem.

If I remember well I suddenly was asked to register to this iCloud and to upload all my personal data to «Apple’s Heaven». The «Apple Angels» would then synchronize all my Apple devices and I would never have to worry again. Of course I felt insecure and unsatisfied! What the hell? I want to be able to control what I want to synchronize and to backup. Like I did before with iTunes. But they didn’t let me stay with the old way… There were always some warnings telling me to login to iCloud and that if I didn’t do so something bad would happen. At least this was how I and several other users felt.

Here is one of many examples which prove the overall users dissatisfaction – «Why is iCloud Contact Sync such a terrible mess?» by Cfacc, Apple Communities. If you click on the link you will see the comment underneath about a user complaint. It perfectly illustrates how I felt the first time I had to deal with iCloud.

«I don’t use iCloud and using it for contact and calendar sync is something I will not do. Mavericks has messed up my whole workflow and I’m extremely ****** off and there is no way in **** I’m ever buying anything from apple again if this is the road they want to force us users down.

My iPhone is now a piece of worthless junk without calendar syncing. I want my money back… to buy hardware and software that works and doesn’t blackmail me into your foggy cloud with an open backdoor to anyone who feels like they need to take a peek into other people’s lives.

An extremely ****** off user of your overpriced junk which is progressively degenerating with every update.»

I found this comment extremely useful for my further research and of course I couldnt help but laugh, even knowing how frustrating it was for me as well when I first got in touch with iCloud.

Moreover, analyzing this user experience problem through Don Norman’s, director of The Design Lab at University of California and co-founder of Nielsen Norman Group, Human Action Cycle, made me realize what went wrong. The interaction process missed the first three phases: «Goal Formation», «Intent to Act» and «Planning the Act». Instead the interaction starts immediately with the «Execution of the Act». Well, this only could go wrong, because the user has no control nor freedom.


IMG. 1: Human-machine interaction steps according to the Norman’s Theory.

Golden rules for a good user experience design

Besides not following the whole Human Action Cycle, it doesn’t accomplish several golden rules for a good user experience design. Going back to Johnny Lee’s Talk – a product only succeeds if it has a good software, hardware and a good user experience. In my opinion iCloud lacks the last one. At least seven of Jakob Nielsen’s, web usability consultant and co-founder of the usability consulting company Nielsen Norman Group, ten Usability Heuristics weren’t followed.

Missing Usability Heuristics:

Usability Heuristic 1 – Visibility of system status
Users weren’t being informed about what was going on, for example what, when and where something was being backed up or synchronized.

Usability Heuristic 2: Match between system and the real world
There was never a clear and easy explanation about how Cloud Computing works. This may be obvious for a programmer, but for a non-specialist person it’s something obscure and scary.

Usability Heuristic 3: User control and freedom
This best practice was completely ignored because there was no introduction and users were more or less forced to use it. Besides that I never had the feeling I was in control, for example: I often felt like if I press «that» button there is no way back and that I could never get rid of the reminders and warnings about me not being a «well behaved» iCloud user.

Usability Heuristic 4: Consistency and standards
The wording wasn’t clear. For example I was never sure if «iCloud Drive» was the same as «iCloud» – the icon was the same but the name different. There are also different ways to access iCloud throughout the various devices and some visual inconsistency, which makes everything even more confusing.   

Usability Heuristic 5 and 9: Error prevention and help users recognize, diagnose, and recover from errors
Due to unclear wording and lack of explanations, accidents like the one described on the user’s complaint above occurred. Personally, as I have no patience to get informed about something that I was obliged to use, I just never dared to truly use iCloud’s full potential. I didn’t want to risk losing data or have it stolen – there is indeed only one password which prevents a hacker from stealing all my information.

Usability Heuristic 7: Flexibility and efficiency of use – Using iCloud requires reading many warnings and going through steps which are confusing. Like using email accounts which I never created: xxx@me.com, xxx@icloud.com or xxx@mac.com. Even my Facebook account and my Apple-ID are somehow involved, no clue how. Furthermore I never recall how I have to access iCloud: Is it through the website www.icloud.com? Or through my phone? But on my phone it’s integrated under «utilities» and it has a different interface design etc.


User Needs First

The iCloud example is just one of many new technologies which do not achieve their full potential and popularity, because they aren’t aligned with the user needs and habits yet. The same happened for example with the Google Glass and the Apple Watch, which turned out to be just gadgets for a minority of technology enthusiasts. These kinds of business failures surely result from a partial or even total lack of user research. That’s why Human Computer Interaction Design plays a crucial role in the process of creating a new product.

Apple should have made a much smoother introduction and transition to iCloud, e.g.:

  • By doing honest user research – more user research before launch;
  • Through launching one feature at a time and testing its acceptance – more user testing (before and after launching);
  • Through making sure that people understand what iCloud is, so that they can rely on this technology – more user support;
  • Through giving users the option to decide whether they want to use iTunes, iCloud or a mix of both – more user control and freedom.

In my opinion, these are the four most relevant aspects which Apple failed to achieve.

In conclusion, users should always come before the aspect of technical innovation. There is no benefit for users if an innovative solution or product exceeds their needs. An innovation only gains real value if it is employed in a useful way. That’s why there are in fact many «Interface Technologies That Have Not Yet Left the Lab». In fact, the majority of new consumer tech is «old tech» for which the time is NOW ripe.

I’m very glad to work in a company where designers and engineers work hand in hand in order to create products which are innovative, satisfy business goals as well as user needs.



Tags: , , , , ,

Lektor Static CMS, put the fun back into Content Management

So yet another static website generator, I hear you saying.

It’s true that there are a lot of static generators, but if you look a bit closer you’ll soon realise that Lektor is really a different beast.
But how different? Before we discover its features, let me briefly step back and give you some context.

How it began

A few months ago, I was in the market for a static website generator for a private project.
Of course, I had already heard about Jekyll, Fabricator and a few others but I wanted to make an “informed buy” so I started to look around and eventually checked out StaticGen,
possibly the biggest listing of static generators.
Now, you know, word of mouth is much more powerful than billions of accurate researches so a colleague of mine, Jean-Christophe, recommended Lektor to me.
I started reading the documentation and after a few minutes I was sold.

Continue reading about Lektor Static CMS, put the fun back into Content Management

Tags: ,

Introducing Swift 3.0

With the new iPhone 7 Apple has released the iOS 10 operating system and with it comes Xcode 8 and a new version of the Swift language for the iOS developer community.

Swift 3.0 is an open source language that has been developed by the community together with Apple Engineers.


Swift Logo


One of the great things about developing an open source language is that everybody can see the evolution of the language and inspect the code. In the official release notes there is a list of all the changes that have been implemented in the new Swift version.

Continue reading about Introducing Swift 3.0

Tags: , , ,

High level targeting: how Beacons can enhance your customers loyalty

What is a Beacon?

A Beacon is a technology, often looking like a mini square (about 3cm2), able to communicate with mobile apps via Bluetooth. It works on apps running on iOS or Android devices.
Bluetooth (or BLE – Bluetooth Low Energy – to be specific) allows a device to transmit information to another device. For instance, this technology is used to play music on wireless headphones or speakers, over a short distance.

In other words, Beacons will allow a contextual communication between two devices when they are close enough (a few meters up to a few dozens meters) for a Bluetooth connection to be made.

Continue reading about High level targeting: how Beacons can enhance your customers loyalty

Tags: , , , ,

Web Summercamp in Croatia – PHP track

David Buchmann introducing HTTPlug

HTTP client workshop in the PHP track of Web Summer Camp Rovinj

I was invited to do a workshop at Web Summer Camp in Rovinj (yes, last year it was called PHP Summer Camp – it got bigger this year). This year, I did a workshop on building HTTP clients in PHP. I did the workshop together with Márk Sági-Kazár, the lead author of HTTPlug, the HTTP client abstraction on top of PSR-7. We used PSR-7 and HTTPlug to build a client against an example API to manage TODO items. Then we showed how to do a Symfony integration for such a client, and how the HttplugBundle can be used to debug requests that are done in Symfony. The slides are online on slides.com – though note that this was a hands-on workshop, important parts of the workshop are not visible on these slides. The workshop was well received and I hope to teach it again in the future.

Web Summer Camp is unique in being a conference that only consists of 3 hour hands-on workshops and no only talks – aside from a lightning talks session. There are workshops in the morning and in the afternoon, so during the 3 days, you get to do 6 in depth-workshops. This year, there was the PHP track with 2 parallel workshops, and an eZ publish track as well as a UX / agile track. The Summer Camp is a community organized event with a great atmosphere, nice evening activities – and keeping the prices impressively low for what you get. The included boat trip on saturday is another unique and awesome thing. In short, you should strongly consider visiting the Summer Camp next year!

Hacking with Particle server and spark firmware

The particle server

In my previous blog post, I wrote about the concept of my project using particle. Now I will explain what I had to do to increase the data rate transfer of my modules (remember, my goal is to get data  with the closest data transfer of 1 [ms] ).

First, I installed the local Api server (https://github.com/spark/spark-server).

Then I had to register all of my photon’s public key on my server and the server public key on my photons.

Using this command :

Then, I launched the server to see if my photons were responding with something like this :

So from here all was working fine but what I also needed to use there is JS library to get data from OAuth. The thing is that you have to do a lot of configurations if you want to make it works but in this project it was not the goal. I had to test as quickly as possible. So I did what you usually do not have to do with a library installed via npm.

Continue reading about Hacking with Particle server and spark firmware

Tags: , , , , , , , ,

Liip Bern, and why we do it

Liip Bern's Launch TeamA couple of weeks ago we opened our new office in Bern. It’s big, it’s beautiful, but.. necessary? We think it is. So while the team at it’s lovely location in the middle of town is already hard at work on some of the most promising public sector innovation projects, let’s take a look at a core piece of text we worked with deciding to make the commitment to Bern:

Our democratic institutions and public services clustered in Bern all face tremendous challenges facing the digital acceleration businesses and society are experiencing. As digital becomes a key component in actually implementing policies, the ability to deliver solutions that are secure, scalable and sustainable becomes central: a functioning democracy needs policy implementations that work.

We want to provide that capability to deliver. We want to build public interfaces that are simple, beautiful and easy to use. That are open, transparent and inclusive. For that we need to make the important things simple again, we need to be brave enough for radical approaches,  and we need to seriously engage.

This belief, our focus on service and experience design, our commitment to open technologies and capability to innovate across disciplinary boundaries is giving us a unique position in  Bern and its developing civic technology sector.

Our serious commitment to agile methods and individual empowerment enables us to excel in a public sector in which so many digital projects fail tragically. Those projects are rarely underfunded or underplanned. They stall under the weight of too much talk and not enough action, too many strong presentations, not enough strong implementations. So we will be builders, not talkers: The strategy is delivery. Delivery of citizen-centered technology that works for all, that empowers participation and enables policy.

Life is short. Work on stuff that matters.

That text still resonates with me, and we’ll sure take it out from time to time to remember to focus what matters. If you’d like to join us in this mission: you can. If you’d like to know more, talk about projects, public sector service design, open data, or the next big thing: please get in touch.



Experimenting with React Create App and Google Sheets API

Since the opening of our Lausanne office, a person who shall remain anonymous collected the most epic — from weirdest to funniest — statements made in the open space to fulfill a constantly growing database of quotes. From post-its to Google Docs to Google Spreadsheets, it definitely deserved a better interface to read, filter and… vote!

Quotes React app

Setting up the development environment

After having done some projects with it, it was clear React would be a good choice. But unlike the previous occasions, I did not want to waste time setting everything up; experiments are about coding right? There’s plenty of React boilerplates out there and whereas some are great, most usually include too many tools and dependencies.

Continue reading about Experimenting with React Create App and Google Sheets API

Tags: , , , , , ,

Drupal 8 accessibility features

The Drupal accessibility initiative started with some advancements in Drupal 7 to ensure that Drupal core followed the World Wide Web Consortium (W3C) guidelines: WCAG 2.0 (Web Content Accessibility Guidelines) and ATAG 2.0 (Authoring Tool Accessibility Guidelines).
Many elements introduced in Drupal 7 were improved and bugs discovered through intensive testing were addressed and integrated to Drupal 8 core as well. Let’s take a tour of the accessibility in Drupal 8 !

Contrasts improved

Drupal’s accessibility maintainers improved contrasts in core themes so people that suffer from colorblindness are able to visit websites clearly. It is also good when visiting the website under bright sunlight, on mobile for instance.

A screenshot that compares Bartik headers in Drupal 7.43 and Drupal 8

Color contrasts in Bartik theme in Drupal 7.43 and Drupal 8.

See the related WCAG 2.0 section about contrasts.

Alternative texts for images

The alternative text for images is really useful for blind people who use screen readers. They can understand the meaning of an image through short descriptive phrases. This alternative text is now by default a required field in Drupal 8.

A screenshot showing that the alternative text is required when uploading an image in Drupal 8.

The alternative text for an image is required by default in Drupal 8 content edition.

See the related WCAG 2.0 section about alternative texts.

Continue reading about Drupal 8 accessibility features

Tags: , , ,

Drupalaton 2016

Last week Drupalaton 2016 took place. With about 150 registrations this was the largest Drupalaton so far. The organizers did an amazing job in coping with this mass. There were two session threads and a sprint room. Of the many interesting presentations I would like to mention Fabian Bircher’s “Configuration Management: theory and practice” (a must for everyone who gets lost while trying to work in a team on a Drupal8 project) , Pieter Frenssen’s “Working with REST APIs”  (it was good to see how simple it is in Drupal8) and “Drupal 8 Media” from Pónya Péter, Szanyi Tamás and Rubén Teijeiro (seems we have a huge step forward in media handling since Drupal7!). I held a session on caching in Drupal 8 which was the shortened version the one I did on Drupal Developer Days in Milan.

Liip was a silver sponsor of the event.

Finally, some pictures on the Friday ship cruise. Thanks to Brainsum for sponsoring it!