Steve Krouse interviewed me on his podcast: De-Nerding Programming. There are some other interesting interviews, and he also hosts a Slack discussion.
TFW you reject your own submission
Dear Jonathan,
We’re sorry to inform you that your submission #12
Title: Direct Programming
was rejected, and will not be presented at the LIVE 2018 workshop. Your reviews are included below; all papers were reviewed by 3 people. We had a record 22 submissions this year, and were only able to accept 10, so making the decision was hard.
We would like to take this opportunity to thank you for your submission and we hope you find the reviewers’ comments helpful.
– Roly, Ravi and Jonathan
Managed Copy & Paste
A short peek at what I’ve been working on, as a postscript to my Direct Programming video.
The problem with programming and how to fix it
Programming could be much much easier most of the time. This unnecessary difficulty wastes the effort of professional programmers, but worse, prevents many people from programming at all. The problem is a nasty hairball of culture and technology and money that is not easily untangled. I’ll try to address this essay to a general audience. Continue reading “The problem with programming and how to fix it”
Direct Programming
Here is a brief description of my latest work in progress, which I am submitting to PPIG.
Direct Programming
To make programming more accessible to regular people it may help to make it less abstract and more concrete. Towards that end I am taking another run at the old ideas of macro recording and Programming by Example. Many such efforts abstracted user actions into conventional code. Instead I co-design the PL and UI to be analogous, so that programs and users have much the same capabilities, and programs look much like recorded transcripts of user actions. Conscientiously following this design principle leads in the opposite direction of current PL trends, towards a deeply imperative semantics and a de-emphasis of functional abstraction.
Any attempt to make programming more concrete faces two challenges: loops and conditionals, for they necessarily deal with hypothetical situations. My approach is to extend the direct manipulation metaphor onto template states that prototype iteration, and example states that witness alternative cases.
This submission is a demo of early-stage work lacking evaluation, and indeed it is submitted in the hope of receiving guidance on an appropriate evaluation methodology.
As always, comments and criticisms welcome.