This isn't a tongue in cheek entry about "working too hard". It's an article about version control when you work from home and the office.

I am struggling to complete a project at work. It's a C# project. I am a C++ programmer. I also manage to muddle through some C++/CLI projects as well. The project is behind and budgets are becoming an issue. I joined the project after a contractor left the company, and I've been struggling to understand the logic of the program. I've had to spend a lot of time working on the project after hours and at home. I became familiar with C# in the days of Visual Studio 2002 & 2003. I've discovered my historical knowledge isn't worth very much when working with .Net 2.0 and Visual Studio 2005.

However, the hardest part of this project has been version control. If you take a project home, it can be difficult to keep the files in sync, even using VSS. After a couple of near misses, I've adopted a system whereby I check everything out in the project at 5:00 PM, haul it home and make changes or test; haul it back to work the next morning and check everything back in to the VSS. I haven't found a better way to do this. The secondary problem is maintaining check-in notes. The project has grown substantially, and it is difficult to remember all of the changes I've made to files while working at home. We are in the process of completing ISO compliance auditing, so keeping good notes for check-ins is essential.

Being a team player is not a bad thing. I love my job. My company likes me. I don't feel like anyone is taking advantage of me or my co-workers. There are times when we all have to pitch in. Just be aware that you may need to approach your off the clock hours with some thought as to how you will keep your source code in sync between the office and home. Simply applying yourself with great energy is not sufficient if you are going to lose gobs of work because you didn't check in or merge code changes properly.

I would be interesting in how other workers have solved the "at home - at office" development problems when working with source code. Please feel free to leave comments on how you handle this situation.