Software has a problem.

OK, it has many problems. I’ve already highlighted one of them. But this is another important one.

The problem is that software—all software, with no exceptions—sucks. The reason for this is multifaceted and we could spend years and years arguing about who has the larger list of reasons, but in the end it boils down to the proverbial shoemaker’s children: Our development tools are the worst of the worst in software.

  • blank_sl8
    link
    fedilink
    arrow-up
    2
    ·
    3 years ago

    Abstractions are important, but we don’t need to reinvent computing to support them…modern programming languages allow basically limitless amounts of abstraction. Have you ever used a high level library like PyTorch? You can define a very powerful neural network in less than 100 lines of code. You get to focus entirely on the architecture of the network (number and types of layers), and it handles everything beneath the surface: Calculating gradients, iteratively updating weights, etc. Even if you choose to define your own custom layers, PyTorch can automatically calculate the gradients of arbitrarily complex functions you compose yourself. Python (and many other langs) are extremely flexible.

    Human language is “1D” by your definition, but you can still use it to talk about very high level ideas.