How should the RavenDB UI look like? (There is a prize!)

time to read 3 min | 566 words

Update: The offer is now closed.

Currently, RavenDB comes with a builtin user interface which is HTML/JS based. The UI is nice, but it has limitations. Getting real applications on to of HTML/JS requires a lot of work and expertise, and while I understand how it is done, I find it painful to do so. Another problem is that the UI is already becoming cluttered, and we can’t really offer high end UX with the type of options that we have in a web interface without a ridiculously high investment in time and effort. But I still want the no-deploy option, so the next UI for RavenDB is going to be done in Silverlight. For example, giving syntax highlighting for editing index definitions would be trivial in Silverlight and very hard in HTML/JS.

Hibernating Rhinos (my company) is going to sponsor professional UI developed for RavenDB using Silverlight. Think about it like Management Studio. The work is going to be done in Silverlight, with the idea that you could gain all the usual benefits of being able to host your own UI. I was talking today with a few people about that, and everyone agrees that the actual process of implementing this is fairly simple.

The problem is what sort of UI we should do. One option, which we will not take, is simply copy the current web UI. But that is something that I strongly oppose. I think that the web UI is nice, but that we can do much better.

One of the things that bothers me is that I do not want to do is to give your a grid at any point in the UI. RavenDB is all about documents, and I want to UI to direct you toward thinking in documents.

I have all sort of crazy ideas about representing documents as a series of documents in an infinite space. Something like this:

image

And then zoom on a particular document to be able to work on it effectively, literally paging between different documents with page turns, etc.

I am not sure if I am going with the right direction or if I am just doing the equivalent of build an interface made of nothing by <blink/> tags.

So, here is how it goes. I would really like to get ideas about how to do a good UI for RavenDB. But I don’t think that just talking about this would work. I would really like to see a prototype that I can look at. Doesn’t have to be actually workable, I would gladly look at hand drawn pictures. It doesn’t even have to look good, because I am more interested in seeing UX rather than UI, and how we can focus users toward document oriented thinking.

To facilitate that, I am going to offer a prize. Your choice of the a profiler license or RavenDB license if you send me your ideas about how to build such a UI. I am going to send a free license to either the profiler or RavenDB regardless if I‘ll choose your suggestion or not (as long as the suggestion itself is serious), this isn’t just for the winner.