The Limiting Factor

- semi-structured line noise.

More on GUIs and DSLs

| Comments

Prior to his gotocon CPH talk “Fast Data –Tools and Peopleware” I had a brief chat with Dave.

I was interested in hearing what had informed the design of his Ivy system, especially the combination of a rich HTML based GUI and a DSL edited in the browser.

This post is a overview of what I consider the key take aways from the chat and some of my subsequent reflections.

  • Combining well known metaphors like a spreadsheet and boosting learnability example based queries with a DSL has been a very useful approach.

  • Supporting power users is a challenge but doable in a mordern web app.

1) Firstly the app has to be designed to support that user type expects, like short cuts etc. Ivy is not just a editable field for code, but a complete IDE including debugger etc.

2) Secondly if you include a DSL don’t do it to boost your ego but because it provides actual leverage. Also don’t forget that putting a DSL out there which power users are going to trly on require that you can support it. This means that you have the physical resoources available for the long run.

  • Building a web app offers the possibility of offloading computationally demanding operations to the backend, for instance generation of SVG graphs.

Full Disclosure: I am receiving a free GOTO ticket from the producers in exchange for blogging about the conference.