PDC 2008: Don Box stars as 'M,' the minister of sensibility

By Scott M. Fulton, III | Published October 28, 2008, 7:29 PM

During another overflowing demonstration here at PDC, long-time Microsoft developers Don Box and David Langworthy (two of the most popular presenters every year) introduced developers to M, the new modeling language for data.

The term modeling is being introduced here in more than one context, and for the realm of enterprise application developers, it refers to the ability to produce a workable schema that may or may not be populated with explicitly typed data. The need for more direct modeling has been known for long enough, though perhaps not understood; it hasn't occurred to people that the task could be approached through the use of another language.

"XML is great for transmitting data and exchanging data," Box told one questioner toward the end of his talk, "but once I try to run a query against it, I run against some walls."

Using M -- the language used by the modeling platform "Oslo" -- a developer explicitly models the structure of a database. M is not an object-oriented language -- a fact that, in and of itself, almost made Box giddy with glee. But it's a more appealing system for defining type and structure for veteran programmers who prefer C++ or C# to XML. And it's an alternative to, or perhaps a complement to, other tools that use more diagrammatic methods for structuring data.

"I don't see text replacing diagrams," Box said. "I see both existing until the end of mankind."

During the talk, Langworthy demonstrated (or, more accurately, tried to demonstrate...he ran into a few hitches) how a simple data modeling process works. He created a test module that represented People. Into that module he added extents which define the boundaries and types of the data.

What's the point? The M compiler generates a binary image of the database, in a very small file size. In so doing, M generates the SQL code that produces the actual tables and type definitions for the database, often consuming what appeared to be six or seven times more lines of T-SQL code. M thus becomes a way to textually, not diagrammatically, produce a live database that's more abstract than T-SQL, and more approachable than XML, for purposes that XML does not adequately serve.

BETA CAPSULE M

What It Is
The data modeling language used in Oslo, Microsoft's new system for modeling the structure of databases used in enterprise-level applications.

How It Works
Programmers create what are called modules which represent schemas in a database. Modules are not objects, and M is not object-oriented; in fact, as Don Box described, any data that ends up having the same structure as a defined module is treated in the same application as belonging to the database -- in other words, if it walks like a duck and talks like a duck, etc.

Extents add constraints and limits to data, defining its type (text, integer, floating-point) and conceivably including its contents. These are the values and constraints that are principal elements of M. Then a developer may generate views, which from the perspective of the M compiler are actually functions, and from the perspective of the T-SQL the compiler may generate are actually queries. Running those functions by name triggers the SQL transactions in the query.

What It Means
M and Oslo represent a return by Microsoft to the fundamentals of programming, but rather than conceiving some new annual data access model (something Box indicated he was tired of rolling out at PDC every year since the dawn of time), M presents a fundamental way of building databases in a way that can be more readily accessed by something far simpler than the data access models Microsoft has already concocted.

Comments

Wow. This makes me want to get back into databases.

Score: 0

|

Silverlight 3 goes live on Microsoft's servers

Microsoft's answer to Adobe's Flash is (unofficially) here, with prospects of higher-speed, higher-resolution video and for the first time, 3D.

Three Android phones on the way from T-Mobile in 2009

T-Mobile's myTouch 3G, launched Wednesday, will be followed by two more Android phones later this year, but neither of them will be HTC's Hero.

Best Buy-brand TVs to get TiVo

A new alliance will place the retailer's own brand alongide the manufacturers, and could also lead to future partnerships on services.

LTE still lacks a voice

The 4G Wireless standard that Verizon hopes to show off before this year is out is still at a loss for (spoken) words.

Data sharing among online advertisers: Is sanity in sight?

Lockdown with Angela Gunn In the middle of a 15-page plea not to get regulated, a spark of smart thinking.

T-Mobile's strategy to combat Apple's iPhone with Android

With a trio of Android phones now in the pipeline for 2009, T-Mobile hopes to break the iPhone's emerging stranglehold.

EC's Reding: Government should act as broker for media downloads

If Internet media services don't step up and build an attractive way for users to start paying for downloads, a commissioner says, government may do the job instead.

Sony TVs get Netflix, still no PS3

Though it's coming in behind LG, Samsung, and Microsoft, Sony will begin to offer Netflix streaming, too.

Google Chrome OS: Too little, too early

Carmi Levy: Wide Angle Zoom Don't start the revolution just yet, says Carmi, who isn't so certain Chrome OS will be the "Windows Killer."

GAO pen test brings the hammer down on federal rent-a-cops

But are the computers to blame for the contract-guard fiasco at FPS?

What's Next: Chrome OS will have at least some friends in high places

Also: South Korea takes another round of DDoS abuse, and Neelie Kroes and Steve Ballmer may shake hands before she exits stage left.

Report: Evidence of further creativity with Windows 7 upgrade prices

A ZDNet blogger did some serious digging for clues as to a reported price break on multiple Windows 7 Home Premium licenses, and may have found it.