Re:Eve: the dev diary of a programming environment aimed at ...
by ZenoArrow on Thursday May 14, 2015 @03:11PM
(#9546973)
I agree it's a worthwhile goal, but perhaps one that's better tackled from a different direction...
Instead of asking how to make programming more accessible, why not ask... What would an evolved Excel look like?
Take cell-based formulas for example. For all their benefits, there are a few obvious issues with cell formulas in Excel.
First, it's not always obvious where they are. You can have formulas all over an Excel spreadsheet and it's not easy to tell at a glance where they are, so you don't know what parts of your spreadsheets are static and which parts are dynamic.
Second, formulas can become unwieldy very quickly. Whilst Excel formulas are very Lisp-like, the lack of user-defined functions within Excel (you can do it other ways) means you often have large nested functions or resort to suboptimal methods like storing intermediate steps of a calculation in other cells to keep the formulas manageable. The language constructs aren't designed to enable semantically-rich yet succinct formulas, though occasionally there are useful tricks to extend beyond what is immediately obvious (such as the ways SUMPRODUCT has been twisted beyond its original purpose). You want to encourage elegant creativity, rather than relying on arcane tricks.
Lastly, plenty of scope to improve performance.
All three of these issues above are very much solvable, would allow non-professional-programmers a far nicer tool to work with, whilst unlocking more of their creativity and the potential of the machines they're using. Seems like it would also be a reasonable base for further research into improving the accessibility of programming, as you could learn which concepts stick in people's heads and which ones don't.
Instead of asking how to make programming more accessible, why not ask... What would an evolved Excel look like?
Take cell-based formulas for example. For all their benefits, there are a few obvious issues with cell formulas in Excel.
First, it's not always obvious where they are. You can have formulas all over an Excel spreadsheet and it's not easy to tell at a glance where they are, so you don't know what parts of your spreadsheets are static and which parts are dynamic.
Second, formulas can become unwieldy very quickly. Whilst Excel formulas are very Lisp-like, the lack of user-defined functions within Excel (you can do it other ways) means you often have large nested functions or resort to suboptimal methods like storing intermediate steps of a calculation in other cells to keep the formulas manageable. The language constructs aren't designed to enable semantically-rich yet succinct formulas, though occasionally there are useful tricks to extend beyond what is immediately obvious (such as the ways SUMPRODUCT has been twisted beyond its original purpose). You want to encourage elegant creativity, rather than relying on arcane tricks.
Lastly, plenty of scope to improve performance.
All three of these issues above are very much solvable, would allow non-professional-programmers a far nicer tool to work with, whilst unlocking more of their creativity and the potential of the machines they're using. Seems like it would also be a reasonable base for further research into improving the accessibility of programming, as you could learn which concepts stick in people's heads and which ones don't.