oslofeaturedcontent

April 20, 2010 oslofeaturedcontent

SQL Server Modeling CTP (November 2009 Release 3) for Visual Studio 2010 RTM Now Available

Here’s what Kraig has to say about the November 2010 SQL Server Model CTP that matches the RTM of Visual Studio 2010:

A update of the SQL Server Modeling CTP (November 2009) that’s compatible with the official (RTM) release of Visual Studio 2010 is now available on the Microsoft Download Center.  This release is strictly an updated version of the original November 2009 CTP release to support the final release of Visual Studio 2010 and .NET Framework 4.

We highly recommend you uninstall and install in the following order.

  1. Uninstall any existing SQL Server Modeling CTP from Add and Remove Programs
  2. Uninstall Visual Studio 2010 and .NET Framework 4 Beta 2 or RC from Add and Remove Programs
  3. Install Visual Studio 2010 and .NET Framework 4
  4. Install the SQL Server Modeling November 2009 CTP Release 3.

If you are unable to uninstall SQL Server Modeling CTP from Add and Remove Programs for any reason, you can remove each component using the following command lines.  You need to run all three in order to completely remove SQL Server Modeling CTP so you can install the new CTP:

M Tools: Msiexec /x {B7EE8AF2-3DCC-4AFE-8BD2-5A6CE9E85B3A}

Quadrant: Msiexec /x {61F3728B-1A7D-4dd8-88A5-001CBB9D2CFA}

Domains: Msiexec /x {11DA75C8-10AB-4288-A1BB-B3C2593524A7}

Note: These steps will not remove the SQL Server Modeling CTP entry in Add and Remove Programs but you will be able to install the new CTP.

Thank you and enjoy Visual Studio 2010!

Kraig Brockschmidt
Program Manager, Data Developer Center

March 5, 2010 oslofeaturedcontent

“Deep Fried Bytes Podcast”: Lars on SQL Server Modeling

Here’s how the Deep Fried guys describe episode 45: At PDC 2009, Oslo’ was renamed to SQL Modeling and it left a lot of developers scratching their heads. What better way to sort it all out than to talk with someone deep into the stack. We sat down with Lars Corneliussen to see how this is all going to turn out and it what it means for developers. Definitely an interesting show as it paints a different picture about where things are going with M’, M’ Grammar, SQL modeling, Entity Framework, Quadrant and so on.” Check it out!

March 4, 2010 oslofeaturedcontent

SQL Server Modeling CTP (November 2009 Release 2)

An update of the SQL Server Modeling CTP (November 2009) that’s compatible with Visual Studio 2010 RC has been released on the Microsoft Download Center. This release is strictly an updated version of the original November 2009 CTP release to support Visual Studio 2010 and .NET Framework 4 RC. It contains no other fixes outside of those required to work with the new RC. Enjoy!
February 22, 2010 oslofeaturedcontent

Update for SQL Server Modeling CTP and Dev10 RC

We are currently preparing a release of the SQL Server Modeling November 2009 CTP that will install and operate with Visual Studio Release Candidate. We expect to make this release available the first week of March and will make an announcement here at that time.

We are also planning for another release of the November CTP that matches the final Visual Studio product (RTM) when that product becomes generally available.

February 4, 2010 oslofeaturedcontent

Telerik LINQ to M Refresh for Nov09 Modeling CTP

The Telerik LINQ to M” implementation allows developers to use LINQ statements with blocks of M” values, pure text or the results of a transformed DSL. With the new SQL Server Modeling November 2009 CTP there are some changes to the M” specification, so Telerik has updated their core DLLs to accommodate these changes. Enjoy!
February 4, 2010 oslofeaturedcontent

Deep Fried Bytes: Doug Purdy on OData and Modeling

“In the 43rd episode of Deep Fried Bytes, Keith and Woody sit down at PDC 2009 with Microsoft’s Douglas Purdy to discuss all things data. Do you remember Oslo from the previous PDC event? Well Oslo has been rebranded to SQL Server Modeling Services to help developers store and manage models for the enterprise. Modeling Services enables you to more productive when building and managing data-driven applications. The guys also get the low down from Douglas on a new web protocol for querying and updating data called OData.”
February 2, 2010 oslofeaturedcontent

Rocky’s video series on SQL Server Modeling and CSLA

Rockford Lhotka has created a series of three videos showing how he has applied the SQL Server Modeling, specifically M”, to drive his well-known CSLA, a framework for building the business logic layer in your applications. He shows a custom domain-specific language (DSL) that lets you create a CSLA entity, along with the data serialization, business logic and a forms-based UI, resulting in a 95% coding savings (his words, not mine : ). Enjoy!
January 31, 2010 oslofeaturedcontent

