Passion * Technology * Ruthless Competence

Monday, December 17, 2007

Morning Coffee 131

  • On a recommendation from my mother-in-law, I've been watching Torchwood. Sort of Men in Black, the series and set in Cardiff. Since it's made in England, it'll be one of the few shows still running in the new year due to the WGA strike.
  • A while back I pointed out that many DotNetKicks articles were submitted by their authors. I submitted a few of my own, just for kicks (har har), with mixed results. Today, I discovered that the parse buffer post from my Practical Parsing in F# series was submitted, picked up some kicks, and made it to the home page. That's pretty cool. I guess writing more dev-focused articles is the way to go to get attention on DNK.
  • Amazon has rolled out a limited beta of SimpleDB, which appears to be S3 + query support. Cost is based on usage: 14¢/hour for machine utilization, 10¢/GB upload, 13-18¢/GB download and $1.50/GB storage/month. I'd love to see SimpleDB software that I could download and install, rather than hosted only. Even if I was going to use the hosted service, I'd like to develop against a non-hosted instance.
  • Research for sale! I was checking out the MS Research download feed and discovered a link to the Automatic Graph Layout (MSAGL) library. This was previously called GLEE (Graph Layout Execution Engine) and was "free for non-commercial use". Now, you can buy it for $295 from Windows Marketplace (though the previous free version is still available). The idea of directly commercializing research like this strikes me as pretty unusual. It must be a really good library.
  • Scott Guthrie shows off the new Dynamic Data Support that will ship as part of the ASP.NET Extensions. I'm like, whatever. Scaffolding wasn't that that interesting to me in RoR, so it's no surprise that it's not that interesting in ASP.NET.
  • Jeff "Party With" Palermo blogs about the IoC support in the new MVC Contrib project. Also looks like they're porting RoR's simply_restful. (via Scott Guthrie
  • I need to try out some of Tomas Respro's VS color schemes (also via Scott Guthrie)
Posted By Harry Pierson at 11:13 AM Pacific Standard Time

Tuesday, September 04, 2007

The DevHawk 2007 World Tour

After spending almost all of fiscal year 07 (July '06 thru June '07) not traveling and not presenting, I'm going to be doing a few public talks to finish out the year. If you, dear reader, are going to one of these please drop me a line. Invariably, it's the side meetings and discussions that are the most valuable at these conferences.

IT Architect Regional Conference 2007
October 15th - 16th, San Diego, CA

I'm a huge fan of IASA, so I'm thrilled to be doing their west regional conference. I've presented to a packed house for the local chapter before, so I think these folks will put on a good conference. They sure have a good selection of topics and speakers.

My session is called "Moving Beyond Industrial Software". Here's the abstract:

Computers have been instrumental in ushering in the post-industrial age. Yet, most enterprises today are run with an industrial mindset and the IT department is organized like a factory. This creates a tension between the forces of industrialization that define the organization and the forces of post-industrialization that define today’s marketplace. For example, our post-industrial world is becoming more decentralized by the day. Yet many organizations believe the key to a successful service oriented architecture – a very decentralized system design – is to have a central service repository.

In this session, Harry Pierson will examine this tension, get you thinking outside the industrial mindset and help you think about software development in a post-industrial way.

I'm very excited about this talk.

MS SOA & Business Process Conference
October 29th - November 2nd, Redmond, WA

I'm not presenting at MSSOABPC (that's a mouthful) but looks like most of my team is going. So if you're going and want to hang out with the guys who are doing this stuff in the trenches @ MSIT, let me know. Also, I put out the call for anyone interested in a geek dinner. From the agenda, looks like they're keeping us busy until 8pm every night Mon-Wed, so we can either a) have geek dinner Thursday or Friday or b) have geek beers after one of the receptions in the early part of the week.

patterns & practices Summit USA West
November 5th - 9th, Redmond, WA

