Tools, tools and more tools

I don’t know who pointed it out to me, but I dig Fabrice’s list of .NET Tools. I added a link to that page from my paltry list of tools.

varchar(???)

I’m thinking about redoing the backend of this website. I started to do pingback/trackback support and got discouraged by the fact that I would again have to pick an arbitrary length for the database columns. Of all the annoyances with databases, that’s my biggest pet peeve. Maybe SQL “Yukon” with it’s ability to natively store XML will solve this problem.

However, until then, I need to use something to store my entries in. BlogX uses XML files, which seems like trading one evil for another. Picking a max length for a column is annoying, but I don’t relish rolling my own database. Bamboo.Prevalence is interesting, but I don’t like the fact that everything is kept in memory all the time. I’ve read the Prevalence Skeptical FAQ with their entries on Breakthroughs in Memory Technology (which haven’t happened yet) and their Scalability Test Results (testing a paltry 1 million rows in a single table – though obviously DevHawk has much less data than that) and I’m still skeptical.

I am impressed with the implementation of Prevalance – especially the transparent engine feature of Bamboo. From what I can tell from the outside, it serializes the methods calls against the Prevalyent (?) object so on app restart, the engine can return to when it left off. It also can serialize the Prevalyent object itself for snapshot purposes. Simple, but elegant – except for the memory usage. I tested a simple Bamboo.Prevalence app with a snapshot of DevHawk’s database. The entry list wasn’t too bad but the referrals list was huge – an order of magnitude bigger in memory than the entry list! Given that I do nothing with the referrals list but archive it keeping it in memory seems like a waste. What I want is something like Prevalence but with more flexibility with regard to memory usage. I only want to keep the past month’s worth of entries and the past day’s worth of referrals in memory all the time.

I’m thinking that you could build something similar to Prevalance that used Weak References to enable the GC to clean up memory of infrequently used objects but then use Proxies to reload them transparently from disk on command. Resurrection could be used to avoid collecting objects that are likely to be used in the near future (i.e. recent entries).

Discrimination against the Bozos

The truth is that I discriminate against irrational people. If I eventually find out that someone who I have discussions or debates with makes irrational arguments to defend a personal bias then I tend to pigeon-hole this person in my mind and set up a mental note to redirect future commentary by this person to my mental “Deleted Items” folder unless those comments are referenced by some other person whose credibility is not suspect. [Dare Obasanjo aka Carnage4Life]

I like how Jim McCarthy described this in his landmark book Dynamics of Software Development: Flipping the Bozo Bit.

And on the subject of must reads from Jim McCarthy, check out Software for Your Head and the Core Protocols v1.0.

Service-Oriented Architecture Presenation

I have to deliver a presentation on “Service-Oriented Architecture” on Thursday. There are a variety of PPTs on the subject floating around MS, but most are internal. My coworker pointed me to one available externally from the EMEA Architects Tour which was delivered by Clemens. There are a variety of other interesting looking sessions on that site, including an AOP w/ .NET attributes session, also by Clemens. Highly recommended.

Roy Osherove hates his job

You probably don’t know me. I work in your company….We work hard. the situation is bad. We work harder, yet you can’t even bring yourself to say “good morning” to us, who have worked for you for several years now. some of us gave up better paying offers because of false promises you have made. We worked like dogs for nights on end in more then one occasio. never once did you decide to stop and say “good job” or “Keep going. you just go on, with your sealed face and you astronomical salary, leaving us behind, trying to wonder what the hell is going yo happen next….We are tired. Tired of this abuse. We won’t stand for this much longer. You must understand that people are your most precious asset, and their loyalty is what will help you stay alive. Do you know what is the first thing to happen once the market situation calms down and things will be a litlle bit more normal? You will be left with an empty company. [Roy Osherove’s ISerializable]

Been there, done that, got fed up, quit and went to work for Microsoft. No company I’ve ever worked for understands that “our people is our most precious asset” better than Microsoft.

According to the Microsoft Careers site, there are 1729 positions open across the US right now. Why wait?