i think "usable by non-programmers" is at odds with "useful for building arbitrary applications"

that's not a bad thing unless you try to make one tool that does both

we have some counterexamples: the unix shell & excel. ("usable by non-programmers" *is* at odds with "useful for building arbitrary applications *maintainably, at scale, and at production quality*" but that's a very different argument.)

@xj9 @enkiv2
It's the same thing in a social organization wherein coding remains almost entirely the domain of professional developers, because there aren't enough professional developers to do custom solutions for everybody. But, if more non-developers make their own custom solutions, those solutions don't need to scale.


I think I'm mostly in agreement with that essay. (It's very similar to the thesis of my essay 'Big and Small Computing'.)

Two points where I think we might disagree:

1) I think most of what software engineers do right now, by volume, is stuff that (were interfaces more flexible) ought to be handled by users. Software engineers do this stuff because it's walled off from regular users unnecessarily, but we aren't happy doing it & the users aren't happy with the results.

@enkiv2 I agree with that more interfaces need to be programmable in a safe and easy way.

2) UIs that are capable of general purpose programming are fine, so long as the user isn't expected to perform general purpose programming in order to perform common tasks. The success of the unix shell among non-programmers in professional settings is evidence that this can work, as are things like lua scripting in game modding.


i think what i'm trying to get at is that there is an inflection point where the inherent complexity of a given problem is more than a user should be expected to handle on their own. at this point an engineer is needed to solve the problem effectively.

i do think that users are capable of a lot more programming than they are expected to do today. i also think that many of the restrictions that you would want to put on user scripting would make writing programs to solve problems above this inflection point annoying or difficult. because of this and the amount of detail an engineer would want vs a user, i think different (compatible) tools are needed for each group.

I think we're in agreement. Maybe we disagree about where that line is, though.

Sign in to participate in the conversation
Eldritch Café

Une instance se voulant accueillante pour les personnes queers, féministes et anarchistes ainsi que pour leurs sympathisant·e·s. Nous sommes principalement francophones, mais vous êtes les bienvenu·e·s quelle que soit votre langue.

A welcoming instance for queer, feminist and anarchist people as well as their sympathizers. We are mainly French-speaking people, but you are welcome whatever your language might be.