I have met a couple of them in real life, and a few I have met online. The sample is not significant enough to draw any conclusions about their point of view and background.

I am more than interested in your opinions about the personality and political makeup of people who express this type of pro-C bigotry.

  • xmunk@sh.itjust.works
    link
    fedilink
    arrow-up
    0
    ·
    2 years ago

    C++ is pretty awesome but anyone who thinks a single language is the solution to all problems is dumb… unless you’re smart enough to realize that the one language to rule them all is PHP of course!

    • Scrubbles@poptalk.scrubbles.tech
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 years ago

      If there is anything I’ve learned in my 10+ years as an engineer, it’s that there are no good or bad languages, just pros and cons of each in different applications.

      Except NodeJS. Never use JavaScript on the backend.

    • flashgnash@lemm.ee
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      It’s crazy to me that people don’t do this, once you’ve learned a few languages you can basically just pick up new ones straight away (assuming they don’t use entirely foreign concepts like Rust does)

      • locuester@lemmy.zip
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 years ago

        Rust can be picked up the same way. I was in the situation you describe. Knew a dozen languages. Picked up rust and really enjoy it. It added a dimension to my thinking (ownership). I feel closer to the metal yet safe. That said, it still gets tricky with system design. That’s where it’s a lot harder due to ownership stuff. Just syntax wise it’s not bad tho

        • flashgnash@lemm.ee
          link
          fedilink
          arrow-up
          0
          ·
          2 years ago

          It might be because I’d never used C but I really struggled to pick up rust for a month or so until it stopped feeling like

  • I Cast Fist@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    2 years ago

    In my opinion, C purists are people who REALLY need to wash their fucking dishes, touch grass and get some sunlight. They get too worked up because “all the important things are written in C”, the important things being drivers, kernel and most basic stuff that OS needs.

    Whenever one talks about performance, just reply with “use Assembly” and their argument is immediately invalidated. You can also mention networking, fault tolerance and how Erlang does a much better job than C or C++ could do, which is why “real adults with real jobs” created it in the early 90s

    But mostly, it’s ironic that they’re becoming C-Conservatives, blaming the “hot new language” for bringing “the kids”. You can read the same kind of logic and disdain for C programmers, from LISP programmers, in the Unix Hater’s Handbook (1994)

    • RubberElectrons@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      Nah, I like using C for low level stuff, it balances that it’s reasonably high level and procedural with pretty great performance, size and flexibility. ASM is faster, but you are slower when it comes to understanding someone else’s work.

      For projects that aren’t size or performance sensitive, write it in python or whatever the fuck you like, idgaf.

  • wth@sh.itjust.works
    link
    fedilink
    arrow-up
    0
    ·
    2 years ago

    As an older coder, I’ve spent time commercially programming in a lot of languages (C, C++, C#, Python, TransactSQL, Javascript, and a few more - with many years of experience in each. I even spent time squeezing some forth code into a small programmable chip.

    My first comment on this « attitude » expressed above is that you need to pick the language (and its libraries) that is best for your problem space - each will have advantages, including constructs and libraries to suit whatever domain you are working in. Hence forth for a microchip, TransactSQL for DB stored procs, python for general purpose command line work etc.

    Having said that I do want to present one viewpoint which could give rise to this above expressed opinion. It’s an area that C is considered pretty strong - specifically language complexity. When coding in C, I really felt like I knew every nook and cranny of the language, exactly how every structure would be packed, what the assembly would probably look like.

    Python (and perhaps C#) are currently my favorite languages - python only has 36 keywords and while I don’t have the same solid grasp of what’s happening under the hood, I do feel like there are very few surprises and corner cases to the language, even while supporting some complex programming methodologies.

    The opposite of this is (IMHO) swift. What started as a really nice language with a clean syntax and solid libraries has morphed into a monster with 232 keywords. Does any swift programmer have a solid grasp of it all?

    I would say that C++ is at the complicated end of the spectrum - spend some time inside Boost and their extreme use of templates/meta-programming and it will make your head spin. The Boost developers are super smart people, but its non-trivial to understand what is going on. Having said that, C++ does make you feel that you can code close to the machine and have a good handle on what is happening under the hood.

    This level of control is probably one place where this « only C and C++ code is any good » attitude came from. Its not an attitude I support.

    • gedhrel@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      C++ is one if those languages where writing a library feels hugely different from using it. Boost is a case in point here: there are brilliant peiple behind it, but (error messages aside) the ergonomics of using thise libs in an application are usually pretty good.

      (Scala felt similar to me. There are other languages where it feels much less like I’m swapping hats as I flip between parts of a codebase.)