Post:

If you’re still shipping load‑bearing code in C, C++, Python, or vanilla JavaScript in 2025, you’re gambling with house money and calling it “experience.”

As systems scale, untyped or foot‑gun‑heavy languages don’t just get harder to work with—they hit a complexity cliff. Every new feature is another chance for a runtime type error or a memory bug to land in prod. Now layer LLM‑generated glue code on top of that. More code, more surface area, less anyone truly understands. In that world, “we’ll catch it in tests” is wishful thinking, not a strategy.

We don’t live in 1998 anymore. We have languages that:

  • Make whole classes of bugs unrepresentable (Rust, TypeScript)
  • Give you memory safety and concurrency sanity by default (Rust, Go)
  • Provide static structure that both humans and LLMs can lean on as guardrails, not red tape

At this point, choosing C/C++ for safety‑critical paths, or dynamic languages for the core of a large system, isn’t just “old school.” It’s negligence with better marketing.

Use Rust, Go, or TypeScript for anything that actually matters. Use Python/JS at the edges, for scripts and prototypes.

For production, load‑bearing paths in 2025 and beyond, anything else is you saying, out loud:

“I’m okay with avoidable runtime failures and undefined behavior in my critical systems.”

Are you?

Comment:

Nonsense. If your code has reached the point of unmaintainable complexity, then blame the author, not the language.

  • grue@lemmy.world
    link
    fedilink
    arrow-up
    38
    arrow-down
    5
    ·
    7 hours ago

    Python isn’t “untyped;” it is, in fact, strongly-typed. (And is markedly different than and superior to JavaScript on that point.)

    This rant feels like it was written by an OO programmer who was never able to wrap his head around functional programming.

      • MonkderVierte@lemmy.zip
        link
        fedilink
        arrow-up
        1
        ·
        3 minutes ago

        Depends enirely on the usecase. Python is loved for data processing but python GUIs get messy. And so do JS and TS.

    • someacnt@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      6
      ·
      4 hours ago

      Do you mean python has something to do with functional programming, or did I misread? Because I would say e.g. Typescript is (slightly) closer to FP than Python.

    • Badabinski@kbin.earth
      link
      fedilink
      arrow-up
      16
      arrow-down
      3
      ·
      7 hours ago

      Yeah, plus it has type hints and tooling to make said type hints mandatory.

      Also, like, fuck golang, it’s such a shit language and the compiler does very little to protect you. I’d say that mypy does a better job of giving you AOT protection.

      • DoctorPress@lemmy.zip
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        3 hours ago

        It took me a whole some text by compiler was supposed to be an error message, there were not any saying of any kind error or hints that it was in fact an error. It just printed some packages then exits with non-zero code.

        Turns out it was import cycle.

      • qaz@lemmy.world
        link
        fedilink
        English
        arrow-up
        5
        arrow-down
        2
        ·
        edit-2
        3 hours ago

        Also, like, fuck golang, it’s such a shit language and the compiler does very little to protect you

        I never understood why people like it. It’s a “new” language, and it still doesn’t seem to get the basics right. No proper null handling, and don’t get me started on interface{}. It’s like they set out to build a better alternative to C++ while ignoring the other developments outside C/C++ for the past 15 years. The compiler is damn quick, though.

        • Gremour@lemmy.world
          link
          fedilink
          arrow-up
          2
          arrow-down
          2
          ·
          3 hours ago

          I’ve dumped 18 years of C++ experience for Go in 2018, and never wanted to come back. Took me a couple of months to become accustomed.

          The main Go’s feature is a green light for ignoring OOP baggage collected for decades, which makes writing code unnecessary burden. And Go have tools for not doing that.

          Yes, sometimes it can be a bit ugly, but if you’re ready to trade academic impeccability for ease of use, it’s a real blast.

          I’ve seen a lot of bad code in Go, which tried to do OOP things taught in school or books. Just don’t. Go requires a different approach, different mindset. Then everything falls in their places.