Morning Coffee 78

  • Ian Griffiths posts a much longer version of “Even though the runtime supports multiple languages, most programmers are only fluent in one.” (via Larkware)
  • I wrote yesterday that Pat Helland’s first post back was light on the tech talk. Luckily (for us) he takes the bus to work so he has plenty of time to write blog entries. Today’s post is his “personal opinion about how computers suck”. Money Quote: “We try too hard as an industry.  Frequently, we build big and expensive datacenters and deploy big and expensive computers. In many cases, comparable behavior can be achieved with a lot of crappy machines which cost less than the big expensive one.”
  • Steve Jones wrote that CRUD is CRAP. I agree 100%, but for additional reasons. Not only is it boooooring to write, it also delegates control outside of the service which I think is a mistake. Check out this post from Maarten Mullender who advised to do CRUD only when you can afford it.
  • MIT Media Lab has created Scratch “a new programming language that makes it easy to create your own interactive stories, animations, games, music, and art — and share your creations on the web” targeted at kids 8 and up. It’s a dynamic visual programming language that looks like Lego. Between Scratch, Boku and Phrogram I think my kids will have lots of fun learning to program like daddy does. (via GeekDad)
  • Halo 3 is coming September 25th! I foresee lots of people calling in sick that day. And the next. And the rest of the week, etc. etc. etc.

Afternoon Coffee 77

  • Pat Helland is finally blogging again. His first post back is basically “what I’ve been up to for the past two years”, which is to say no cool tech stuff…yet. David Ing calls Pat’s time @ Amazon “an extended training sabbatical” and that we’re lucky to have him back. Agree 100%. BTW, since Pat didn’t include a link to his recent paper and presentation, I will.
  • Speaking of blogging luminaries, James Clark is also blogging. Don Box calls him the “brightest guy in XML-land”. Money Quote: “any damn fool could produce a better data format than XML.”
  • Rick Barnes – aka my boss – likes Roger Session’s white paper A Better Path to Enterprise Architectures and comes up with a number of variants of Roger’s Observe/Orient/Plan/Act model. Then he asks the $64,000 question: “Why then, do we insist on spending months analyzing software the business, interviewing subject matter experts and end users, writing hundred or thousand page “requirements” documents, and meeting to agree on dozens or hundreds of features before we write the first line of code?” Rick is one of the reasons I took this job instead of the other awesome opportunities I had when I was switching jobs. I’m sure you see why.
  • Speaking of requirements, Eric Sink has a phenomenal post on requirements. Go read it. Can we officially grant “Walking Spec” anti-pattern status without the customary waiting period?
  • Scott Guthrie posted on Anonymous Types, the latest in his series on the new language features coming with LINQ. Anon types in and of themselves are a fairly simple construct – you pass the properties and values into the new object init syntax and the compiler munges up a class to match. Simple, but critical for SQL-style data shaping queries. Of course, the limitation is that you can’t pass the anonymous type object around in any type-safe way.
  • LINQ to * Watch: LINQ to SharePoint. Details on Bart de Smet’s blog.
  • Jeff Atwood writes a long post to ask for background compilation in C#. +1 on that request. But I disagree with his point about “giving up on the idea that .NET is a multiple language runtime”. Even though the runtime supports multiple languages, most programmers are only fluent in one.
  • I’m a bit behind on this, but my old team has moved SkyScrapr to MSDN. For the uninitiated, SkyScrapr is a site for aspiring architects to learn about software architects and architecture.
  • p&pClarius has shipped a new software factory: the VSIPFactory, a software factory for Visual Studio Extensibility. Pablo Galiano has more.

Update: I mistakenly attributed the VSIPFactory to p&p. It’s from Clarius. Sorry guys.

Making My Mark at TechEd

One of the things that’s different about being in MSIT is that it’s cut my travel dramatically. Basically, the only travel I’ve done since taking this job was Thomas Erl’s SOA Workshop last September. So it came as a bit of a surprise when I got tapped to present at TechEd (at fairly close to the last minute).

The last year I ran the architecture track, all track owners were asked to include either a globalization or MSIT session in our track. Since then, MSIT has expanded it’s role at TechEd dramatically, with 14 breakouts, 20 chalk talks and our own Technical Learning Center.

I’m doing a two chalk talks on my MSIT project, Rome. I mentioned the project back when I switched jobs, but we’ve never talked about the project by name before. We haven’t accomplished quite as much as I’d hoped since then, but we’ve progressed to the point that we can talk publicly about what we’re doing. Now that we’ve begun to open the kimono a bit, you should see more on Rome, Not only from me but also my teammates who blog: Dale, Rick and Dottie.