I did the p&p Summit back in 2005, a very successful debut of my Developer 2.0 talk. (I'm doing that talk at a different conference this year, details below.) This year, I'm not 100% sure what I'm going to talk about yet. I'm currently slated to talk about the Rome project that I'm doing in MSIT, but given our current slow progress on that project, I'm probably going to talk about something else. I'm thinking either the "Moving Beyond Industrial Software" talk described above or the "Facing the Fallacies of Distributed Computing" talk described below. Any other suggestions?

DevTeach Vancouver 2007
November 26th - 30th, Vancouver, BC

This is a brand new experience for me. Frankly, I'd never heard of DevTeach before my friend Mario Cardnial suggested I submit a couple of sessions. Since it's only a few hours drive away, I'm bringing the family along. We'll see how that goes. And when I'm not doing my sessions or hanging out with the family, I might take in a session or two in the XNA track.

Here are the sessions I'm doing:

Developer 2.0
Finding Your Way in the Future of Software Development

The one constant in software development is change. Software development in 2007 is dramatically different than it was in 2000, which was in turn dramatically different than in 1993. You can be guaranteed that the platforms, languages, and tools will continue to evolve. Learn how Harry Pierson, Architect in Microsoft IT, believes software development is going to evolve in the next five years and what you must do today to remain competitive.

Facing the Fallacies of Distributed Computing
Sun Fellow Peter Deutsch is credited with authoring "The Eight Fallacies of Distributed Computing". These are near-universal assumptions about distributed systems that “All prove to be false in the long run and all cause big trouble and painful learning experiences.” In this session, we will examine these fallacies in depth and learn how to avoid them on the Windows platform by leveraging Web Services, WCF and SQL Service Broker.

Posted By Harry Pierson at 11:00 AM Pacific Daylight Time

Monday, July 02, 2007

Morning Coffee 97

  • For the first six months of 2007, I posted 158 times in 181 days. I'm obviously off the pace I set in January of averaging a post a day, but I am averaging just under nine tenth of a post per day. Not bad. At this rate, I'll post almost as much this year as I did the last two years combined.
  • It was a great family weekend. Saturday, three of my friends helped me move an upright piano that we got used for a great price. Luckily, one of said friends is also a physics teacher, otherwise I don't think we could have gotten that heavy thing in the truck. To say thanks, we BBQed for them Saturday evening. Then yesterday we took the kids to see a Sesame Street Live show. Both days were beautiful, which my wife greatly appreciated.
  • The Caps hit the free agent market running yesterday, picking up Tom Poti (four years, $14 million) and Victor Kozlov (two years, $5 million). They weren't the A-list free agents, but they both seem like solid pickups. According to Japer's Rink, the Caps were about $6.5 million under the new cap minimum. These two signings just about close that gap, but it doesn't sound like they're done. That's good news for Caps fans.
  • Scott Guthrie continues his series on LINQ to SQL. While I've seen most of this before, the cool thing Scott shows is hovering over the LINQ to SQL result and bringing up the exact SQL statement in a debugger window. That's pretty cool.
  • Nick Malik is now "Mr. SOA" inside MSIT. As you might imagine, I'll be working with him fairly closely. Actually, he's late to a meeting with me as I type this.
  • John Shewchuk announces a new version of BizTalk Services coming soon. The big new feature is access control for services exposed via the BizTalk Services. If you can't wait, you can try out the new stuff in their pre-production environment right now, before it's live. Is this a beta of a beta?
  • Soma announces the MSDN Small Business Developer Center. I took a quick look thru the site. Strangely enough, it doesn't cover Dynamics - Microsoft's business software primarily targeting small and medium size businesses.
  • Ted Neward called object/relational mapping the "Vietnam of Computer Science". David Chappell gives us our next war / technology analogy, declaring that the REST vs. WS-* war is over, ending in a truce like the Korean war rather than "crushing victory for one side".
  • Like Jeff Atwood, I didn't realize About Face has been updated, twice. I am a huge fan of the first edition, but Jeff calls About Face 3 "the best edition of this classic yet". I just ordered a copy for myself.
  • David McGhee transcribed a fantastic session with Dr. Don Ferguson at the Australian Architecture Forum on SOA/ESB integration in the real world. Go read the whole thing. Udi Dahan pulls out the quote "there is no such thing as a centralized ESB." Amen to that. My other favorite quotes from this discussion is "The temptation is often to get everything in a repository, but often you cannot rely on people to put everything in the registry" and "there is sometimes the “Highlander” philosophy of there can be only one service". If you're design depends on centralization and/or significant change in human behavior, it's doomed from the start. Frankly, it's amazing how often that happens.
  • In response to my What is the Rails Question post, Hartmut Wilms wonders why "the .NET community (for the most part) ignores Open Source Projects". I wonder the same thing, though I don't think you can lump the whole .NET community together on this. While some parts of the community ignore anything they can't download from MSDN, other parts strongly embrace open source projects.
Posted By Harry Pierson at 11:07 AM Pacific Daylight Time

Monday, February 05, 2007

Morning Coffee 24

  • Congrats to the Colts on winning the ugliest Super Bowl ever. Pouring rain, eight turnovers, missed PAT and field goal and the opening kickoff TD return. Ugly, but fun to watch.
  • Now that we've had our first poor-weather Super Bowl, I think it's time to start rotating through cities that have never gotten it due to expected weather conditions. Obviously, I'd like to see a Super Bowl at Qwest Field. But most of all, I would love to see the Super Bowl played in Green Bay on the "frozen tundra" of Lambeau Field.
  • Was it just me, or did the Super Bowl ads suck this year?
  • There's a sweet looking pinball game coming to XBLA. I love pinball, so unless it completely stinks I'll be buying it.
  • I commented on the Windows Live SDK last week, but I missed the Windows Live ID Client SDK alpha release. It looks like you can use this SDK to build desktop applications that use Windows Live ID for authentication. Fairly cool, but does it work with non WL services? (via Dare Obasanjo)
  • I saw this post on the home page of DotNetKicks today. It claims that locating the ASP.NET App_Data directory by calling AppDomain.CurrentDomain.GetData("DataDirectory") is a "dirty hack". I left a comment on the original post, but I wonder if the correct information will ever make it's way back to DNK? 
  • Architecture Comix? Yep, on Skyscrapr, an architect community site run by my old team. Sorta funny, but I'm guessing Scott Adams isn't worried about the competition yet.
Posted By Harry Pierson at 10:18 AM Pacific Standard Time

Wednesday, January 31, 2007

Morning Coffee 21

  • With this post, I will have posted 31 times in January. I doubt I will average a post a day for the rest of the year, but I've averaged less than half a post for a day for the past two years.
  • LINQ to whatever is the new hotness. The ADO.NET team blogged about LINQ to DataSet last week. Of course, there's also LINQ to SQL, LINQ to XML, LINQ to Entities and LINQ to XSD. Am I missing any other LINQ's? (Would that be the missing LINQ? har har har)
  • Joe McKendrick writes on "rogue" systems in the enterprise. In typical pundit fashion, he doesn't bother to take a stand on the subject, going so far in this case of having a reader poll rather than offering up his own opinion (wouldn't want to be wrong, would we?). However, I thought it was interesting that the three poll answers were "No rogue services", "Sometimes rogue services are OK" and "Why fight it?". Where's "Yes, let's directly empower the users" in that list?
  • I finally got around to installing PowerShell on both my laptop and workstation. I love the concept, but so far I just haven't had the time to dig into it or found a good problem to solve with it.
  • Windows Live now has it's own SDK. According to the Windows Live Dev News, the new and updated areas of the unified SDK include Search, Alerts and adCenter. (via DotNetKicks)
  • Speaking of DotNetKicks, is it just me or are a lot of the links submitted by their original authors? Steven Cohn on Service Layer Transparency, Keyvan Nayyeri on How to Write Validators for Custom WF Activities, Mads Kristensen on Universal Data Type Checker just to name three of the top four articles currently on the DNK home page. Seems fishy to blow your own horn like that, but since SNK shares advertising revenue with story submitters, it sorta makes sense.