What’s New in EF4.0

Soma has posted a lovely description of what’s new in the Entity Framework for .NET 4.0, including:

  • Foreign Key support so you can add a row without requiring you to download an object just to get the foreign key.
  • Lazy Loading support so as you traverse a property that is a collection, the data is pulled on demand.
  • Plain Old CLR Object support (POCO) so that you can build your own classes and have EF serialize those instead of generating new classes.
  • T4-based Code Generation in case you do want classes generated but want to control the code.
  • Data binding support for WPF and WinForms.
  • WCF support with serialization attribute generation.
  • Much better SQL generation so that you can read it better when you need what’s going on over the wire and so that it’s more efficient.
  • Much better support for complex return values from stored procedures.

That Soma really knows his stuff! Check it out.

January 24, 2010 oslofeaturedcontent

LINQPad updated to support .NET 4.0b2!

I’m such a fan of LINQPad you don’t even know. Recently Joe updated it to support Data Services and as of today, if you scroll down to the bottom of the LINQPad download page, it’s been updated to support .NET 4.0 beta 2, which means that you can point it at Data Services constructed with .NET 4.0. This makes my heart sing. Also, if you haven’t spent the $29 to get the auto-completion, it’s totally worth it. Highly recommended. Thanks, Joe!
January 20, 2010 oslofeaturedcontent

Comparing NHibernate and EF4

This is a nice piece comparing NHibernate and EF4. Personally, I’m an EF4 fan, but I’m hardly unbiased and there are definitely features I want to see added to EF v.Next. Either way, it’s clear that EF4 is garnering much more appreciation from the community than previous versions and that’s because you let us know what you wanted and we added it. Keep those cards and letters coming!
December 1, 2009 oslofeaturedcontent

Data and Modeling Talks from PDC 2009

If you weren’t lucky enough to be able to attend this year’s PDC, not only did you not get a killer laptop, but you didn’t get to see the Data & Modeling talks live and in person. Fortunately, Doug has a nice list of them so you can watch them from the comfort of your own home. Enjoy!

November 29, 2009 oslofeaturedcontent

“Quadrant”: Three Features in Two Minutes

Doug Purdy shows off three features of Quadrant” from the Nov 09 SQL Server Modeling CTP bits in two minutes:

  • Access to SQL Azure databases
  • Creating custom views (including master detail) by mashing views together
  • See the markup” of any view in Quadrant and steal it/change it (just like view source in a Web browser)

Enjoy!

November 13, 2009 oslofeaturedcontent

“M” For Language Definition in November 2009 CTP

I couldn’t wait for the PDC, so I posted a screen shot of my favorite new three features of M” for defining domain-specific languages (DSLs) in the November 2009 CTP of Oslo”:

  • Expressions on the right-hand side in language actions to calculate results. M” supports a rich expression syntax for a variety of data types.

  • Data conversion functions for output, one for each of the supported M” data types.

  • DSL debugging mode to let you step through your input data and debug your language.

I can’t wait for you to see it!

November 12, 2009 oslofeaturedcontent

“M” For Language Definition in November 2009 CTP

“M” For Language Definition in November 2009 CTP

In the November 2009 CTP of Oslo”, we’ve got some new DSL features in M”, three of which I couldn’t wait for the PDC to brag about.

November 2009 CTP version of Intellipad

Notice the following in this screenshot of Intellipad:

  • The use of an expression on the right-hand side to calculate the full name from the first and last name from the parsed input: Name => f + + l (“M” supports a rich expression syntax for a variety of data types).

  • The use of ToInteger32 to provide output data conversion of the Age token as different from the default of string (there’s one of these functions for each of the supported M” data types).

  • The orange highlighted text in the left-hand pane shows a breakpoint and notice that Intellipad knows that yours old.” is a single thing, so highlights the entire phrase. Also notice the notification” pane on the far right to show what the data is that’s being parsed right now. This indicates that Intellipad is now in DSL debugging mode and lets you step through your input data and debug your language.

You’ll also notice richer error information in the Error List at the bottom of the Intellipad window, but that I could’ve waited to tell you about. : )

All of these M” features and more can be yours for the low low price of absolutely nothing in the latest CTP of “Oslo”, which you can download on November 17th, the first day of the PDC.

Discuss

November 10, 2009 oslofeaturedcontent

From “Oslo” to SQL Server Modeling

Extra! Extra! Read all about it!

Doug Purdy, my boss and one of the chiefs on the Oslo” project has just announced the move from codename Oslo” to SQL Server Modeling, which is the name we’ll be using for starting now for the group of M”, Quadrant” and Repository that you’ve come to know and love.

