UX, mobile, freelancing, entrepreneurship

Icons Labels or Both

A few days ago I stumbled upon an interesting thread that started with this Tweet:

I studied semiotics so this discussion resonated quite a bit with my studies. I looked up some of the notes I took at the time and got back to the roots of semiotics, to the founder Charles Sanders Peirce. He classified signs in three categories:

  • Icon. It imitates what it stands for. It was exploited very well in the early days of user interfaces. For example the icon of a printer stands for the printer itself and thus represents the print action.

  • Index. Less coupled to what it stands for but still related. It is not “in place of an object” as the icon, but rather “points to an object”. For example dark clouds are index of upcoming rain. For a dog the whistle of the owner might be the index for “time to eat”. As you can see the link between the index and the object is weaker and related to a sort of statistical regularity.

  • Symbol. It is associated to the object by convention and repeated usage over time. There’s no particular correlation between the symbol and the object it stands for. A pretty common example is the eagle for the USA.

With this classification in mind we can say that:

  • the floppy disk was an icon, because in the past you actually had to insert a disk in a computer to save something. Now it’s more of a symbol, which by convention we associate to the save action.

  • the AT sign in the context of Twitter is a good icon, because its essence represents a reply to somebody.

  • the sign of an envelope is probably an index and can be ambiguous, in that different applications use it with a different “meaning”. In Mail on Mac OSX it means “get mail”, but in other apps like Tweetbot it stands for “direct messages”.

In user interfaces we tend to call an icon whatever is not a word. That’s a convention that we built over time but a quick analysis (as in the envelope example) shows that not every icon in a UI is an actual icon in the Peirce’s sense.

Should you use an icon, a label or both? These are my very personal opinions.

A label is the safest choice. Text is universal and also accessible on any platform by default. A label carries some cognitive load, because a user has to actually parse all the shapes of a word to make up the meaning, but still it’s the most generic means. For example when I prototype I only use labels. This allows me to avoid any distraction or tentative to start optimizing the aesthetics of the product while I am devising the “how it works”. Clearly labels need to be translated in different languages though.

An icon is the best choice if it’s an icon in the Peirce’s sense, that is if it’s closely related to the object it stands for. A printer for the print action or a pen to indicate write are both good icons. Some other signs are becoming symbols, on which we conventionally agree, for example the lens to indicate search or the avatar/silhouette to mean account/user. Unfortunately there are not many “universal” icons. Most have sense in a specific context, like the at sign in Twitter.

Icon plus label … well it depends. For example if the Mac App Store didn’t have labels I’d be very confused. The icon for the “Featured” tab is a symbol that is often used to mean “favorites”, whereas the “Purchases” tab shows an icon frequently used to mean “tags”. If your icons are not icons or symbols in the Pierce sense definitely complement them with labels. On the other hand, if you context is well delimited (like Twitter), you can probably get away with just icons.

Of course I am happy to discuss these opinions on Twitter. Hit me!

App Store Slowness

Sometimes I wish the biggest app developers would get together and delist their apps for a day, just to show how much pain this process causes.

I couldn’t have said it better. One of the best signals that you can give to your customers is quick intervention. Someone proposes a feature that goes along with your vision and actually improves the app? Work on that and push it quickly. Is there a bug? Roll out a fix as soon as you can.

These examples are simply not possible in the App Store. Someone else decides if and when the update is available, and the wait is often long enough to kill the momentum. The possibility to act quickly is the thing I miss the most when I work on iOS/Mac apps.

Fortunately I can enjoy that in my other web based product.

Aluminum-ion Battery

I always thought that the solution to battery powered devices was building batteries that last longer. I never thought of batteries that charge faster. Honestly I would not mind stopping by a cafe’, rest my dogs over a beer while the battery of my phone fully charges. The discovery presented in this paper seems to enable exactly this scenario. The future is bright.

Quitting Apple

These days there’s a very interesting blog post by an ex-Apple employee. Correct me if I am wrong but I feel it’s the first of this kind, so open and so harsh.

UPDATE: here is another interesting post by a designer.

I can’t help myself to believe every single line is true. No, I don’t believe every team/manager at Apple is like that. I am sure there are great teams and people proud of being part of Apple.

What I like is that the post depicts scenes which could belong to any other big company. Finally somebody testifying that Apple is a “normal” company, with as much shit as any other big tech corporation behind the great looking façade.

Maybe we will start liking it for what it is, and not some magical entity full of perfection.

ps: Here is a follow up to the first post by the same author.

The Unsustainability Pattern

New shiny service announced. “How much does it cost? Nothing? I am in!” We have seen this many times.

The fact that you don’t pay doesn’t mean that there’s no cost.

Somebody is paying, maybe you’ll never know who, but believe me somebody is taking money out of his pocket to put it in someone else’s wallet. It may look free to you, but somebody is paying for servers, electricity and bandwidth. This happened with a bunch of services which you might have used in the past. For example here is a list of discontinued services by Google. For each one, while it was running, Google had to pay for servers, electricity, bandwidth, people to write and debug code. A free service gets discontinued when it “doesn’t work”. Most of the times that means we can’t lure and lock in enough users to justify the cost.