Posted By Harry Pierson at 10:51 AM Pacific Standard Time

Thursday, May 11, 2006

TechEd Iron Architect Contest

For a change, I'm not involved with TechEd at ALL this year. It's all Simon and Marty. Looks like they've got some cool stuff cooking, particularly the Iron Architect contest. Almost makes me wish I was going this year.

Posted By Harry Pierson at 4:57 PM Pacific Daylight Time

Friday, February 10, 2006

Atlas Transparency

I went to a brownbag today on Atlas, though since it was at 10am there was no one eating lunch or any brownbags to be seen. As cool as the Atlas project is, the coolest thing is that when I asked where their internal web site was, Johnathan said they didn't have one - just the public http://atlas.asp.net/ site. How about that for transparency! More of that, please!

Posted By Harry Pierson at 2:13 PM Pacific Standard Time

Sunday, January 29, 2006

Developer 2.0 at VSLive!

FYI, for those going to VSLive! in San Francisco, I'm a last minute addition to the schedule. I'm presenting a talk titled Developer 2.0: Finding Your Way in the Future of Software Development. I wrote and delivered this presentation originally for the patterns & practices Summit back in December. It was the second-highest rated talk of the summit (after Anders' LINQ keynote) so I'm excited to be delivering it again. I'm hoping to get a high-quality recording so I can publish it (I recorded the p&p summit version with my laptop. You can hear it but I wouldn't say it's "high quality"). The session is at 5:45pm on Tuesday. I've been told it's in room 2016/2018, but you should double check when you get there if you're interested in going.

There's a solid showing from the Architecture Strategy Team at the VSLive! Software Architecture Summit this year. In addition to my last minute addition:

See you in San Fran!

Posted By Harry Pierson at 1:14 PM Pacific Standard Time

Monday, January 09, 2006

Outlook Integration Sample

For the past few months, I've been heavily involved in a project but I wasn't allowed to blog about it. Last week, it went live on MSDN so finally the gag is off.

About a year ago, word started to surface about something called Project Elixir which aimed to integrate back end CRM systems with Microsoft Outlook. Part of that effort resulted in the addition of Outlook Managed Add-ins to Visual Studio 2005 Tools for Office. However, the VSTO team's primary deliverable was an add-in loader that enforced security, enabled shutdown unloading and provided a better startup/shutdown developer experience that IDTExtensibility2. (Check out the VSTO Outlook Architecture document for more details.) While those are important fundamentals that needed to be gotten right, VSTO Outlook doesn't provide much in the way of tools or guidance for building Outlook add-ins that leverage managed forms and controls or integrate with your back end systems. That's where the CRM Integration for Outlook sample comes in.

What we've built is a sample application that surfaces CRM style data inside of Outlook. Outlook is the natural home for your calendar and your personal contacts. Why not make it the natural home for your customer contacts, activities and opportunities as well? As part of the demo project we've implemented:

  • Using Windows Forms for editing custom items. Check out this screenshot. The Activity form is a standard managed Windows Forms form, not an Outlook custom form.
  • Using a Windows Forms user control as a folder home page. Here's a screenshot of the "CRM Today" page. Again, that's a standard managed Windows Forms user control.
  • A framework for adding menu items and toolbars. In Outlook, the developer has to manage adding the custom toolbars and menu to each explorer and inspector window themselves. With our sample, we built a framework to handle that for you.
  • Using SQL Express as a local cache of CRM data. It turns out that for many scenarios, storing a copy of all the back-end data directly in Outlook is a bad idea. First, it increases the size of the users mailbox, requiring more storage on the Exchange server. Furthermore, any custom data in Outlook has to be synced twice - once from the back end system to Outlook on the desktop, then from Outlook back to Exchange. By minimizing the amount of back-end data stored in Outlook proper, we reduce the mailbox size and sync bandwidth needs. In both the above screenshots, the displayed data is coming out of the local SQL Express instance, not Outlook.
  • Having two separate storage locations (Outlook & SQL Express) means having to sync between them. We've built a local sync engine that can sync both individual items between Outlook and SQL Express as well as a collection of items between SQL Express and a given Outlook folder.
  • Finally, there are some utility classes to make it easier to deal with Outlook folders and items. Of primary note is the ItemAdapter class which provides a pseudo base class for Outlook items (appointments, emails, tasks, etc). Those items all have a set of similar properties and methods, but don't have a common base class so they can't be treated polymorphicaly. ItemAdapter uses runtime reflection to implement those common operations without needing to cast to the concrete Outlook item type.

Check out the Architecture Design Guide, as well as the Outlook Customization Guide and the Local Sync Engine Guide up on the Solution Architecture Center. You can also pick up the source code. Also, I spun up a GDN Workspace so we can have a discussion forum and to track bugs and requests.

Going forward, I'm going to be focusing on the remote data sync story for this scenario. Among other responsibilities, I "own" the Data pillar of our Connected Systems model so this dovetails nicely. You'll note above that while we have a local sync engine in the sample, we don't have any way to move the data back and forth between the local copy in SQL Express and the remote copy in the CRM back-end. We are working on some guidance around this right now, but we didn't want to hold up publishing the rest of the sample.

Frankly, it's been nice to be involved with something so technical after spending time on the marketing team. I'm pretty proud of the project and I look forward to your feedback.

Update: Removed the link to the running demo as it's been taken off the download site for reasons I am not aware of. If you want the binary and you don't know how to compile it, drop me a mail.

Posted By Harry Pierson at 11:51 PM Pacific Standard Time

Wednesday, January 04, 2006

My New Boss is Blogging

Gianpaolo took over the Solution Architecture team a few months ago and he rebooted his blog a couple of weeks ago. And he's active on the afore mentioned Architecture Forums. Subscribed.

Posted By Harry Pierson at 2:22 PM Pacific Standard Time

Architecture Forums

Simon just emailed a bunch of internal architects about the new Architecture Forums on Microsoft.com. So far there's a general architecture forum as well as one for modeling and tools, with more to come I would guess.

What other forums do you think we need?

Posted By Harry Pierson at 2:14 PM Pacific Standard Time

Monday, October 03, 2005

Ted on C# 3.0

I just discovered Ted Neward's blog has moved. In catching up, I found this great post on the new features of C# 3.0. Even though I had read thru the C# 3.0 spec, Ted's explanation was much easier to read.

FYI, speaking of Ted, I'll be speaking at his No Fluff Just Stuff .NET software symposium. Still working w/ Ted on the abstracts, but basically I'm basically talking about patterns, GAT and DSLs.

Posted By Harry Pierson at 4:14 PM Pacific Daylight Time

MVP Summit Wrap Up Thoughts

It's hard to believe it October already. The last three weeks have been jam packed, starting with PDC 05, then a variety of meetings culminating with the company meeting the following week, then the 2005 MVP Global Summit last week. This was the first MVP Summit to include Architect MVPs so it was pretty stressful. Of course, there were things we could have done better, but all-in-all I was happy with the event. A year ago, we had just awarded our first 14 Architect MVPs. Now we're 100 strong between our solution and infrastructure Architect MVPs and we had better than half of them in Redmond for the summit. I swear, it will take us the rest of the fiscal year to implement even half of their suggestions.

I'm sure each of the various groups that have MVPs think that their MVPs are the best, so I guess I'm no different in that regard. Our Architect MVPs are an amazing group and I am already looking forward to the next opportunity to get a bunch of them in a room together again.

Posted By Harry Pierson at 11:55 AM Pacific Daylight Time

Tuesday, September 20, 2005

TinyCLR and Invisible Computing

When I was at PDC, I saw the Phidgets folks in the Coding4Fun booth. Is it just me, or is this stuff dying to get merged with MSR's Invisible Computing project? Haven't heard of Invisible Computing? Here's the description:

This site has the source code and documentation for Microsoft Invisible Computing. It is a research prototype for making small devices part of the seamless computing world. This site contains the source code and is available free of charge for research and educational use under the Microsoft Shared Source License.

Microsoft Invisible Computing consists of compact middleware for constructing embedded web services applications and a small component based Real-Time Operating System with TCP/IP networking to make middleware run straight on the metal on several embedded processors.

The goal is to make it easy to build custom smart devices and consumer electronics, especially battery operated; and to support research in invisible computing, operating systems, networking, ubiquitous computing, sensor nets, distributed systems, object-oriented design, and wireless communication.

FYI, I discovered the Invisible Computing project by searching the web for TinyCLR. TinyCLR is what powers the MSN Direct watch. From what I can tell (i.e. this is based on publicly discovered info) is that Invisible Computing is a shared source version of TinyCLR that works with a variety of hardware platforms. Sort of like a Rotor for embedded devices.

Check out a presentation and the code.

Posted By Harry Pierson at 3:52 PM Pacific Daylight Time

Sunday, September 18, 2005

Max Enhancements Needed

So I had a little time to play on a recently reimaged partition so I decided to install Max to play with. Very cool stuff. Sort of PhotoStory-esque. For someone with little kids and tons of pictures, it's a great tool. However, I see two immediate issues that need to be rectified.

  • No Save or Export Capability. I've got Max running on a clean image, but I know I'll want to reimage it again soon when there's a later drop of WinFX or VS or LINQ that I want to play with. However, Max doesn't have any way to save a picture list to the hard drive. Everything (and I mean everything) is stored in an XML file in the C:\Documents and Settings\<userName>\Local Settings\Application Data\Microsoft\Microsoft Codename Max directory. Spelunking the code with Reflector, I see a locally defined namespace called System.Storage. I'm guessing this is a stub WinFS library with the intention of migrating to the real deal at some point in the future. But since it's just a stub, there's no simple way to get stuff in and out of that file. I tried cutting and pasting of the XML, but Max told me the store was corrupted and I had to rebuild my photo list. Please add some way to save photo lists outside of Max!
  • No Downlevel experience. I showed my wife the photo list I built and her first response was "can you send me that?" Sadly, no I can't. I realize that Max is supposed to be an example of the new-fangled WinFX stuff, but my wife, her best friend, my mother, my mother-in-law, etc. are NOT going to install the Sept. CTP of WinFX in order to run Max. Most of the cool Avalon stuff is in the authoring experience. Couldn't you export a photo list to DHTML or something?
Posted By Harry Pierson at 2:00 PM Pacific Daylight Time

Wednesday, September 14, 2005

PDC Quick Hits

I'm sure lots of people are blogging a ton about PDC stuff, but I wanted to call out two things quickly.

First is Microsoft Max. I have a friend on this team, so I've heard a bunch about this. Given the number of pictures I have taken of my kids, I can't wait to play with this in earnest.

Second is LINQ or Language Integrated Query and it's use in C# 3.0 and VB 9.0. I started to write a language a few years ago called Dart (named after my dog) that had SQL-esque commands that were strongly typed. So I'm really impressed with what they've acomplished in LINQ. Not only is it doing strongly typed queries in the lanugage, they even can do joins across stores! In the keynote demo, they joined a query of running processes with data from a database. So now any C# or VB developer has their - or should I say will have their - own query processor around at the ready!

Posted By Harry Pierson at 5:17 PM Pacific Daylight Time

Thursday, September 01, 2005

PDC05 Architecture Symposium Buzzcast

Michael cornered me on Tuesday to record a PDC05 Buzzcast with Mike Burner about the Architecture Symposium. At PDC03, the Architecture Symposium was one of the more popular and successful aspects of the overall confernece (though it was marred by a major room change issue that caused literally hundreds of attendees to be forced to watch from the hallway outside as the room was literally overflowing) and we're looking to do something engaging again this year.

Like last time, the Architecture Symposium will be held the last day of the conference, Friday from 8:30 until noon (with breaks of course). After lunch, we'll have a panel discussion featuring Gregor Hohpe, David Ing, Tony Redmond, Steve Swartz.

Here's the full symposium abstract:

You've had a tantalizing week of cool technology, but now you need to transition back to your real job: making all of the pieces work together. The PDC Architecture Symposium will zoom you through the solutions lifecycle - from requirements to modeling to requirements to iterative development to requirements to operational feedback (which you might look at as another set of requirements) - showing you how traditional best practices and recent innovations can be used together to build robust solutions that accelerate business value creation.

Topics include:
The Architecture of Connected Systems
In the beginning there are the models - from the thing you scrawl on a napkin at lunch to that enormously complex diagram that your network architect carries around in a cardboard tube. What models are worth creating, and how do they relate to each other? Who are the key stakeholders for each, and how can you help them talk to each other? This session explores how to decompose value chains into your key models - your process and work flows, the information at the heart of your processes, and the access, deployment, and other operational models that you need to stay trustworthy and compliant. We will then map these models into a collection of services, orchestrations, and policies that define a highly integrated solution.

Building Connected Systems
With so much complexity and so many stakeholders, how do you build the right thing on time? This session explores the techniques to iterate agilely through a connected system project, including the patterns and practices for building solutions that combine messaging, workflow, structured information, and human interaction across platforms and across organizational boundaries. How can we give the right access to everyone in the value chain, respecting the very real boundaries around information and process control? How do we keep our models current, and use them to communicate with all of the stakeholders throughout the development lifecycle?

Managing the Connected Systems Lifecycle
As each iteration of your connected system is deployed and used, new requirements and system refinements emerge. How do we design in the operational hooks that give us the insight to learn from our deployed solutions? How do we re-factor and version our services and orchestrations to improve service reuse, scalability and operational efficiency? The key theme is driving collaboration between development and operations groups from the earliest design phase through the ongoing maintenance of the system.

As Michael said on the buzzcast, you just can't miss the Architecture Symposium. See you there.

Posted By Harry Pierson at 10:05 AM Pacific Daylight Time

Sunday, June 05, 2005

TechEd 05 - Day Zero

The calm before the storm, as they say...

Things have been quiet around here between new baby & final TechEd prep. I think we're in pretty good shape, though we'll see how we look tomorrow. One good piece of news is that Dick Carlson, who manages the Hands-on Labs, sent out a list of labs either not received or that have blocking bugs. No ARC track labs on either list. That's a good sign...

Last night was the track owner dinner at Sea World. Funny, we had a track owner dinner at Sea World last year in San Diego. Is this a trend? It was fun to hang out with the other track owners and drink rather than have to sit around a table and plan. Didn't get to see Shamu up-close-and-personal like last year, but we did go ride the Kraken roller-coaster. Pretty cool, though reminiscent of Batman at Six Flags in SoCal. One slight bummer - some of us waited extra to ride in the front, but I was to big for those seats! And it wasn't a weight problem (though I could certainly use some work on that front), it was a barrel chest problem.

Today, my pal Chris is driving up from Hobe Sound and we're going to hang out this afternoon. I used to see Chris all the time, but then we both switched jobs and he doesn't have much chance to come out to the left coast. Last time I saw him was at an architect forum last spring in Orlando, when again he drove up to see me. However, I hear there may be a helicopter ride in the cards today, so I'll try and keep the "when are you coming to see me for a change?" grief to a minimum.

I've even gotten a chance to write up some thoughts on two new projects and to play around with the new DSL Toolkit CTP. Of course, having an extended battery for the plane ride was the reason I could do all that.

See you in the cabana on Monday...

Posted By Harry Pierson at 9:34 AM Pacific Daylight Time

Sunday, May 29, 2005

TechEd Utility Player

So we're one week out on TechEd. This time next week, the final prep will be done and we'll be ready to let this thing fly. Some of the core team goes down this week, though as a track owner, I'm not really needed on site until Sunday.

What a difference a year makes. Last year, I was freaking out - it was my first TechEd. Now I feel like the old hand at this. Of course, I wouldn't have made it through last year with out the assistance of a few key individuals. Among others was Esther, who just started blogging for this year's TechEd. She's got a long post about the track cabanas. Last year, they were a big hit, but there were a few glitches. Esther writes about some of the changes they made this year to address those issues.

If you're going to TechEd, make sure to stop by the ARC cabana and say hi.

Posted By Harry Pierson at 5:24 PM Pacific Daylight Time

Thursday, May 26, 2005

Introducing the Architecture Resource Center

Shortly after joining the Architecture Strategy Team, we worked with MSDN to re-launch the .NET Architecture Center. While we've had good success with that site, we realized after running it for several months that we needed a new approach in order to engage architects of all kinds. While Solution Architects are a key audience of ours that is well served by our MSDN site, there are also enterprise and infrastructure architects that we want to be able to engage with via the website. For these audiences, the MSDN site is not really the optimal channel. So today we've launched a new site - the Architecture Resource Center on microsoft.com. We've also re-launched the MSDN site, now called the MSDN Solution Architecture Center.

One of the key differences you'll notice about the sites is that we have a new way of categorizing our content. Previously, we used a topic based approach with categories such as service oriented architecture and application architecture. Now, we have a taxonomy with categories for think ahead, learn more, solve now and share ideas. This gives us a new way of differentiating content such as Metropolis, which really is about the future of architecture, from content such as the Smart Client Architecture and Design Guide, which really is about solving a specific design problems today. Over time, as we add both more content as well as more personalization features, we think this approach will make it much easier for our customers to find the content they are looking for.

Of course, as "community guy", I'm most excited about the Share Ideas section. In addition to a site wide RSS feed, we also have an aggregate architecture blog (and RSS feed)  featuring both Microsoft architects like myself and Simon Guest as well as and 3rd party architects such as Architect MVP's Jimmy Nilsson and Barry Gervin as well as Architecture Advisory Board members David Ing and Martin Fowler. There's info on the new architecture certification, upcoming events and webcasts as well as profiles of my coworkers on the Architecture Strategy Team.

Finally, I'm very excited to announce that JOURNAL is becoming The Architecture Journal and that you can sign up for a free print subscription to this great quarterly publication. We saw a huge traffic spike when JOURNAL was introduced on Architecture Center last spring, so I'm thrilled that that great content will now be available in print format delivered right to your home or office! Watch for print copies of the Best of the Journal issue at TechEd.

Of course, with any new venture, there will be tweaks, hiccups and improvements. Please leave a comment or email me with your thoughts, opinions and suggestions on how we can continue to improve this site to meet the needs of all kinds of architects.

Posted By Harry Pierson at 3:43 PM Pacific Daylight Time

Tuesday, April 26, 2005

Puget Sound IASA Meeting Tomorrow

FYI, I'm presenting at the monthly meeting of the International Association of Software Architects Puget Sound chapter Wed night (4/27). I'll be talking about DSLs and Software Factories, including a hands-on look at the tool. If you're in the Redmond area, the meeting is on the Microsoft campus in Building 43, Room 1560 - the Jefferson Room.

Posted By Harry Pierson at 1:21 PM Pacific Daylight Time

Tuesday, March 29, 2005

KoolAid Drinker

I love this. Except Scott, didn't you mean to say "I'm an architect MVP"?

Posted By Harry Pierson at 11:12 PM Pacific Standard Time

Wednesday, March 09, 2005

TechEd Bloggers

I guess we're still three months out, but TechEd Bloggers is just getting ramped up. Not to many registered bloggers yet. So far, I'm the only registered blogger in the staff category. Last year, I was staff and speaker (the only track owner also presenting I might point out) but this year I'm in marketing so they didn't let me speak! :) Actually, I picked all the ARC track sessions and speakers, so I have no one to blame for myself. Yep, no one to blame but myself for significantly easing my own workload to only worrying about organizing the track, hanging out in the ARC cabana and hearding speakers (note to self, get Ted's mobile number before the event starts) without the added worry of having to present.

Who else is going to Orlando?

Posted By Harry Pierson at 11:49 PM Pacific Standard Time

Monday, February 28, 2005

Community Site

I'm trying to set up a community site for some old friends from high school. Got the domain name, got the hosting space, just need to figure out what to run on the site.

I started by looking the old IBuySpy portal. It's been a while - it's now called the ASP.NET Portal Starter Kit. Looks as good as it did when it first came out. However, there's a slight security issue. My hoster doesn't allow unauthenticated write access to the file system. Most of the ASP.NET Portal data is stored in the database, however the actual site layout is stored in an on-disk XML file. I could work around this by setting up a portal on my local machine, building out the site, and then uploading the relevant xml file, but I want to have my good friend back east help manage the site, so that workaround does't work too well.

Next choice was DotNetNuke. They're about to release their 3.0 version (3.0.11 is supposed to be the final beta). Looks really nice and installed very easily on my local testbed. However, my hoster also doesn't give my DB account owner rights - I get reader, writer, DDL and security admin but not owner. DNN installs a series of stored procedures (which works on my machine due to having DDL permissions) but doesn't give EXEC permissions to those procs to anyone except DBO. Woops. I wrote a small utility app that extracts a list of all user stored procs and calls "GRANT EXEC ON <<SPNAME>> TO PUBLIC" on each one. Seems to work fine, but given the size of the DNN codebase, I'm not sure I'm comfortable that there isn't something else out there that's expecting DBO permissions.

Assuming I don't go with ASP.NET Portal or DNN, what other choices do I have? I've got pretty stringint security requirements, plus it has to use ASP.NET (go figure). I'm still looking at:

  • Rainbow Portal - similar to DNN in that it started from the original ASP.NET Portal source code
  • ASP.NET Community Starter Kit (CSK) - A baseline starter kit for building a community oriented site. Sounds promising.
  • GotCommunityNet - derivative of the community starter kit. They bill themselves as CSK 1.1. Sounds even more promising.

Any other suggestions?

Posted By Harry Pierson at 2:52 PM Pacific Standard Time

Sunday, February 06, 2005

RSS Bandit "Wolverine" - Thumbs Up!

Even though I'm a happy NewsGator customer, I decided to try out the new beta version of RSS Bandit. Wow, I really like the newspaper view. I wish I had this in Outlook.

I recently hopped on the GTD bandwagon and among other changes I deleted all my mail rules and started over. Previously, I was routing my email to different folders based on if I was on the To: line, the CC: line, it came to one of the team aliases or none of the above. I discovered that I pretty much only keep good track of my main inbox with the stuff that came directly to me. Other stuff just languished, unprocessed. Now, I route mail to folders based on the mailing list it comes from. Some mailing lists have lower priority than others. This newspaper view would be perfect for quickly scanning these low priority mail folders, esp. with the feature to mark all as read when leaving the folder.

Posted By Harry Pierson at 2:43 PM Pacific Standard Time

Tuesday, February 01, 2005

PatternShare

About fourteen months ago, David Trowbridge of patterns & practices introduced me to a guy working in their testing group named Larry Brader. David is one of the primary authors of p&p's Enterprise Solution Patterns and Integration Patterns books. I wanted to talk to David about building a pattern repository and he handed me off to Larry. Little did I know that Larry is an information theorist and was one of the key authors of Testing Software Patterns. Frankly, when Larry gets rolling on info theory, I only understood a fraction of what he's saying. But the parts I do understand about how patterns relate to each other blows my mind.

Then p&p hired this guy...what's his name?...Oh yeah, Ward Cunningham. I hear he knows a bit about pattern repositories. :)

Anyway, around this time last year I was having regular meetings with Larry and Ward to talk about this repository stuff. Then stuff got crazy on my end - primarily being the acting marketing director for my team as well as the ARC track owner for last years TechEd. The regular meetings became more irregular and then stopped altogether. That is to say, my involvement stopped - Ward, Larry et.al. kept forging ahead. I heard about how things were going from time to time, but that was the extent of my involvement.

Last summer, Larry, Ward and David (plus others I've never met) published an article called Describing the Enterprise Architectural Space. (They also did a webcast on the topic.) In it, they laid out a way of thinking about how patterns relate to each other and they introduced the Enterprise Architectural Space Organizing Table (EASOT for short). That was just the first step. PatternShare is next one.

PatternShare is a community site that brings together the patterns from popular authors - Fowler, Evans, Hohpe & WolfeGoF, POSA and p&p - into a single repository. Furthermore, it provides a dynamically generated EASOT showing all the patterns in the repository and how they relate to each other. Finally, it provides a way to add new patterns to the repository so that they show up in the EASOT.

Major congrats to Ward, Larry, David and the rest of the p&p folks for pulling this off. I can't wait to see where the site goes from here.

Posted By Harry Pierson at 12:11 AM Pacific Standard Time

Thursday, January 27, 2005

TechEd Session Triage

One of the reasons blogging has been a little light around here recently is because I was prepping for the TechEd Session Triage. Basically, all the track owners figure out what sessions they want on their own then come together for an entire afternoon to present their sessions to each other. Turns out there is often overlap with other sessions in other tracks that need to be worked out, suggesting changes to titles and abstracts and other wise cutting up. For example. I'm sitting next to Becky who owns the Connected Systems Infrastructure track. We had several sessions in both the CSI and ARC tracks that have caused changes and cuts. We actually got the ARC, CSI and DEV tracks got together earlier this week for a "pre-iage" which means today went pretty smooth for the ARC track. Not that it felt like things were going to go smooth running around this morning. Typically, the last 24 hours before triage are a flurry of emails with last minute suggestions. This year - no exception. But now, at least it's done.

Posted By Harry Pierson at 3:26 PM Pacific Standard Time

Monday, December 20, 2004

The Pharonic Architect is Blogging

Speaking of DSL Tools, Software Factories co-author Jack Greenfield just started blogging. He has jumped into the running debate between IBM's Grady Booch and a variety of MS folks including Steve, Alan and myself. He does a good job summarizing the argument including pointing out where he and Booch agree:

In particular, we share the conviction that packaging knowledge for reuse in patterns, languages, frameworks, tools and other form factors is “the right next stage in cutting the Gordian knot of software”.

Jack rightly points out that while we all agree on these mechanisms for packaging knowledge that the devil is in the details. I look forward to seeing more on these details from Jack in the future.

Posted By Harry Pierson at 7:48 PM Pacific Standard Time

Wednesday, December 08, 2004

Be There or Be Square

PDC 2005. 'nuff said.

Posted By Harry Pierson at 9:54 AM Pacific Standard Time

Tuesday, December 07, 2004