I agree with communication.
I often hear the argument that home working is not good for software developement because you cannot go and just talk to someone ah-hoc about apart of code, if they are not in the office.
I dont agree with this for three reasons:
- Telephone, skype, msn etc. Everyone should have a telephone if you need to quickly ask someone a question about something.
- Being on your own makes you think about a problem more before just hassling someone about it because they might know.
- Interruptions. How often are you interrupted by colleagues asking questions about code, current news, what your first spectrum game was etc
I think the most important this for home working is having the right attitude and having an a room to work in which is a disconnected from the rest of the house as possible, which will reduce distractions and you will find yourself just getting on with the work.