I had been thinking about setting myself up with a way to work from home in a disconnected fashion. Most of the places I've worked at in the past required me to remote into the work desktop, which is a good idea if both sides have 100% uptime on their network connection and no issues with them being affected by adverse weather. Which in reality means that the connections tended to be unstable if the weather dictated that one really, really wanted to work from home on a particular day because snowfall was horizontal, for example. My current employer is more enlightened in this matter so my suggestion of locking all the necessary tools and source code inside a VM that would allow me to work from home even if the Internet connection was unavailable at either end was given the go ahead. Given that my desktop here is plenty powerful for most development tasks (it's an older Intel Mac Pro with dual Xeons), this should be an idea solution.

Merging a file between SCM branches that is several thousand lines in size and has significant changes in both branches is a good way to have an unpleasant day, even if the SCM that's being used has good support for cross-branch merging.

I had to reinstall VS2010 at work and because I clearly didn't think this all the way through, forgot to save my autoexp.dat file before removing the old installation. And of course I didn't realise what had happened until I had to dig deeper into some Qt GUI code that wasn't quite working as expected, and of course I was prompted with the raw data.

Just came across a link to this link collection that I think will be useful to C++ programmers:

Let's just make a small change to the requirements, I mean, what could go wrong?