Take the example of Heroku. It’s gonna change its pricing. It a totally legit move but it’s hard to not speculate that the move is meant to make the business more sustainable. So far a truck load of developers could run small applications for free. Don’t just think of one app per developer. You know, developers are smart and they have probably created an Heroku account with all the emails that they have available, not to mention aliases. So yeah, one person can have 32 (totally made up number) free applications running, without paying a dime.

After the pricing changes developers will need to either open their wallet or move away. Obviously there’s a heated discussion on HN. It is sad that someone is still looking for an alternative free solution, thus perpetuating the unsustainability pattern. If it doesn’t exists this is an expression that I am coining right now for the following behaviour:

I will exploit this free service as much as I can. When I can’t anymore I am gonna move to the next free service.

I can’t resist to see a parallelism between this behaviour and the one of parasites. It’s good to feel smart I can’t deny it. It’s good to have a “product” and run it without expenses, it makes you feel cunning. Until you are gonna be bitten, and left with two options: either you move to another service or start paying. Either move is not gratis, unless you value your time 0$/hour. So all the time/money you saved with the initial “shortcut” is now gone and possibly you need to spend even more to catch up with competitors. Moral.

There’s no free forever, there’s is just temporary free.

Virtual machines prices are now more affordable than ever. Docker is growing like crazy and it’s making almost trivial to set up a scalable infrastructure. Before hosting your application on the new looks-free-forever service I invite you to consider the possibility to spin a virtual machine and host it yourself. This is exactly the approach I am having with AppVersion.

The Notifications Whore

This post on Wired confirms even more the fact that I am not a target user for the Apple Watch.

Along the way, the Apple team landed upon the Watch’s raison d’être. It came down to this: Your phone is ruining your life. Like the rest of us, Ive, Lynch, Dye, and everyone at Apple are subject to the tyranny of the buzz—the constant checking, the long list of nagging notifications.

I am not a notifications whore. My phone is almost always in silent mode, with notifications only from VIPs. The only important notifications I get are the ones from the calendar and there’s no difference between important or not important. If it’s scheduled in the calendar it’s important.

Now the picture is even clearer to me. One of the Apple Watch selling points is fixing the notifications problem, which I don’t have. So it makes sense I am not excited about it.

Funny note. It took 5 years to have a lengthy post about the making of the iPhone. The Apple Watch is not even out and Wired has already published most of the backstage details. Like it or not, this is a totally new Apple.

Private Means Private for Everybody

A 17-year-old student builds an app on top of the Instagram API. Everything would have been fine if the app didn’t include the possibility to upload pictures. According to this article on arstechnica the rationale behind the app was:

“There are 15 Instagram apps on the App Store, and none of them have upload capability.”

On the App Store there’s a gazillion of iOS apps based on the Instagram API and none of them (except the official one) has upload capabilities. Before engaging in the development, I’d have probably asked myself why. Instagram has been around for five years and nobody thought of building an app that features upload? Odd, very odd. In spite of what the EFF says, rules are pretty clear:

At this time, uploading via the API is not possible.

I think there’s no need to consult lawyers.

I am not a fan of Instagram. As a matter of fact I deleted my account the day after it was bought by Facebook. But rules are rules, even if you don’t like them, even when you need money to pay for the college.

I am building a service myself, and I will probably spend a good amount of time to clearly write in the documentation what you can and you can’t do with the API. It’s better to be clear since the beginning.

Trade Different

Apple is gonna offer a trade-in promotion. It started it a few years ago but now it’s gonna open it to non-Apple smartphones. I am all for recycling when possible, so this is a great news. Still I think this is a pretty unexpected move. I read it as an acknowledgment of competitors. Apple once pushed the “Think Different” campaign. For twenty years they not so implicitly claimed:

  • We are on a different level
  • We know there are competitors out there but we pretend they don’t exist (unless they are Microsoft and they come with a bag of cash).
  • We don’t compete, because we are on a different level.

The mantra was repetitive and circular. Clearly it was a successful strategy, because nowadays Apple is a money printing machine. They are not desperate. The fact that Apple has tons of money doesn’t mean that they don’t wanna make more. The trade-in is a good way to grow a loyal audience.

It’s just funny that when Blackberry and Microsoft ran a similar promotion in the past they both looked desperate.

Let’s Schedule a Call

I shiver every single time I hear that. Maybe I have just been unlucky but I have been involved in very weird situations.

One time a guy had an old crappy PC, slow like hell. He had the great idea to buy a bluetooth headset. We spent usually half an hour to have a meeting that could have lasted five minutes. We talked in chunks of 20 seconds. That was the longest chunk because the headset kept dropping the connection to the device. Unfortunately that guy was also one of those that “wants to understand why”. So after each call dropped he spent a minute or so to collect the logs. As far as I know he is still trying to solve the issue.

