Hi, this is a question that popped into my mind when i saw an article about some AWS engineer talking about ai assistants taking over the job of programmers, this reminded me that it’s not the first time that something like this was said.

My software engineering teacher once told me that a few years ago people believed graphical tools like enterprise architect would make it so that a single engineer could just draw a pretty UML diagram and generate 90% of the project without touching any code,
And further back COBOL was supposed to replace programmers by letting accountants write their own programs.

Now i’m curious, were there many other technologies that were supposedly going to replace programmers that you remember?

i hope someone that’s been around much more than me knows something more or has some funny stories to share

  • leisesprecher@feddit.org
    link
    fedilink
    arrow-up
    0
    ·
    3 months ago

    It’s really weird, though, that nobody really created a language/tool to bridge these two world. It’s always just generating one representation from the other, mostly in a bad way.

    I’d argue, that for many problems, a graphical view of the system can help reasoning. But there simply is nothing in that regard.

    • Ephera@lemmy.ml
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      For OOP languages, you can definitely get IDE plugins, which create UML from code.

      Personally, I’ve never found them useful, though, partially because our code was never OOP enough, e.g. we were using the actor pattern, or had important modules with functions, or had lots of small classes for handing data around etc…

      But also because it just makes for bad architecture diagrams.
      It has no sense of what’s important and what should be abstracted away. Or how to structure the diagram to make it readable, e.g. REST API at the top, database at the bottom.

      What I also really don’t like about generated architecture diagrams in general (even when the contents are specified via e.g. PlantUML), is that things jump around every time you make a structural change. This means people looking at the diagram have no chance of learning what it looks like, so they can spot changes or know where to look for what they’re interested in.