3 ms·
This made me think of an analogy: the idea that academic writing should be simple and jargon free is a lot like the idea that programming should be accessible t
by hyperpape 11y ago
This made me think of an analogy: the idea that academic writing should be simple and jargon free is a lot like the idea that programming should be accessible to non-programmers.
There are lots of ways that we've tried to hide the essential complexity of programming. Some of them are higher level languages like Python, some of them are domain specific languages (like SQL), and other ideas are more radical (graphical programming languages and so on).
The obvious things to point out are that
1) The most successful of the alternatives aren't wholly jargon free.
2) They've certainly helped make parts of programming more accessible to people, but haven't lead to the "programming for all" dream that has been expressed before.
3) They aren't full replacements--people still are using programming languages with pointer arithmetic and manual memory management for some purposes.
4) In the cases where new languages are general purpose (as opposed to DSLs), there's no agreement that they're desirable. A Haskell enthusiast doesn't think Python is right to try and reduce "jargon", they just think it should be a different kind of jargon.
Analogies are always imprecise, but I think this is a helpful one. In programming, it's not always clear what is incidental complexity vs. essential complexity. In writing, it's the same thing. We can (mostly) agree that goto should be minimized, and comefrom entirely avoided, but past that point, we get a lot of disagreement.