Business people love Excel…but why? Because Excel allows us to do almost everything. From simple tables, sheets with complex calculations under the covers to complete applications with a “real” backend - everything is possible with Excel. It even manages to trick us into believing that even the most sophisticated spreadsheets do not have anything to do with programming. But is it really so different from programming? Or is a Mylyn filtered Eclipse workspace actually remarkably similar to a filtered table that directly highlights the relevant data? What other commonalities do exist and what can we learn from Excel and its users - the business people, requirements engineers and analysts?
Since many years we tried to close the gap between programmers and business people with DSLs (Domain Specific Languages) - formal languages, that use the vocabulary and the notation of the domain experts. We tried graphical, text-based or best of breed approaches (read: graphical and textual). But to be honest, we rarely managed to define a language, that convinced the business people. After all, we were still building “just” another scary IDE. Turns out, that nothing cloaks a programming environment as Excel does.
Not even web based editors for DSLs helped to mitigate that problem. They helped to reduce the entry barrier, but business people want to have forms and diagrams and fancy notations with custom domain specific symbols, like in insurance mathematics. Despite the full unicode charset, these expectations are hard to meet with plain text. Looking at other approaches, like projectional editors (learning from Excel again), the mixture of different representations becomes easier.
In this session, we would like to show you where we see the problem and what the next steps could be to make business people using DSLs to finally close the gap and trick them into programming even without Excel.