← Back to context

Comment by gfody

4 years ago

source code is excrement. an unfortunate side effect necessitated by the immaturity of our tools. someday we'll make software without it and life will be much better for the poo tenders.

I disagree. It’s the offloading of a decision space very carefully explored. Perhaps “language” and “syntax” can be generalized (ie “excrement”), but the ability to offload a decision space about how to react to a given scenario, without requiring someone to be actively thinking about the minutiae of the problem space, will always have value.

Whether that takes the form of a dependency graph in a software application or a set of assumptions (with their corresponding citations) in a scientific journal, the decision tree (inclusive of dependency graph) will always be essential.

  • if source code takes the form of human language I would no longer call it source code - it still might be excrement but not necessarily so.

    • I feel as though many problem spaces are already expressible in human language, but that “code” is just a more concise expression of the same thing.

      The main issue with common language encoding is dialect (this happens in code, too, especially “common” languages like C++, Java, or JavaScript). That is to say, the assumptions you bring with you about what for example a “schedule” is affects all subsequent decisions based on it, but there are many possible interpretations for the semantics of such a thing.

      It seems to me that most programming languages of today are better than “human language.” They more concisely AND precisely express the decision space.

      I assumed “better tooling” meant some deeper heuristic wherein you might expect an AI to interpret your meaning based on your own enculturation, accepting the high subjectivity of any request/definition and producing an output formed by these assumptions.

      I would still call this “source code” however, in much the same way that legal precedent is the source code for the next legal decision.