Our house lately has been a mine of change, 2 new windows, 1 new boiler, and stripped/paint/wallpaper 2 rooms (including the nursery) and retiled the bathroom. I did this all with the help of my family, I do enjoy DIY but depend on the guidance of my dad for the tricky jobs (like fitting a window frame). This explains some of my absence lately, working to a deadline before February and baby comes, ready or not. This has meant nearly all our rooms have been revamped apart from one, my cave.
It was bound to happen, all the rooms were sparkling in the new year but the cave remained. Emma was soon asking me to sort it out and faced with what was really a mess I made a start. Now caves are pretty much something every geek should have, it is your sanctuary, your refuge. It is a place where you can lock in your zone and code without interruption or hassle. To truly do your thing this is where you come. In my cave, by day when no one is in I have the music up on loud and by night I use headphones. Music takes out background noise, I have been coding to it for years as it blocks out talking, phones and other crap. I tend to eat, drink and even on occasion sleep in my cave. A typical cave day starts in the morning with coffee, with trips to the kitchen for more coffee. I tend to eat elsewhere so I don't end up with half of it in my keyboard but coffee is the stable drink in my cave. My cave has a window, a view is all important. It allows you to pause and think but I am also terribly nosey and like to see what is going on as the world passes by :) Having a baby is going to change all of that but for now this is how I live in my cave.
The biggest problem is my cave has horded a lot of stuff. Caves are supposed to, but after a while it gets messy and you run out of space. My cave has so many spare pc parts it is like I killed and ate a giant pc. My biggest problem is books, I am a book junkie, a complete and utter lost case and collect books on just about every subject from GA's to cooking and by authors from King to Sells. I am a complete King junkie and having consumed everything he has written (short stories, Bachman and all) have started to read that other horror suspense master, Dean Koontz and have been chewing my way through his books at a rate of knots. Alas nerd books suffer with the content getting dated and my .net 1.0 books are mostly so dated they are of little value. So I started the task of reducing books, packing them into boxes (just can't bring myself to sell them) for storage. Gaps have opened up and I found myself first in my local borders (coffee in hand) checking out books and then checking prices on Amazon. Buying nerd books is something I struggle to do now. While I consume any knowledge I can the cost of books and the rate the information they contain goes out of date means I have a hard time justifying it. I tend now to treat buying books as a very rare thing and pick books that will stay topical for a long time and are so packed full that I can take my time with my consumption. Repopulating my cave is something I won't do in full but with my new found space I will enjoy picking some really great books.
Ian has a good post on Java developers moving to the Scala language rather than Ruby and asks....
Maybe it is possible that rather than focusing on changes to C# the C# team should pick up on the goals of Scala, to incorporate functional language features into a new language that is more familiar to C# developers than Ruby, but at the same time is designed from the ground up to incorporate the functional programming features that otherwise might be shoehorned into C#.
I have to wonder that to push C# down a functional route may need more change than can be achieved in a single or even couple of releases with out it being a problem to those folks coming up to speed with these changes or worst not needing or finding a need for these changes. Exploration in functional, dynamic, logical and list languages can help you learn faster more effective ways to approach a problem and teach new constructs and thinking. Language groups do cross and some cross over can have some interesting effects but too much can cause a language harm, a spade should be for digging not stiring your tea.
Ians idea of creating a functional language is an interesting one but I would rather see Microsoft build better support for this group of languages into the CLR so language teams like the Boo team have a first class citizen to target.