I didn't finally get to bed last night until about 3 a.m., but it was one of those instances where I couldn't stop. I don't why I don't have these productive code writing streaks in daylight, but I just don't.
Some time ago, last fall I think, I started to put together a Silverlight-based uploading control, so you could select a bunch of files in your Web browser and upload them, with progress bars and all of that nonsense. There are things like this already available, based in Flash and Java, but I really wanted to do it myself (and not pay anyone to license it). The problem with my early attempt was that it was tied to a specific use case, and frankly it was a mess of code.
My intention last night was only to get familiar with it again since I hadn't looked at it in so long. But inspiration hit and I found myself refactoring and making a ton of progress. I stripped out the data access stuff entirely, which made the biggest win.
I doubt any of it sounds impressive to anyone but me, but the point is that I have a lot of inner satisfaction that I can use this thing in other places now, especially in the next big project. One less road block.