I recently spoke at the Software Association of New Hampshire's annual InfoXchange event on the .NET Framework 3.0. I had approximately 30 minutes to address the topic "What Is the .NET Framework 3.0, and Why Should I Care?". It reminded me of those essay questions that went something like this -
Describe the American Revolution and it's impact on geopolitics in 200 words or less. :-)
I found myself facing a really serious challenge here. As I started to think about how much is really in the .NET Framework 3.0, I realized that for many developers, this could be intimidating (especially from an initial impression respective). I wanted to make certain that (given the short timeframe of the presentation and the need to generalize, I could scare off more people than I would help. I found the answer to how I finally approached the situation, thanks to my two small sons (particularly my oldest, six year-old Nicolas).
Nicolas likes to try out puzzles every once in a while. When I say "puzzles", I mean just that - the classic tabletop x number of pieces board puzzles. As he gets older, he has worked with increasingly complex puzzles. Now, he has (on occasion) opened a puzzle box and poured out the pieces and stared in disbelief at the sheer number of pieces. Usually, his response is "Dad, forget it. This is just gonna be way too hard." I usually respond with "OK - let's at a time." We first find the corner and edge pieces. Then, we group pieces by commonality (perhaps color or imagery). Finally, we focus on one area of the puzzle at a time. Usually, my son ends up saying something like "Wow, Dad! That really wasn't so hard."
I realized the other day that the .NET Framework 3.0 is a lot like my son's puzzles. At first glance, the .NET Framework 3.0 can translate to "A whole lotta new stuff to learn." Unfortunately, that typically leads to the common fears of all developers (including myself). If the time is taken, however, to look at each of the "components" of the old WinFX (the "new part" of the .NET FW 3.0) individually, the learning curve might surprise you. It certainly did surprise me.
I ended up taking the time in my presentation to break down each of the new technologies in the .NET Framework 3.0, highlighting what functionality is provided and why it might matter to the developer and/or business owner. There are any number of compelling reasons why the .NET FW 3.0 could be of benefit - but I will leave that to another blog post ;-) In the meantime, I strongly encourage you to take some time to look at the .NET FW 3.0 from a "mid-level" perspective. Not too high-level or too low-level, which can be very intimidating. Instead, take things "one piece at a time".