- I forgot to add a number to my last morning coffee post. However, after extensive research, I have determined that it was #108. So thing are continuing as usual today with #109. On the other hand, do you really want development and architecture opinions from a guy who can barely count? š
- The finalists in the Dream-Build-Play contesthave been announced. I havenāt played any of them yet (some are available for download) but they several of them sure look good.
- And speaking of gaming, MS announced an Xbox 360 price drop yesterday. So if you want to get in on some of the XNA action, hereās your chance (or you could just build for your PC ā take your pick).
- Finally on the gaming front, if youāre not busy Monday you can watch the first day of Gamefest 2007 online. Get the scoop on XNA 2.0 as well as the new XNA networking support. I, alas, am busy Monday so Iāll have to catch it on demand.
- On to, you know, actual geek stuff things. Scott Guthrie seems to have retired his LINQ to SQL series and moved on to LINQ to XML. He shows how to build an RSS reader application with LINQ to XML. An oldie demo, but a goodie.
- Wanna learn F#, thereās a whole site of samples up on CodePlex. (via Don Syme)
- Jeff Atwood is annoyed at how many different products you have to install to get a current & complete setup of VS 2005. Of course, MS shipped two parts of that stack since VS05 shipped (TFS & DBPro), three service packs (VS05 SP1, SQL 05 SP2 and DBPro SR1) and a major OS upgrade (VS Vista update). Doesnāt the same thing happen with any shipping product after a few years? BTW, if this is such a huge hassle, I wonder why Jeff doesnāt create a slipstreamed VS installer?
- Udi Dahan has a great post on estimation where he claims āDevelopers donāt know how to estimate.ā No argument, but the way he phrases it sounds like itās the developerās fault they suck at estimation. Itās not. Developing ā by definition ā is building something youāve never built before. Is it any surprise we suck at estimating how long it will take us to do something weāve never done before?
Morning Coffee 109
Quote of the Day
In a discussion on governance in our bi-weekly Integration v-team meeting, Jason Howell made the following tongue-in-cheek suggestion:
āIf you have architect in your title, you get a taser.ā
Morning Coffee
- Libor Soucek continues our conversation about durable messaging. We still donāt agree, but he says he āfineā with durable messaging. He does go out of his way to differentiate between enterprise and supporting systems. But when youāre building connected systems, does that differentiation still matter?
- After taking a few months off, John deVadoss is back at the blog. Check out his Big SOA/Little SOA post. I especially like his snowball analogy āHow do you build a big snowball? You start with a small snowball.ā) though heās also on this āmiddle outā bandwagon. Do we really believe āmiddle outā works, or are we just saying it because we know top down and bottom up donāt? And John: Youāre welcome!
- Anyone coming to the Microsoft SOA & Business Process Conference this fall? Maybe we can have a shindig / blogger dinner / unconference / something?
- Remus Rusanu writes about SSBās dynamic routing. One of the (many) cool things about SSB is that all the addressing is logical, not physical. Routing is what binds logical addresses to physical addresses, and itās extensible.
- Martin Fowler discusses the value of sticking to one language. I agree with his points about large frameworks being as difficult to learn as a new language. Iāve said for a long time āIf you build a framework, build tools to make it easy to use your frameworkā. Language is obviously a core example of a tool. Another interesting point Martin makes is the traditional āintimate relationshipā between scripting languages and C, but that the rise of JVM & CLR makes them impossible to ignore. Does the need to play well in a managed environment hinder a C based language like Ruby when compared to a natively managed scripting language like Powershell? Finally, Martinās ājigger of 80 proof uglinessā quote made me laugh.
- Politics 2.0 Watch: EJ Dionne says that DailyKos is doing for Democrats what Rush Limbaugh did for Republicans almost twenty years ago: mobilization. Josh Marshall points out that āwhatās happening today is vastly more participatory and distributedā¦than anything happening back then.ā
Where Have All the SOA Mashups Gone?
John Heintz responded to my serendipitous reuse post. Nice to see I misunderstood his opinions about how easy RESTful systems are to integrate:
I didnāt mean to imply that building RESTful system would lead to magical integration without any hard work. I can see how that came across in my post, and I guess I got the reaction I asked for š
I get the feeling that John would be a good guy to have a beer with.
John spends most of his post writing about the SOA in the Real World book. Iāve flipped thru it and Iām familiar with the model (it is my old team after all) but I havenāt read it so I donāt really want to comment about the book specifically. But there were two things John mentioned that I did want to comment on.
First, at the end of his post John writes:
Can some of the constraints of REST be applied to SOA? Absolutely. I think an asynchronous, message-passing architecture with a uniform interface would be astoundingly interesting! Iām not the only one: see MEST, AMPQ, and Erlang.
This goes back to a REST question I asked two months ago: is it still REST if you donāt use HTTP? Iām guessing John would say yes.
I might be going out on a limb here, Iāll bet the core of Johnās problem with SOA is how toolkits like WCF all but force you to build RPC style services that can easily be modeled as method calls. Thatās certainly one of my problems with SOA. Tim Ewald said it best:
Itās depressing to think that SOAP started just about 10 years ago and that now that everything is said and done, we built RPC again. I know SOAP is really an XML messaging protocol, you can do oneway async stuff, etc, etc, but letās face it. The tools make the technology and the tools (and the examples and the advice you get) point at RPC. And we know what the problems with RPC are. If you want to build something that is genuinely loosely-coupled, RPC is a pretty hard path to take.
If SOA == RPC and REST == loosely coupled messages, then Iāll start growing dreadlocks right now. Frankly, as Tim says, I think itās a problem with the tools (Iām looking at you WCF) and not the underlying architecture, but how many people can distinguish the architecture from the tools? Not many, Iām afraid.
Second, John asks an interesting question:
Where are the SOA mashups?
Thatās easy! Theyāre inside the firewall where you canāt see them! š
Seriously, Iām not sure about āSOAā mashups, but Iām working with what you might call a huge āenterpriseā mashup system inside Microsoft. Our Enterprise Data Integration Services push around massive amounts of data to downstream systems. There are over fifty datasets in production, each with scores of tables, millions of rows and hundreds of subscribing systems. One example, our Products dataset, has over 100 tables and nearly 300 subscribing systems.
Is it āservice orientedā? No, but then again it was originally developed ten years ago on SQL 6.5. But is it a mashup? Is it an āapplication that combines content from more than one source into an integrated experienceā? Yep. Is it easy to work with? No, but guess why Iām involved? Weāre looking at ways to āmodernizeā the system. Am I going to build RPC style services as part of this modernization? Hell, no.
So John, am I right or wrong about that beer?
Morning Coffee 107
- The last day of the service factory workshop was much like the second, primarily focusing on stuff p&p built to integrate GAT and DSLs. We also got a briefing in whatās coming for factories after VS08 (canāt blog about that). We ended with a look at the DSL Editor Power Toy, which provides additional views on a given model and allows you to completely replace the graphical editor with a Windows Forms UserControl. I wonder if you could use ElementHost in order to build a WPF based editor?
- Finished the last Harry Potter book last night. My wife finished it last week but kept quiet about it until I got to the end. No spoilers here, but I wasnāt exactly surprised by how it played out. I wonder what J.K. Rowling will write next?
- As promised, Silverlight 1.0 RC and Silverlight 1.1 Alpha Refresh were released last week. Also finishing out this beta wave were Silverlight 1.1 Alpha Tools for VS08 and a new preview of Expression Blend 2. Scott Hanselman has all the details on all the releases.
- In one of his articles on LINQ to SQL, Scott Guthrie mentioned the LINQ to SQL debug visualizer in passing. Now, he drills into that feature in more detail. Apparently, this isnāt a built-in feature of VS08 ā it has to be installed separately. Make sure you do that, this seems like a must-have extension for LINQ to SQL development.
- Jeff Atwood is worried that he spends more time talking about programming than actually programming. Thatās exactly why I left evangelism to join MSIT.
- Iām still way behind on blogs, but if I donāt post this soon, itās going to be an afternoon coffee. Iāve also got this day job thing that Iāve been away from for several days. So more old news tomorrow.