Another time, the same guy mentioned above bought a new shiny bluetooth headset. It really worked when connected to the crappy PC. He once connected it to an Android phone and we had a crazy intermittent conversation. After careful logging (and waste of time) it turned out that he installed a “save energy” plugin on the phone, which throttled the Wi-Fi bandwidth. No comment.

A few months ago I used to have a weekly call with a gal that collaborated part time on a project. She worked in a very noisy open space. Honestly I don’t even know how she managed to work in that noise. After the first calls, when I repeatedly asked “say it again” many times due to the noise, I convinced her to move to the terrace during our calls. I really enjoyed the sound of honks and sirens.

Once, only once, a guy took my call while he was driving a scooter. It was so nice for me to talk to the wind.

The last one I am gonna mention is pretty funny. We used to talk during his daytime and it was all fine. Once we had to schedule a call during his evening. The connection was horrible. That’s how he discovered that his son was enjoying some porn before going to bed.

These are just a few of the weird experiences I had. Sometimes the one with problematic connection/tools was me. A few years ago I had a DSL connection that relied on a badly installed cable in my area. Bottom line, I had an intermittent connection during rainy days. I started scheduling my calls after checking the weather forecast but it didn’t work out pretty well.

These were all one to one calls. It obviously can get more messy when the number of participants grows.

I am pretty sure you had similar experiences, maybe when the call was really important. Shit happens and it’s hard to plan for every single situation. It’s pretty easy though to spot if “it’s just technology’s fault” or if you could have done something more to prevent a faulty call. Assuming the call is important, like talking to a client that pays you, here’s a list of suggestions.

  • Good line/signal. Nobody asks you to have a 25Gb symmetrical connection, but make sure that most of the bandwidth is devoted to the call. Quit Dropbox and any other application that sucks bandwidth in an unpredictable way. If someone else is using your connection, e.g. family members, make clear that you need most of the bandwidth during that time slot. Some routers even allow you to configure bandwidth so that some applications have precedence over others.
  • No Starbucks. This is related to the point above. Starbucks and any other place were the connection is shared simply raises the chances for the call to drop. Sure, you might be lucky and make a successful call from there, but why risking?
  • Background noise. Kids screaming, people doing dishes, tyres screeching, I have heard them all. Try to find a silent spot. I thought my office was silent. It is, but a few friends have reported an excess of echo. They are right, the room is pretty big. I now usually go to my bedroom, which is smaller. The presence of blankets and clothes cushions even more the echo. A closet would be perfect.
  • Make time. You schedule a 30 minute meeting. You should mark your calendar for 45 if not an hour. Your interlocutor can be late, have problems connecting or the meeting can run longer because an important issue deserves discussion. I know, it’s not nice but it can happen. Just plan for a longer meeting.
  • Make clear you are busy. If you are a parent and work from home it is likely that your kids will chime in your office and interrupt you. It happened to me just once and luckily my interlocutor understood the situation. Try to teach your kids that “daddy/mommy is busy when the door is closed”. You definitely need your partner’s help on this.
  • Batteries. If you use devices that have a battery, e.g. laptop or headsets, make sure they are charged enough to make it to the end of the call.

As you can see they are all pretty common sense suggestions, and yet some calls end up pretty messy. There’s no guarantee that you are gonna have a flawless call if you follow them all, but it’s pretty much guaranteed that you are gonna have issues if you don’t follow most of them.

Have you some other suggestions? I am happy to share them.

Concerns With Apple

Finally the Watch has been fully announced and we had a few days to think about it. I am glad there’s no more posts rambling about the possible prices. But I am concerned. I have written elsewhere that I don’t feel a target user for the watch. Still, congrats to the team in Cupertino for launching a new product. My concern is not the watch but Apple itself.

Imagine. You are the only child and you enjoy your parents’ undivided attention. One day they approach you with a big smile, announcing you are gonna have a brother. “Great! A companion to play with!” But after a while you start thinking that your parents’ full undivided attention will soon be a dream.

My concerns with Apple are along the same lines. I use Apple devices and I built my business on top of them. If I picked another platform, chances are that I’d have spent much more time babysitting my devices.Now I am concerned that it’s not gonna be like that anymore. A new kid is in town and somebody has to babysit him.

We had a glimpse of this in the past. Leopard was delayed to give priority to a new iOS release. The same happened in 2009 with iOS7. If you were a Mac dev at the time I bet you were concerned, much like I am now.

  • Will they take engineers away from Mac/iOS to work on the watch?
  • Will it take longer to fix a bug on the Mac because bugs on the watch have higher priority?
  • Will the same care be put into updated devices and operative systems?

Clearly the answer is “We don’t know, yet”.

Somebody once said

“You have to trust that the dots will somehow connect in your future”.

Maybe what I lack right now is exactly trust. It’s hard to me, because Apple seems to get more and more unfocused.

I just hope that I am gonna write the “dots are now connected” post on a device that displays an Apple logo. Carry on until then.