Having left Adcloud and thinking about what to do next, the main focus at the moment is thinking about the setup of that next thing. One obvious part of that is where it will be and actually, does it have to be anywhere at all?
There are some very big proponents of not having an office and one of those is actually Matt Mullenweg, who talked a bit about this in a Pando Monthly Interview. If you want the best people, they will not all be in one city. In this video he says that you have to be where you work, and if you work on the internet, then be on the internet. He does agree that changing a company is hard, but when you start you can do it right. Only 20 of it’s 150 people actually come to the office in san francisco. He does admit or clear up though that what they save on office space, they blow on travel. If you want to know more about the history of WordPress, I suggest this article on Forbes.
Another big supporter of distributed teams is of course 37signals and David Heinemeier Hansson, as visible in this article, and more or less 50% of his tweets . They also get all the team together 3 times a year somewhere in the world to get the important face to face time. Here is a good post by an employee about how it is to work there. Github is actually also distributed. Github actually has no work hours, no managers, no deadlines and no meetings… or so they say. People probably gravitate to meet somehow, but still, the point is what the goal is. The important thing is that if you decide you do not to have office hours you need to think about how do build your company with that idea. The founders of Github have my vote solely on the point that allnighters are a bad idea. Happy people are more productive, get more good people in and are just happier. So the goal is to get the best work out of your employees. The have hack houses, where they get teams together for a month. And one important item is that their employees have kids and you need to support that. Family friendly I can also agree with. They also have something very important if you are distributed, a central dashboard showing you where people are.
They do everything over chat… even if they are in the same room. Fun Here is a good article by an employee from his view. They are actually working similar to Valve (See the Valve Handbook), because everyone decides themselves what they want to do. You need a clear vision for that of course. But don’t you need that anyway? And you need people to convince other people about projects. But, it only works in a product company he believes as you have that focus on something and can focus on long term. Being profitable from the start helps of course.
As another side of the coin I do agree with Johanna Rothman though in that you will need an office at home if you work from home. Then again, a coworking space close by has the same effect if you are just not 10km bit 200km from the head office. And this is not only for developers, why aren’t your sales people where their customers are instead of where the office is. Her idea of an office from that article really fits with my general ideas at the moment of using things like Startplatz as an office. They are now expanding and adding a lot more meeting rooms and a lot more small office spaces. The place is inspiring and I have a beautiful space, reception, coffee, meeting rooms, team rooms, phone rooms, parking, great location and much more. And then I want that in different places possible. In the new part I will actually have a small 3 people office that can be locked and we will just distribute outward into the open spaces available.
And as for the communication problem, I touched on it above, but Justin Carmony has a great post on it. In a nutshell, you need to change your entire company to be distributed. The communication channels need to be setup so that communication happens asynchronously and is logged somewhere. I am not fond of the idea of having to go all in, but it does have a point. That’s why Github chats over everything.
Some good tips for going distributed are here, and important to note is that people will need to report on what they are doing and did.
I am currently envisioning a system that facilitates distributed teams and am actually wondering if there is nothing out there already. I would like to have something where people show where they are, a chatroom where everybody hangs out, always available hangout for face to face chats, integrated task management with an automatic logs of things you have been doing visible to all, distributed but clear places to meet each other with an easy way to plan ahead (I’ll go to X tomorrow, who is joining?).
Oh, and one more thing. Are there virtual Nerf guns?
What do you think?