The Vedea Project, Introducing the Microsoft Visualization Language

Thanks to a Chris Webb post i found this great blog post on a new MS research project called the Vedea Project.

Vedea is a prototype of a new experimental language for creating interactive infographics, data visualizations and computational art.  It is designed to be accessible to people who are either new to programming or whose primary domain of expertise is something other than programming.  We wanted to give those users a tool that they can use to realize their own vision and visualizations without having to engage skilled programmers, but have it be an environment that skilled programmers would not find limiting.

Ok what does this mean? Developers get great tools to create all kinds of visualizations from code

The Microsoft Visualization Language is built on .net 4.0’s new Dynamic Language Runtime.  This gives us some important advantages over more traditional language implementations.  Syntactically, the Vedea language looks a lot like C#.  In its simplest form though, there are no class decorations – just a collection of functions.  You can introduce classes if you want to do object-oriented programming, but they are not required and your topmost functions aren’t wrapped in any of the syntactic trappings of a class.

A piece of sample code that really got me excited:

myData = DataSet(“mydata.csv”);
currentYear := slider.Value + 1900;
bubbles := from row in myData
where row.Year :== currentYear
select new Circle()
X = row.Latitude,
Y = row.Longitude,
Radius = row.Population * scalingFactor,
Fill = BlackBodyPalette(1., 1., row.DeltaCarbon)

This gives some pretty serious possibilities to create all kind of visualizations, this could be huge for BI developers with some kind of programming background (like me 🙂 )

Read the entire post with more background and samples on the blog of Martin R. Calsyn of MS Science:

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.