The end of the Swiss knife?

I’ve been following with a lot interest the evolution of mobile apps lately, specifically the trend that seems to be taking over, consisting in splitting big, heavy, complex apps into several small ones, each one dedicated to one single task, and linked to each other as needed.

A couple of day ago, Facebook announced at their developer conference that they are launching a cross platform open source solution to simplify and encourage deep linking between mobile apps.

Of course, it’s unlikely that Apple and Google will let Facebook get that market without a fight, so I bet we’ll see some of the classical compatibility issues during a standards war as always, but let’s hope that doesn’t slow down adoption too much, for the sake of being optimistic on a Sunday just after breakfast.

What’s really interesting in making it possible to link from within one app to another one seamlessly is that it should encourage developers even more to ship very simple and lightweight apps doing one task, but doing it really well.

Settings ScreenshotFacebook, again, is taking this road by spinning Messenger off the main app, and Google is even further down it, as illustrated by the screenshot above, and the settings screen here.

This is a very flexible strategy for both the development teams and the user perspective, as the former can make progress on the specific features of one app with minimal chances of breaking the others, making iteration and deployments faster, while the latter can customize their own experience by only installing the pieces they need, going from a minimal to a fully featured experience as they wish.

Since a few days ago when the new Sheets and Docs apps have been launched, I have enjoyed using Google Drive docs much more, as I mostly just need to open and edit spreadsheets, which I can now do from a dedicated app doing only that.

Is there an app you’d like to see split in multiple components?

On communication within a distributed team

A team can be distributed in many different ways, one of the biggest differentiating factors being the distance between team members, wether they are located in different cities, countries, but most important: different time zones.

While time difference has some very positive side effects, like making it possible to reach 24h/day coverage without actually asking people to work at night, it also happens to be one of the biggest changes to adjust to, as some team members’ working hours may only overlap shortly, or not at all.

Enters: async communication.

Which tools you use doesn’t really matter, almost any communication tool can be converted to work asynchronously, what matters is changing expectations, and accept the idea that your messages won’t get an immediate answer, but a delayed one, most of the time.

The adjustments you need to make to get that to work properly are actually very beneficial to your team, way beyond their initial goal, and could be adopted by most classic teams working locally.

The end of interruptions

Once it’s been established that messages, even through so called “instant messaging” systems don’t have to get an immediate reply, it becomes much easier for any team member to ignore them while they are focused on a specific task, then come back and reply once the task has been performed. Any developer, for instance, knows too well how powerful being able to concentrate is, and how high the cost of interruptions. Stop interrupting.

Respect your team.

The end of bottlenecks

Do you like feeling useful? Do you think that you need to take part to every decision? Every process? Do you fear to be replaceable?

Guess what, in. Distributed setup, if you channel all communication through yourself, you will fail even faster than in a classic setup.

It’s not about being a bottleneck anymore, it’s about completely freezing your team ability to make any progress. Unless you are ready to work 24/7, most decisions will need to be made while you are asleep.

Define clear areas of responsibility, trust your staff to make the right decisions. Enable direct communication channels between team mates that do not transit through you.

Empower your team.

Photo: ‘World Map with America’ by adampadam used under CC BY-NC-SA / Cropped

The end of time

Time as a metric to evaluate work and production might have been justified during the industrial period following the introduction of the production line by Ford. When the machines and not the workers decide of the rhythm, it might make sense to pay workers by the hour.

When that doesn’t happen though, when the added value is intellectual and not manual, using time as the metric to evaluate individual production drags productivity, and happiness, to the bottom.

Put several people in a room, with similar qualifications, skills, salary, and role. Force them to sit at their desk for 8 hours every day, no matter how much work they get done, and very soon, either they’ll align their output on the slowest member of the group, or dissatisfaction will increase.

Even worse, because you pay them a given amount of money for a given amount of time, you need guarantees that they’ll reach a certain level of productivity, so you’ll add the classic and unfortunate requirement for X years of experience, making it soon impossible for anyone to get such experience, you know, chickens, eggs…

The habit is so anchored in our culture that we even bill by the hour when this represent a conflict of interests, take lawyers for instance, now picture a world where they wouldn’t charge by the hour, but only based on result. I realize that’s almost as hard as visualizing in your mind the diameter of the Milky Way, but you get my point, right?

Now forget time for a moment.

Say we start evaluating work by their quantity, and quality, not time spent doing it. Say being first to arrive in the morning and last to leave in the evening aren’t anymore defining characteristic for the employee of the month contest.

Suddenly everything is much simpler: no need for tools to track presence, no need to bring everybody in the same room, no reason for productivity to align on the smallest figure, no reason for dissatisfaction. No reason for minimal experience requirements either, junior, motivated staff members can put a bit more time while they learn, compared to their more experienced team mates.

Think about the time spared not commuting, the freedom of organizing one’s own life, the quality of personal and family life, when going get the kids at school at 3pm is not a problem anymore.

When you really need schedules, to guarantee coverage in a support team for instance, provide the tools to self define them.

Of course, there’s a catch…

As a team lead, you must be able to evaluate the quality of the production, you won’t be able to hide behind a clock, entering a room and counting heads won’t be a management method anymore.

Even more important: you need to trust your team.

Photo: ‘The Old Town Astronomical Clock’ by flungabunga used under CC BY-NC-SA