Most active commenters

    ←back to thread

    205 points michidk | 13 comments | | HN request time: 0.732s | source | bottom
    Show context
    baq ◴[] No.41835199[source]
    As expected, the people problem is the biggest factor. Turns out getting C folks to learn Rust is a difficult proposition (hello, lkml) but the other way around it isn't too much of a problem.

    I wonder how much of it is low-level experienced developers only ever using C fail to see that C is not the universally best tool (or, 'if all you have is a hammer, everything looks like a nail' question).

    replies(5): >>41835262 #>>41835561 #>>41835870 #>>41836074 #>>41836108 #
    dunefox ◴[] No.41835262[source]
    > I wonder how much of it is low-level experienced developers only ever using C fail to see that C is not the universally best tool

    I'd say that's it. From my own experience with software developers, convincing some of them to learn something new is practically impossible.

    replies(3): >>41835349 #>>41837027 #>>41840580 #
    1. marcyb5st ◴[] No.41835349[source]
    I generally speaking agree, but I would be more specific:

    If the person in question has a true passion for the craft, you can regardless of the age/seniority of the developer (at least in my experience). In fact, learning something like a new programing language is a big undertaking and if your work doesn't offer incentives/rewards the will has to come from the person him/herself and so that's why the passion bit I mentioned above.

    In my experience I also notice that more senior/older devs are more reluctant to learn new things, but I am unsure if that's due having their passion destroyed by many years of bullshit companies politics, pointless meetings/trainings, and adherence to the latest flavor of agile development every quarter or simply an age thing (I'm not there yet and so I can't tell first hand).

    replies(2): >>41835492 #>>41835973 #
    2. Lanolderen ◴[] No.41835492[source]
    Would this not also be partially connected to not wanting to throw away your 15 years experience with C for 1 year experience in Rust assuming the company actually ditches C? (or any other direct replacement language/tool scenario)

    Sounds like a way to replace yourself by 2 low pay students who also have 1 year of Rust experience.

    replies(3): >>41835609 #>>41835679 #>>41836004 #
    3. nsteel ◴[] No.41835609[source]
    I'm genuinely surprised there are Rust developers out there that don't know C. Perhaps I'm showing my age, or my ignorance to how much CS education (even self-taught) has changed.
    replies(2): >>41835851 #>>41837660 #
    4. marcyb5st ◴[] No.41835679[source]
    I honestly don't see as throwing it away.

    The more you know the better software engineer you are with everything else being equal (IMHO).

    Also, if you need to gradually add rust to an existing codebase the C knowledge is extremely valuable.

    5. Lanolderen ◴[] No.41835851{3}[source]
    It's still thought but it's mostly a pointer course from my recent experience. It's a low credit subject where you play around with arrays and strings, maybe there will be an overflow calculation as well. Whereas something like Rust you'd do in a high credit course project where you have freedom over the tech stack and actually produce something with functionality.

    Edit: My point with the replacement is not that juniors don't/won't have C on their CV but that a manager would be more willing to replace an experienced dev with 1 year exp in the current tool with 2 worse devs also with 1 year exp in the current tool compared to replacing an experienced dev with say 10 years of experience in the current tool with 2 worse devs with 1 year experience in the current tool.

    replies(1): >>41836278 #
    6. wmil ◴[] No.41835973[source]
    The big problem with learning new programming languages is that you're going to suck at it for years until you reach the same level of familiarity with the new one.

    Suck here is more of an emotional thing. They can output high quality code fairly quickly. The issue is not knowing all of the quirks of the language and all development being slower and more difficult.

    Dropping down to simpler tasks while learning the language is a huge ego blow.

    replies(2): >>41836596 #>>41837057 #
    7. sgu999 ◴[] No.41836004[source]
    That's really just being a Luddite, I understand the mindset but that's a very poor strategy if one cares about job security. A (good!) senior developer has a ton of value outside of the pure mastery of a language specs, not to mention that learning a language for 1 year with 15 years of prior knowledge really doesn't lead to the same level as a student who does the same.
    replies(1): >>41837076 #
    8. nsteel ◴[] No.41836278{4}[source]
    I understood (and agree) with your original point. My comment about not having C experience/knowledge came from the article, where it really did sound like just that.
    9. baq ◴[] No.41836596[source]
    And this is where LLMs help tremendously: you know exactly what you want to do, you don't know how to do it specifically like it should be done in the language you're learning, you query the latent space of the internet using plain english and you get an answer.

    It was a good argument literally a couple years ago less a few weeks before the chatgpt first release. Nowadays it's basically a moot point.

    replies(1): >>41836707 #
    10. dunefox ◴[] No.41836707{3}[source]
    I'm surprised at how useful the latest openai model is for me when it comes to either learn a python library or a new language, such as cl, for example.
    11. netdevnet ◴[] No.41837057[source]
    When you learn a language, you don't just learn how to use the syntax of that language idiomatically. You also need to learn to use the different tools in that ecosystem
    12. netdevnet ◴[] No.41837076{3}[source]
    That kind of value only matters as long as you can find an ecosystem of companies that can be convinced to pay you what you think that value is worth. Many companies can't be convinced to do so and the companies that can are overflown by candidates smarter than you that have regular contributions in top rated github repos if they haven't made super popular frameworks and libraries
    13. jcgrillo ◴[] No.41837660{3}[source]
    I studied physics, not CS, so I can't really speak to the CS curriculum part. But I am someone who has written rust professionally for a few years so I'll describe how I got there. I think the most experience I've ever had with C was writing a fourth order Runge-Kutta routine and calling it from python for a college project. Maybe 20 lines of C? In industry for the first 5yr I wrote lots of python and java code for web APIs and "big data" systems. Simultaneously around 2015 I started getting interested in rust because it seemed interesting, and like it would probably play a big role in the next 20yr--memory safety without a garbage collector is inherently compelling if you've spent time trying to make java GC act right. Eventually I got a job which was a full time rust gig. After about 3 years of that I ended up in a golang shop. So I've written some tens of thousands of lines of rust and only a few lines of C. I read C, but it would take a while for me to get comfortable writing it. But I wouldn't, probably, because I can use rust instead.