My Next Job

So after doing community and marketing for the Architecture Strategy Team in the last two years, I’m changing roles on the team again. I’m going to work for John deVadoss as a solution architect. In other words, I’m going to actually do architecture work for the Architecture Strategy Team. Go figure. 😄

Seriously, I’ve actually enjoyed working for Norman and with Tanya. This has been in the works for a while and I chatted about it with some of my friends who I saw at TechEd. Someone quipped that I was “getting my brain back”. Maybe I’m not getting the whole brain back, but I don’t really see it that way. Marketing is very very very different from technical jobs like development and architecture but it’s just as hard. However, it does use a different part of the brain. So while I’m excited to moving into a role that plays to my strength, I’m walking away from my marketing experience with a new respect and understanding for the job. John wrote about SteveB talking about “selling what we build, AND building what we can sell”. I feel that spending time in marketing has made me a better equipped to build what we can sell. Frankly, I think more (all?) technologists should spend a stint in marketing so they understand what it’s all about.

Anyway, I’m still going to be involved in community and Norman considers me a “stealth” marketing technologist (plus, he replaced me with an experienced marketing person) so I guess I’ll also do some marketing stuff. So I’ll continue to be involved with stuff like Architect MVP and TechEd ARC track, which I’ve really come to enjoy. But I’ll also be involved in projects, doing customer briefings and I’ve got a bunch of other things brewing. So it should be fun.

However, before I make the switch I’m going on paternity leave for four weeks first. Ahh, four weeks of rest and relaxation…yeah right. We move into our new house on Monday so I’m looking at four weeks of heavy lifting, sorting stuff in boxes and changing diapers (it is paternity leave after all). I’ll try and post occasionally, but I’m going incredibly busy and have spotty network access. I’ll probably post pictures to my MSN Space on occasion since I can do that with my phone. Otherwise, I’ll see you on the other side.

More TechEd 05 ARC Track Changes

As per yesterday’s update, here are the latest changes to the ARC track for those in Orlando

Update: Updated link to the GAT Lab.

TechEd 05 ARC Track Additions

For those of you that are in Orlando, there are a couple of ARC track additions and other items of note:

  • ARC305R – We’re repeating Scott Hanselman’s Code Generation talk again Wednesday at 5:30pm in room S220E
  • ARCC17 – The TBA ARC Cabana Session will be on patterns & practices Futures with Rob Jacobs. That’s at 9am on Friday.
  • Speaking of p&p, they are having their weekly p&p Live webcast in the ARC cabana. This “cabanacast” is happening 2pm on Thursday.

TechEd ARC Announcement Roundup

Of course, TechEd is a big time for product announcements, new websites (like ARC) and other assorted new stuff. Here’s a roundup of stuff I’ve been tracking:

  • TechEd is the first time we’re talking about the new Architect Certification in earnest. There has been quite a bit of cabana traffic on this topic. People hear “certification” and think it’s a simple test, but when we explain that it’s more like a PhD board, they get more impressed. When they talk some of the people who have been through the beta program and they hear how hard it is, they are more impressed. So far, I think we’ve only passed around two thirds of the candidates even though the beta program consists entirely of hand selected partners and MSFT employees. Mario made a great analogy to 18th century medicine – certification helped the public separate the real doctors from the charlatans. There’s also a great roundtable interview about the program up on PressPass. Joe from that interview spent a lot of time talking certification in the cabana yesterday. He mentioned that while there is some product focus, a deep Java architect should be able to pass the certification. Good news for Ted who didn’t have many takers to sign his book Effective Enterprise Java at the TechEd author signing on Sunday.
  • patterns & practices launched their new dev center on MSDN. They’ve also released previews of their new Global Bank Integration Baseline Architecture (typically just referred to as GBI) and the WS-I Basic Security Profile Sample App. I got a preview of the GBI project a few weeks ago, and I was very impressed (though it will be even more impressive if they release it as a GAT package). GBI has lots of moving parts that are headless, so the team wrote an application called The Narrator to help users explore what is happening in the system. It provides multiple views into the running system, including a system view, a services view, a pattern view and a security view. When I saw this, my first reaction was “Let’s get that on the web!” I mean, it’s great for use with the actual GBI, but GBI consists of 40 projects running across as many as six machines. That’s a lot of time investment to simple explore the system. So based on my suggestion, the p&p folks built a flash demo of the GBI Narrator. Of course, the flash demo doesn’t connect to a running system, but it’s otherwise a very similar experience to the “real” narrator. Let us know what you think of this approach.
  • Lots of other people have linked to the new VSTO Outlook that SteveB announced on Monday, but I also wanted to link to David Hill’s blog. David is an architect from the Architecture Strategy team, but the VSTO team “borrowed” him 3-4 months ago to help make this happen. Watch David’s blog for info on what’s happening under the covers with VSTO Outlook. Congrats David!