Tune in on November 17th, the first day of the PDC, for the new unified Data Developer Center, which will include all manner of data technologies, including XML, DataReader, DataSet, LINQ to SQL, Data Services (aka Astoria”) and Entity Framework. One stop shopping!

November 7, 2009 oslofeaturedcontent

Chris Sells on .NET Rocks! talking about data

I was on .NET Rocks! recently talking to Richard and Carl about data in Visual Studio (object-oriented, XML and relational), what tools Microsoft is already providing for managing your SQL Server schema and data migration and where Oslo” (“M”, Quadrant” and the Repository) fits into the overall picture. It was fun and I think it turned out well. Enjoy.
November 2, 2009 oslofeaturedcontent

Questionnaire DSL with Microsoft “Oslo”

October 30, 2009 oslofeaturedcontent

Sweet State Machine DSL in “M”

Kevin D. Wolf has built a sweet little language to describe state machines:

The States of a Invoice are New, Reviewed, Submitted, Paid, Overdue and Canceled.

An Invoice can transition from New to Reviewed and Canceled.
An Invoice can transition from Reviewed to Submitted and Canceled.
An Invoice can transition from Submitted to Paid, Overdue and Canceled.
An Invoice can transition from Overdue to Paid and Canceled.

He built this with a language definition in M”. What could be simpler?

October 11, 2009 oslofeaturedcontent

“M” Language Type Definitions for 280 Popular (and not so popular) Data Models

Holy M” types, Batman! Somebody’s been busy building M type definitions for tons of existing data models, including ATOM, AWK, BPEL, C/C++/C#/Java, COBOL, HTML, LaTeX, Make and the list goes on and on. I don’t know how they did it — it’s an amazing task! Now that they’ve got some free time back, maybe they’ll build M language definitions to parse the file formats. I’m just sayin’… : )
September 24, 2009 oslofeaturedcontent

NHibernate DSL Built Using “Oslo”

Felice has built a domain specific language (DSL) for defining NHibernate entities using Oslo”, including both a command-line compiler and a very full-featured Intellipad add-in. Nice!
September 18, 2009 oslofeaturedcontent

Put Intellipad-like language editing features into your applications

Bill Henning from Actipro Software has done it again, this time providing the components to drop real-time language creation features into your application for building custom grammars in the critically acclaimed SyntaxEditor control. Enjoy!
September 8, 2009 oslofeaturedcontent

Kraig Brockschmidt blogging on “Oslo”

Kraig Brockschmidt, the author of calc.exe and the famous (and infamous : ) Inside OLE,” has been a part of the Oslo” community team for a while and is now blogging in the way that only he can. He’s building some samples as he explores the feet on the ground experience and you should check it out. Enjoy!
September 2, 2009 oslofeaturedcontent

Amanda Laucher on Using Oslo for DSLs

Amanda Laucher talks about Oslo and its tools, Intellipad, m.exe and mg.exe - the M” compilers - and how they can be used to create a DSL. She demonstrates the creation of a demo DSL in Oslo, and she does it in a very approachable way. [ed: Quadrant is available with the May CTP.]
July 24, 2009 oslofeaturedcontent

SQL Script to Uninstall an “M” Image

In the May CTP bits, we started working on parts of uninstall support for schema created by an image, but didn’t expose it as a user-visible feature as we will in future CTPs. So if you want to get your hands on this functionality right now, give this SQL script a try. This creates a stored procedure creatively named Uninstall,’ which takes one argument, the id of the image to uninstall which can be obtained from the [Language.Catalog.Runtime].[Images] table.”

July 10, 2009 oslofeaturedcontent

Modeling Inheritance in “M”

Dave Langer, an architect at Microsoft, explores the question of how to model inheritance in M”. What do you think? What support for inheritance should Oslo” provide? What scenarios do you need us to nail in this area? Let us know!
July 10, 2009 oslofeaturedcontent

Use the “Oslo” Repository to Store Service Config

Mikael Håkansson has built a WCF ServiceHostFactory to load service configurations from the Oslo” Repository, which allows you to configure your services with Quadrant”. And he does it even though the Service.ServiceModel type that has been removed from the May CTP (Keith Short talks about why). Check it out!
July 9, 2009 oslofeaturedcontent

Telerik Ships Alpha “M”-Based Comparison Tool

Imagine you’ve shipped v1 of your database applications against a schema created from M”. Now, you’re about to ship the v2 of your database, but what about the v1 clients? Are the tables and views exposed from your database backward compatible or are you going to break those existing clients? How do you even find out?

