Tim Murphy's .NET Software Architecture Blog

May 2006 Entries

Watch What You Say ... It May Get Printed

I was going through my blog stats this morning for both this and my previous blog when I found a link that I didn't expect.  It was from Visual Studio Magazine.  Evidently, in a fit of insanity I had written a letter to the editor back in March about the battles between VB and C-type languages.  A) I forgot I have even written it.  B) I never thought it would get published(duh).  C) Reading it now I have to say “Did I really write that”?

The things I wrote in this letter to the editor make me wonder if I should go back through my previous blog posts and see what kind of nonsense I have been writing.

Catastrophe Projects - Looking in the Mirror

I have had this sample chapter sitting on my desktop for a couple of weeks now.  Tonight I decided it was time to read it or close it.  Thankfully I chose to read it.

By the definition of this book, “Catastrophe Disentanglement: Getting Software Projects Back on Track”, the project that I am currently on is a catastrophe.  Sure we keep knocking out bugs, but at the same time they keep adding more and more functionality and extensions to the project.  As this chapter suggest I think it is long past time to stop work and come up with a plan of getting to a successful end of the project.

There are a number of reasons that the project got to this point, but at this point the problem has become fixing bugs while introducing new functionality which is causing a never ending spiral.  I would compare this to putting a wet bandage on an open wound.  It isn't going to heal very well.  If it is kept dry and clean things should improve over time.

In this case it means stop further changes until it has been determined how far from the mark we really are.  After that the most pressing bugs must be exterminated.  At that point any new changes should be prioritized and new deadlines set.  This won't save the budget or the time-line, but it can bring back quality and usability that I believe is key.

Technology at Disney

I just got back from a much needed vacation with my family in Florida.  While we were there we visited all of the Disney theme parks and there were a number of cool technology usages that I noted.

The first was right as you came into any of the parks.  Your park pass is encoded with a magnetic strip like a credit card.  Any one with an adult pass had to put their card through the turnstile scanner and then insert their hand into a device at the top of the turnstile.  I'm not sure what this was for as it didn't seem to be reading fingerprints or anything of the sort.

The next place we encountered more technology was getting our picture taken with Mickey.  The park photographers have digital cameras with a PDA style device which is used to scan another card call PhotoPass.  You can take this card from character to character and use it in any of the parks.  You can then take it to the camera shop at the entrance of each park or go to a web site to view you pictures an get prints.

I also found out how they determine the wait time for a ride.  My son and I were getting on Thunder Mountain and as we entered the line I was handed an ID card which the cast member passed over a read.  I was then told to hand it to the last cast member before I got on the ride.  No guessing!  You know exactly how long it took.

The last place that I'll talk about technology showing up is in the ride lines.  So you say you don't like waiting in line.  Great!  Take you park pass to the machine outside the ride and it will give you a Fast Pass that allows you to come back at a specified time (usually 1 to 2 hours) and go through a much shorter line and bypass the rest of the fellow riders.  My only gripe with this one is that there doesn't seem to be a limit to how many of these Fast Passes they give out.

So what cool things do you see around you?

Chicago IASA Chapter

For those of you who have not heard of it, IASA is the International Association of Software Architects.  It is dedicated to the goals of networking, knowledge, advocacy and ethics in the practice of IT Architects.

On Friday I had lunch with Bhaskar Chakrabarti who is the head of the Chicago Chapter.  It sounds like things are getting ready to fire up.  He is looking to have the first official meeting in July or August and hopes to have a well recognized speaker for the event.

If you are in Chicago or its suburbs and are an architect or have an interest in architecture please go to the site and sign up.  Right now membership is free so you have nothing to lose.  I'll post more as things get solidified.

ASP.NET Web Application Project Released

For those who are missing the ability to treat your ASP.NET applications in VS2005 as projects rather than individual files this release from Microsoft is for you.  If you want all the details and then some check out Scott Guthrie's post.

CSLA.NET Gets a New Forum

For those who don't subscribe to Rocky's blog, he just announced that the MSN group is being replaced by a new Community Server forum.  There has been an extremely active community around his books for a number of years.  If you have any interest or questions about the framework I would recommend that you join this forum.

Ron Jacob's Noodle Project

This isn't exactly new.  I had heard Ron talk about the fact that he was starting a video series in one of his ARCast episodes.  I found a link to his Noodle Project on another post this morning.  I like the architecture content of the video and I like the artistic features of it.  I just don't think I like the two together.  We will have to see how it evolves as he puts out more show.  I suspect they may eventually show up on the Channel9 site or MSDN.

[Updated] Enterprise Library 2.0 Hands on Labs Available

This one is of interest to me especially since I am getting closer to finishing my second chapter for the Enterprise Library book.  I can't vouch for the Hands on Labs yet, since I just finished installing it, but they should be cool.  Check it out.

Enterprise Library 2.0 Hands on Labs

Update I took a quick look around and found that this is a great place to start for those who don't know the Enterprise Library.  It isn't going to impress any advanced users, but it is still very cool.

Why Performance and Scalable is Required Reading

We are in the middle of addressing some production issues at my current client.  One of them involves an ASP.NET application which is slow to respond at times and other times does not seem to respond at all.  The fun part is that there is nothing from the application side which is giving us a clue as to what is going on.  This has been going on for a while and people are starting to get frustrated, so it was decided to call the experts from Microsoft.

So we start having conference calls and the MS representatives start asking for information on our servers so that they can diagnose the problem.  When they were sent the machine.config files there was a pause on the other end of the phone.  Then they asked a question which in essence was why are the settings still as they came from the factory.

Now in larger companies roles tend to be segregated.  For the most part developers can not see what is on the servers, much less change them.  This being the case you tend to assume that the administrators know their job and how to optimally setup a machine.  Evidently not!

This brings me to the point.  The Patterns and Practices group produced a rather large tome some time ago titled “Improving .NET Application Performance and Scalability”.  When it was originally published it was 1108 pages (good bed time reading).  Now most .NET development teams know about P&P and we have been using the development suggestions from this document for some time.  I don't think it is as well known in the administration community.  I believe that Chapter 17 on tuning .NET application performance is a must read for anyone setting up an environment.

No I am not saying that this will fix all problems, or even the ones that we are encountering at my client.  I do think that if these best practices are applied to standard machine builds I think all of our live would be just a little easier.