TechEd 05 Day One – This One’s for Chris Sells

Back in November, we published a series of articles about Software Factories. As excited as I am by the concept, Chris Sells really brought me back to earth with this post:

I’ve been reading each of the Software Factories articles with great interest. Part 1 and part 2 did a particularly good job describing the elements of the problem space, I thought. However, when I get to part 3, I was ready to see a solution. Instead what I got was a long abstract piece defining the bits of what makes up a software factory. This is the kind of thing I’d be ready to read after I was shown a concrete example or two of working, running software factories. Do other people like reading these long, abstract articles? I find them tedious unless they’re filling in and generalizing the details of something that I’ve already got a handle on.
[Chris Sells – Concrete Examples of Software Factories?!? – Nov 7th, 2004]

When we were planning the ARC track for TechEd this year, I sent this post to Keith and Jack and told them I wanted to show a concrete example of a working, running software factory. I wanted to impress Chris. Today was ARC302 – Building and Using a Software Factory with Jack and Wojtek. I don’t think Chris was here today, but if he had been, I think he would have been impressed. It’s one thing to see all the various parts working on their own, but it’s very different to see everything working together in concert.

The factory scenario they demoed was for building smart client apps. p&p already has a bunch of existing assets like EntLib and UIP that is useful for building smart clients as well as a ton of guidance for building smart client apps. But long books and source code projects are not the easiest form of guidance for developers to consume. The factory ties these assets and guidance together to provide a powerful in-tool experience for building such applications. For example, they started by instancing a smart client solution template. This had two projects – the UIP related code and the main application code. The UIP project had all the boilerplate code that every UIP project needs to use, but it didn’t have any code for individual UIP page flows. So they invoked a GAT recipe to create a UIP page flow. This is one way where factories differ from traditional wizards – wizards are typically only invoked when creating a new solution. Factory recopies are invoked after the initial wizard runs, meaning you can unfold the template incrementally as you go along. So in this case, you invoke the recipe to create a UIP page flow multiple times, once per flow you want to create. Running the recipe created a bunch of files, but of primary note was a DSL model file and two code generation templates. The model file was for a cool little DSL for laying out UIP page flows. The code gen templates generated all the code for the forms and the flow control as well as the config needed to implement the page flow as designed in the DSL. Then they wired up the generated forms to a web service, including usign a service agent to cache web service call results on the client.

All in all, it was a very full featured app to build in a very very short amount of time. What was interesting is that there was very little hand waving when it came to adding code. You know how demos go where they add literally pages of code? In this demo, they’d swap out the file with the empty method for one where the method had like ten lines of code. And on top of being full featured, it followed the best practices design put forth by out patterns & practices group. So it didn’t fit the mold of a “quick & dirty” demo – how often does a demo app that you build on stage conform to best practices?

I gotta get through the end of this week, but then I want to get a video of the demo up on the web so you can see what I’m talking about, even if you didn’t go to TechEd or attend the session. I’d love to get the code too – it’s all running on VS05 Beta 2 – but you know product group guys…the next version of the demo is going to be even cooler…I think I can convince Jack to ship the current code and then ship the even cooler demo code when they get that finished.