The apartment complex that I live in has been undergoing a near continuous remodel over the last year and a half.
Recently, the entire exterior was repainted from adobe-pink to a near khaki-brown. Our doors were repainted from forest green to a shade of brown best described as "the runs."
The wiring in our apartment has been redone three times since we moved in. The first time was because our circuit breaker froze open and caught fire; the second time was to bring our outlets up to code; and the third time was because they screwed up the second time.
Now I'm sitting here because my wife had to open at her work, so she couldn't be here to make sure the workmen didn't steal anything. Fortunately, she's getting off work early so I can actually make it in and be productive today, but still...
At least I have my books to keep me from going insane from boredom. I've been reading through "Programming A Multiplayer FPS In DirectX" over the last week, because I'm a firm believer that knowing how something could be created helps you test it more effectively. One thing that I've liked about this book is that rather than just toss a lot of code at you and then walking through the code, it walks through the problem space, discusses a solution to the problem, implements the solution, and then adds a unit test to the solution so you can test each individual subsystem in isolation, as well as with part of a unified system test. It's a very organized production. While the order that he addresses the topics may not make a lot of sense initially, the way that he builds on each system makes the order feel natural.
The only downside to the book is that he uses a lot of deprecated functionality in DirectX, but there are plenty of resources online to ease migration from this deprecated functionality.