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

View comments by with a score of at least

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

Score: 0

|

Latest Firefox 3.6 beta fixes 133 bugs, promises faster page load times

A once-sluggish beta testing process has kicked into overdrive, with astonishing success at finding serious bugs. Will Mozilla be able to fix all the others in time?

Apple invokes DMCA, claims Psystar is 'trafficking in circumvention devices'

In trying to close the book on possibly the last attempt at a Mac clone, Apple cites from its own landmark case...but may actually be misinterpreting it.

The fallacy of Facebook privacy

Carmi Levy | Wide Angle Zoom: If an insurance company learns something interesting about its client through the Internet, is that snooping?

Microsoft 'worked with Apple' for Silverlight on iPhone, says Goldfarb

By not making such a big deal out of trying to stream video to the iPhone, Microsoft got a big deal out of it, revealed the Silverlight product manager.

Confirmed: Office 2010 to ship in June

Two weeks after Microsoft had been expected to draw a clearer roadmap for its principal applications suite, it's finally ready to commit to the end of H1.

New EU antitrust commissioner will oversee Microsoft, Oracle+Sun, Intel issues

As one of Europe's most prominent politicians shifts positions in January, her replacement remains a question mark over technology's biggest issues.

Without its own 'iTablet' yet, is Apple missing the boat?

Steve Jobs is on record as dissing "single-purpose" devices like e-readers. But given their recent popularity, was that a mistake?

Not-so-mobile battery life: Time to force the issue

Carmi Levy | Wide Angle Zoom: If power efficiency is important when you buy a car or even a motorcycle, why shouldn't it matter for a smartphone?

Clicker.com cuts through the Web video chaos

In a world where homemade video and Hollywood movies travel the same pipeline, it's good to have a real search engine to cut through the clutter.

Microsoft's Ray Ozzie: 'Nobody's going to be 100% open'

The mobile apps ecosystems of the world may converge over time, led by apps being ported over across platforms, according to the Chief Software Architect.

A case study in improving software: What Office 2010 can learn from Notion 3

A music composition product gambles with a complete overhaul, in an effort to make headway against two well-known competitors in a tough market.