Objects vs. Data

Christmas was crazy (my wife’s blog has the details), so I didn’t get a chance to blog about Sean & Scott’s desire for unification of objects and data, Erik Meijer’stwopapers on the topic, or Dare’s responses to both. Programming language evolution is something I’ve keenly interested in. When I first started this blog almost a year ago, one of my early posts was about a disruptive programming language technologies presentation from MS Research. Among the areas mentioned for improvement: were database integration and XML manipulation. Sounds like the Xen language demoed @ XML 2003 is a step in that direction.

When you read Erik’s papers, you’ll notice that one of the goals is to natively integrate XML into the language. He writes: “In our approach XML documents or document fragments become first class citizens.” What’s interesting about that is that if you take XML to mean pure-infoset-data (as opposed to angle-bracket-serialization-format) then you can argue that Data (with a capital D) is not a first class citizen of today’s Object-Oriented languages. Given that a lot of OO code has been written to manipulate data, having a language that explicitly distinguished between the two could be valuable (assuming it made the programming easier and the programmer more productive).

Note, this is the opposite approach from tools like O/R mappers and XSD.exe which attempt to hide the differences from the programmer. We’ve seen a similar evolution in the way we think about invoking objects across the network. Tools like DCOM and .NET Remoting attempt to hide the RPC and make it appear as a local call. But as the thinking evolves, tools like Indigo is designed to make the boundaries across apps and machines explicit. Initial thoughts on data access were to make it all look like objects (i.e. O/R mapping). But as the thinking evolves, maybe we need to make the boundaries between objects and data explicit (and easy) as well.

Another .NEAT Blogger

Another member of the .NET Enterprise Architecture Team, Ramkumar Kothandaraman (we just call him Ram), has started a blog. Like Simon, Ram spends most of his time with customers solving hard architecture issues. Check out his post on architectural agility.

Education and Entitlement

I sent my wife a link to Joshua’s entry on offshoring. Julie’s a teacher so I thought she’d find the following interesting:

For the past twenty years, while a changing economy and technology have dictated that we should increase the level of education of the workforce, we have seen the educational achievement of working-age citizens decline.  We do have the world’s best advanced educational institutions, but the majority of advanced science and math degrees are awarded to foreign nationals.  Obviously, not everyone needs to be a science or math genius, but this is a competetive world economy and people who don’t have these skills are certainly not going to be in any position to push the frontiers and create the next industry segments as old ones mature and are taken over by low-cost providers.  One would think that a responsible government would be doing everything possible to increase the density of skilled people (including more competitive education, fast-track citizenship for skilled and highly-educated foreign workers) and stack the odds in our favor.  Instead, I get the impression that it’s easier for politicians to get votes by telling students “it’s not your fault that you are being out-competed, it’s really the fault of the corporations and the incumbents”.  Education is not a passive thing that happens to a student, and the more that students realize that their ultimate competitiveness lies within themselves, the more they will be prepared to push the value curve instead of falling for scarcity thinking — and ultimately that benefits everyone.

She did find it intersting, so she posted of her on experience of earning success vs. entitlement.

There seems to be a trend in allowing people to point fingers wherever they can but at themselves when it comes time to recon with the fact that we are the masters of our own destiny and education and successes. The deal is that many people believe in the “equality” phase our culture has cultivated. What I mean is, treating people in the most PC or Fair way has led many children to feel that they are owed something in their future. No one is owed a thing. We are lucky to live in a country where our rights are honored, to be sure, but believe me; we are not striving very hard as a culture to maintain our supremacy of success.

We are slowly becoming a nation of people who wield our sense of entitlement recklessly and at the cost of our own opportunity

I wish she’d come work for Microsoft’s learning business unit.

Eating Dogfood

I know I blogged that I haven’t been dogfooding, but Don’s post about programming without generics hit home. For example, look thru the source code for dasBlog and you’ll see a ton of hand-written type-safe collection classes that Whidbey will just eliminate en masse. So I loaded up an older laptop with Longhorn & Whidbey. I have been more interested in Whidbey than Longhorn so far, but I figured since I could dedicate hardware (LH runs much better on my 650MHz P3 than in a VPC on my 2GHz P4) I might as well go all the way. Plus, an old friend who spent his Christmas vacation @ Whistler brought me an authentic Longhorn Saloon & Grill hat.