Monday, June 24, 2013

The Importance of Being Whimsical

What makes a good app? Sure, it should do what it claims to do, intuitively and efficiently. But that is just the base line. How do you stand out from the sea of apps? You need to go above and beyond, and whimsy may just be the secret ingredient you need.

Tumblr

At the keynote at AnDevCon Boston, Chris Haseman and Zack Sultan showed us how they designed and implemented the Tumblr app. They shared many tips and tricks to make your app look good and work well, but the recurring theme is to delight your user.

There are many whimsical touches to Tumblr, one being the pull-to-refresh animation:

Tumblr could have gone with a loading text or a standard spinny, but this custom animation brings the app a notch above others. It entices users to refresh more, increasing engagement. This is the power of whimsy.

Welcome animations

Animation is a great way to add whimsy to your app. At AltWWDC, Ben Johnson showcased many different apps with effective animations.

This is the welcome page of the Just Landed app. The subtle movement of the plane and the clouds hints to the users that there is more to come, encouraging them to try it out. You can argue that this is gratuitous, nothing more than eye candy. It adds no functionality to the app. But apps are not just about functionality. You need to connect with your users, make them feel good using your app. A delightful welcome page sets the stage for the rest of the app, and helps them stay engaged.

Reward your users

What’s happening here? You’re in the Zappos app, thought these sneakers look good, and pressed the "add to cart" button. A cat floated out, dropping the shoes into your cart Mary-Poppins style. What’s your reaction? Cool, I want to see that again. How? By adding more stuff to your cart! A whimsical gesture that directly increases the bottom line. I doubt anyone can call that gratuitous.

Whimsy everywhere

So you want to be whimsical. What to do? Whimsy hinges on unexpectedness, so it's a bit of an oxymoron to provide a formula. Fortunately, you have already taken the first step - awareness. Once you start paying attention, you will see whimsy everywhere, adding them to your repertoire, ready to inspire your own.

The other day I found whimsy in the most boring place of all - airplane safety video.

The video caught my eyes with a teeny tiny suitcase that got stowed under the seat. I found myself looking forward to more funny shots, and paying attention throughout. If you graph the whimsical moments, you can see that they frontload them to set the tone:

Once you are hooked, they get down to business and show you some serious content. Just before you get bored, they sprinkle a bit of whimsy again, keeping you on your toes, watching the whole video looking for more.

Unpredictable delights

It was said that we are addicted to emails because they are like slot machines. Most of the time you get nothing, but once in a while you get something awesome, and so you keep playing, in hope of hitting jackpot. Whimsy does the same trick to your app. It delights users in unpredictable ways, keeping them engaged, and separates your app from the herd.

Saturday, June 22, 2013

DevConf Russia

It all started with a tweet:

My first reaction was, woah, Moscow? Not quite sure if I'd like to make the journey all the way from Silicon Valley. But after thinking about it for a while I decided, hey, why not. Initially I was going to make visit both Moscow and St Petersburg, but I was a bit daunted by the task of acquiring train tickets in Moscow, so I ended up just going to Moscow.

I arrived Moscow the day before DevConf, and the organizer was kind enough to come pick me up from the airport. I saw the beautiful Moscow metro on my way to the hotel.

Mosaic at Mayakovskaya station
Mosaic at Mayakovskaya station

Moscow metro
Moscow metro

In the evening I had dinner with other out-of-town speakers, and then the organizers took us for a talk.

St Basil's Cathedral
St Basil's Cathedral

GUM department store
GUM department store

State Historical Museum
State Historical Museum

Conference Day

The conference is from June 14 to 15, but the organizers told me that the second day was all Russian workshops, so I could go sightseeing that day. I assumed then the first day was talks in English, but when I showed up I discovered that all but three talks were in Russian. One was mine, the other two were on the same slot.

I gave my Android Custom Components talk. Here I was, explaining Canvas using the flip board:


Photo Credit: Antony Dovgal

After that I went the Android productivity talk by Alexandre Thomas:

And that was it. The rest of the conference were all in Russian. I ended up going for a walk with Alex and his girlfriend. There was a market right behind the hotel, with lots of interesting buildings:

And then we went to this really big park next door.

For dinner, we found two restaurants next to the hotel. One serves everything with fries, the other one is a Japanese restaurant. So we had sushi for dinner!

Turns out sushi is rather popular in Moscow, to the point where I recognized it in Cyrillic - суши.

Sightseeing

Saturday the organizers took us all around Moscow. First we went for a river cruise.

Russian Academy of Sciences
Russian Academy of Sciences

Ministry of Defence
Ministry of Defence

Peter the Great Statue
Peter the Great Statue

Next we went to the Kremlin.

Kremlin
Kremlin

The Trinity Tower
The Trinity Tower

The Assumption Cathedral
The Assumption Cathedral

For lunch with went to Sanduny for tradition Russian food. It was so nice that I forgot to take photos!

After lunch we went for a walk. Saw the Bolshoi Theatre, GUM department store, St Basil's Cathedral and the Arbat area.

Bolshoi Theatre
Bolshoi Theatre

St Basil's Cathedral
St Basil's Cathedral

The DevConf Russia organizers took such good care of us it was quite amazing. They showed us around town, paid for everything, and even carried water bottles for us! I felt bad for not spending too much time at the conference, but it was really difficult to sit in sessions conducted in a foreign language. Hope the people who came to my talk found it useful!

Monday, June 10, 2013

AnDevCon Boston

Last week I was in Boston, attending AnDevCon Boston. Previous AnDevCon happens in the SF Bay Area, but it is branching out, alternating between east west coasts every six months. Very smart move to bring Android goodness to more people!

Glass Galore

One thing that jumped out at this AnDevCon was the prominence of the Glass Explorers. Quite a few attendees were wearing Google Glass, with a circle of people around them, asking questions, borrowing them for a test drive. Here is my friend Corey trying Glass:

Session highlights

There were so many interesting topics at AnDevCon that often they were scheduled at the same time, which meant I had to pick one at any given time. Fortunately many people were live tweeting, so there was a treasure grove of information to explore afterwards. Here are some highlights:

My sessions

I gave the same talks as AnDevCon IV: Beautiful Android on a Shoestring and Android Custom Components. They were scheduled back to back, at the last slots of the last day. I was very disappointed when I saw the program. My favorite part of speaking at conferences is talking to people, which often happens at lunch and coffee breaks. People who came to my talk spot me in the crowd, and we'd chat about my session and swap some coding stories. No chance to do that when my sessions happen at the end of the conference!

I was also worried that people would go home early, and no one would be around to come to my sessions. Fortunately that wasn't the case. Both of my talks were quite well attended, and people stayed behind a little bit to chat. Still, next time I would check the conference schedule as soon as it is published, and try to move my talk earlier. That way I get more time to hang out with people afterwards.

Hanging out

As always, I love hanging out with fellow Android developers at AnDevCon. Here is a group of us enjoying some seafood.

The next AnDevCon is back in Burlingame, from November 12 to 15. Hope to see you there!