Well, wonder no more! Telerik has shipped the alpha of their Oslo” comparison tool, which can compare v1 of your M” source code against v2 to see what’s changed and whether that’s going to break your v1 clients. And as if that weren’t enough, they’re working on another version of the tool that will create scripts so that you can migrate your v1 data to v2 after you’re satisfied that your v1 clients will continue to work.

And the best part? It’s all free! Download yours today.

July 8, 2009 oslofeaturedcontent

Telerik Does LINQ to “M”

Stephen Forte and Mehfuz (who, like Prince and Cher, needs no last name), have built LINQ to M”, which means that if you’ve got M” source code like this (shown in a C# string variable for loading convenience):

string MGraphCode =
@"{{Name=""Stephen Forte"", Age=37}, ... }";

and a C# type like this:

public class Person {
  public string Name { get; set; }
  public int Age { get; set; }
}

then you can load the M” source and run LINQ queries against it:

var persons =
QueryContext.Instance.Load<Person>(MGraphCode);
var result =
from person in persons
  where person.Age == 37 &&
person.Name == "Stephen Forte"
  orderby person.Name ascending
  select person;

Enjoy!

July 7, 2009 oslofeaturedcontent

Part 3 of Dana’s End-to-End “Oslo” Series: Quadrant

In part 1 and part 2 of his series, Dana Kaufman, a Program Manager on the Oslo” team, used M” to model the schema for employee information and to create a domain-specific language (DSL) for creating values of that schema. In part 3, Dana shows how to navigate the schema and models in Quadrant,” the data visualization and manipulation tool of Oslo.” Enjoy!
July 6, 2009 oslofeaturedcontent

Rocky’s MCsla on the Olso May CTP

Rockford Lhotka of several C# and VB books and the world-renown CSLA .NET business object framework has ported his Oslo”-based MCsla.NET to the May 2009 CTP. For the part that he’s made work in Oslo,” Rocky has told me that the amount of code you need to write to take advantage of his framework is down by 90% over the C#/VB.NET versions, which sounds like a pretty big win to me. Enjoy!
June 24, 2009 oslofeaturedcontent

JavaScript implementation of “M”

Matthew Wilson is pushing M” into the land of browser client-side scripting with his partial (but growing!) JavaScript implementation, as seen in his web 3-pane M” grammar mode ala Intellipad. It’s work like this that could make M” a cross-platform solution for languages as well as data types and values. Good job, Matt!
June 23, 2009 oslofeaturedcontent

Deep Fried Bytes: Shawn Wildermuth on “Oslo”

Keith and Woody speak with the first repeat guest of the podcast, Shawn Wildermuth about Oslo and the M language.  In this episode listeners will get some real world examples and use cases for using Oslo and M along with a clearer understanding about DSLs and what the future may hold.

Be warned, this podcast uses the phrase bowled shrimp.” : )

June 9, 2009 oslofeaturedcontent

From DSLs & Models to “Quadrant” w/ “Oslo” May CTP

Dana Kaufman, a PM on the extended Oslo” team, has been blogging a series of articles on the definition of a set of M” types, the associated M” language definition for a domain-specific language (DSL) and concluding in how that data can be visualized and manipulated in Quadrant” (the first two parts are available now and the third is coming). Enjoy!
June 4, 2009 oslofeaturedcontent

Actipro’s SyntaxEditor Adds Support for “Oslo”!

Do you like Intellipad so much that you want to host it? If so, than you need Actipro’s SyntaxEditor, which is not only a kick-butt syntax highlighting editor, but can be completely driven by an Oslo” language definition in a .mg file. The demo is free and one of the samples is a fun little Intellipad clone. Check it out!
May 29, 2009 oslofeaturedcontent

MGDisplay: Visualize Parsed “Oslo” Grammars

I love our customers. They do things like take our bits and produce MGDisplay, a tool written by Ceyhun Ciper for visualizing the parse tree produced by parsing a DSL instance document with a M” language definition. Enjoy!

May 28, 2009 oslofeaturedcontent

Questions from Pinky on “Oslo”

Jeff Pinkston, the lead program manager on the M” languages team has some questions that he’d love your feedback on:

The Oslo” team is just at the beginning of our last real milestone before the PDC in November, so the answers to these questions help us to decide how to spend our time. I know that it seems like Microsoft has the ability to crank out the great works of Shakespeare, but we’re limited by time and resources, too, so if you have an opinion on these questions, drop by Pinky’s place and let him know what you think. Or, if you’ve got other suggestions about how to improve Oslo”, drop them into our suggestion box!

May 5, 2009 oslofeaturedcontent

