• 0 Posts
  • 55 Comments
Joined 1 year ago
cake
Cake day: June 18th, 2023

help-circle













  • I don’t understand what you mean. Why does ARM hardware become obsolete after a few years? Lacking ongoing software support and no mainline Linux?

    What does that have to do with the instruction set license? If you think RISC-V implementors who actually make the damn chips won’t ship locked hardware that only run signed and encrypted binary blobs, you are in for a disappointing ride.

    Major adopters, like WD and Nvidia didn’t pick RISC-V over arm for our freedoms. They were testing the waters to see if they could stop paying the ARM tax. All the other stuff will stay the same.




  • While C is certainly better for some problems in my experience, it too is very hard to use in large projects with a mix of developers, and it is unsuitable for most higher level applications in most companies.

    I think C has its place in the world still, which is mostly confined low level embedded, kernel space and malware. I do believe that the market segment that used to rely on C++ is today better served by either Go or Rust, depending on the project.

    That said, while I LOVE working with Rust, it suffers from many of the same issues I mentioned for C++ in my comment above when working in a mixed skillset team.


  • wim@lemmy.sdf.orgtoProgrammer Humor@lemmy.ml*Permanently Deleted*
    link
    fedilink
    arrow-up
    38
    arrow-down
    1
    ·
    edit-2
    1 year ago

    Everything is fine within the scope of a college course or project.

    Where C++ breaks down is large, complicated projects where you colaborate with other developers over multiple years.

    I worked in C++ for almost a decade, and while there were a few good projects I encountered, most suffered from one or more of the following problems:

    • C++ has so many parts, everyone picks a subset they think is “good”, but noone seems to fully agree on what that subset is.
    • A side effect of the many possibilities C++ offers to compose or abstract your project is that it allows for developers to be “clever”. However, this often results in code that is hard to maintain or understand, especially for other developers.
    • Good C++ is very hard. Not everyone is a C++ veteran that read dozens of books or has a robust body of knowledge on all its quirks and pitfalls, and those people are also often assigned to your project and contribute to it. I was certainly never an expert, despite a lot of time and effort spent learning and using C++.