So if you’re going to TechEd, make sure you stop by the MSIT Technical Learning Center and say hi. Unlike my last two trips to TechEd, I have very limited responsibilities this time – basically just show up on time and talk about what I do all day, twice – so that leaves plenty of time to attend sessions, chat up attendees and ride roller coasters. Hope to see you there.

ROME: Service Oriented Infrastructure for the Enterprise
Like most enterprises, Microsoft IT is adopting a service oriented approach for the development of their internal systems. However, in order to avoid projects building similar service infrastructures on a per application basis, MSIT realizes the need for a common service oriented infrastructure to build these systems upon. Inside MSIT, the Rome project is tasked with designing, building and maintaining the infrastructure for these services. Come chat with Harry Pierson, lead architect of the Rome project, and discuss the challenges of building a large-scale service infrastructure inside a large enterprise like Microsoft.

  • MST02-TLC Monday (June 4th) 1:15-2:30pm
  • MST14-TLC Thursday (June 7th) 1-2:15pm

Morning Coffee 76

  • Dare Obasanjo sez Cool URIs Don’t Change. He’s got other versioning advice, but that’s the main takeaway. Good advice that dovetails nicely with “It’s the URI, Stupid“.
  • I usually agree with Jack van Hoof’s stuff, but I don’t agree with his thoughts on loosely coupled transaction processing. It’s much better than suggesting the use of 2PC system like WS-AT, but when he writes that “by design every action has a compensating action to undo the original action” I am reminded of Pat’s old post Why I hate the phrase “Long Running Transactions”. Personally, I’m a fan of using the Tentative Operation or Reservation pattern, described by John Evdemon. Note the lack of a transaction coordinator in that pattern.
  • Speaking of service anti-patterns, I wonder how we rationalize the following two statements, both from Microsoft, in documents published by my old team:
    • “CRUD operations are the wrong level of factoring for a Web service. CRUD operations may be implemented within or across services, but should not be exposed to consumers in such a fashion. This is an example of a service that allowed internal (private) capabilities to bleed into the service’s public interface.” John EvdemonPrinciples of Service Design: Service Patterns and Anti-Patterns, Readings in Service Orientation
    • “It is very common for Entity Services to support a create, read, update and delete (CRUD) interface at the entity level, and add additional domain-speciic operations needed to address the problem-domain and support the application’s features and use cases.” Shy Cohen, Ontology and Taxonomy of Services in a Service-Oriented Architecture, Journal 11
  • Ian Thomas wonders Does ERP suck? In a word: Yes! 😄 Seriously, I’m a strong believer in what Ian alternatively calls “unbundling” and “disaggregation” of monolithic enterprise systems – ERP is the most glaring example of such systems.
  • Jamie Cansdale is figuring out how to host Silverlight’s CLR outside of the browser. He’s already got a console runner up and running. He’s working of adding “Test With Silverlight” option to TestDriven.NET. You go Jamie.

That Deaf Dumb and Blind Kid Sure Plays a Mean Pinball

Michael K. Lee as
Tommy

Last night, I got to see the final dress rehearsal of The Who’s TOMMY at the Village Theater in Issaquah. My mother-in-law got a couple of free passes because she’s working with the director on a separate project. There was no way to get a babysitter on such short notice, so that meant either Jules or I got to go. She’s not as big a Who fan as I am plus the theater is five minutes from my office, so I got to go.

Most people who know the show have either heard the album, seen the movie or both. Pete Townsend adapted it for Broadway in the early 90′s and I got to see it as it came through Washington DC on it’s way to New York. Suffice to say that the movie is very different from the stage show. It’s so different that the Village Theater specifically “does not recommend the film for previewing to gain an understanding of the stage version.”

If I had to pick, I like movie version more than the stage version. The stage arrangement of the music is orchestral, which I feels waters down the power of the music. This is most obvious on Eyesight to the Blind which was performed in the movie by Eric Clapton. The orchestral arrangement is barely recognizable as the same song in my opinion. The stage version also adds a new song – I Believe My Own Eyes – which I don’t very much.

However, if you look at it on it’s own, The Who’s TOMMY is a good show. It’s over the top, but for this show that works. Tommy’s journey from “deaf, dumb and blind kid” to “new Messiah” is even more appropriate today than it was in 1993 when the Broadway version premiered. At the time, Townsend got a lot of flak for the changes the show, but as he said “what’s actually changed is the times”.

While the show itself is over the top, this production is even more so. To quote from the flyer (which I can’t find online) everything is in nearly constant motion. Actors, set pieces and a huge video screen that dominates the stage. Again, given the show, it works. The cast was good – Michael Lee (pictured above) as Tommy was a particular stand out. There were a few rough spots in the large chorus numbers, but that’s to be expected in a dress rehearsal, right?

Bottom line, it’s a good show so if you live within driving distance of Issaquah, you should check it out. If you’re already Who fan, just be aware that it’s not supposed to be just like the movie…