Dutch “Computable” Interviews Chris Sells on Oslo

The translation from Dutch is pretty good: The better you can describe applications in models, the less code you need to write and the more transparency you provide to developers and others.” Computable spoke with Chris Sells. De programmamanager van de Connected Systems Divisie van Microsoft was in Nederland voor een Hot-or-Not lezing, georganiseerd door Sioux. The program manager of the Connected Systems Division of Microsoft in the Netherlands for a Hot-or-Not reading, organized by Sioux.

But they chose the strangest picture…

May 3, 2009 oslofeaturedcontent

Joel Spolsky talks about Wasabi: His FogBugz DSL

In Scott Hanselman’s April 2009 podcast, Visiting Fog Creek Software and Joel Spolsky, Joel talks about Wasabi, FogCreek’s VBScript compiler, and he talks about it really being a subset of VBScript used specifically for bringing FogBugz to Unix and the CLR. In fact, it’s a VBScript compiler built specifically to compile a single application, doing things like making the 5% of ADO.NET they use cross-platform. And just in case the point isn’t completely obvious, Joel and Scott draw the conclusion for us: Wasabi is the domain-specific language just for FogBugz. Just another DSL in nature.
April 17, 2009 oslofeaturedcontent

CodeCast: Oslo and M with Paul Vick

Here. Our own Paul Vick is on CodeCast: The Late Night Show for .NET Developers, with your hosts Ken Levy, Gary Short, and Markus Egger. Enjoy!
April 11, 2009 oslofeaturedcontent

Three “Oslo” Talks at VSLive in June!

This year’s VSLive in Las Vegas (June 8-11), has three, count em three, Oslo” talks! (And a Dublin talk to boot.) Just a few months ago, the Oslo” team was giving all the talks and now there are so many of them I have to hear about them on the street! Our baby grew up so fast…

And as if that weren’t enough, Jon Flanders gave me a code for a discount:

If you register with code S9V10 you can get and all-access Passport Package for just $1,295, a savings of $400.00 off the standard price of $1,695.”

I know I loved MIX in Vegas last month and I’m jealous I don’t get to go back in June. Put some money down on 22 for me!

April 1, 2009 oslofeaturedcontent

Real-World Credit Card Validation Rules w/ “Oslo”

This is a wonderful article on the use of an M” grammar to parse a set of rules specific to credit card validation and then parse those rules at run-time to drive a framework for doing the validation itself. The article does a marvelous job of motivating the use of a custom DSL for construction and validation by non-engineers and then lays out the entire grammar and C# loader code. Recommended.
March 26, 2009 oslofeaturedcontent

InfoQ: Oslo news and content

The nice folks over at InfoQ have been building up some Oslo content and reporting on Oslo news. Check it out!

March 23, 2009 oslofeaturedcontent

Watch the Oslo Mix ’09 Talk: Developing RESTful Services and Clients with “M”

Here. Learn how Web developers can use M”, a new language for describing data, metadata and domain specific languages, to enhance RESTful services like HTTP, JSON, RSS/Atom, and more. Also see how M” can be used on premise or in the cloud to achieve greater development productivity and to create more compelling customer experiences. Speakers: Douglas Purdy & Chris Sells
March 18, 2009 oslofeaturedcontent

Don’t Miss Doug and Chris Doing Their Mix ’09 Talk Oslo-Style

Here. Doug Purdy and Chris Sells will be giving their Mix 09 talk on Friday, March 20th at 9am in San Polo 3501. Doug will be talking about RESTful services and clients using M”, the language of Oslo”. Chris will be typing furiously trying to keep up. Come one, come all! Plus, free hugs from Doug to anyone that mentions this post!
February 18, 2009 oslofeaturedcontent

Mix09: Developing RESTful Services & Clients w/ M

Doug Purdy and I will be giving an M” talk about web stuff at this year’s Mix:

Learn how Web developers can use M”, a new language for describing data, metadata and domain specific languages, to enhance RESTful services like HTTP, JSON, RSS/Atom, and more. Also see how M” can be used on premise or in the cloud to achieve greater development productivity and to create more compelling customer experiences.

Come one, come all!

February 16, 2009 oslofeaturedcontent

More from Stephen Modeling an Application in Oslo

Stephen has three more installments in his series on modeling an application in Oslo: Discovery, Domain Entities and Refactoring and Transforming MGraph to TSQL. It’s fascinating to watch him use the platform starting from scratch. Recommended!
January 20, 2009 oslofeaturedcontent

ExtractM “Oslo” Sample

ExtractM is a sample command-line tool for extracting M source code from compiled M images by Shannon Koh, a developer on the Oslo” team. Enjoy!