Shawn

Shawn Wildermuth

The Blog

My Rants and Raves about technology, programming, everything else...


My Blog of the Week

Url: http://freddiesblog.blogspot.com/

Read...


I think CSI is confusing America...

Url: http://www.usatoday.com/news/nation/2004-08-05-...

Ok, this is *way* off topic, but I enjoy watching CSI and shows of their ilk.  But I have been getting further frustrated by the technology they purport to use.  It all came to a head the other day when they took a convinience store video and used “video enhancement” to see the reflection in one of the customer's eyes.  Instead of Spike, CSI belongs on SciFi. 

It's bad enough when shows hack into computers with a nice pretty UI screen instead of some nasty command-line program or when they do a computerized fingerprint match in minutes instead of days, but now that are stretching the limits of credibility.  When my Mom knows it can't be done...I can't understand how the rest of America eats it up.

Read...


December Atlanta Nerd Dinner!

Url: http://nerddinner.com/blogs/atlanta/archive/200...

We are having the monthly Atlanta Nerd Dinner on December 16th.  Follow the link for full details!  Hope to see you there.

Read...


Rico's Walkthrough of Finding Memory Leaks in the CLR (or your code)

Url: http://blogs.msdn.com/ricom/archive/2004/12/10/...

I am blogging about this more so I have a place to find it if I ever need it...originally from Gunnerson's blog.  Great stuff Rico!

Read...


MSN Desktop Search - Yet another blog about it!

Url: http://beta.toolbar.msn.com/

I downloaded MSN Toolbar which includes the Desktop Search this evening.  I immediately turned off the MSN toolbar since I am not interested in having two toolbars with identical features (I love the google bar and won't give it up).  So how is search?

After indexing my files, I have to say that I am impressed so far.  They index folder names, source code files and supposedly e-mail.  But it can't find my Outlook for some reason.  So I am holding my breath until it works with Outlook.  But for searching source code...it's great!  I'll update this as I figure it out.

Read...


COM Objects and IDisposable?

I haven't dealt with a ton of COM interop up to this point in my .NET life.  I was surprised to find out that there is not a good story for deterministic deconstruction of COM objects...or maybe there is and I didn't see it.

What I've come up with is a bit of a hack to wrap a com object in a IDisposable wrapper so that I can use the using{...} syntax to determine Release() calls (not really destruction, but good enough for most cases).  The code looks like this:

/// 
/// Wraps an instance of a COM object in order to
/// provide deterministic deconstruction (or Release really).
/// 
public class DisposableCom : IDisposable
{
  /// 
  /// Public constructor to take a single COM object
  /// to call Release on upon Disposal.
  /// 
  /// 
  public DisposableCom(object comObject)
  {
    // Hack to allow us to Set a COM object that is initially null
    // but want only allow COM objects
    IntPtr typeInfo = Marshal.GetITypeInfoForType(comObject.GetType());
    if (typeInfo.Equals(null))
    {
      Marshal.Release(typeInfo);
      throw new ApplicationException("DisposableCom can only accept COM objects");
    }
    else
    {
      Marshal.Release(typeInfo);
    }

    _comObject = comObject;
  }

  ~DisposableCom()
  {
    ((IDisposable)(this)).Dispose();
  }

  private object _comObject = null;

  #region IDisposable Members
  void IDisposable.Dispose()
  {
    GC.SuppressFinalize(this);
    if (_comObject != null) Marshal.ReleaseComObject(_comObject);
  }
  #endregion
}

Can anyone find any holes in this idea?

Read...


Adam Barr on Scheduling (in reference to WinFS)

Url: http://www.proudlyserving.com/archives/2004/12/...

I really like this post by Adam Barr in response to Scoble's blog about what happened to WinFS.  I think Adam is right on with his take on how long-term projects are scheduled.  Whether this is what happened to WinFS or not is up to speculation...ok...let me speculate.

WinFS was not a simple project with no or few dependencies.  It was dependent on the Yukon team including features that they needed in the core of the storage engine (e.g. Row-level security).  At the same time they had to convince the Longhorn UI folks to use WinFS for their desktop  changes.  Of course, the problem here is pulling from one team, and giving the other team an incomplete tool.  WinFS was doomed to failure because of this. 

Read...


"I Don't Do Patterns" et al.

Url: http://weblogs.cerkit.com/mearls/archive/2004/1...

I just read this blog entry for Michael Earls and it got me wondering.  I am one of these neanderthals that has been coding since before I could drive.  I see the value of “Patterns” as a common language to help solve problems, but I am not a huge fan of “Everything is a Pattern” mentality that peeked sometime in the late nineties.  I was talking to Chris Sells one day about patterns and we came to the conclusion that patterns are great because they created a common language for stuff that we've been using for years.  The problem comes in when a developer tries to fit every problem into the GOF patterns. 

At the end of the day, we all use patterns, even if we refuse to call them that.  Both extremes have their own problems:

Read...


WinFS Probably Won't Show Up After '10

Url: http://news.com.com/New+file+system+has+long+ro...

Read...


My Next "Notebook"?

Url: http://reviews.cnet.com/HP_Pavilion_zd8000/4505...

This is an impressive machine:

But at 12+ lbs, not sure they can still call it a notebook....it might be the War and Peace of Lugable computers.

Read...