Friday, November 19, 2010

Dido Music Info: Data structures are for programmers

  • David Karger Says:November 20th, 2010 at 3:00 pm

You`re perfectly good that the exhibit widgets are purely for visualization, not authoring.For that we`ve extended the present framework with Dido: http://projects.csail.mit.edu/exhibit/Dido .One thing you`ll notice with Dido is that there is no explicit data manipulation code.

nstead, the editability of data is _implicit_: you WYSIWYG edit what you see, and the framework takes care of updating the data in response.

ince there`s no specification of data modification, there`s no way to maliciously manipulate it.

Of course, the grade of editing you can do with Dido-directly modifying some place of a record, or creating an all new record-is quite limited.There`s no mechanism for computed updates or bulk updates.For this you`ll need some kind of programming language.And of course, once you allow modification, you make up the possibility for malicious modification.But I hit out the promise that a language designed specifically for manipulating data records (e.g. sql) might be easier to see for malicious intent (not by everyone, but by decent mass to keep everyone honest-see my previous comment).

As for your end of creating a visualization, part of that can be handled by exhibit right now: it`ll let you take a map with circle-size indicating length of residence.Something like http://simile-widgets.org/exhibit/examples/billionaires/billionaires.html .That data can be edited using Dido.Not in a fancy way-you`ll be editing raw fields (entering latitude/longitude and residence duration) as opposed to dragging and resizing circles.And there`s nothing that will give you the movement arrows you want.

But that actually points to another portion of my imagined future.If we win in letting end users author applications, where are all those trained application developers going to go?The answer is that they will become developers of the widgets that make up those applications.Some application developer will create (maybe sell) a device that lets you plot a _trail_ on a map, with arrows connecting points in sequence.And maybe it`ll be editable, with values changed by dragging points over the map.You`ll use this in your app to plot your address book.I`ll use it to plot buffalo migrations.Same widget, different applications.Easily integrated because its simply about pushing a data set into a view, the same way that we create charts in spreadsheets nowadays.

No comments:

Post a Comment