4 ms·
I’ve actually posed this question to non programmers. The language they come up with usually resembles natural language English. Alternatively it looks like a b
by ModernMech 5y ago
I’ve actually posed this question to non programmers. The language they come up with usually resembles natural language English. Alternatively it looks like a box/line drawing. It almost never looks like programming as we conceive it.
- Jtsummers 5y agoIt's also not a general-purpose language in many cases. To the extent that I have made languages (mostly re-implementations or extensions) that were meant to be used by others (usually engineers doing analysis, or operators of a complex system), they had developed a bespoke DSL that represented their problem domain. They tended to fall into two modes: command oriented with mutation, declarative query languages. The declarative query languages were often the most consistent and uniform throughout. Not totally, but no "Wait, why are we changing the model in the middle of this?" question arose. The command languages tended to be more ad hoc. Like they'd have procedures that changed things and looked more like conventional procedure calls, but suddenly there's a print statement or a query that looks very different than the rest. Like it was multiple languages jammed together, which in a way it was. Taken as a whole it's inconsistent, but taken in context different people wanted the queries than wanted the commands. An operator wanted the commands, an analyst wanted the queries, and the way they spoke to the initial developers resulted in a mishmash design. At one point they may even have been two different products that get combined because analyst/operators were increasingly common (also, automation, why automate via two tools when you can do the same job with one?).
- ModernMech 5y ago> The declarative query languages were often the most consistent and uniform throughout. Declarative query languages are where it's at for non programmers IMO. SQL + Excel + Matlab is the sweet spot IMO. Why? Because non-programmers have the most success with these languages! No need to explain Excel. SQL is known by all kids of non-programmers. For example, my father in law sells directory ads. He is one of the least knowledgeable people about computers, and even he knows SQL. Matlab and other array languages also have quick uptake by non-programmers in my experience.