Tim Murphy's .NET Software Architecture Blog

March 2007 Entries

Review: Beginning Ajax with ASP.NET

First let me say thanks to Craig Shoemaker for sending me a copy of this book.  Yes, I know it has been a while since it came out, but I just finally got around to going through it.  In that time Craig has been working on another book and Microsoft has renamed Atlas to ASP.NET Ajax.

Craig, Wally, Paul and Scott packed this text with gems, not only on Ajax, but also the technologies that it grew up from.

The book covers how we got to this point.  They start all the way back with JavaScript and the DOM and go right through XMLHTTPRequest and JSON.

The topics contained are a broad swipe at Ajax.  This 400 page book addresses the Ajax-like features of ASP.NET 2.0 and how they work.  It then goes on to focus on the Ajax.NET Professional Library and then gives a brief taste of five other Ajax frameworks.  The final Ajax technology addressed it Atlas.

The features I liked most about the book are that there are lots of code samples and explanations of how things work.  There are some excellent diagrams showing event lifecycles.  The final chapter is one of the best features since it discusses debugging Ajax and its client side Javascript.

The .NET and architecture communities owe this group a lot.  Not only for this book, but for all the wisdom that flows from their blogs, podcasts and speaking at events.  These guys did their homework and worked through ever changing tools to bring us these pearls.  Thanks guys.

So What Is .NET Again?

As I have mentioned before I am a consultant.  Add to that the fact that I have been doing software development professionally for about twelve years and that means that I am moving into higher level work.  Unfortunately that means less time that I am getting my hands dirty in the code.  This is a painful transition, especially for a code junkie like me. 

So what is the prescription to ease my discomfort.  I think it is time to bury myself in some serious code learning.  I figure I have a number of books I haven't read and need to work on my certifications.  The nice thing is that in the end it actually helps with the architecture and design work that I do on a daily basis.

Long live the code junkies!

Who Knew Astronomy Hurt More Than Business Rules

I just finished listening to this week's Astronomy Cast. In it Dr. Pamela Gay explains how asking what the universe is expanding into is a nonsense question.

Now I have had some business rules over the years that were essentially this: "if it is the third Tuesday and there is a full moon in the Libra and you roll a 15 on a 20 sided die then ...".  Those seem like mild Excedrin days compared to trying to understand how the universe can be three dimensional and flat at the same time.  Then there is the whole planes on longitude lines and donuts explanation.  I'll let you know when my head stops throbbing.

Seriously though, check out the show.  It is a lot of fun if you are into astronomy.

Are Heavy Metal Bands Like Software Developers

This one is for Andrew who essentially threw the gauntlet down (whether he knew it or not) for me to write this post.

So are members of heavy metal bands like software developers?

I am going to say yes, and here are the reasons:

  • They are both creative (or at least we like to think we are)
  • Both can have serious attitudes
  • They don't like the way the previous generation did things (big band and COBOL)
  • Like to put together complicated combinations from the basic parts of their art

Ok, it might be a little weak, but we are just having fun here.

Entering The Inner Sanctum

As a consultant you can get into some interesting situations.  I have been on projects before where I am the only person, but that has always been for small companies.  My current project is for a large company doing work for one of their career development/process improvement groups.  Yesterday I had to make a presentation to the entire group.  I have to say that it felt like walking into the secret chambers of the Free Masons.  Here I am seeing part of the company that no other outsider does.  Of course in the end it is just another project, but it is a strange feeling all the same.

How Are Martial Arts Like Software Development

Around the end of high school I studied Tae Kwon Do for a short period of time. Now my oldest son is taking Goju-Shorei at the local park district which has gotten me re-interested in the subject. Aside from causing pain in my muscles which demonstrates that I'm not a teenager any more it has had another affect. It got me thinking about its similarities between martial arts and software development.

Some Notes About Mentoring

As most of us continue on our career paths we eventually end up in a position of mentoring.  To be asked to take on this responsibility says that you are trusted and considered knowledgeable.  There are a few things you will want to remember as you take on this role.

First, allow the person you are mentoring to learn as much on their own as possible.  They cannot learn to stand on their own if you are constantly spoon feeding them answers to every problem that comes up.  Instead answer a question with another question.  Ask the person where they think the answer might be.  Many times having someone talk through problem will allow them to realize they already know the answer.  The funny thing is that this also works as a device for solving your own problems.

Of course you have to explain the basics of a subject area before a person can start to find things on their own.  This brings me to the second point.  When downloading information do not overload the person you are mentoring.  There is only so much that anyone can absorb in one sitting.  Cut your topics into multiple small sessions and let the person go back and come up with questions.  This will give them a much better understanding of the topic.

The last point is to realize that you can learn as much as you are teaching.  If you follow the second point then you may find that your student will come up with approaches to problems that you had not previously thought of.  Do not spend you time lecturing.  Listen as much as you talk and you can both learn more.

[PS] Andrew, sorry about the deficit of reading material.  We wouldn't want you to get bored.