>it is useful to be nearby people you are working on a project with
I can think of a few reasons why I disagree with this.
- Your peak productivity can only be reached if you are not disturbed every five minutes from the work you are doing on your computer. We all know that focus is important, and indeed it is hard to focus in a noisy environment. I remember that the guys at GitHub have some kind of "no live talk" rule : if you need to speak to someone, do it on the internal chat room, even if he's litterally 1 meter away from you. It has several advantages : you can choose when you want to read messages and when you want to reply to them. If you're in the middle of a hardcore debugging session, you are free to continue. It also has the big advantage that chat can be recorded and reviewed and searched at a later date : live speech can't — or at least not easily.
- On the other hand, if you're in the phase of a project where you need a lot of interaction with other people and where it would be to cumbersome to do it via chat, like when you're trying to design your architecture, or when trying to agree on rules, specs, etc... Then just set up a meeting : that's what they are for.
I can think of a few reasons why I disagree with this. - Your peak productivity can only be reached if you are not disturbed every five minutes from the work you are doing on your computer. We all know that focus is important, and indeed it is hard to focus in a noisy environment. I remember that the guys at GitHub have some kind of "no live talk" rule : if you need to speak to someone, do it on the internal chat room, even if he's litterally 1 meter away from you. It has several advantages : you can choose when you want to read messages and when you want to reply to them. If you're in the middle of a hardcore debugging session, you are free to continue. It also has the big advantage that chat can be recorded and reviewed and searched at a later date : live speech can't — or at least not easily. - On the other hand, if you're in the phase of a project where you need a lot of interaction with other people and where it would be to cumbersome to do it via chat, like when you're trying to design your architecture, or when trying to agree on rules, specs, etc... Then just set up a meeting : that's what they are for.