Slashdot Mirror


Rust Creator Graydon Hoare Says Current Software Development Practices Terrify Him (twitter.com)

An anonymous reader writes: On Monday Graydon Hoare, the original creator of the Rust programming language, posted some memories on Twitter. "25 years ago I got a job at a computer bookstore. We were allowed to borrow and read the books; so I read through all the language books, especially those with animals on the covers. 10 years ago I had a little language of my own printing hello world." And Monday he was posting a picture of O'Reilly Media's first edition of their new 622-page book Programming Rust: Fast, Safe Systems Development. Then he elaborated to his followers about what happened in between.

"I made a prototype, then my employer threw millions of dollars at it and hired dozens of researchers and programmers (and tireless interns, hi!) and a giant community of thousands of volunteers showed up and _then_ the book arrived. (After Jim and Jason wrote it and like a dozen people reviewed it and a dozen others edited it and an army of managers coordinated it and PLEASE DESIST IN THINKING THINGS ARE MADE BY SINGLE PEOPLE IT IS A VERY UNHEALTHY MYTH)." He writes that the nostaglic series of tweets was inspired because "I was just like a little tickled at the circle-of-life feeling of it all, reminiscing about sitting in a bookstore wondering if I'd ever get to work on cool stuff like this."

One Twitter user then asked him if Rust was about dragging C++ hackers halfway to ML, to which Hoare replied "Not dragging, more like throwing C/C++ folks (including myself) a life raft wrt. safety... Basically I've an anxious, pessimist personality; most systems I try to build are a reflection of how terrifying software-as-it-is-made feels to me. I'm seeking peace and security amid a nightmare of chaos. I want to help programmers sleep well, worry less."

353 comments

  1. ML is a language, not "machine learning". by Anonymous Coward · · Score: 4, Informative

    Don't know enough about programming languages to recognise a reference to the ML language, even in a tweet that also describes some of its features? Just elide the references you dont understand and replace ML with "machine learning" and you too can be a Slashdot submitter! Don't worry, there are no editors checking that your summary reflects the contents of your links.

    1. Re:ML is a language, not "machine learning". by WarJolt · · Score: 3, Informative

      ML means Meta Language

    2. Re:ML is a language, not "machine learning". by Anonymous Coward · · Score: 0

      It is sad, isn't it?

      Folks who supposed to know turn out to know nothing

      There are so much FAKES in the US tech community nowadays I have to wonder if we are witnessing the Swan Song of technology in USA

    3. Re:ML is a language, not "machine learning". by tonique · · Score: 1

      Not being a programmer, I thought it meant 'markup language'. I think they should come up next with RustML, a safe alternative to XML.

    4. Re:ML is a language, not "machine learning". by WarJolt · · Score: 4, Interesting

      I've seen it all. DevOps guys who can't deploy kubernetes, build a docker container or setup a decent CI pipeline. Software Engineers that still can't master the to fundamentals of Object Orientation after decades of practice. They have no hope learning ML or functional programming. Typesafe languages are viewed by senior technical leadership as cute academic stuff with absolutely no practical purpose.

      At this point, I'll probably join a startup just to get away from charlatans.

    5. Re:ML is a language, not "machine learning". by GodWasAnAlien · · Score: 1

      > Software Engineers that still can't master the to fundamentals of Object Orientation after decades of practice.

      Worse is junior (or senior programmer) who loves to throw "design patterns", "object oriented programming", "MVC", ... at problems without having a grasp of basic Software Engineering concepts such as separation of concerns or modularity (too many think OOP implies modularity). The result is a heaping monolith of layers of unreadable, unreadable code.

    6. Re:ML is a language, not "machine learning". by WarJolt · · Score: 1

      >The result is a heaping monolith of layers of unreadable, unreadable code.
      And for some reason, those same engineers get pats on the back and promotions as they construct their labyrinths of code only they can decipher as everyone who is actually sane screams "We must rewrite it from scratch now!!!". Of course, this is not popular point amongst the deluded individuals who are running things into the ground and wondering why it takes an exponential amount of time and resources just to keep things running. The idea of actually innovating isn't even on the table.

    7. Re:ML is a language, not "machine learning". by Darinbob · · Score: 4, Funny

      Don't you know? Education is overrated, everyone's supposed to be self taught, theory is for losers, type checking is for incompetents, and languages like ML are for old fuddy duddies.

    8. Re:ML is a language, not "machine learning". by Darinbob · · Score: 4, Interesting

      One extreme is the overuse of layers and abstractions wrapped around abstractions, which makes for nice diagrams that make it look like you worked hard. The other extreme that I see are the self taught low level programmers who didn't get a lot of mentoring along the way, that don't see what's wrong sharing globals across all the files. I have to explain the basics of simple abstraction to a 50 year old programmer who should know better, who complains that it's stupid to put split code into layers or modules because it's easier to understand if it was in one big file.

      I want something in the middle, ability to think at a low level and get stuff done efficiently but also able to use the obvious abstractions that makes code easy to change and adapt in the future.

    9. Re:ML is a language, not "machine learning". by Darinbob · · Score: 3, Insightful

      Speaking of ML, I once had an interview at Bell Labs and they sent me off to another guy after they saw I had some SML experience. Then I told him that I preferred Lisp and listed some of the stuff I disliked about SML. I just got a funny look. Later that evening it dawned on me that the "New Jersey SML" might have something to do with Bell Labs, and I looked it up and found out I had just dissed the language in front of one of its chief designers...

    10. Re:ML is a language, not "machine learning". by Anonymous Coward · · Score: 2, Interesting

      I want something in the middle, ability to think at a low level and get stuff done efficiently but also able to use the obvious abstractions that makes code easy to change and adapt in the future.

      You can't have that. People with a varied skillset look weak in any particular area to recruiters.

      You're right though, just the right mix of layering and abstraction with practical code getting the work done, nicely cut up in parts by general function, and code written in response to an emerged need for it, not the "we'll write it just in case because the logic of the framework demands it" fluff code. It's one of those things I've been thinking off and on again about for years, because, well, it interests me. I can just feel there should be a logic to it, but how to express it?

      And no, a "methodology" is just about guaranteed to not be the right vehicle to express it, though it might be the usual vehicle attempted.

      Me, I could do damn near everything from laying cables to running the sysadmin shop, likewise programming from assembler to quite on high (though not GUI, never GUI), but I don't have a job and I probably never will again. If I didn't get rejected for the big large gaps in employment from a burn-out 12 years ago, I'd still get rejected with fibs, as a wide skillset also tends to not imply that "smell of success" that is the only thing most "tech" recruiters know how to select on. And then there's the government requiring me to have paperwork it refuses to issue me when asked though by rights they cannot refuse me. None of that ought to be my core business, yet perforce battling idiocy for no pay is all there is for me. This is about the worst possible jobmatch for me, and it shows. Thanks, recruiters, thanks, officials.

      These are but a few of the reasons, and minor ones at that (the major ones don't deal with me specifically, TYVM) that I think we need better people selection.

    11. Re: ML is a language, not "machine learning". by BESTouff · · Score: 1

      There is. It's called RON.

    12. Re:ML is a language, not "machine learning". by Hognoxious · · Score: 1

      why it takes an exponential amount of time and resources just to keep things running.

      Perhaps you should employ more mathematicians. You should be able to get that down to a quadratic amount pretty easily.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    13. Re: ML is a language, not "machine learning". by Anonymous Coward · · Score: 0

      Or change the exponent to zero, O(n) right there.

    14. Re: ML is a language, not "machine learning". by Anonymous Coward · · Score: 0

      Yes. Clearly it is a vast conspiracy, and not a people skills issue. Try being less toxic and entitled. If you were as capable as you say you are, you could self employ and contract yourself without a middleman.

    15. Re: ML is a language, not "machine learning". by Anonymous Coward · · Score: 0

      Go to hell, silverspoon capitalist tool.

    16. Re: ML is a language, not "machine learning". by Anonymous Coward · · Score: 0

      What government papers? Are you an illegal alien? I wouldn't hire Jesus H. Christ to hang from a cross without clean government docs.

    17. Re:ML is a language, not "machine learning". by Anonymous Coward · · Score: 1

      So one if their chief designers couldn't take criticism? Sounds like you dodged a bullet.

    18. Re: ML is a language, not "machine learning". by q_e_t · · Score: 1

      Ability to develop doesn't mean that you are suitable for consulting, or wish to do so, though.

    19. Re:ML is a language, not "machine learning". by Junta · · Score: 5, Interesting

      You can't have that. People with a varied skillset look weak in any particular area to recruiters.

      As a technical lead, this phenomenon has been a source of great frustration in getting candidates. I'm only allowed to even know about a prospective candidate after 2 or three layers of non-technical folks have "helped" me by making an assessment of the candidate's technical chops. Similarly they "help" in the requirements by padding things out so that a candidate will have everything needed to "hit the ground running", because of course there would be no ramp up needed if they *just* have the right resume...

      No recognition that there is always going to be a ramp up period, that you want flexibility more so than existing directly relevant experience.

      --
      XML is like violence. If it doesn't solve the problem, use more.
    20. Re: ML is a language, not "machine learning". by Hognoxious · · Score: 1

      Be bold. Make it negative.

      The more you have to do the faster it will be done.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    21. Re:ML is a language, not "machine learning". by Junta · · Score: 1

      It is a very confusing time. The norm is pretty much to misrepresent yourself to get some position or to look impressive, or in some cases just to get a vendor to connect a customer to someone vaguely knowledgeable.

      I have to be sympathetic though, as the vast majority of the time when I encounter someone making their experience/day-to-day job sound more complex than it is, there work is actually being done well as it stands and would not be served by 'legitiamtely' chasing the buzz. They have to appease a management team that reads tech articles telling them that they have to disrupt how they manage their work and that pass down mandates along those lines without understanding. The best way forward for a business is sometimes exaggerating how hip and modern they are, even to themselves.

      Of course there are clearly downsides, phrases that achieve buzz word status have their meaning diluted as to mean next to nothing at all (DevOps), when you describe yourself in these ways to others and ask questions, you'll get slapped with answers that make no sense to you, or are much much harder to accommodate than another answer would be (getting a 300 line code sample in a language you don't use instead of a more helpful illustrative 1 liner to demonstrate the meat of the point). You can also induce your vendors to run around like a chicken with it's head cut off trying to cobble something together for you that you don't want anyway.

      --
      XML is like violence. If it doesn't solve the problem, use more.
    22. Re:ML is a language, not "machine learning". by Anonymous+Brave+Guy · · Score: 5, Insightful

      This seems to be one of those unfortunate things (for both applicants and existing technical staff) that comes from bureaucracy as an organisation grows. As soon as you're big enough to have HR and Legal running the show in terms of recruitment, they're putting their own filters in between potentially good candidates and potentially interested technical teams within the business. That does avoid a lot of the time-wasters, but it also gets in the way of an efficient hiring process for qualified applicants.

      I don't play in that playground any more, but my view when I did was that HR should restrict its screening to formalities (for example, can this person legally work here?) and objective facts about the candidate. And even then, since the objective facts most likely to be interesting are about the candidate's technical skills and experience, you still need someone who doesn't confuse Java with JavaScript and who realises that a candidate with 10 years' experience using SQL Server and MySQL can probably handle the Postgres skills you're asking for.

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    23. Re:ML is a language, not "machine learning". by BadDreamer · · Score: 5, Funny

      Don't leave us hanging; did you get the job?

    24. Re: ML is a language, not "machine learning". by cyber-vandal · · Score: 1

      If only there was some kind of global network you could search for the answer.

    25. Re:ML is a language, not "machine learning". by Anonymous Coward · · Score: 1

      I was a senior dev (basically a code monkey) for 5 years on a project that probably wasted around 75 million using architects "design patterns" up the yin-yang along with project managers touting "Agile". It was dropped recently (I ended up leaving the company) when it failed 5 times to meet it's milestones, performance was horrendous and developing against the "framework" it was a nightmare where if all the planets didn't align you would waste 3-4 hours figuring out why something didn't work. The worst part of it was a re-write of an existing product that they knew the entire domain for.

    26. Re:ML is a language, not "machine learning". by Anonymous Coward · · Score: 0

      That does avoid a lot of the time-wasters,

      Seeing how many time wasters end up getting hired (eg. "Brilliant Paula Bean") I'm not sure it does. It attempts to, but whether it succeeds, probably not as much as assumed.

      Unless the business is big enough that it wants mostly Wallys and other such warm body office filler. Which role I might not even mind playing at this point, knowing full well its complete futility, but I'm still not getting hired.

      but it also gets in the way of an efficient hiring process for qualified applicants.

      So, is it worth its cost? Seeing the gnashing and wailing of teeth from the C-section, maybe not.

      And even then, since the objective facts most likely to be interesting are about the candidate's technical skills and experience, you still need someone who doesn't confuse Java with JavaScript and who realises that a candidate with 10 years' experience using SQL Server and MySQL can probably handle the Postgres skills you're asking for.

      Nitpicking: If you ask for sufficiently low grade postgres skills, maybe. IME "mysql" isn't indicative of SQL clue and redmond products are inclusive the SJW way. I'd ask some questions to see if they've at least had a whiff of relational algebra at one point or another, whether they can explain what ACID means and where mysql fails those promises (also tells you whether you have a mysql fanboi on your hands), and so on.

      But in general, yes, I take your meaning, and it's something that vgrep for buzzwords doesn't do.

    27. Re:ML is a language, not "machine learning". by angel'o'sphere · · Score: 1

      And I saw assembly programmers, proud about their skills, that only spoke/wrote 86x ...

      What is your point? Why do you assume a DevOps Engineer knows everything?

      Learning OO in modern languages is difficult. Strong static types and dynamic types are quite a difference. If you can learn ML or other functional languages easy is more a question of your math skills than your programming skills.

      C is easy to grasp if you already know assembler ... the opposite way is still difficult.
      Functional is easy to grasp if you already know OO. The opposite way is similar easy.

      But all languages are difficult as beginner languages. Exceptions are super simple old school BASIC and Pascal.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    28. Re:ML is a language, not "machine learning". by lucasnate1 · · Score: 0

      Python is pretty easy for beginners, Scheme as well.

    29. Re:ML is a language, not "machine learning". by Darinbob · · Score: 2

      No. A different company was already interviewing me in the area, so Bell Labs and another company they were willing to interview me as long as I was in the area anyway :-)

    30. Re:ML is a language, not "machine learning". by Bongo · · Score: 1

      Speaking as someone who merely dabbles in Python, I tried reading about design patterns, as the notion was inspired by Alexander’s A Pattern Language, which was his study of what patterns made Italian piazzas work, and other features of Italian towns, but I soon found the program patterns far too elaborate, and I would guess, that would be because there are so many different situations to try to cover, so I wondered, what is the pattern of patterns? And it seemed to me that one of the starting points was the isolation of different concerns. So I guess I got that right?

    31. Re: ML is a language, not "machine learning". by Anonymous Coward · · Score: 1

      Nope, born and raised native of this socialist Eurocratic country that by law requires everyone to carry an identity card everywhere at all times and to present that card to any official who demands it.

      That is currently so busy giving illegal aliens priority access to an overstuffed housing market, free monies, brand new papers in made up names, material support, you name it, that they're unwilling to even accept my paperwork requesting renewal of my expired identity card.

      So in that sense I'm more illegal than an actual illegal alien: I'm a native with holes in the paperwork.

      And no, you wouldn't hire me here because you would get in big trouble with the tax man if you do. You have to have a scan of my identity card on file or you get fined hard. So without papers, no access to work, nor any socialist benefits scheme or anything, for if I have no papers, I am not a person. But when push comes to shove, when I go to the government and ask for those papers that I ought to have a birthright to, they toss me out on my ear. They did that several times, in fact.

      Weird, yes. Destructive, yes. My fault, the government says yes it is, of course. Yet it's the government that does the refusing and rejecting.

      This should not be possible, yet it happens. In fact I'm not the only one it happened to, and there is no redress.

    32. Re:ML is a language, not "machine learning". by sysrammer · · Score: 1

      Thanks. I thought it meant what it used to mean: machine language. Assembly, or something of the sort.

      --
      His ignorance covered the whole earth like a blanket, and there was hardly a hole in it anywhere. - Mark Twain
    33. Re:ML is a language, not "machine learning". by Anonymous Coward · · Score: 0

      I have been doing DevOps for a number of years. It isn't the language. It is the fact that every single day, I have a four hour stand-up meeting where the Scrum master asks every developer, one by one, the status of their deliverables. If I don't have my code up to date (we have been in a sprint for the past two years), I either better have a blocker and be good at pointing fingers, or else I will be excorated in front of the other devs. If it happens more than a few times, I get fired, and someone from Deloitte or Accenture takes my job.

      Security? My code runs as root, and will not run as a user. I don't have time to fuck with permissions or access controls. Simply put, if my lack of security causes the company I work for to get sued, I have a ton of layers of insulation before I see anything bad happen. I fail to meet my deliverables, I will be told in front of everyone that I fail in life, and will be fired in front of everyone.

      So, lets be real... it isn't languages that are the reason why code for almost anything is pure garbage. It is the fact that if a dev stops to do something other than get the stuff shipped in a perma-sprint, they get replaced by a dev who does. This is why we can't have good things.

    34. Re:ML is a language, not "machine learning". by angel'o'sphere · · Score: 1

      Scheme is a Lisp variation ...
      So calling it easy for beginners is either satire or a joke or mind masturbation.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    35. Re:ML is a language, not "machine learning". by mangastudent · · Score: 1

      Scheme is a Lisp variation ...
      So calling it easy for beginners is either satire or a joke or mind masturbation.

      Have you ever taught Lisp or Scheme to people?

      As a simplified Lisp, it has a lot of advantages for beginners, starting with its very simple syntax, which takes hours vs. days or weeks to learn.

    36. Re:ML is a language, not "machine learning". by lucasnate1 · · Score: 1

      Scheme yes, Lisp no. Lisp is a very complicated language, but Scheme always felt pretty easy to me. The trick with scheme is that not only it has a simple syntax, but also a very simple semantics.

    37. Re: ML is a language, not "machine learning". by Anonymous Coward · · Score: 0

      golang and "the Go Way"

      low level. typesafe. imperative. oo. procedural. interfaces. packages.

      Enforces enough patterns to avoid having to choose between multiple naive solutions. simple spec and allows minimal structure to startup with. ie. opposite of Perl.

    38. Re:ML is a language, not "machine learning". by Anonymous Coward · · Score: 0

      What seems unsafe about XML?

    39. Re:ML is a language, not "machine learning". by Anonymous Coward · · Score: 0

      I have to explain the basics of simple abstraction to a 50 year old programmer who should know better, who complains that it's stupid to put split code into layers or modules because it's easier to understand if it was in one big file.

      This is exactly why I'm leaving my current job. We recently brought on a contractor full time who is 66 and will only write code as flat as possible with no layering, and absolutely refuses to layer the software in any way. He also believes that there is no reason to limit scope of variables, and that globals are better because he can easily access any variable from anywhere in the code. The best part is when the software starts to act up, it's always due to a "hardware issue"!

    40. Re:ML is a language, not "machine learning". by Anonymous Coward · · Score: 0

      If that was Luca, I doubt he would have held it against you :-) (if your criticisms were justified)

    41. Re:ML is a language, not "machine learning". by sydbarrett74 · · Score: 1

      HR should restrict its screening to formalities (for example, can this person legally work here?) and objective facts about the candidate.

      Fully agree. Unfortunately, HR seems to be the place to park incompetents—i.e., people whose main asset is their physical appearance—in a place where they can do the least harm. Such people seem eager to show that they're 'doing something' and so they try to expand the scope of their job to include things they have no business touching or influencing.

      --
      'He who has to break a thing to find out what it is, has left the path of wisdom.' -- Gandalf to Saruman
    42. Re:ML is a language, not "machine learning". by david_thornley · · Score: 1

      Not if it's NP-complete.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    43. Re:ML is a language, not "machine learning". by angel'o'sphere · · Score: 1

      No,
      I don't teach languages I can not grasp my self.
      https://en.wikipedia.org/wiki/...
      As I said: it is a variation of Lisp.

      Some people can work with a labyrinth of braces some can't. I can't.

      Just look at this: https://en.wikipedia.org/wiki/...

      From the probably 100 programmers I know only 4 or 5 worked with Lisp, not counting the mandatory Lisp course in university ... 2 of those 4 or 5 enjoyed it ... one is an Emacs fan and likes to do Lisp stuff in Emacs, the other one shifted to Prolog and now works for SAP and makes boring java stuff ... everyone else hates Lisp/Scheme.

      I would never even dare to ask a beginner to try lisp/scheme.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  2. Single Person Projects by Dangerous_Minds · · Score: 1, Troll

    PLEASE DESIST IN THINKING THINGS ARE MADE BY SINGLE PEOPLE IT IS A VERY UNHEALTHY MYTH

    Um, I hate to break it to you, but there are plenty of single person projects out there. You can find some of them on Patreon for example.

    --
    Daily read for tech news: Freezenet.ca
    1. Re:Single Person Projects by Anonymous Coward · · Score: 1, Funny

      creimer is a good example. A renaissance man, a polymath. He is a nutritionist, financial advisor, author, blogger, and personal brand builder.

    2. Re:Single Person Projects by Anonymous Coward · · Score: 0

      "If you want to make a pie from scratch, you must first create the universe" --Carl Sagan

    3. Re:Single Person Projects by Junta · · Score: 2

      I'll also add look up a few of your favorite projects on github and look carefully at the "insights" chart on the contributors. Many of them will clearly have one significant contributor, or maybe a small team, and hunderds of one-line contributors (putting your brand on big projects is good for resumes).

      I'd take a team of 4 or 5 solid people over dozens of developers. I resisted 'investmnet' in my team at a former employer as I had never seen a project survive such an expansion with quality intact under their management.

      --
      XML is like violence. If it doesn't solve the problem, use more.
    4. Re:Single Person Projects by Anonymous Coward · · Score: 0

      Oh I thought that was because he weighs the same as several people.

    5. Re: Single Person Projects by Anonymous Coward · · Score: 1

      âoeAll I wanted to do was make some pie...â-God

    6. Re:Single Person Projects by EllisDees · · Score: 1

      Dwarf Fortress...

      --
      -- Give me ambiguity or give me something else!
    7. Re:Single Person Projects by Anonymous Coward · · Score: 0

      You'd think that but it turns out he weighs the same as a duck. What should we do?

  3. Terror by Anonymous Coward · · Score: 4, Insightful

    Well, his zombified hoarde of brainwashed language fanbois terrifies me, so I guess we're even.

    1. Re:Terror by Anonymous Coward · · Score: 0

      Did he create that bunch intentionally, though? Who thought the "community code" and all that other toxic stuff was a good idea?

    2. Re:Terror by Anonymous Coward · · Score: 0

      The biggest problem in software development is that everyone is constantly reinventing the wheel instead of improving, forking and modifying existing solutions. Having a reasonably good idea (borrow checker) shouldn't justify ignoring everything else in the field such as Haskell, Ada/Spark, automated program verification, etc. Now we have another 'solution' that only gets there halfway and comes with its own convoluted syntax and tons of quirks.

    3. Re: Terror by Anonymous Coward · · Score: 1

      Rust and Swift filled a real gap. Memory safe, imperative, efficient. No GC nonsense.

    4. Re: Terror by Anonymous Coward · · Score: 0

      There was no "gap". Pascal and Ada are obvious, mainstream counterexamples, and there are plenty more.

      But there's no glory in building on the past, is there? Hard to attract sycophants and groupies by working on Ada compilers.

    5. Re:Terror by mangastudent · · Score: 2, Interesting

      Did he create that bunch intentionally, though? Who thought the "community code" and all that other toxic stuff was a good idea?

      He's a hardcore SJW, then employed by a hardcore social justice company that's still the major sponsor of the language, so the answer pretty much has to be "yes".

  4. Facepalm. by Gravis+Zero · · Score: 4, Informative

    The summary say "machine learning" but if you read this feed you'll see it's "ML". ML is programming language.

    I know some people are excited about it but Rust is just the language de jure until it gets an actual spec that other people can implement.

    --
    Anons need not reply. Questions end with a question mark.
    1. Re:Facepalm. by angel'o'sphere · · Score: 0

      That is correct.
      From the twitter texts it is obvious that the programming language ML is meant and that it has nothing to do with machine learning.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    2. Re:Facepalm. by DNS-and-BIND · · Score: 5, Funny

      Correcting others on ML, but misusing the phrase "du jour" and instead claiming Rust is a language by force of law. Oh, the irony police called, their phone exploded.

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    3. Re:Facepalm. by OpenSourced · · Score: 1

      Perhaps he was being subtle and opposing "de jure" as not "de facto". That is, not a "real" language but a theoretical (legal) construction.

      --
      Rome taught me patience and assiduous application to detail. Virtues which temper the boldness of great, general views.
    4. Re:Facepalm. by Anonymous Coward · · Score: 0

      Somebody is subtle on /., or somebody doesn't know how to spell on /.? Which one do you consider the most likely?

    5. Re:Facepalm. by Anonymous Coward · · Score: 0

      Occam called, he wants to know whether you've seen his razor?

    6. Re: Facepalm. by Anonymous Coward · · Score: 0

      That's how I understood it as well

    7. Re:Facepalm. by Hognoxious · · Score: 1

      Is Rust currently fashionable? Is there any legal dispute about whether it's a language?

      So which fits the context?

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    8. Re:Facepalm. by Gravis+Zero · · Score: 1

      I like your explanation of not being wrong. Consider going into politics! ;)

      --
      Anons need not reply. Questions end with a question mark.
    9. Re:Facepalm. by Anonymous Coward · · Score: 0

      It is 'de jour' meaning 'of the day' in French. Not 'de jure' from Latin meaning 'in law'.
      A common usage is 'soup de jour' in a cafe or restaurant meaning the type of soup available with meals on that particular day (e.g pumpkin, mushroom, chicken).
      The implication is that Rust is the currently fashionable language but yesterday it was something else and tomorrow it will be different again.

  5. Because trailing semicolons... by kfsone · · Score: 2, Informative

    ... making the difference between "return the evaluation of this expression" vs "don't" is such an improvement in software development practices.

    Rust is interesting, the way that that wreck on the 101 is "interesting".

    --
    -- A change is as good as a reboot.
    1. Re:Because trailing semicolons... by serviscope_minor · · Score: 1

      ... making the difference between "return the evaluation of this expression" vs "don't" is such an improvement in software development practices.

      Really? You think that's all there is to Rust?

      I love how people here love to diss stuff from a position of utter ignorance.

      --
      SJW n. One who posts facts.
    2. Re:Because trailing semicolons... by Megol · · Score: 1

      Maybe the ignorance is on your side? Because kfsone didn't claim that was the _only_ problem he(?) have with the language...

      So instead of thinking and replying you react.

    3. Re:Because trailing semicolons... by Hognoxious · · Score: 1

      So how much time did you waste going deeper? Joke's on you, AmiMoJo.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    4. Re: Because trailing semicolons... by Anonymous Coward · · Score: 0

      Never used Rust. Does it actually do that? That's fucking gross.

    5. Re:Because trailing semicolons... by serviscope_minor · · Score: 1

      So how much time did you waste going deeper? Joke's on you, AmiMoJo.

      Ah yes, you're the paranoiac who thinks me and AmiMojo are the same person! It's kind of cute.

      --
      SJW n. One who posts facts.
    6. Re:Because trailing semicolons... by kfsone · · Score: 1

      I made no such suggestion, however you made a very large assumption based on my terseness.

      --
      -- A change is as good as a reboot.
    7. Re:Because trailing semicolons... by squiggleslash · · Score: 1

      In fairness, you and AmiMojo are two of the tiny handful people on Slashdot who believe things like "Women are people" and "Black people actually suffer horrific discrimination" and other things that are clearly false because one person did a study once that contradicted all the other studies and that means it's all debunked.

      --
      You are not alone. This is not normal. None of this is normal.
    8. Re: Because trailing semicolons... by Anonymous Coward · · Score: 0

      http://lucumr.pocoo.org/2012/10/18/such-a-little-thing/
      "Rust has solved that problem currently in an incredible elegant way and that is by giving the presence or absence of the semicolon a meaning."

      Sure, it's elegant, but it's also nasty. It's also a very simple, succinct, spotlight on a very obvious failure to really put software development practices as the language has evolved. I'd like to think that maybe Rust 2.0 (or whatever) will do a sweep of all the cruft like this.

      https://github.com/rust-lang/rust/issues/44173

    9. Re:Because trailing semicolons... by Anonymous Coward · · Score: 0

      In fairness, you and AmiMojo are two of the tiny handful people on Slashdot

      That is not in fairness at all. Those who don't fit your strawman is not just a tiny handful of people. I wager a majority don't fit in it.

      Your post reads more like an Ayn Rand fantasy: our heroes are two of a tiny handful people who are good people! Almost everybody else is irrational!

    10. Re:Because trailing semicolons... by squiggleslash · · Score: 1

      I'm talking about people who post here. I don't pretend to know about the views of those who remain silent. The fact is the number of people who post in support of the notion that women, black people, and others are treated more poorly than white men (in general, with exceptions) is a very small number, with most such posts being modded down, and with Damore et al being given bizarre amounts of support given the utter crap he wrote, and the fact he showed his true colors afterwards.

      --
      You are not alone. This is not normal. None of this is normal.
    11. Re:Because trailing semicolons... by Anonymous Coward · · Score: 0

      I'm talking about people who post here.

      As am I.

      The fact is the number of people who post in support of the notion that women, black people, and others are treated more poorly than white men (in general, with exceptions) is a very small number,

      That's not what you originally said. You originally said that people don't believe in all those things about women and blacks because they read "one person did a study once that contradicted all the other studies and that means it's all debunked". Most people (be they slashdotters who post, slashdotters who don't post, or people IRL) are not that extreme.

      There was nothing fair about your original post. Again, it was a strawman, and now you're doing the moat and castle trick by withdrawing to a lesser claim

      Even your lesser claim is not fair either. You're setting up a false dilemma: you're splitting the population into those who post "in support" of women/blacks/etc, or you're one the side of Damore supporters. No room for neutrals. No room for skepticism. No room for reasoned disagreement. You're either with us or against us (with the terrorists/commies). You're offering the same fairness and nuance as McCarthy's and Bush Jr's

      On top of being unfair, this is amusingly ironic, as a lack of nuance is most likely what resulted in the poster above lumping Ami and servi together

  6. Um... by Anonymous Coward · · Score: 1

    "more like throwing C/C++ folks (including myself) a life raft wrt. safety"

    Wat?

    Why is it the language's job to make sure your code is somehow "safe"?

    DeWalt doesn't sell power tools that go out of their way to make sure you don't cut off your fingers. If they did, that tool would be unimaginably complex, and likely break down even faster than another tool because of all the additional parts. The user is expected to know how to use the tool so they don't cut off their own fingers.

    Programming should be no different.

    1. Re:Um... by Anonymous Coward · · Score: 1, Insightful

      Most professional power tools have quite a few safety features. Are you retarded?

    2. Re:Um... by Zontar+The+Mindless · · Score: 1

      You've never actually seen much less used a circular saw, have you?

      (I have no dog in this fight; I just think that's a very weak argument.)

      --
      Il n'y a pas de Planet B.
    3. Re:Um... by Anonymous Coward · · Score: 0, Insightful

      To prevent casual accidents. Nothing is stopping someone from sliding the guard out of the way and jamming their hand into it. Programmers should know how to use their tools so they don't do the equivalent of sliding the guard out of the way and jamming their hand into it.

    4. Re:Um... by MichaelSmith · · Score: 1

      Programming languages should be as type safe as possible but I doubt that can be done for low level system programming. A lot more OS programming could be in something like Ada or Java though.

    5. Re:Um... by Waffle+Iron · · Score: 5, Funny

      DeWalt doesn't sell power tools that go out of their way to make sure you don't cut off your fingers.

      Unfortunately, they do. That's why when I get a new power tool, I have to make modifications to pare it down to an elegant C-style device:

      I remove the blade guard. I cut off the grounding prong and file down the ears on the neutral conductor. I permanently glue down the little trigger interlock button. I put a lock washer on the blade arbor so that it can't ever slip and reduce my torque. None of these annoying things even matter so long as I never make a mistake.

    6. Re:Um... by Anonymous Coward · · Score: 0, Troll

      Nothing is stopping someone from sliding the guard out of the way and jamming their hand into it.

      Nothing is stopping people from using unsafe blocks in Rust when they're completely necessary either. You should have just replied with "Yes" and left it at that.

    7. Re:Um... by Anonymous Coward · · Score: 0

      http://www.sawstop.com/why-sawstop/the-technology/

    8. Re:Um... by drinkypoo · · Score: 1

      DeWalt doesn't sell power tools that go out of their way to make sure you don't cut off your fingers.

      Unfortunately, they do. That's why when I get a new power tool, I have to make modifications to pare it down to an elegant C-style device:

      Will you disable their potentially upcoming sawstop substitute? I, for one, would very much like to own a sawstop table saw. I've never cut myself with a saw (knockonwood) but I have caused myself various minor injuries with some lesser power tools over the years. There is, perhaps, less of a tendency to treat them like the dangerous machines that they are. However, one untimely cramp or spasm and it's goodbye fingers, or at least hello hospital.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    9. Re:Um... by Anonymous Coward · · Score: 4, Insightful

      To prevent casual accidents. Nothing is stopping someone from sliding the guard out of the way and jamming their hand into it. Programmers should know how to use their tools so they don't do the equivalent of sliding the guard out of the way and jamming their hand into it.

      You'd think so. And yet here we are with buffer overflows still causing havoc, Intel's best and brightest allowing your CPU to get pwned at the hardware level, Apple allowing anyone with local access to authenticate as root with no password, Adobe still shipping Flash Player update after update, Oracle releasing patch upon patch for Java and Microsoft being forced to un-patch systems that have just been patched due to a higher than expected number of reboots. Even OpenBSD which is secure by design and runs fully audited code isn't immune from remote exploits in the base install.

      We have spare CPU cycles today, we don't need to code for the bare metal to get the performance we need. What we do need are safety nets and liferafts to prevent human errors from becoming security vulnerabilities. Humans make mistake. Maybe the top 5% of programmers would never make these kinds of errors, but not every programmer writing code for a major (or not so major) corporation is an International All-Star Programmer. By definition, 95% of them are not in the top 5% of coders.

      Even with safer languages these errors can, and will, occur - but there are whole classes of errors and vulnerabilities that are able to be prevented by using a suitable language. There are other errors that can still be made in safer languages, but you need to go out of your way to do so.

      It's the same with tools. There's a guard on my circ saw, but I can slide it out of the way if I try. It does mean however that after I've made a cut, if I put the saw straight down, it's not going to drive itself across my workshop floor, or cut my toes off.

    10. Re:Um... by Anonymous Coward · · Score: 0

      And that's why we call you ol' nine-fingers.

    11. Re:Um... by WarJolt · · Score: 1

      It's not a fair analogy. Software has similar latent failure properties to a poor electrical job. The way we write software now is like wiring a house without a grounding conductor. At one point houses did not have ground wires. Now, if you don't install one it's akin to arson.

    12. Re:Um... by Anonymous Coward · · Score: 0

      The average number of table saw injuries in the US is approximately 1 per table saw. However, the majority of table saw users have never had an injury, meaning a large number of the injuries involve people with multiple such injuries. Either the numbers are heavily biased by people who don't use the saws, or there is a tendency for some people to be injured much more likely than others. I haven't seen good numbers based on hours used, instead of just used at some point, but if that ruled out the first option, then it means injuries come from habits and not chance.

      However, one untimely cramp or spasm and it's goodbye fingers, or at least hello hospital.

      You should never been one twitch away from being cut on a table saw. Simple push sticks cover most cases. Awkward cases can be covered by jigs, and many woodworking shops will accumulate quite a few, even if some are one-offs that might never be used again.

    13. Re:Um... by Anonymous Coward · · Score: 0

      Why is it the language's job to make sure your code is somehow "safe"?

      It should be the computer's job to do whatever it can, and the human's job to do whatever the computer cannot do. Any simple or tedious task should be handed to the computer, instead of paying a programmer to do such things manually. The computer can't stop all unsafe behavior, but it should be doing as much as possible to stop easy to catch problems, so that the programmer can spend their time dealing with actually difficult problems.

    14. Re: Um... by Anonymous Coward · · Score: 0

      > Humans make mistake.

      Just the one, though. You've just had yours so you should be good for the rest of February.

    15. Re:Um... by Anonymous Coward · · Score: 2, Insightful

      I hate to break it to you, but the early power tools were very dangerous, they lacked handguard etc, and they lacked automatic cut-offs in case you cut yourself. You had to actually turn the power off manually to stop them cutting your fingers off, instead of having something you need to constantly hold down to make them work. Those safety features came about in the 1970s mainly, because when power tools started being used by home handymen in the 1950s, they were cutting too many fingers off.

      Good tools take into account the range of people who need to use them, and add in ALL the safety that you can, which doesn't sacrifice performance. A few simple changes to C/C++ can reduce many of the common typos and bugs, by turning them into compiler errors. More errors picked up by the machine is a good thing. For one, if less bugs creep through, the cost of code and time wasted on code checking is reduced. This means even good programmers become more productive, while bad programmers get more feedback from their tools.

    16. Re:Um... by james_gnz · · Score: 1

      Why is it the language's job to make sure your code is somehow "safe"?

      Because a computer can perform checks faster and more reliably than a programmer can. My understanding is that Rust has thread safety as one of it's main goals, that this is something that is difficult for programmers to check, and that it's becoming increasingly relevant because multiple cores are replacing increasing clock speeds as a means of increasing computer performance.

    17. Re: Um... by BESTouff · · Score: 1

      Rust has such a guard lock. It's the 'unsafe' keyword which allows you to play dangerously. Seldom useful, better not to use it, but sometimes there's no other way to get things done - like with IRL tools.

    18. Re: Um... by TheRaven64 · · Score: 3, Insightful

      Unfortunately, Rust doesn't have any way of constraining the side effects of unsafe code, and most nontrivial Rust programs end up using unsafe in at least some places.

      --
      I am TheRaven on Soylent News
    19. Re:Um... by Rockoon · · Score: 1

      ..because when people think about programs written in Java, the word 'safe' leaps up at them.

      --
      "His name was James Damore."
    20. Re:Um... by Anonymous Coward · · Score: 0

      > Why is it the language's job to make sure your code is somehow "safe"?

      I give you a simple example:

      Lets say we have two bottles of liquid. Other is deadly poison and the other is harmless sugar water. You work as a nurse and you need to give sugar water to a new born baby. Because both bottles look the same with very little differences, you accidentally take the wrong bottle and give deadly poison to the baby. This was actually a real event that really happened. After the event they changed the outlook of the bottles.

      Now I ask you, why did they change the outlook of the bottles. Why would it be the job of the bottle to keep the patients safe?

      If you still don't understand I give you the answer: While it is a persons job to keep things safe, people make mistakes. But with certain protocols and tools we can help people make less mistakes. We don't usually benefit from the mistakes that people make, so why shouldn't we try to help people to avoid making mistakes if there are simple ways to do so?

    21. Re: Um... by serviscope_minor · · Score: 3, Insightful

      Unfortunately, Rust doesn't have any way of constraining the side effects of unsafe code, and most nontrivial Rust programs end up using unsafe in at least some places.

      This is unfortunate: it would be ideal if there was graduated unsafety. Rather than havina an "unsafe" block with everything off, it would be cool if you could specify what you want relaxed.

      On the other hand, it's a lot better than nothing. Having 99% of the code safe and spending extra attention on flagged unsafe blocks is better than having to look for pitfalls everywhere.

      --
      SJW n. One who posts facts.
    22. Re: Um... by Anonymous Coward · · Score: 0

      Real men strip the insulation off the power cord too. Sometimes you WANT to be able to easily spark light a cig while working in fuel depot where matches aren't allowed.

      Pansies.

    23. Re: Um... by Anonymous Coward · · Score: 0

      Commie laws like that are why we have so much poverty. The free market would allow the best trained and skilled nurses to be paid extra for their carefulness. Those job killing safety regulations are why health care is so expensive.
      Wa wa wa i want poison to look different than baby formula. I don't want gasoline stored by my furnace. Wa wa wa. Highways need not just painted lane markings, but expensive guardrails or divisions.

      The death star didn't need hand rails, neither should escaltors.

      Pansies. /s

    24. Re:Um... by The+Evil+Atheist · · Score: 3, Insightful

      Rust aims for thread safety only through the blunt tool of object lifetime management, but people make it out as though it performs magical compile time checks for deeper threading issues.

      --
      Those who do not learn from commit history are doomed to regress it.
    25. Re: Um... by Anonymous Coward · · Score: 0

      Rust has unsafe blocks the equivalent of moving the guard out of the way. Ergo your point is worthless.

    26. Re: Um... by Hognoxious · · Score: 1

      Looks like cayenne8's forgotten his password!

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    27. Re:Um... by q_e_t · · Score: 1

      One per saw? One would speculate each one is serious, resulting in that person never wanting to use it again, or not being able to!

    28. Re: Um... by Anonymous Coward · · Score: 0

      Even the top 5% of of software engineers write bugs then and now. The folks working on OS kernels are the top 5â..., and we had lots of exploitable bugs in otherwise rock solid kernels like HPUX, Linux, Solaris and the like.

    29. Re:Um... by Anonymous Coward · · Score: 0

      And wood with any degree of moisture in it will end up costing you a fortune to cut with a SawStop-equipped tool. There's a number of reasons they haven't really caught on after years on the market.

    30. Re:Um... by Kjella · · Score: 1

      Unfortunately, they do. That's why when I get a new power tool, I have to make modifications to pare it down to an elegant C-style device:

      That's one extreme. And if you to the other extreme that's not very useful either. That the code doesn't crash doesn't mean it does anything useful or won't go into an infinite loop or that exceptions or error conditions are meaningfully handled from a user perspective or that the code is secure from unauthorized access or alteration or that data won't get corrupted, deleted or overwritten. Maybe if it's some kind of online service where you're bringing down many users, but if my game client crashes or hangs or throws an error message it almost doesn't matter. All I can do is close it and try again. So it's okay to rant about software quality but Rust would, at best, solve one little snippet of that.

      And that's okay, it only needs to make the world a little better. But a lot of the "lets throw it all out and redo it in Rust" advocates seem to forget or ignore all the effort that's been made to create actual user functionality that works as intended and the massive effort it would take to retest that and since real world code rarely has 100% test coverage - and why are you rewriting it, if it does exactly what it should - you'd probably create a whole lot of new bugs. Probably not bugs from a language perspective, the Rust code executes according to spec but breaking real world functionality. And the training costs until developers create fewer of those bugs than before, if they ever do because they spend more time fixing Rust compiler warnings or don't find the documentation, IDE, libraries etc. equally useful.

      To me it's a bit like the DVORAK keyboard layout, even if all the claims of somewhat increased typing efficiency and less strain for English-language users are true it's ultimately so rarely the limiting factor and the global effort to switch so huge it's extremely questionable if it's worth the effort. As opposed to fixing bugs the "old fashioned" way, I mean some of the core banking code is still written in COBOL. If you've ironed out all the bugs it doesn't matter what language you used, the question is what gets you as close as necessary with the least developer effort. If you want perfect you should probably do formal proofs or something like that and even then who proofs the proof? I've had "bugs" basically boil down to faulty test cases, it's not supposed to do what the test case says.

      --
      Live today, because you never know what tomorrow brings
    31. Re: Um... by Anonymous Coward · · Score: 0

      The mafia of cyber war beneficiaries and lazy C programmers will deride your national arguments. The latter folks are too cheap to learn a new language and the former earn a nice living from crap computers.

    32. Re:Um... by AmiMoJo · · Score: 1

      People used to criticise C for not having a strongly enforced type system. Now everyone thinks JavaScript is great.

      We went from "let's make the language more secure and robust" to just kind of admitting defeat and accepting that most software will be so crap it has to be heavily sandboxed.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    33. Re: Um... by ThosLives · · Score: 2

      I've never liked the 'unsafe' keyword. It gives two false impressions: code that uses it is unsafe and code that doesn't use it is safe.

      A much better keyword is probably 'unmanaged', because that doesn't connote incorrect assumptions and actually represents what the keyword means.

      I'm also a firm believer that the most severe software bugs are due to code that isn't designed but merely written. Code is often written only looking at a "nominal" use case without considering failure modes, so even in the rare instances where there are tests in place the tests don't often catch the errors (just look at stuff like the recent Malwarebytes-eating-all-the-RAM thing).

      No language is ever going to be able to eliminate software development culture errors. And by "software development culture" I mean things like you need a design, you need tests, and those tests need to adequately cover off-nominal use cases.

      --
      "There are a dozen opinions on a matter until you know the truth. Then there is only one." - CS Lewis (paraprhase)
    34. Re:Um... by amiga3D · · Score: 2

      I took shop in junior high and our shop teacher was showing us how to use a table saw. He demonstrated how to use a push stick and then held up a hand with two missing fingers and said "USE YOUR PUSH STICK!" in a very loud voice. I made sure to use the damn push stick.

    35. Re: Um... by Anonymous Coward · · Score: 0

      Ah but here is the paradigm...if a block is marked unsafe, then every programmer who reviews the code comes up with a litany of questions...such as, why? And was the goal accomplished without introducing errors? There is a huge difference between checking a handful of blocks of code and having to reference count an entire solution.

    36. Re:Um... by Anonymous Coward · · Score: 0

      There is a huge difference. In C the wrong type will likely corrupt your data and visibly crash the process, in JavaScript you will never notice, even if an error makes it all the way to back to the browser API calling into JavaScript it will just be logged in a console no user ever sees. Basically no matter how bad your JavaScript code is it will "work" 24/7 without visible issues, generating and reading garbage data without fail. See no evil and all that.

    37. Re: Um... by Anonymous Coward · · Score: 0

      Nobody thinks you're cool because you don't need decent tools. You are at the very worst stage of Dunning-Kreuger. Be humble and learn, college kid.

    38. Re: Um... by Anonymous Coward · · Score: 0

      No it's not worthless.

      Placing a guard on a powersaw is acceptable because the overall efficiency gain compared to using a hand saw is still huge.
      Most of these "safe" languages are like taking a handsaw and putting a safety guard on it. It doesn't really do much to make an idiot any safer, and just gets in the way of a skilled operator.

    39. Re:Um... by gbjbaanb · · Score: 3, Informative

      Sure, but his point isn't that the language allows you to make mistakes - they *all* do that, the problem is that the developers are too overwhelmed with frameworks, libraries, architectures and having to use many different languages all the time that they will make mistakes.

      I used to code C++ and I was good at it, the number of errors I put in was minimal. But that was the days when it was the only language I used.

      Today I'm using C++ and C# and javascript with a dose of scripting and loads of different ways to do the same thing, and every time I think of dong something I realise I don;t have the same level of expertise I used ot have before - not because I'm no longer good at my job, but because there is so much stuff to remember and apply that I will forget the odd bit here and there, and that is where mistakes creep in.

      Once you've seen the kind of serious PCI compliance checking tools that tell you your perfectly-working code is unacceptable because of things you didn't consider, then you get a handle on why the language is not the problem at all.

      the only safe way to write code today is to keep it modular, and then to keep things separated. Too bad that all the frameworks you code with try to make everything into a single monolithic lump "for ease of coding" so the noobs can find it accessible.

      If you had only experienced programmers coding, in a few languages and systems, they'd be able to do all the stuff we have today, but faster and better. As it is, we try so hard to get as many people coding as possible, and have so many different systems to code in, that the whole industry is a massive chaotic mess.

      once all I needed to code was a knowledge of C and the IBM big book of library calls (which told me everything their API did). Today, we need google and stackoverflow and looking up stuff hourly, and even then I'm having to filter results on the version of the library I'm working with so even the results for the documentation is often wrong. How does anyone expect our systems to work properly without massive amounts of effort.

    40. Re:Um... by tietokone-olmi · · Score: 3, Informative

      So why does Rust require the programmer to describe intent to an exacting detail, rather than figuring it out on its own? If computers are so very fast at it?

      Also, Rust does absolutely nothing about deadlocks. Its multithreading features were designed by people looking for an appearance of parity with e.g. POSIX threads, while neglecting practical applicability. The same problem exists in various other new languages, such as Java and D; omitting POSIX, they can't reach parity despite replicating the threading portion equivalently.

    41. Re:Um... by angel'o'sphere · · Score: 1

      Low level "system programming" have nothing to do with type safety.
      There are OSes written in in Pascal, Modula 2, Oberon and ... you might shudder ... Java.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    42. Re:Um... by Waffle+Iron · · Score: 1

      You're confusing static typing with strong typing. C i s statically typed, but Javascript, as much as it sucks, has a stronger typing system than C.

    43. Re:Um... by squiggleslash · · Score: 1

      It's absolutely fine for the language to not do anything to ensure your code is going to be secure if you're the only one using your work.

      When the rest of us have to use your code (or even worse, debug it!) then yes, you should be using languages that minimize the possible damage your mistakes can cause.

      The fact the entire industry took one look at the bureaucracy of, say, Java, and decided that, rather than fix it, it'd standardize on PHP and C++, is why we have such shitty insecure software right now.

      --
      You are not alone. This is not normal. None of this is normal.
    44. Re:Um... by DrXym · · Score: 1

      Why is it the language's job to make sure your code is somehow "safe"?

      Firstly, you can do unsafe programming in Rust. Just enclose a chunk of code in an "unsafe" block and do what you like. But by default the language prevents you from 1) using pointers, 2) mutating types or memory, 3) writing to raw memory / buffers etc. 4) accessing shared data from multiple threads without the use of locks. If you must do those things you can, for example to call into C, or allow C to call into Rust. But 99.99% of the time you don't and the compiler will enforce that.

      I'm failing to see how this is meant to be a problem.

    45. Re:Um... by DrXym · · Score: 1
      The same argument could be made in any factory - the workers should know how to use their tools so therefore there is no reason for safety. Except we repeatedly discover that is not the case. People get crushed, scalded, electrocuted, burned, scalped in all kinds of horrible accidents on machinery where there is no safety, or it is easy to circumvent. Thus factory machinery these days is subject to rigorous safety standards that are designed to minimize risk to an acceptable level - safety gates, sensors, barriers, pressure mats, emergency stops etc.

      Programmers don't lose their lives from doing bad things but somebody else might and it is not unreasonable that the tool should stop bad things from happening by design. And that is all Rust does. The language is designed to not use pointers so all the class of problems related to pointers simply can't happen. All shared data must be locked in use so data races cannot happen. Of course if you are desperate to do unsafe things in Rust you can use an "unsafe" block and have at it. But the default is safe and there are only a few instances where you'd ever care to throw the switches.

    46. Re: Um... by Anonymous Coward · · Score: 1

      Having a few unsafe blocks is far better than having your entire code base be memory unsafe. Even in Redox, the unsafe sections are a tiny fraction of the codebase (less than 2%).

    47. Re:Um... by Anonymous Coward · · Score: 0

      In most multi-threaded rust code you do not even need locks.

    48. Re: Um... by Anonymous Coward · · Score: 0

      Well clearly the ideal of having all designed software isn't working out for us, so why not lean towards having computers verify that we are correct rather than just saying "fuck it" and let the programmers make the mistakes. Even if you design something, the implementation can be incorrect. Tests can be written in the form of types.

    49. Re:Um... by brantondaveperson · · Score: 2

      We have spare CPU cycles today, we don't need to code for the bare metal to get the performance we need.

      Great points, but I must take issue with this. We don't have spare CPU cycles, because this is exactly equivalent to saying we have electricity to spare, which we most certainly don't, especially on mobile.

      Language safey features do not necessarily need to come at a run-time cost in any case, since well-written C++ is about as safe and fast as it gets. Unless you count the hours it ends up taking to compile...

    50. Re:Um... by james_gnz · · Score: 1

      Rust aims for thread safety only through the blunt tool of object lifetime management, but people make it out as though it performs magical compile time checks for deeper threading issues.

      It does track object lifetimes, but I believe it also tracks ownership (where an object fits in the data structure), and "borrowing" (which function/thread is editing the object).

    51. Re:Um... by MichaelSmith · · Score: 1

      At some point they all have to interface with anonymous bits and bytes.

    52. Re:Um... by james_gnz · · Score: 1

      So why does Rust require the programmer to describe intent to an exacting detail, rather than figuring it out on its own? If computers are so very fast at it?

      Come now, that's not fair. I said the computer can perform checks faster than the programmer can, not that it can figure out the intent of the program faster than the programmer can.

      Also, Rust does absolutely nothing about deadlocks. Its multithreading features were designed by people looking for an appearance of parity with e.g. POSIX threads, while neglecting practical applicability. The same problem exists in various other new languages, such as Java and D; omitting POSIX, they can't reach parity despite replicating the threading portion equivalently.

      AFAIK, Rust can guarantee against unsafe memory access, which POSIX threads, per se, can't. AFAIK, you're right that Rust can't guarantee against deadlocks, but then POSIX threads, per se, can't do that either. But then, I think POSIX is kind of lower level anyway, and Rust programs can be made to run on it, or on other systems, so you're kind of comparing apples to... well, not so much oranges, as something that can be made with apples... or alternatively with other fruit... like a fruit pie, or something.

    53. Re:Um... by angel'o'sphere · · Score: 1

      Yes, and?

      C: int x; // lots of bytes depending on architecture and compiler
      Pascal/Modula 2/Ada: x : Integer; // usually well defined amount of bytes

      You see: language has nothing to do with accessing bits and bites ...

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    54. Re: Um... by Joey+Vegetables · · Score: 1

      Single Responsibility Principle for the win: make sure every unsafe block does exactly one thing and only one thing. It should hopefully then be obvious what caused the need for unsafe, and why.

  7. Re:what a bunch of ignorant bullshit by NicknameUnavailable · · Score: 1

    none of you god damn shitforbrains could comprehend what my code does besides make goddamn money hand over fist while your 401k balance sits there making some fatass dickheads richer

    If I had to guess, I'd say your a quant with a BBC fetish and a micropenis.

  8. Re:too many languages by angel'o'sphere · · Score: 0

    Actually we need more 'coding' languages.
    Unfortunately you wont be one who invents/discovers/formulates one.

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  9. Re:too many languages by Darinbob · · Score: 1

    The problem is, there isn't a perfect language, and there's no language that perfectly covers all styles and domains. Thus people do come up with new ones in order to fill a void. Ie, C was good enough for most things awhile back, but it's hard to learn it well and use it well and very easy to make mistakes in. Then Objective C and C++ gave a couple of different takes on object oriented programming. Modula-II and Ada came from a European lineage, with a good set of abstractions and type safety. Lisp led to Common Lisp with object orientation, then Scheme for a functional version. Then all the scripting languages that don't have to be compiled, some that are meant to be quick and dirty to get the job done, and others that try to be more structured and formal.

    So all these languages try to either adapt to a niche that other languages don't fit into very well, or try to improve on past languages.

  10. Terrified to use Master and Slave by Anonymous Coward · · Score: 5, Interesting

    He is terrified of other language because, being a Social Justice Warrior, his group finds the terms "master" and "slave" to be "problematic."

    No, I'm not kidding, though I wish I were.

    When a language is gleefully throwing away well understood, well used terms because of someone's misguided feelings, then quite frankly I wonder what other decisions - truly important ones - have been impacted by the same toxic SJW attitude.

    1. Re: Terrified to use Master and Slave by Anonymous Coward · · Score: 1

      Are you the same butthole who uses the term SJW in every single thread? Obviously you are the warrior here with some axe to grind. Contribute something constructive or go away.

    2. Re:Terrified to use Master and Slave by Hognoxious · · Score: 5, Informative

      his group finds the terms "master" and "slave" to be "problematic."

      you're lying. He was not involved in that thread.

      Your logical fallacy is: ignoratio elenchi.

      The liar is you.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    3. Re: Terrified to use Master and Slave by Anonymous Coward · · Score: 0

      So what you're saying is that anyone who uses words you don't like should be no-platformed?

    4. Re:Terrified to use Master and Slave by Anonymous Coward · · Score: 0

      Your social fallacy is: being an autistic faggot.

      The garbage is you.

    5. Re: Terrified to use Master and Slave by Anonymous Coward · · Score: 0

      It's pointless. But it does less harm than people getting butthurt about other people trying to be kind.

    6. Re:Terrified to use Master and Slave by Anonymous Coward · · Score: 0

      I'm no SJW but I have no objection to changing master/slave terminology to something more modern. We don't really have masters and slaves anymore, so why continue with the analogy?

    7. Re:Terrified to use Master and Slave by Tablizer · · Score: 1

      being a Social Justice Warrior, his group finds the terms "master" and "slave" to be "problematic."

      If you think about it, it can be quite offensive. I was working with a black colleague once, and I switched to "primary" and "secondary" because I didn't want to utter those words around them, even though they were in the instructions. Would you feel comfortable with it?

    8. Re:Terrified to use Master and Slave by Tablizer · · Score: 1

      How about "Boss" and "peon".

    9. Re: Terrified to use Master and Slave by MarkVVV · · Score: 0

      So you stopped using the words "master" and "slave" because you had a black colleague? My God, where's that meteor when we need it?

    10. Re:Terrified to use Master and Slave by mapkinase · · Score: 2

      >No, I'm not kidding, though I wish I were

      Master/slave term has been on its way out for 15 years now.

      --
      I do not believe in karma. "Funny"=-6. Do good and forbid evil. Yours, Oft-Offtopic Flamebaiting Troll.
    11. Re:Terrified to use Master and Slave by Anonymous Coward · · Score: 0

      Now that I can relate to! :)

    12. Re:Terrified to use Master and Slave by Anonymous Coward · · Score: 0

      Hey I learned the formal definition of a logical fallacy I understood but whose name I did not know. Good on you.

    13. Re:Terrified to use Master and Slave by Phillip2 · · Score: 1

      Every time rust gets mentioned, someone trots out this issue like it's the final clinching proof of, well, something. Then, shortly after, there are lots of dark mutterings about SJW.

      My experience is that the rust community are quite nice. Every time I have posted an issue, someone has given me a sensible answer, explained clearly. They do have a code of conduct, but it's never bothered me because I value politeness for it's own sake. Something not that wide spread on the internet alas. The rust book is a little bit evangelic about the language, but then, that's kind of inevitable; it's written by people who have committed a lot of time and energy to a language; of course, they think it's cool and, of course, they want to sell it. That's a little tiresome but hardly unusual. On the whole, it's not bad. I don't mind a bit of enthusiasm and if someone else does the work of enforcing politeness, it's saves me the effort of blocking people client side.

      And rust itself. This is an interesting one. Jim Blandy's book says, rust is all about bringing pain that other languages would give you later to the present. So, it is harder to learn and develop. Like Haskell and the ilk, there tends to be fighting with the type checker; but, then, once it compiles it tends to run. And, some designs that you might want to port from other languages do not work.

      To again quote the new book, this is Rust's radical wager. It's not clear yet, whether it's a winning one or a losing one. I think it's an innovative and exciting language, but am still unconvinced that it's the right one. We will see.

    14. Re:Terrified to use Master and Slave by Anonymous Coward · · Score: 1

      I always recommend "dom/sub," but no one ever goes for it.

      (But I keep hoping!)

    15. Re:Terrified to use Master and Slave by swillden · · Score: 0

      When a language is gleefully throwing away well understood, well used terms

      You mean vague, poorly-defined terms. Master/slave is used in many different contexts, where the "master" and the "slave" have very different sorts of relationships. In the case of databases, for example, "active" and "replica" are much more accurate and informative. In the case of build systems (the context in the linked discussion), "coordinator" and "worker" are better.

      If it were a case where there really were no better terms that don't also carry racial baggage, I guess you might have a point. But with respect to master/slave, there's almost always an alternative pair of words that is clearer and more informative in addition to less politically problematic.

      (Also, this discussion has nothing to do with the language, it's a thread about build infrastructure. Precision and clarity in language are valuable characteristics for programmers.)

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    16. Re: Terrified to use Master and Slave by swillden · · Score: 0

      So you stopped using the words "master" and "slave" because you had a black colleague? My God, where's that meteor when we need it?

      You're right. Tablizer shouldn't have waited until he was working with a black colleague to recognize that "primary" and "secondary" (or, even better, "replica") were both more accurate and less potentially offensive. But, hey, we're only human. At least he did recognize it when brought face to face with the potential offense.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    17. Re:Terrified to use Master and Slave by Joey+Vegetables · · Score: 1

      I will not bow to any form of PC, but I will try to avoid terms that people may legitimately find disrespectful. And I'm more than open to suggestions as to how what used to be called the "master/slave" relationship might be expressed in a more sensitive way. Human relationships are often hierarchical in nature, far more so in most contexts than I'd prefer. Relationships among software components often are as well. That 's not likely to change anytime soon, and, until and unless it does, there has to be *some* kind of vocabulary to describe them.

    18. Re: Terrified to use Master and Slave by Tablizer · · Score: 1

      No, you DON'T sound like a neck-beard without people skills, trust me.

    19. Re: Terrified to use Master and Slave by Anonymous Coward · · Score: 0

      I don't have a dog in this horse race, but "primary" and "secondary" doesn't imply any kind of control relationship, therefore less accurate.

  11. Re:too many languages by mohsel · · Score: 1

    I learned from the very beginning to always ask "why?" why should i switch to this ? why refactor ? why change to that ? and the answer should always be "the bring x improvement to the business"
    A very simple reflex that acts as a shield in front of the hype and marketing. (but takes a lot from the free time to play around with the new toys and small implementations of the new ideas to answer properly)

    So when i check out a new coding language the first thing i look for is their justification, their answer to the "Why ?" question and most of the time their answer is about improving the interpreter or the compiler (a safer c/c++, and a faster performing python). and rarely about the syntax itself...

    I like change and new, I don't like jumping into someone else's code, hell i don't like jumping in my own code, and i'd rather make 10 new things than refactor one. so i get why people chose to reinvent declarations and tests. the problem is jumping into it in production and buying to the hype before letting projects mature and answering the right questions: "when" and "why" mostly.

  12. Re:what a bunch of ignorant bullshit by Anonymous Coward · · Score: 1

    Nice theory, but people who read the BBC generally know how to spell and punctuate.

  13. I am also terrified... by Rust! by CustomSolvers2 · · Score: 4, Interesting

    I have recently performed a relatively simple development by using programming languages on which I had low-to-to-no experience: Perl (low), Ruby (no), Rust (no) and Go (no). Note that I am quite adaptable on the programming language front and that this small experiment was precisely meant to showcase these adaptability skills. Rust was, by far, the most difficult-to-learn, difficult-to-research, counter-intuitive, unfriendly, constrained, unappealing, etc. of all of them. Warnings and errors appeared systematically and, despite their verbosity, were rarely helpful. I had problems even to find an editor/install it! (relied on Visual Studio Code in both Linux and Windows, an editor which I rarely use; and had to struggle with my Visual C++ installation on Windows, which was working fine until Rust came in).

    The most ironic part is that so many restrictions and problems are likely to provoke people to rely on whatever option happens to work, which might not be the best/safest one. Being so concerned about making sure that the generated code is extremely safe no matter what by sacrificing flexibility and user friendliness is far from ideal. Restrictions and prohibitions have always to be seen as an in-the-worst-case-scenario resource, not as a primary solution; much less when dealing with something as complex as programming, a very powerful tool supposed to be managed by knowledgeable individuals. The higher the freedom, the better the results delivered by a sensible/knowledgeable person. Unless Rust changes a lot, I don't see it going anywhere. It might get some support from theoretical/academical/inside-whatever-bubble circles, but seriously doubt that developers with real-world experience can like or even accept most of what this language represents.

    --
    Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    1. Re:I am also terrified... by Rust! by Viol8 · · Score: 2, Interesting

      "Rust was, by far, the most difficult-to-learn, difficult-to-research, counter-intuitive, unfriendly, constrained, unappealing, etc. of all of them. Warnings and errors appeared systematically and, despite their verbosity, were rarely helpful."

      I don't know rust so I can't comment on it directly, but I'm a C++ dev and a lot of that applies to C++ which - it pains me to say - has become a designed-by-commitee dogs dinner with some appalling, borderline unreadable, syntatic hacks and yet they still just can't leave well alone. I first learnt C++ 2 decades ago and even I have given up trying to keep up with the latest pointless additions to the language that no one outside a small circle of language geeks was asking for. I feel sorry for anyone trying to learn it from scratch today as the learning curve eventually gets as close to vertical as you can get in a programming language.

      As for useless warnings and errors - thats just bad compiler design. gcc is notorious for utterly unhelpful C++ error messages that can literally got on for pages, whereas Clang is far far better in that respect.

    2. Re:I am also terrified... by Rust! by CustomSolvers2 · · Score: 1

      I don't know rust so I can't comment on it directly, but I'm a C++ dev and a lot of that applies to C++

      Rust is certainly worse. C++ is a difficult-to-master language, not a difficult-to-get-started one. C is much more difficult to get started than C++, at least for someone with a modern-language background. But even with C, you have options which are a bit less problematic on which newbies might rely at least to perform the relatively simple development I did (just a simple application calling an external program and parsing the simplistic output which it generates). The four languages I mentioned might be quite tricky. Perl, for example, can be considered a quite weird language making everything differently than most of other languages. Rust was at a completely different level: its difficulty appeared since the very first moment and was provoked by a relevant unfriendliness, counter-intuitiveness and even consistency lacks at some points.

      --
      Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    3. Re: I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      It took me the best part of a year and two tries on my hobbie projects before the rust penny dropped. Learning most new languages is easy because thereâ(TM)s little new between python and ruby and java and c#, the way you think is largely the same. Admittedly some make it easier to think functionally than others. But rust really is new, which means you actually have to learn new concepts aside from the syntax and std lib. Thatâ(TM)s why it has a steeper learning curve than a clone language. But the learning cure it levels off, while the safety stays. The performance of c with compile time thread-safety is a beautiful thing

    4. Re: I am also terrified... by Rust! by CustomSolvers2 · · Score: 2

      But rust really is new, which means you actually have to learn new concepts aside

      Have you ever tried Perl? It is pretty much the archetype of being different. After getting used to its peculiarities (what happens surprisingly quickly), it is quite nice. In fact, I liked it so much that have started a relatively big development in Perl right away.

      The performance of c with compile time thread-safety is a beautiful thing

      I don't know about the exact reliability of that claim, but it sounds quite similar to what C++ offers. And as commented above, C++ can be very complex but it also has very simple and intuitive alternatives. This is what matters at the end: allowing everyone to have a nice programming experience, either by delivering an overall-friendly environment or a very big one where you can choose whatever you prefer. Rust doesn't offer any of those options, just one narrow and unfriendly path which you have to follow no matter what.

      --
      Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    5. Re:I am also terrified... by Rust! by DrXym · · Score: 4, Insightful
      Rust definitely needs better IDE integration but you can find plugins that work for VS Code, Atom, IntelliJ/Clion, Eclipse, Dev Studio. The IntelliJ plugin in particular is excellent but VS Code's is good too. Seriously I could write code all day in IntelliJ and it has all the niceities you would expect from a plugin - refactoring, code cleanup, reformatting, find usages, inspection, code completion etc.

      I'm more concerned by trying to debug Rust than the editing aspect. Rust can be debugged through cdb, gdb, lldb etc. but none of that comes "out of the box" on Windows. It's much easier to get going on Linux since you only have a gnu backend and gdb is easy to install but even so you need little scripts to pretty up some of the data inspection. It would be nice if rustup or whatever had a simple way to install the debugger on Windows.

      Concerning difficulty I think many of the same difficulties would be encountered if you chose C++ instead of Rust and came from a higher level language background. Both languages force you to think in terms of stack, heap, memory allocation etc. It's just that Rust will kick your ass up-front if you get it wrong while C++ will happily let you write errors into your code and you'll just have to discover them (or not) later when things break. Personally I would take that pain simply because it reassures me that code that comes out the other side has a lot less errors in it.

      That might make the language seem more painful to use but its doing you a favor by making your errors obvious now, not later and to write safer code. I think the error messages from Rust are very useful. They tend to be descriptive and usually provide a suggested fix which is often right. Certainly far easier to work out what the error relates to than many C++ errors. It's not uncommon in C++ for a trivial code error to throw up a wall of impenetrable garbage thanks to templates and static typing.

      An anecdote - I've been programming Rust for about 18 months now and do you know how often my compiled program has crashed because of a null pointer, dangling reference or some addressing error in all that time? Once. And that crash was in a C library I was calling from Rust! In other words the code I've written has never crashed a single time.

      I see nothing major about Rust the language which needs to change. I think the biggest hurdle for people coming from C++ is understanding that stuff moves on assignment and there is no inheritance. So they have to unlearn stuff and think about doing things another way. It's certainly a hurdle but I don't think it's too tricky. The payoff is less bugs and ultimately that means better quality software, less support calls and happier customers. If I were developing for IoT or mission critical software I'd definitely choose Rust over C or C++ unless there was a reason I could not.

    6. Re:I am also terrified... by Rust! by serviscope_minor · · Score: 4, Informative

      I first learnt C++ 2 decades ago and even I have given up trying to keep up with the latest pointless additions to the language that no one outside a small circle of language geeks was asking for.

      I'm having a hard job thinking what those are.

      Just about every new addition to C++11 saved major ball-ache at many points in the code, even the somewhat botched initializer_list.

      C++14 basically fixed all the weird "WTF this doesn't work" bits from C++11 where the features weren't quite complete in obvious ways (e.g. auto lambdas, return type deduction for normal functions and so on).

      Except for binary literals and digit separators. Those were new. and holy-o-fuck are those useful if you're hammering on an SPI bus.

      I feel sorry for anyone trying to learn it from scratch today as the learning curve eventually gets as close to vertical as you can get in a programming language.

      It's vertical if you try to learn modern C++ as 20 year old C++ with extra features. That's not the optimal way to learn it, because then you're stuck with all the misdesigns of the old features with a whole pile of new ones. It's the way we learned it of course, because we learned C++ then C++98 then C++11.

      It's bad in the same way that it's bad learning C++98 as C with a bunch of new features. You get the worst combination of complexity overload and feature overload. Again we did it, but I wouldn't teach someone new that way.

      Stroustrup has a book on learning modern C++, and it's very well written and makes the curve much gentler.

      I very much doubt you need it to learn C++, but I think it's a good read if you're in the position of teaching or mentoring since it sheds a whole new light on how it comes together for new programmers.

      --
      SJW n. One who posts facts.
    7. Re:I am also terrified... by Rust! by CustomSolvers2 · · Score: 2

      Thanks for the info regarding editors and debugging (BTW, I used VSC without the plugin, by debugging directly via compiler and generated warnings/errors; in case of having decided to use a proper IDE, I would have most likely chosen Eclipse or Visual Studio), but I don't agree with most of what you say. I usually rely on other languages, but eventually use C/C++ and have no problem with them (unlikely with Rust).

      --
      Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    8. Re: I am also terrified... by Rust! by serviscope_minor · · Score: 2

      I don't know about the exact reliability of that claim, but it sounds quite similar to what C++ offers. And as commented above, C++ can be very complex but it also has very simple and intuitive alternatives.

      It does, but not for everything. One Rust was designed for was large amounts of irregular fine grained multithreading with shared mutable state. You know the sort of think you'd have in a web browser, not a scientific number crunching task.

      Personally for most scientific stuff, C++ I find fine becuase the problem structure is regular enough.

      Microsoft, Google and Apple have all failed to achieve what Mozilla have with respect to multithreading within one browser tab, and they have substantially larger teams working on the browser than Mozilla. That's a somewhat ad-hoc claim, but I think it's a rather interesting datapoint since it's what Rust was designed for after all.

      --
      SJW n. One who posts facts.
    9. Re:I am also terrified... by Rust! by DrXym · · Score: 1
      C++ has been moving in the same direction as Rust towards safer programming but thanks to the need to be backwards compatible, it is still unsafe by default and using some of these new features is very clumsy and verbose. e.g. if you want to do move semantics in C++ you have to add weird && constructors and if you thought the rule-of-3 was bad, wait until you see the rule-of-5. Stuff like implicit keywords and deleted constructors just adds to the mess.

      And even if you do make use of the new features C++ is still hampered by the lack of things like borrow checking, thread safety checks etc. Even just writing headers and sources with forward referencing etc. is a chore. The toolchain / build system feels positively clunky compared to cargo.

      My impression of using Rust is they went the right way by making safe be the default. It allows the compiler to enforce a lot more than C++ and normally in a lot less code.

    10. Re: I am also terrified... by Rust! by CustomSolvers2 · · Score: 1

      You know the sort of think you'd have in a web browser

      A new web-based C++, then? OK, that makes kind of sense but, at least IMO, they failed. Go seems to have done a better job (still not particularly good though).

      --
      Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    11. Re:I am also terrified... by Rust! by Anonymous Coward · · Score: 1

      You know what scares me when people praise not crashing?
      Crashes are the easy bugs. Unless exploits are an absolutely critical concern, they just don't even register in the top 10 of challenges. Praising a solution and justifying extra effort for something that to most is a non-issue worries me quite a bit.
      I wouldn't blame Rust much for that though, it was designed for cases where exploits ARE a big concern.
      However it's still a big question if solving the smallest of all programming issues is worth the pain, because any extra effort spent on it means less time to work on the bigger ones. To this day, even the most trivial pre- and post-conditions cannot be added and proven in any programming language. We still rely purely on such completely inadequate and costly tools as testing.

    12. Re:I am also terrified... by Rust! by The+Evil+Atheist · · Score: 2

      All the newest additions makes things more readable. Variadic templates are much easier (and faster) to use than the old hacky way of having dummy parameters. constexpr if is much better than using the SFINAE trick or #defines. lambdas are a godsend for using algorithms, or for callbacks or dependency injection. And auto is much better than having to remember the exact type of an object.

      These aren't the stuff of language geeks. Beginner C++ programmers find that stuff more easier.

      The problem is you. It's only unreadable because you're not familiar with it, but you conflate unfamiliarity with some deeper issue of unreadability. I can't read Rust because I don't use it. It doesn't mean Rust is unreadable.

      And syntactic hacks: so what? Just because you describe it with pejorative terms doesn't make it bad. Syntactic hacks are good because no one likes ugly looking code.

      --
      Those who do not learn from commit history are doomed to regress it.
    13. Re:I am also terrified... by Rust! by phantomfive · · Score: 1

      Currently Rust has set a priority to make the language more approachable. It could be worse, it could be Haskell: even people who use it every day don't understand it.

      --
      "First they came for the slanderers and i said nothing."
    14. Re: I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      Go is memory safe, but uses full GC. Java and. Net already do that. Rust uses refcounting, which enables the software engineer to control memory management and achieve soft realtime capability. The latter is critical for high quality GUI code and many more things.

    15. Re:I am also terrified... by Rust! by CustomSolvers2 · · Score: 1

      Currently Rust has set a priority to make the language more approachable

      They definitively need to do that. I personally might not mind using it in the future in case quite a few things are improved. There are a relevant number of programming languages which had a very important evolution. I also understand that this is a brand new language and that any feedback, even negative, is helpful. The higher the number of good alternatives, the better for everyone.

      --
      Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    16. Re:I am also terrified... by Rust! by Anonymous Coward · · Score: 2, Interesting

      I have to agree with the earlier post about so much being added to C++ and how much of it is useful. When looking over my C++ code what I see repeatedly is that I've never needed much more than C with Classes.

      The RAII capability, operator and method overloading and basic container classes seem to provide all of functionality I generally use. I more often prefer object orientation using composition to inheritance so I do make use of interface design. But I'm fine with very basic template usage for things like type-safe containers but I still make use of pre-processor macros in some cases as opposed to full blown template programming.

      And I understand the usability and draw of scope enclosing lambdas, but before we had that it was no big matter to use a simple function pointer with a data structure or define an interface and implement a class that would contain the enclosed data variables then use an instance of that class for the function. To me the lambda capability was never missed. I 'm happy to use it but I find the syntax a bit awkward.

      I would think that if there was a clean mechanism for doing basic immutability on data structures in a fashion similar to functional languages, like for example where making a copy of a list with new elements actually creates the new elements then points to the previous chain and then the structure is only physically duplicated on modification, or provide a bounds checked structure that can be used when desired would help with many of the repeated "but buffer overflows!!!!!". Honestly implementing "buffer" as a class that does bounds checking isn't really that difficult to do and with operator overloading and pointer de-referencing it can be used like a basic data array.

      The only thing about developing in my C with Classes approach that I generally bitch about is dependency management. If we could truly get the C/C++ development ecosystem to a state we have in Java with Maven and the maven repositories, that either made available compilable source or pre-compiled AST units or properly built platform specific binaries that I could reference in a pom.xml or ivy.xml file , that is what I'd consider the only real missing piece of my development environment.

      editors note: by day I'm a mild mannered corporate Java developer, but by night I'm a C with Classes code slinging game developer wanna be, but I started with C++ back before there was a C++ compiler, back when it was a pre-processor that generated C code that was compiled.

    17. Re: I am also terrified... by Rust! by CustomSolvers2 · · Score: 1

      Go is memory safe, but uses full GC. Java and. Net already do that.

      Not exactly. .NET allows exceptions under certain conditions (C# unsafe). Apparently (I didn't use it in that experiment), Go also allows unsafe (= no GC) conditions.

      --
      Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    18. Re:I am also terrified... by Rust! by 110010001000 · · Score: 2

      Exactly. +1 Insightful. Crashing, null pointers are easy to find and fix. The fact that you still have dangling references and reference NULL pointers just shows you aren't a very experienced programmer. You can avoid all that in C++ as well by using smart pointers. The issue with programming is not NULL pointers and crashing.

    19. Re:I am also terrified... by Rust! by DrXym · · Score: 1
      You got it backwards. I'm praising that Rust prevents crashes from occurring by design (e.g. that you MUST protect and obtain locks on shared data). If code compiles in Rust then it likely it contains less bugs than equivalent code compiled in C++. Doesn't help fix application errors but it does mean it's not likely to drop dead because some code called a dangling reference.

      Besides that, a crash is rarely ever a good thing. It might be simple to identify some crashes e.g. calling a null or dangling pointer or it could be something as insidious as a data race that takes weeks to trigger. If you are lucky you find the crash during development. If you're unlucky your customer finds it for you with all that implies - additional support costs, customer annoyance & downtime, lawsuits.

      Arguing that a crash is somehow good is nuts. Even C++ recognizes they suck which is why it does what it can to mitigate them, e.g. providing unique / shared pointers and mutex guards in the standard library. Still doesn't go as far as Rust.

    20. Re:I am also terrified... by Rust! by lucasnate1 · · Score: 1

      Haskell and C++ are actually very similar languages with wildly different syntax and defaults.

    21. Re:I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      With due respect - you are likely trying to continue using the same paradigms and patterns which C++ lent itself to, 2 decades ago.

      The language is progressing in a rather pointed way, and despite becoming larger and adding features - these have vastly simplified a lot of code, at no price of complexity. To give an example from Herb Sutter's talk in 2014 - where once you would write:


      circle* p = new circle( 42 );
      vector v = load_shapes();
      for( vector::iterator i = v.begin(); i != v.end(); ++i ) {
              if( *i && **i == *p ) { cout << **i << “ is a match\n”; }
      }

      /* later, possibly elsewhere */

      for( vector::iterator i = v.begin();
                      i != v.end(); ++i ) { delete *i; }
      delete p;

      Now you would write:


      auto p = make_shared( 42 );
      auto v = load_shapes();
      for( auto& s : v ) {
              if( s && *s == *p ) { cout << *s << “ is a match\n”; }
      }

      (actually that's a bit too terse in both examples, but this code is taken from Herbert Sutter's talk about Modern C++).

    22. Re: I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      I think you completely missed the point.
      Expending effort and adding complexity (not to mention a whole new language) to fix something that is close to a non-issue while doing nothing for the huge every-day issues is horrible cost/benefit for most use-cases.
      Your argument would only work if Rust was a 0-effort drop-in replacement, sure, we'd all take no crashes for free then.

    23. Re:I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      You may be right that "modern" (an empty word) C++ is better in some dimension, but one of the most important reasons for a language standard is regulating the rate of change and providing backwards and forwards compatibility.

      C++ has completely failed in this respect. Are those decades of already written code going to magically "modernize" themselves?

      Standards which change to such a massive degree are either: 1) poorly thought out and misdesigned from the beginning, or 2) not exerting any editorial control at all and permitting everyone to shove their own favorite crap into the standard. In the case of C++ it seems to be both.

    24. Re: I am also terrified... by Rust! by DrXym · · Score: 1
      Close to a non issue? Null pointers have been described as a billion dollar mistake. It is FAR from a non-issue.

      And anybody who has programmed C++ can explain to you the amount of crashes they catch during the course of development and by implication how many are likely still there when the code goes into production.

    25. Re:I am also terrified... by Rust! by gbjbaanb · · Score: 1

      In my experience, crashes on customer sites are good...

      let me explain: product crashes on site, customer rings up and complains, we say "oh, there will be a dump file in directory x, can you send it to us please", customer sends it, we look in it, find the error location, then ring the customer and say "we've located the bug with your help, thanks, it'll be in the next update", customer beams happily and thinks we're the shizzle.

      Its amazing, we screw up and they think we're great! Its all about managing that customer and their expectations, and they have been conditioned to love software updates, thanks Microsoft!

    26. Re: I am also terrified... by Rust! by serviscope_minor · · Score: 1

      You know the sort of think you'd have in a web browser A new web-based C++, then?

      I don't follow. Rust is the implementation language of parts of firefox as is C++. There's nothing "web based" about either of them and I don't really see what being web based would even be for the implementation of a web browser.

      OK, that makes kind of sense but, at least IMO, they failed.

      A strong claim, given they're the only people to have achieved parallelism within a web page on the implementation side.

      Go seems to have done a better job

      Not even slightly. Rust is a very similar language to C++ in a number of ways: you don't pay for what you don't use, ownership is explicit and they're both close to the machine. Go being garbage collected (and by all accounts a mediocre GC) is none of those. It also gives you parallelism with no help for preventing race conditions.

      --
      SJW n. One who posts facts.
    27. Re:I am also terrified... by Rust! by Viol8 · · Score: 1

      " And auto is much better than having to remember the exact type of an object. "

      No, it really isn't. Auto is just a nasty hack that allows variable types to be defined on the fly which is fine for a scripting language written by beginners but has no place in a professional system level language. Its for lazy coders who don't really have a full grasp of the codebase they're working on. Any autos I see in code are ripped out and if any of my team use them they get told to sort it out or I get someone else to do it.

    28. Re:I am also terrified... by Rust! by Viol8 · · Score: 1

      If you used auto in any code I was in charge with I'd tell you to rewrite it or find a new job. Automatic type assignment of variables has no place in a systems programming language, it belongs in kiddy scripting languages for 2nd rate coders who have a poor grasp of the codebase they're working on and need the runtime to fix their ignorance for them.

      If you need generics use templates, auto is just an abortion.

    29. Re: I am also terrified... by Rust! by CustomSolvers2 · · Score: 1

      I don't follow. Rust is the implementation language of parts of firefox as is C++. There's nothing "web based" about either of them and I don't really see what being web based would even be for the implementation of a web browser.

      I was merely repeating what you said (= paying more attention at aspects which are mostly relevant on web-based implementations than a language like C++), mostly out of politeness. My bad, sorry. I don't see why I should continue with this conversation and that's why I will stop it here. Bye.

      --
      Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    30. Re: I am also terrified... by Rust! by serviscope_minor · · Score: 1

      I was merely repeating what you said (= paying more attention at aspects which are mostly relevant on web-based implementations than a language like C++)

      What web based implementation?

      I'm talking about a web BROWSER. That's a native program.

      I don't see why I should continue with this conversation

      Well, no. I tried being polite but you seem both unwilling an unable to distinguish between a web page and a web browser. Toodles.

      --
      SJW n. One who posts facts.
    31. Re: I am also terrified... by Rust! by CustomSolvers2 · · Score: 1

      I'm talking about a web BROWSER. That's a native program.

      Seriously?! You have found many people (with virtually any background) not considering such a statement evident!!? LOGICALLY, I was referring to your original statement "sort of think you'd have in a web browser", as assumed to represent a sample application dealing with web-based problems!! As said, it was merely a polite remark without even properly analysing it by, for example, wondering what makes Rust stronger than any other language like C++ on that front?! That you say it so (like the nonsense that Go has to rely on managed memory)?

      both unwilling an unable to distinguish between a web page and a web browser

      What are you talking about?! See (-> I mean any sensible individual reading this, not you) why I didn't want to continue with this conversation?! What in the hell is wrong with (people like) you?! You don't seem to be able to understand even the simplest idea! Pff... Anyway, welcome to my list of people with whom I will not talk by default.

      --
      Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    32. Re:I am also terrified... by Rust! by DrXym · · Score: 1
      There is something profoundly absurd about that sort of argumentation. Firstly it ignores the reality that even the most experienced programmer can be caught out. And that programmers only become experienced by writing a lot of crappy code, much of which ends in production. And that even a brief search reveals a plague of problems that NULL has caused and when even the inventor of NULL calls it a billion dollar mistake.

      The ultimate absurdity is that claiming that just because some but not all NULL pointer issues can be fixed relatively simply, that it somehow it absolves a language which allowed them happen in the first place. It amounts to wasted time, poorer quality code and more bugs. It's just one of many issues that are present in C++ and are blocked by design in Rust.

    33. Re:I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      Viol8,

      If you don't understand the difference between what auto does in C++ and dynamic typing does in scripting languages like Javascript I suggest you fire yourself immediately.

      You obviously cannot tolerate your own ignorance in the workplace.

    34. Re: I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      C++ solved it many years ago by using smart pointers. unique_ptr and shared_ptr solved it completely (if used correctly). Crashes due to invalid pointer are not the biggest problem, they are very easy to find and fix. They find themselves and fixing takes less than a few hours in most cases. Much bigger problem is crappy design and complex logic errors. That you can only fix with experience, after seeing how good design is done.

    35. Re:I am also terrified... by Rust! by iMadeGhostzilla · · Score: 2

      During the summer I wrote a game in C++11, about 70K lines of code, and one thing I noticed was holy cow how many fewer crashes I had than with the usual non-RAII C/C++98 code. It was less maybe a handful surprising access violations. It could be partly to the VS 2017 IDE, but it can't explain it all. Some things were hard to get right, but they were mostly hard to compile right. And once I got there I was floored by the cleanliness and robustness of it all. Empty destructors, no need for matching closing APIs, relative ease to plug in new functionality. There were a few gotchas, like inadvertently saying auto foo = ... instead of const auto& foo = ... -- I wish they had two kinds of auto declarations, when you want a copy and when you want a reference -- but overall, I love it.

      *And* I already feel resistance to trying out C++14 or C++17, just like I did for C++11. I think we C++ programmers need to learn not to trust our sense of resistance as much, just like you can't trust your gut about a performance of the loop or an STL container until you measure it.

    36. Re: I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      Not only are null pointers a non issue, but memory leaks are also a non issue in C++. Despite the halting problem being unsolvable and no static analysis tool or language design can prevent writing code that hangs it turns out than infinite loops and infinite recursion are also non-issues. These are all examples of the very easiest bugs to diagnose and fix and also things that are extremely unlikely to happen when competent programmers are using the language.

    37. Re:I am also terrified... by Rust! by 110010001000 · · Score: 1

      The programmer let it happen, not the language. The point is that NULL pointer problems are not significant issues. The difficulty with programming is logic errors. The fact that you think that things like NULL pointers are significant makes you a bad programmer.

    38. Re: I am also terrified... by Rust! by 110010001000 · · Score: 1

      If you are derefencing a null pointer there is an error in your program. It is a symptom, not the cause the problem. You are a poor programmer.

    39. Re: I am also terrified... by Rust! by 110010001000 · · Score: 1

      Don't even bother. Rust zealots can't be reasoned with. Let them have their corporate controlled languages.

    40. Re:I am also terrified... by Rust! by DrXym · · Score: 1

      "The programmer let it happen" is a cop out and it doesn't even make sense. NULL pointer issues happen frequently enough to recognize them as an endemic problem. Regardless of how amazing you might personally consider your programming to be, or your low opinion of people who dare make errors. And if you're claiming you've never been responsible for a crash in production code then either you're a liar or you don't write production code.

    41. Re: I am also terrified... by Rust! by DrXym · · Score: 1

      Memory leaks are a non issue? Easy bugs to find? You have an interestingly naive grasp of how complex programming can be in the real world and the memory constraints some software must operate within.

    42. Re: I am also terrified... by Rust! by K.+S.+Kyosuke · · Score: 1

      Rust uses refcounting, which enables the software engineer to control memory management and achieve soft realtime capability.

      That makes no sense whatsoever. How does refcounting with possibly unbounded time achieve better soft real-time capability than realtime GC with bounded time? Well of course - it doesn't!

      --
      Ezekiel 23:20
    43. Re:I am also terrified... by Rust! by dunkelfalke · · Score: 1

      I reckon you don't use sizeof either.

      --
      "It's such a fine line between stupid and clever" -- David St. Hubbins, Spinal Tap
    44. Re:I am also terrified... by Rust! by brantondaveperson · · Score: 1

      And I understand the usability and draw of scope enclosing lambdas, but before we had that it was no big matter to use a simple function pointer with a data structure or define an interface and implement a class that would contain the enclosed data variables then use an instance of that class for the function. To me the lambda capability was never missed. I 'm happy to use it but I find the syntax a bit awkward.

      I know it seems picky and silly to disagree with what's obviously a personal preference, but surely the new lambda syntax is less awkward that the alternatives you were forced in the past to use? You had to create (named) classes and interfaces for specific cases, or you had to derive (named) classes from existing interfaces, or you had to create a (again, named) class with a specifically named function in it.

      And now, we have a language for which the code

      [](){}();

      Cleanly compiles, and helpfully does nothing at all. What's not to like?

    45. Re:I am also terrified... by Rust! by brantondaveperson · · Score: 1

      Another young fool who believes that the C++11 features are implemented at runtime. Yet further down into ignorance we slide.

    46. Re:I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      Yes it is. Especially if you have generic code when you have no way of knowing the type until it gets instantiated. If you haven't come across a need for auto, you haven't been writing generic code. If you haven't been writing generic code, your code is probably full of repetitive constructs, or you have unwieldy object hierarchies.

    47. Re: I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      Go has a garbage collector but is not memory safe. If you access/modify the same memory from multiple goroutines without proper locks/queues/etc you can end up with memory corruption, compared to "safe" languages like Java where doing that would result in exceptions or incorrect behavior but wouldn't allow overwriting unrelated memory.

    48. Re:I am also terrified... by Rust! by swillden · · Score: 1

      And now, we have a language for which the code

      [](){}();

      Cleanly compiles, and helpfully does nothing at all. What's not to like?

      Nice :-)

      Though I have to admit I quite like modern C++, and lambdas, and even the lambda syntax. And I find [](){}(); instantly understandable. But it's still quite funny.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    49. Re:I am also terrified... by Rust! by swillden · · Score: 1

      " And auto is much better than having to remember the exact type of an object. "

      No, it really isn't. Auto is just a nasty hack that allows variable types to be defined on the fly which is fine for a scripting language written by beginners but has no place in a professional system level language. Its for lazy coders who don't really have a full grasp of the codebase they're working on. Any autos I see in code are ripped out and if any of my team use them they get told to sort it out or I get someone else to do it.

      Right, because:

      std::vector<int>::const_iterator citer = v.cbegin();

      is better than:

      auto citer = v.cbegin();

      Especially when you later decide to change the type of v because a different container class is more efficient in some relevant way in this case. Yeah, you can paper over this with typedefs (or type aliases), but no type specification for citer is actually going to be clearer, because everyone knows that citer has to be a const iterator over v.

      There are situations in which explicitly specifying the type enhances clarity, situations in which it's neutral, and situations in which it makes the code less readable, due to lots of unnecessary syntactic complexity to mentally parse. When to use or not use "auto" is a decision that should be made with the reader in mind. Any rule specifying that it must always or never be used is foolish and counterproductive.

      Like many features in every language -- and especially in C++, which is chock full of them -- "auto" can easily be overused. I've read code that made me go look up function prototypes to figure out what types variables were, because every return value was assigned to an "auto" variable. That's bad code. Even worse is non-trivial functions that return auto (C++14's return type deduction) and force me to find return statements and trace back the type of the variable returned, which itself may have been declared as "auto"!

      But the fact that a feature can be abused doesn't make it bad or useless. It just means that it should be used thoughtfully and appropriately, when it helps clarity.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    50. Re:I am also terrified... by Rust! by TranquilVoid · · Score: 1

      It's type inference, not assignment. While I agree overuse of auto leads to decreased readability (and I come across plenty of its overuse), it greatly enhances it for a lot of STL work, namely containers of containers of pairs and iterators thereof.

    51. Re: I am also terrified... by Rust! by serviscope_minor · · Score: 1

      Seriously?! You have found many people (with virtually any background) not considering such a statement evident!!?

      I thought it was self evident. Your reply was so poorly written that you managed to convince me it wasn't evident to you. Not only that but your reply was angry indicatig you weren't actually interested in a discussion, simply interested in berating me.

      t even properly analysing it by, for example, wondering what makes Rust stronger than any other language like C++ on that front?!

      The borrow checker basically eliminates data races. Writing a multithreaded browser engine is literally the entire purpose of Rust.

      And that's why Mozilla have successfully created a multithreaded browser engine and neither Microsoft nor Google with about 2x the programmers each have succeeded.

      What in the hell is wrong with (people like) you?!

      Ha! That's ironic. You seem to know nothing about the technical nature of Rust, nor its use in practice and yet you're arguing vociferously about it.

      --
      SJW n. One who posts facts.
    52. Re:I am also terrified... by Rust! by Viol8 · · Score: 1

      Young? Thanks for the complement! However I was probably coding while you were still sucking from your mothers tit.

      Sure, the type is actually decided at compile time, but the effect is to all intents and purposes the same as far as reading the code goes.

    53. Re: I am also terrified... by Rust! by CustomSolvers2 · · Score: 1

      Don't even bother. Rust zealots can't be reasoned with.

      A true pity that these ideas can be (rightfully) applied to programming-/engineering-/scientific-related whatever.

      --
      Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    54. Re:I am also terrified... by Rust! by Viol8 · · Score: 1

      "std::vector::const_iterator citer = v.cbegin();

      is better than:

      auto citer = v.cbegin(); "

      Got it in one, well done. The first is clear and you know exactly what is going on, the 2nd could be using any type. Code brevity is not an end in itself, code is a description of the logic and the clearer it is the better.

      IMO of course. YMMV.

    55. Re: I am also terrified... by Rust! by CustomSolvers2 · · Score: 1

      Well... your attitude in this post seems notably different. Sorry if I misinterpreted you or expressed myself poorly.

      Regarding your "You seem to know nothing about the technical nature of Rust, nor its use in practice and yet you're arguing vociferously about it.", just want to clarify that I haven't ever hidden my limited knowledge about Rust. In fact, the whole point of my comment since the start was describing how unfriendly I found it as a newcomer (despite my relevant expertise and adaptability on the programming-language front). Also as highlighted in other comments (+ at least IMO, the most logical interpretation of my behaviour), I think that critics should be welcome or ignored; getting offended or not wanting to properly understand them doesn't seem to make too much sense. I have merely shared my honest and objective opinion which, ideally, might be useful to further improve on certain fronts. Even though I currently don't like Rust at all, I might change my opinion in the future; many other programming languages have gone through a relevant evolution.

      --
      Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    56. Re:I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      unique_ptr, make_unique with perfect forwarding etc. etc. are basically trying to "fix" the language from the standard library. Ever since C++11 this trend is getting stronger and stronger. Instead of getting new syntax to do things we're getting new standard templates. Lambdas are one of the few EXCEPTIONS to this.

      C++/CLI has many problems and flaws, but at least they added the new stuff to the language instead of making it library based. It looks coherent, and is a lot simpler to read.

    57. Re:I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      The use of a named class versus a compiler generated one to me makes code a bit more readable. This isn't a C++ issue, but I was recently working with a developer on my team who was using the Java lambda `functionality. A framework component in our code base expects to get a function to process some data with and the architect's examples used the lambda. This developer followed the example but because of the requirement for "virtually final" data inside the scope block, he could not get his code to work or compile. He was heading down the path of a complete rewrite and SQL stored procedure changes to get it fixed.

      I sat with him for about 20 minutes told him to just create a private inner class that implemented his function interface, where the constructor passed in the external data it needed and had a method to return the response. Then he moved all of the lambda code into this class, created a single instance, passed it to the call back and pulled off the response. Everything worked.

      C++ obviously isn't saddled with the baggage Java has where new constructs like this require the captures to be "virtually final" but the details about the captures in C++ can be every bit as confusing.

      So a simple class that implements an interface, accepts the "captures" as input arguments which can be passed by reference or pointer, does the same thing as the lambda but just feels cleaner. Lisp lambda's feel right, C++ and Java are not Lisp but Phil Greenspun's 10th rule is really starting to show:

      "Greenspun's Tenth Rule of Programming: any sufficiently complicated C or Fortran program contains an ad hoc informally-specified bug-ridden slow implementation of half of Common Lisp

      But for those who fully grasp the syntax and rules around the captures and the like, and prefer to use the lambda's they should. I do use them in some basic instances, much like I use basic container classes, so for things like providing functions to a looping iterator. But anything more complex I prefer simply creating a new class that will implement the required interface and working from that.

    58. Re:I am also terrified... by Rust! by Joey+Vegetables · · Score: 1

      You can learn and use C++ as a fairly understandable, high-ish level language IF you are the only one to work on that code. You just use the subset of relatively modern features you need.

      But if you want to understand and interoperate with other people's code, or to be one of multiple developers on a C++ project, then you end up having to learn painfully large subsets not only of the language itself, but all of the weird and bizarre quirks, edge and corner cases, syntactical weirdnesses (e.g., the "vexing parse"), and whatnot.

      Let me be blunt. I am not smart enough to use C++ usefully, even though I can more than handily use just about every other tool I've ever been asked. It is just too big. I can be far more effective using higher-level languages where possible, and C only when necessary.

    59. Re: I am also terrified... by Rust! by serviscope_minor · · Score: 1

      OK, look let's rewind.

      I think we were talking at crossed purposes and got pissed off at each other.

      I agree Rust is not the most friendly language in very many ways. Part of that is an inherent feature of the language: it puts ownership front and centre, even more so than C++, and that can't change, because without it you may as well use C++. Part of that is hard simply because it's a very unusual way of programming and few people are used to it as it's the only even vaguely mainstream language with that model.

      Some of it is because it's kind of young and skipped leg day. https://www.quora.com/Which-la...

      However.

      The thing that Rust does well, better I think than any other language is fine-grained multithreading on irregular problems. In that domain, it's the friendliest language there is because I've not seen any language which lets people write that code easily enough that it's tractable.

      The main competitor is C++: if you go much higher level, you lose all the performance benefits of the multithreading and there wasn't any point in doing it. C++ itself doesn't provide any assistane in preventing data races and in practice, no C++ teams (despite there being 3 much larger ones) have managed to tackle the same problem successfully that's been tackled in Rust: that is multithreading a broser engine.

      So is it relative more friendly than anything else in a domain if it's apparently the only practical choice for an important problem domain?

      As an aside, one of the things that looks interesting to me in Rust is the error model.Checked exceptions in Java are a pain in the arse. Exceptions in C++ are dynamicly typed and somehow don't feel quite right in some ways (though they're often very easy to use). Error handling in Go is C like with lots of tedious return code checking. Rust essentially provides return codes with fully automatic checking of the codes. Is that the best? Don't know, time will tell. I vascilate on C++ exceptions weekly.

      --
      SJW n. One who posts facts.
    60. Re:I am also terrified... by Rust! by sydbarrett74 · · Score: 1

      Stroustrup has a book on learning modern C++, and it's very well written and makes the curve much gentler.

      Would this be A Tour of C++, 1ed? I want to add whatever book you're referencing to my Amazon wish-list.

      --
      'He who has to break a thing to find out what it is, has left the path of wisdom.' -- Gandalf to Saruman
    61. Re:I am also terrified... by Rust! by david_thornley · · Score: 1

      I would hope you're using the C++ standard containers and strings and smart pointers, which are templates. Of course, it's much easier to use somebody else's well-designed templates than to write good ones of your own.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    62. Re:I am also terrified... by Rust! by david_thornley · · Score: 1

      That's what coding standards are for. They're arguably more necessary in C++ than in most languages. Coding standards that can be automatically enforced are best; next best are coding standards that can be enforced by peer review; the remainder aren't all that useful because somebody's likely to violate them.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    63. Re:I am also terrified... by Rust! by david_thornley · · Score: 1

      How can you use iterators and not know what .cbegin() is? It returns a const_iterator for whatever v is.

      And, yes, citer could be of assorted different types. Who cares? You want a const_iterator for v, you get a const_iterator for v. If you change the type of v later on, the statement with auto remains valid and says exactly what you want it to say. If you gave a type, then if you changed the type of v you'd have all sorts of lines to change, and if you're lucky they'll all be compile errors.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    64. Re:I am also terrified... by Rust! by david_thornley · · Score: 1

      My take on it: you really don't need to know the exact type. You've got a const_iterator. You can use it as an iterator, and dereference it to get a const value. What more do you need from the code?

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    65. Re: I am also terrified... by Rust! by david_thornley · · Score: 1

      I'm curious as to how you'd get around them. If, for some reason, a function is supposed to return a pointer value, and there's no valid value, do you throw an exception? How about coming to the end of a linked list? nullptr (as C++ calls it) is no more and no less than a guaranteed invalid pointer value that's very easy to test for.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    66. Re: I am also terrified... by Rust! by CustomSolvers2 · · Score: 1

      OK, look let's rewind. I think we were talking at crossed purposes and got pissed off at each other.

      I didn't get pissed off by anything you said, I simply accepted that no worthy discussion was possible. I openly said that to you and you were the one getting pissed. This last post of yours reconfirms my original assumption: you are back to your let's-convince-everyone-that-they-have-to-like-what-i-do loop. Please, don't get offended and try to understand the ideas which I am explaining below these lines which aren't too difficult.

      I shared here my opinion about Rust by clearly explaining the context (= new to the language, quick test with a small development together with other languages on which I had no experience either, quite experienced in different programming languages and used to move from one to the other, etc. BTW, nobody has asked me about that code which is written in quite a few different languages other than these 4 ones; if I was you, the first thing I would like to see is the code, isn't that all what should matter here?). You and most of other Rust-defenders (Rustaceans, I think that you call yourselves) didn't understand my intention and words within the right context and simply started to blindly defend the benefits of it, something which I wasn't asking and that doesn't even seem a sensible reaction to my original post. None of your arguments have even tried to address the main issues which I was criticising (= unfriendliness, rigidity, lack of adaptability, etc. in general making the programming experience unnecessarily difficult unlikely many other languages), just coming up excuses for it. You have simply tried to prove what is evidently impossible to be problem: that there is no better way to do things! There are tons of better ways! Just the other 3 languages I tried in this small experiment do things notable better on this front!

      In my previous message, I saw a glimpse of sensitivity and tried to help you understand one last time. Your answer? Coming back to do exactly the same than you have been doing since the start: blindly defending something which I am not attacking and/or trying to convince me about what I don't care! The only sensible reply to someone saying that found whatever programming language (BTW, I cannot understand this intense feelings for a so abstract and saying-nothing reality like a programming language!! They are mere tools! If they don't behave as they should, just use a different one!! There are tons of them!!) unappealing for whatever reason is accepting that or, in case that you care about the opinion of that person, perform the corresponding changes. But why trying to convince me (well... this would have required sensible arguments; it has been mostly some kind of pushing, pressuring, bullying, attacking, trying to force, etc.) to like the language which you do?! How can you think that the normal reaction to someone saying "I don't like that" is "you have to like it"!! Why? Can you see in any of my comments to you or to anyone else even the slightest attempt to push anyone to like whatever or to stop liking what they do? You can only see things on the lines of "I like X", "I dislike Y" + some context references ("note that my background is Z").

      Can you finally understand why I didn't want to continue this "conversation", why I temporarily thought that I could get through to you and why that last comment has confirmed my preliminary assumptions and that I will better not be talking to you (certainly not about your sacred bits like Rust)? I am not trying to criticise you, define your personality or even say that your behaviour is wrong (if you are happy and not hurting anyone, everything is fine with me), I am trying to help you understand what you don't seem to be able to see here: there is nothing for us to discuss. No hard feelings. I am simply not willing to be patient with certain attitudes. If you want to have any discussion about whatever issue by relying on what I consider basic requirements (properly

      --
      Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
    67. Re:I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      That is exactly what I meant by the "basic container classes", I absolutely use those. It is template programming in my code that I avoid.

    68. Re: I am also terrified... by Rust! by serviscope_minor · · Score: 1

      I didn't get pissed off by anything you said, I simply accepted that no worthy discussion was possible.

      Sounds like you're contradicitng yourself.

      In my previous message, I saw a glimpse of sensitivity and tried to help you understand one last time.

      No you're not trying to help and no you're not detecting sensitivity. You basically ignored literally everything I said including my own criticisms of the language.

      What you seem utterly unable to do is either discuss or consider another opinion, while I don't even think Rust is the right tool for many tasks.

      Basically you just want to state your opinion and respond with irritable verbosity if someone doesn't just knuckle under and agree.

      I'm done.

      --
      SJW n. One who posts facts.
    69. Re:I am also terrified... by Rust! by Anonymous Coward · · Score: 0

      I'm full of complements, if you need another, feel free to make some more relatively ignorant statements, and I'll wheel them out.

      Your argument was that the runtime was fixing people's ignorance, which is incorrect. C++ is a great systems programming language, and when you take a look at C code that's being used in a large and complex application, you generally find extensive use of macros, and boilerplate, to emulate features that C++ gives you for free. I don't necessarily disagree that auto might not have a place in certain contexts, but given the choice between explicitly writing out the iterator type, using a typedef, or using auto, I will always choose the latter. And so will my teams, if they want to pass my code reviews.

  14. Re: what a bunch of ignorant bullshit by Anonymous Coward · · Score: 2, Funny

    That would be the *other* BBC :)

  15. Re:what a bunch of ignorant bullshit by serviscope_minor · · Score: 1

    I'd say your a quant with a BBC fetish

    So he watches a lot of TV or are you saying he has a big stack of 8 bitters running Teletext?

    --
    SJW n. One who posts facts.
  16. I don't trust Graydon Hoare by lucasnate1 · · Score: 3, Insightful

    It's a bit hard for me to trust someone whose webpage had a banner proudly suggesting voluntary human extinction to make a programming language that is more secure.

    1. Re: I don't trust Graydon Hoare by Anonymous Coward · · Score: 0

      Why?

    2. Re: I don't trust Graydon Hoare by basic.gongfu · · Score: 1

      Because his brain obviously isn't working as intended.

    3. Re:I don't trust Graydon Hoare by david_thornley · · Score: 1

      If you exterminate all humans, you won't have any security issues in your code. Seems simple enough to me.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  17. Re:too many languages by Hognoxious · · Score: 1
    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  18. Sure by Anonymous Coward · · Score: 0

    Because we need an even bigger Cyber War Domain, courtesy of C and C++.

  19. Re: too many languages by Anonymous Coward · · Score: 0

    You forgot the Algol tradition, which is also the root of Rust. Strong typing, memory safety. They built entire mainframes using Algol.

    Then came the cheapness of Unix and C. Like Burgers and sugar water it spread worldwide. Who needs good food if you can have cheap shit?

  20. Re:too many languages by Hognoxious · · Score: 1

    Actually we need more 'coding' languages.

    That must be why the jobsearch websites are full of positions where the main requirement is yacc.

    I'd love to work on a 100 person project with 101 different languages. I mean, who wouldn't?

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  21. Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 3, Interesting

    What the fuck is Rust? Never heard.

    Rust is a relatively new programming language.

    I looked into using it a little while ago. On the surface it sounded appealing. It sounded like it would give me a lot of what C++ offers, but without some of the headaches that C++ suffers from.

    To keep a long story short, Rust, as a language, did not meet my expectations. The syntax is C-like, but it's also quirky in some ways. The performance was mediocre. The borrow-checking approach to memory management is a pain in the bottom in practice, even after you understand it and have worked with it. There was only one compiler implementation, and I found it to be buggy and slow, even compared to a slow C++ compiler like GCC. The standard library was pretty bad, and the string handling was atrocious. Third-party libraries often didn't compile, and many were woefully incomplete. It was a really bad experience.

    But the worst part, in my opinion, was the Rust community. I've dealt with a lot of programming language communities over the decades, but Rust's was by far the worst I've ever experienced.

    The whole Rust Code of Conduct thing is kind of weird. I mean, programming language communities got along just fine without codes of conduct for ages. At first I though it was just a symbolic thing, but I soon realized that the Rust Code of Conduct was much more than that. I'd classify it more as a religious text, or even a behavioral script. It was like the Rust community worshiped it. In my experience it turned what should have been friendly discussion among collaborating colleagues into a highly controlled, flow-chart-like, courtroom-like, overly-formal, totally-artificial, robotic-like ritual. You literally had to walk on eggshells the whole time, out of fear of accidentally violating the Rust Code of Conduct in some obscure and non-obvious way.

    The Rust Code of Conduct itself is contradictory. For example, there's a paragraph that says, "we don’t tolerate behavior that excludes people", yet that same paragraph starts with, "We will exclude you from interaction if ...". They basically would be violating their own Rust Code of Conduct when they try to uphold it!

    I later found out that they even have a Rust Moderation Team that goes around and enforces the Rust Code of Conduct! I can't think of any other programming language community that I've dealt with that has a formally organized hit squad whose sole purpose is to take out community members who are deemed to be "undesirable". It's absurd. It's really, really absurd.

    Something else I found disturbing was the extreme leftism that permeated the community. Now I don't think that programming and politics really need to mix much. They're pretty separate, for the most part. But in my experience the Rust community was very heavily into promoting "diversity" and "tolerance" and all of those other left-wing buzzwords, even when they really had nothing to do with programming. It's like they're more focused on "social justice" than they are on creating a usable programming language.

    Another thing that bothered me was the smugness I kept encountering from Rust's contributors and supporters. They kept portraying Rust as being this great savior, when in my opinion it's rather mediocre, and actually has some pretty serious flaws and problems. If you questioned these Rust supporters, they would basically belittle and insult you, assuming they didn't try to censor you through down-modding or banning, if the discussion venue supported such things. I found it strange how they often ridiculed C++, yet when it came to the same functionality or features Rust was often much worse than C++.

    I've been programming for a long time, and I've used a lot of different programming languages, but my experience with Rust was perhaps the worst I've ever experienced. No programming languag

    1. Re:Rust: a programming lang with a toxic community by lucasnate1 · · Score: 4, Informative

      Something that I find disturbing is that I actually saw this exact comment before. Why are you copy-pasting this over and over again?

    2. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 1

      Please do not conflate identity politics with "extreme leftism". It may be extreme but certainly not towards anything Socialist.

      I'm what you might call an "extreme leftist", and from what you describe I would be rather put off by the Rust community.

    3. Re:Rust: a programming lang with a toxic community by MangoCats · · Score: 2

      I know, comparing languages to libraries, but have you ever interacted with the ffmpeg/libav developers? I did a little in the 2010-2013 timeframe, they were a challenging lot to deal with.

      A lot of the technical shortcomings of Rust might be overlooked based on your opening statement: "Rust is a relatively new programming language." - but, with an exclusive (in a bad way) community behind it, I don't think it will be going far - languages are not like comprehensive video conversion libraries, there are too many to choose from to bother with joining an exclusive club.

    4. Re:Rust: a programming lang with a toxic community by DNS-and-BIND · · Score: 2, Interesting

      I didn't see it before. If it's relevant, then it needs to be part of the lore of the community. Rust going around policing its users with an SJW code of conduct is pretty exceptional for a programming language.

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    5. Re:Rust: a programming lang with a toxic community by Ol+Olsoc · · Score: 5, Funny

      To keep a long story short

      Wow - I'd hate to see your long ones!.

      --
      The shepherds did so well protecting the flock that the sheep no longer believed that wolves existed.
    6. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 1

      No true socialist fallacy. This sort of 'identity politic' has been part of the left wing shtick since the time of Marx and Engels.

    7. Re:Rust: a programming lang with a toxic community by lucasnate1 · · Score: 1

      Too bad it is impossible to actually do this kind of policing, just like how Iran can't prevent you from writing an anti-islam text in Farsi. The whole "policing users" accusation doesn't make any sense. At most, Rust could be policing the developers of the compiler, which is stupid but commonly practiced.

    8. Re:Rust: a programming lang with a toxic community by mrsam · · Score: 4, Informative

      I went back to C++, because even if it isn't a perfect language, at least it's a decent language with a honest, open, friendly community.

      C++ is arguably the most complicated, the hardest to learn, general purpose programming language in use today. And, in the last seven years, with the last three major revisions, C++ has become, I would estimate, three or four times harder than it was before. If you were to start from ground zero, it would take you much longer than 2-3 years in order to be fully versed in all the arkane features of it. I would say that to become fully proficient in C++, when starting from absolutely nothing more than general knowledge of computer programming, will take at least 5-7 years, maybe even ten.

      Because of that, experienced C++ developers tend to be older, and with many many years of experience under their belt. They've outgrown the phase of their lives where they think themselves to be #1 hot-shit masters of the universe. We're older now. We know better.

    9. Re:Rust: a programming lang with a toxic community by mangastudent · · Score: 0

      Any insight into how they've avoided Donglegating a programmer trying to use Rust? I figure that's the next major step that will increase their toxicity, making it clear that being a Rust programmer is also a clear and present danger to your job and career.

    10. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      About the only thing I agree with is the compilation speed. It's a well-known issue, though, and the rust team is working on improving things in that area. Everything else is more like personal bias than fact. I've seen a lot of comments where people say that they like how helpful and nice the rust community is towards newbies. So when someone says that rust has a toxic community it feels to me like the person is talking about some other thing called 'Rust'.

    11. Re:Rust: a programming lang with a toxic community by mangastudent · · Score: 1

      Too bad it is impossible to actually do this kind of policing, just like how Iran can't prevent you from writing an anti-islam text in Farsi.

      But they can deny you help in learning and using the language, and like Iran, they can issue their version of a fatwa, albeit only aimed at your job and career. So far.

    12. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 2

      I know there is at least one AC post on every Rust article decrying its code of conduct / community, and while it is your right to post it (copypasta or not), it would lend some credence to your comment if you bothered to register an account. Currently what you're doing seems more like a persistent trolling effort.

    13. Re:Rust: a programming lang with a toxic community by lucasnate1 · · Score: 2

      If the only way to learn a language is by depending on a small group, then that language is either way too complicated or not enough common. You don't depend on ISO to learn C++, you don't depend on Guido to learn Python.

    14. Re:Rust: a programming lang with a toxic community by Hal_Porter · · Score: 2

      That's actually kind of arguable. OG Marxism said that people's primary identity was from class rather than race or gender.

      Modern Identity politics says the opposite. So it doesn't matter if Mummy and Daddy paid for you to get a useless Ivy League degree after a well funded gap year, so long as you are part of, or at least claim to be part, of an oppressed group - non white, non male or non straight - you're part of the new proletariat. Conversely a working class straight white man is a part of the evil oppressor class because of his gender, sexuality and race.

      I.e. modern identity politics is almost the inverse of OG Marxism. Long may it continue...

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    15. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      This is a copy paste that shows up in every Rust story. I know little of Rust implementation details or codes of conduct in little Internet fandoms, but this is not how we evaluate programming languages. Mods, please stop amplifying this message.

    16. Re:Rust: a programming lang with a toxic community by mangastudent · · Score: 1

      If the only way to learn a language is by depending on a small group, then that language is either way too complicated or not enough common.

      Rust and its ecosystem are young, that goes hand in hand with it being a new language without a huge sponsor like Apple for Swift, so that "not enough common" is both accurate and not a big disqualifier if you want to get in on it at an early stage.

    17. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      I didn't see it before. If it's relevant, then it needs to be part of the lore of the community. Rust going around policing its users with an SJW code of conduct is pretty exceptional for a programming language.

      First, ARE they even policing their users with some undesirable policy? Why should I care? All I know is I see an obvious copy paste that’s meant to stir people up, is a troll, and you think some high school grade drama is relevant and needs to be “lore of the community” because reasons and we should accept copy paste trolls because.

      I don’t know where the derogatory “SJW” label came from exactly, or what it’s meant to achieve, but I do recognize high school grade drama when I see it. From behaviors I’ve observed, people throwing that label around very much deserve it themselves.

    18. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      If what you say is true (I have no experience with either Rust or C++ "communities" whatever they are, despite having been a C++ developer for more than 20 years), then More power to you.

      But, your last line let me wondering...

      I went back to C++, because even if it isn't a perfect language, at least it's a decent language with a honest, open, friendly community.

      Sure, the C++ community has to be rather HUGE. How can you tell they all are friendly and honest? You cannot.

    19. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      When I'm rough-around-the-edges and talk/joke around as such, where's the tolerance for ME?

    20. Re:Rust: a programming lang with a toxic community by lucasnate1 · · Score: 2

      There is a freely available rust book, nobody is going to check your politics before you try reading it. I don't understand, that's how many people learned C or other languages, why is Rust different? Are you saying that whenever someone asks about Rust in stackoverflow he must first show confirmation that he is not a republican?

    21. Re:Rust: a programming lang with a toxic community by Curupira · · Score: 2

      Something that I find disturbing is that I actually saw this exact comment before. Why are you copy-pasting this over and over again?

      I also had this felling and, just in case anyone doubts you: here is other instance of that exact comment.

    22. Re:Rust: a programming lang with a toxic community by mangastudent · · Score: 4, Insightful

      To paraphrase Al Capone, "You can get much farther with a book and a community than you can with a book alone." To someone today who's looking to learn a new language, the community matters a great deal. Back the day when I learned C, it was more than the book (which to my memory, in its first edition had a poor introduction to pointers), it was the local community that for example allowed me to procure a copy of the Lions book that helped me learn it. This really makes a difference for the harder languages, compared to e.g. FORTRAN and BASIC which I learned before C.

    23. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      This has been a heavy tactic of the right for quite a few years now. Almost every screed you hear about SJW's or diversity can be traced back to a copypasta.

    24. Re:Rust: a programming lang with a toxic community by iMadeGhostzilla · · Score: 2

      I had no idea. One google search seems to confirm the identity politics approach to defining a language, and I can't think of many more things that would make me distrust a *programming language* more:

      https://internals.rust-lang.or...

      "Reading this team announcement was really disappointing and I can only agree with what @skade already said. This needs no be fixed before everyone just gets used to it being a male-only team."

    25. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      It's not relevant in the slightest, it's bad copypasta at best.

      You can sum up the CoC in "be excellent to each other" and further nobody in the community management is going to go ban happy on someone for esoteric CoC breaches. Most people at worst will get warnings unless they repeatedly prove they're going to be as obstinate as possible. It's not even like you have to be on your best behaviour 24/7, just when you're in the official channels. If someone can't refrain from being an asshole when they're engaging in a discussion If someone can't act like a mature adult long enough to talk in the official channels then I can't imagine they're worth keeping around.

      The whole copypasta is massively exaggerated, which makes it pretty useless for serious discussion.

    26. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      I'm not sure how the community or CoC prevents anybody from participating. It's "don't be a cunt when speaking in official channels". If you have a history of cunty behaviour that's followed you to the official Rust communities then perhaps you should try being less of a cunt in your day to day activites? Generally speaking, nobody is going to stop you from engaging in the community until you're a cunt while participating in the community, and once again if you can't stop from being a cunt even after people have asked you to stop cunty behaviors then the problem probably isn't the CoC. If everywhere you go smells like shit maybe check your shoes.

    27. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 1

      If you have various people asking you what 2+2 equals, why do you always copy-paste "4"?

    28. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      Cus it's hard to be part of the opressed class ehen you're rich.

    29. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 1

      The user that originally posted that rant got called out on HN because he joined the Mozilla Rust IRC channel and called a few people n*ggers. He got warned, didn't listen and then he was banned. Now he's going to post his little screed for the rest of his life and people like you are going to believe his little anonymous rant and make out like having a code of conduct is a massive problem.

    30. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 1

      Toxic free-association ... haha ... Yep I don't permit nibberizing Trotsky-ites in my C-cubicle or Wed-nite code-frolic at THEBITTEREND. Smash-yo-mamaz-face if you show up.

    31. Re:Rust: a programming lang with a toxic community by sysrammer · · Score: 1

      Toxic free-association ... haha ... Yep I don't permit nibberizing Trotsky-ites in my C-cubicle or Wed-nite code-frolic at THEBITTEREND. Smash-yo-mamaz-face if you show up.

      Abort, retry, fail.

      --
      His ignorance covered the whole earth like a blanket, and there was hardly a hole in it anywhere. - Mark Twain
    32. Re:Rust: a programming lang with a toxic community by sysrammer · · Score: 1

      +1 informative. thx

      --
      His ignorance covered the whole earth like a blanket, and there was hardly a hole in it anywhere. - Mark Twain
    33. Re:Rust: a programming lang with a toxic community by sysrammer · · Score: 1

      When I'm rough-around-the-edges and talk/joke around as such, where's the tolerance for ME?

      Yeah, that's where it breaks done, doesn't it.

      --
      His ignorance covered the whole earth like a blanket, and there was hardly a hole in it anywhere. - Mark Twain
    34. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      Get over yourself, snowflake.

      That's a bit rascist.

    35. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 1

      You're probably lying. I see nothing in that comment indicating that it was driven by revenge or racism or whatever other nonsensical allegations you're trying to make.

      If anything, it's the most plausible, complete, objective and honest analysis of Rust that I've ever seen.

      That comment makes a lot of good points about problems with Rust-the-language:

      - The syntax is C-like, but it's also quirky in some ways.
      - The performance was mediocre.
      - The borrow-checking approach to memory management is a pain in the bottom in practice, even after you understand it and have worked with it.
      - There was only one compiler implementation, and I found it to be buggy and slow, even compared to a slow C++ compiler like GCC.
      - The standard library was pretty bad, and the string handling was atrocious.
      - Third-party libraries often didn't compile, and many were woefully incomplete.
      - It was a really bad experience.

      Even if we ignore the observations that comment makes about Rust's community, the Rust language alone is clearly quite troubled and broken.

      Your comment, and almost all of the other comments here from the pro-Rust crowd, features a lot of hostility, if not outright lies.

      I think I'm beginning to see what that comment means when it talks of the Rust community being "toxic".

      I am seeing a lot of what could be considered "toxicity" coming from people like you and the other pro-Rust commenters here.

      Maybe it's good that you Rust folks have a code of conduct. It sure seems to me like you all need it, based on how uncivilized you've acted here.

    36. Re:Rust: a programming lang with a toxic community by Pseudonym · · Score: 1

      But they can deny you help in learning and using the language, and like Iran, they can issue their version of a fatwa, albeit only aimed at your job and career.

      It is impossible for the Rust community to ruin your career unless you did something seriously wrong. Like, criminal kind of wrong.

      The most the Rust community can do is invade Hacker News. But you shouldn't be reading the Hacker News comment threads anyway.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    37. Re:Rust: a programming lang with a toxic community by Pseudonym · · Score: 3, Informative

      If the only way to learn a language is by depending on a small group, then that language is either way too complicated or not enough common.

      Kind of a Catch 22 there. If the language didn't support complex powerful features, it would be too simplistic. If it had too much in common with existing languages, it would be derivative and have no reason to exist.

      New programming language design is hard, it's painful, it's iterative, and it's thankless. Even though I will not be using Rust for any deployed code for at least the next 10 years, I'm glad people are investing time in it.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    38. Re:Rust: a programming lang with a toxic community by mangastudent · · Score: 2

      It is impossible for the Rust community to ruin your career unless you did something seriously wrong. Like, criminal kind of wrong.

      Of course, but with thought crimes ever expanding, and the Party Line changing from day to day, it's very easy to inadvertently commit crimes in the eyes of SJWs.

      As many people can attest, like Pax Dickinson as one of the most extreme examples. And Curtis "Moldbug" Yarvin, one of the prime instigators in deplatforming him from Strange Loop was none other than "I want a (violent in the Twitter stream context) tech anifa" Steve "Rust documentation" Klabnik. Or what about that Drupal guy, they spent years assembling a dossier before purging him from the project, his career will be crimped for some time. And we can of course close with none other than Brendan Eich.

      But thank you for not denying they regularly cost people their jobs. Which should make people think twice and thrice before touching Rust with a 39 and a half foot pole.

      The most the Rust community can do is invade Hacker News. But you shouldn't be reading the Hacker News comment threads anyway.

      Hacker News is quite sufficient to whip up an Internet mob, although I'm not sure how much the moderators try to stop that nowadays. But Twitter and the like, the classic platforms for that?

    39. Re:Rust: a programming lang with a toxic community by lucasnate1 · · Score: 1

      Rust is not trying to invent anything, it just combines features from existing languages. Hell, as a C++ programmer I can tell you that to me, C++ looks like a complicated, buggy, and faster version of rust, and yes, that includes their fancy memory safety and type system. If you want complicated languages that try to invent new ways to make secure code, I recommend taking a look at something like Idris.

    40. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      Hacker News comment threads are far, far better than Slashdot comment threads. This site has been a complete dump for over a decade now.

    41. Re:Rust: a programming lang with a toxic community by mangastudent · · Score: 1

      Rust is not trying to invent anything, it just combines features from existing languages.

      I was under the impression that the borrow checking paradigm, while not entirely a new thing on earth, was something of an "invention" in making it front and center for what it does.

    42. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      Holy fuck. That's eye-opening.

    43. Re:Rust: a programming lang with a toxic community by swillden · · Score: 1

      When I'm rough-around-the-edges and talk/joke around as such, where's the tolerance for ME?

      Yeah, that's where it breaks done, doesn't it.

      Tolerance is a mutual agreement, a contract if you will, not a moral obligation. If you don't want to sign onto the contract, fine, but don't expect those who do to apply its terms to you. In fact, expect them to attack you mercilessly if they can't simply eject you. If you want to be protected by the agreement, you have to abide by it. It's like a peace treaty of sorts.

      I'll certainly grant that the concept of tolerance is sometimes applied to stifle simple disagreement that is not actually intolerance, and that's wrong, and those cases should be called out. But most of the time it's a good idea -- and honestly it's pretty easy to do if you just broaden your horizons a bit.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    44. Re:Rust: a programming lang with a toxic community by Pseudonym · · Score: 2

      Hacker News comment threads are far, far better than Slashdot comment threads. This site has been a complete dump for over a decade now.

      Slashdot comment threads are mostly obvious trolling. HN, on the other hand, is Dunning-Kruger central.

      What constitutes "better" in this case is a matter of taste, and I wouldn't judge anyone who came to a different conclusion than I do on this one. HN is certainly more civil, for example. But I think that there is something far worse than an extremely stupid person, and that's someone who thinks the extremely stupid person is very smart.

      That is why I find the HN comment section worse than the Slashdot comment section. A wilful ignorance echo chamber is worse than a group of honest trolls.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    45. Re:Rust: a programming lang with a toxic community by Pseudonym · · Score: 1

      Of course, but with thought crimes ever expanding, and the Party Line changing from day to day, it's very easy to inadvertently commit crimes in the eyes of SJWs.

      Tell me about it. Just like how I can never tell week-to-week if the alt-right are pro-cop or anti-cop. I'm pretty sure it's anti-cop this week thanks to the Nunes memo.

      I'm not going to go into the historical examples because I don't care, and that all four cases are sufficiently different that no reasonable generalisations can be made. But there is one clear commonality that is worth mentioning: None of the four people you mention are anywhere near starving.

      But Twitter and the like, the classic platforms for that?

      Probably. I never go to Twitter either, so it mostly doesn't concern me.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    46. Re:Rust: a programming lang with a toxic community by Pseudonym · · Score: 1

      Rust is not trying to invent anything, it just combines features from existing languages.

      That's more or less true, but some of those "existing languages" (e.g. Cyclone) are sufficiently obscure that they are unfamiliar. I should have said "commonly-used languages" rather than "existing languages".

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    47. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      It's been posted any number of times, and somehow gets voted up by people with short memories.

    48. Re:Rust: a programming lang with a toxic community by Joey+Vegetables · · Score: 1

      It shares the same fundamental flaw, the idea that some people get to rule over others without the latter's consent, while adding additional flaws of its own. I consider it fully within the spectrum of leftist/socialist/communist behaviors that my oath to defend the Constitution requires me to oppose. Fortunately, a job typically does the trick more effectively than any level of persuasion or even force possibly could. Leftists, usually, grow up. Just not as fast as the rest of us.

    49. Re:Rust: a programming lang with a toxic community by Anonymous Coward · · Score: 0

      and I can't think of many more things that would make me distrust a *programming language* more:

      Doesn't hosting their forums on Discourse count?

    50. Re:Rust: a programming lang with a toxic community by Hal_Porter · · Score: 1

      I think leftist identity politics are a good thing because of the reaction they produce.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    51. Re:Rust: a programming lang with a toxic community by Joey+Vegetables · · Score: 1

      I can understand that point of view, but must respectfully disagree, in that the more extreme forms of leftism, and the more extreme reactions/overreactions thereto, seem to work together to bring out the worst in people, myself included, rather than the best.

    52. Re:Rust: a programming lang with a toxic community by david_thornley · · Score: 1

      Of course, but with thought crimes ever expanding, and the Party Line changing from day to day, it's very easy to inadvertently commit crimes in the eyes of SJWs.

      In other words, you're claiming it's very easy to inadvertently offend some people, if you lack tact or respect for others. Since these SJWs, if they exist in any numbers, do not have legislative or judicial power, you're free to ignore them. Similarly, they're free to ignore you.

      Brendan Eich's political activities (contributing large amounts of money to deny people basic rights) had a direct impact on his ability to be an effective CEO. Most of us aren't in such a public position, and nobody really cares about our politics. People will care if we're a bunch of jerks, and that's about it. Dickinson was also something of a public face of his company. Be a public asshole, and no company's going to want to be associated with you. In neither case were SJWs responding inappropriately, and the decisions were made by the businesses.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    53. Re:Rust: a programming lang with a toxic community by david_thornley · · Score: 1

      I hope you also dislike right-wing identity politics, and are against the Republican's attempt to establish rule through gerrymandering and voter suppression.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    54. Re:Rust: a programming lang with a toxic community by david_thornley · · Score: 1

      And, in the last seven years, with the last three major revisions, C++ has become, I would estimate, three or four times harder than it was before.

      Nope. Pretty much all the new stuff is to make it easier to program. Don't use the outdated stuff, and you can always keep a book handy to remind you of what it does.

      A lot of the complaints about C++ are because it encapsulates some difficult concepts in syntax that's not too horrible (considering it's C++). General code generation (C++ templates or Lisp macros) is hard. It can also pay off big-time.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    55. Re:Rust: a programming lang with a toxic community by david_thornley · · Score: 1

      It's copy-paste, and it has some polished writing in it. It smells like propaganda to me, and that is relevant to considering it.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    56. Re:Rust: a programming lang with a toxic community by DNS-and-BIND · · Score: 1

      Since these SJWs, if they exist in any numbers, do not have legislative or judicial power, you're free to ignore them. Similarly, they're free to ignore you.

      Buh? IF they exist? SJWs are proud of what they are. Social Justice is what they fight for, and you're gonna pretend it doesn't exist? No power? The Democratic Party is basically SJW these days, it's all about identity politics. That's why they lost the election to Trump, they decided to fuck over the white working class who had been their bedrock for decades.

      Why do I get the idea that you're SJW yourself, that you find the SJW label embarrassing, and that censorship of opposing ideas is totally OK with you as long as they are ideas that you don't agree with? Quick question, did James Damore have a point about how men & women are different? (spoiler alert: he did)

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    57. Re:Rust: a programming lang with a toxic community by RickRussellTX · · Score: 1

      Dec 23, 2017

      Sounds like somebody has an axe to grind.

    58. Re:Rust: a programming lang with a toxic community by david_thornley · · Score: 1

      You're talking about legislating politeness here, and I don't know that any significant number of people want to do that. Personally, I'm thick-skinned and perfectly happy to write someone off as a lost cause if they have nothing but insults. BTW, Trump played identity politics very well. The whole opppressed white male Christian thing is identity politics.

      As a long-time D&D player, I'd rather be considered a Social Justice Mage, but you go ahead and categorize me if it's convenient for you. I'm completely against censoring ideas. Of course, I'm perfectly prepared to mock bad ideas. It's freedom of speech, just like not applauding the State of the Union address. I wasn't impressed with Damore's work, although he did have some points. He seemed to me to be trying to contribute, and I am not happy about his firing. I think it reflects badly on Google.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  22. Re:what a bunch of ignorant bullshit by amiga3D · · Score: 3, Funny

    Not that BBC....

  23. Graydon Hoare sounds like he was triggered by Anonymous Coward · · Score: 3, Interesting

    Graydon Hoare sounds like the SIGSEGVs he got from his crappy C++ code triggered him.

    Then, in classic SJW form, he completely overreacted. And keeping with the SJW "thought" process, it wasn't his fault: a bad workman always blames his tools...

    Rust is the intersectional racist victim-mongering language - we are all victims of RAAAACIST C and C++ - languages that allow you to think for yourself - and therefore you are responsible for your code.

    Rust is the perfect SJW language - it tells you how to think and absolves you of any personal responsibility for your code.

    1. Re:Graydon Hoare sounds like he was triggered by basic.gongfu · · Score: 0

      Even creepier to me is how many people seem to have been secretly wishing and waiting for Rust to come and save them from their own responsibility. I guess we've all been carefully primed by being repeatedly beaten over our heads for our imperfection, but it's still creepy to see people stand in line to be abused.

    2. Re:Graydon Hoare sounds like he was triggered by menkhaura · · Score: 1

      For the first time in years I miss a few mod points. Parent should be TOP! I'd just like to add Java and other managed languages to his list of SJW languages. Perfect concept. Thanks!

      --
      Stupidity is an equal opportunity striker.
      Fellow slashdotter Bill Dog
  24. Oh there's innovation by NotSoHeavyD3 · · Score: 1

    Oh wait, they think innovation is following the latest fad that they think is new. (Literally I had someone that thinks he's the shit show me lambda expressions and thought I would be blown away. Yeah, saw that 30 years ago in LISP.)

    --
    Did you know 80 to 90% of the moderators on slashdot wouldn't recognize a troll even if one dragged them under a bridge.
    1. Re:Oh there's innovation by Anonymous Coward · · Score: 0

      "If we have seen farther than others, it is because we stand on the feet of giants" (mis-paraphrasing Isaac Newton, of course).

  25. Rust O'Reilly animal by Anonymous Coward · · Score: 0

    The selection of a crab as the O'Reilly book cover animal was very fitting. Rust advocates are like pubic crabs: irritating, tenacious, and usually located where they are least wanted.

  26. Re:what a bunch of ignorant bullshit by gbjbaanb · · Score: 1

    Not that BBC. I think you need to visit someone for a bit of CBT, might help you calm down.

    Oh.. not that CBT, the other one. :-)

  27. Re:too many languages by angel'o'sphere · · Score: 1

    Well, what your parent probably meant:

    ADA looks like Pascal/Modula 2, which are languages invented in Europe, and is named after Ada Lovelace ...

    Everything very european, and everything non commie ...

    No idea why americans mix european up with commie, must be a universal health care thing ...

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  28. Re: Rust: a programming lang with a toxic communit by RightwingNutjob · · Score: 2

    It takes 5-7 Yeats to learn anything to a more than cursory level. Simple programming languages are included in that statement. It's just that some languages fool you into thinking you know more than you do. It's a function of the size of the ecosystem and the primary area of application.

    C++ is used for more complicated stuff, on average, than Perl or JavaScript, so you end up feeling like you don't know what you're doing when you jump into the deep end on a C++ project. Again, on average.

  29. The Problem isn't C.... it's undisciplined program by Anonymous Coward · · Score: 2, Interesting

    I am a consulting real-time systems engineer.
    I created the paging and hand-off algorithms which made it possible for cell phones to receive phone calls anywhere and to keep them while moving.
    I created the integrated on-line inventory accounting system for McDonalds.
    I created the software used by major refineries to make gasoline and distillate from crude oil.
    I created software that runs steel mills.
    My programs had to work properly, or people died.
    I used ANSI C for my work. I created libaries to handle I/O and Memory Management including Garbage Collection.
    I mostly worked alone, often with a small team of 6 - 12, and toward the end with 97 at McDonalds and 45 at Home Shopping Network.
    By the end of my career, I designed systems using a CASE tool set, then pushed the button and the tool generated the code.
    Rust, like C++ and C#, is an academic's desire to get tenure via publications in journals. It, like the others, is a memory hog, snd over hyped.

    The problem with C is it will let you do anything the machine is capable of. good, bad, or ugly. It is up to the engineer to specify the desired functionality.
    The Functional Specification............
    To specify the program architecture.......... The Architectural Specification....
    To specify test conditions, and success criteria.. The Test Specification
    To specify transformations performed by each and every routine.......... The Detailed Design Specification
    To specify data architecture...... The Database Specification
    To specify data definitions and constants........... The Header Files...............

    Then to write the code in conformance with the above.

    It matters not whether you are using COBOL, PL1, ALGOL, BASIC, FORTRAN, ASM, C, C++, C#, JAVA, or RUST.

    The professional engineer, thinks, specifys, writes, and tests..... in that order.

    INDY

  30. Re:too many languages by Darinbob · · Score: 1

    It was heavily influenced by and related to languages designed by Niklaus Wirth. After all, many Americans also came from a European lineage.

  31. Re:what a bunch of ignorant bullshit by NicknameUnavailable · · Score: 1

    I was referring to the BBC the Brits actually love.

  32. Re:what a bunch of ignorant bullshit by NicknameUnavailable · · Score: 1

    Are you just going through my comments trolling now that you proved yourself incompetent in a debate? Grow up.

  33. Throwing bodies at a problem isn't always the best by geoskd · · Score: 4, Insightful

    PLEASE DESIST IN THINKING THINGS ARE MADE BY SINGLE PEOPLE IT IS A VERY UNHEALTHY MYTH

    It is absolutely true. There is no myth to it. I have been involved in dozens of projects from the tiny, to the absurdly huge. On the small projects I have worked on, they were almost without exception, single developer projects. A single guy building the hardware (for that type of product), and a single software / firmware guy doing the programming. For more medium sized projects, You might break the software into UI and server type setup where each piece is handled by a separate person, but they are essentially separate programs with an API in between. I have also worked on larger projects where I was the sole developer. I had one where I was the sole developer and produced a system that had 50k lines in it. (I was replacing a 250k line product that was written by committee and sucked a fat nut). Took me about a year to reproduce the entire thing complete with learning about the requirements and documenting the new codebase.

    I am currently working on another large product (high performance database implementation). We have 4 developers on the project, plus two people who perform code reviews only. Of those 4, only two of us actually produce code in any significant quantity, 1 is an entry level guy that produces what you would expect form an entry level guy, and the other produces not much. The biggest stumbling block is the reviews and documentation process. We do peer reviewed designs and peer reviewed code. The problem is that one of the two review only team members is hopelessly out of his league, and we spend huge amounts of time and effort arguing with him about the designs and review because he simply doesn't get it. He used to be a code contributor to the project, but most of the code he produced has had to be replaced (It was accepted before there was a review process).

    The original team for this project consisted of two people, the reviewer mentioned above, and one other person that is no longer with the company. They hired more developers to increase the performance of the "team", when all they needed to do was get rid of the problem and replace him with a competent person, and the project would have moved along just fine. By keeping him on, they are simply slowing down the entire team. I would estimate that he is contributing about -70% of a developer worth of work because he creates so much more work for others than he actually contributes to the project.

    TLDR: more developers rarely gets the project done faster or better. You need high quality devs and you need to get out of their way. The biggest challenge is that there are many times as many mediocre or bad devs as there are good devs, and it can be very difficult to tell the difference in an interview. Experience doesn't always mean better either. The problem guy above has been programming for at least 15 years that I know of, and if you give him a hundred more, he still won't be any good.

    --
    I wish I had a good sig, but all the good ones are copyrighted
  34. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 0

    I like Rust, and I use it daily, but I also think that you're full of shit for attacking the AC that posted that comment. It's the message that matters, not the messenger. In this case a lot of that message is spot on correct. It doesn't matter if an AC or a registered user posted that comment about Rust. It's an equally valid set of concerns either way. As a Rust user it bothers me to see the Rust community have such thin skin so often. Instead of trying to improve Rust and its reputation, we see Rust supporters like you disgrace the Rust community with your false accusations of 'trolling'. Grow a pair of balls, and please stop making the Rust community look worse than it already does.

  35. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 0

    Please stop. You're just making the Rust community as a whole look worse than it already looks. There are a lot of us who are trying to repair Rust's reputation, but our efforts are negated by the rudeness that you have been displaying.

  36. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 0

    Bingo!

    People ask me about which language is preferred or better. I say look at what your organization uses, the tools available and the support.

    Now I can avoid this debacle!

  37. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 0

    I like Rust. I use it a lot. But I have to admit, the gp comment is right in a lot of ways. It doesn't matter if that comment was posted before. What matters is that it's still very relevant, which means that we, the Rust community, have not done enough to address those concerns. Instead of attacking people who are pointing out problems with Rust and its community, we should listen to what they're saying and try to better ourselves and our language. Your rude and disrespectful comment isn't helping to make Rust better. In fact I think your comment just reinforces the idea that the Rust community is toxic. Here we have somebody pointing out valid concerns about Rust's community, and what have members of Rust's community, like you, done in response? You've attacked with the exact kind of toxic rudeness that the gp comment describes! Please stop, and please try to behave in a way that improves Rust and Rust's reputation instead of acting in the toxic manner you just exhibited.

  38. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 0

    Are you intentionally trying to make the Rust community look toxic? When you start calling people names and acting disrespectfully, like you just did, it only serves to reinforce the widespread idea that Rust's community is in fact 'toxic'.

  39. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 0

    I can see why people think that the Rust community is 'toxic'. Just look at the various comments here in response to that earlier comment that very reasonably pointed out some problems affecting Rust and its community. I'm talking about comments like those from lucasnate1 and serviscope_minor. Instead of acknowledging the concerns and trying to address them to help make Rust and its community better, Rust community members like lucasnate1 and serviscope_minor engaged in rude, disrespectful, and even petty attacks and insults. Their comments are the very definition of toxicity. It's hard to convince people that the Rust community isn't 'toxic' when Rust community members actively engage in behaviors that are best described as being toxic!

  40. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 0

    Can a Rust-ally mod please mod down the parent comment? It doesn't reflect how Rust community members behave. We don't condone toxic attacks like the parent comment. We engage in the opposite behavior - when people have concerns about Rust we show them respect and compassion, and we listen to what they're saying. We don't attack them for voicing concerns about Rust. We listen and we try to improve ourselves and our programming language. Please mod down the parent because it isn't an example of how we in the Rust community conduct ourselves.

  41. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 1
  42. Re:too many languages by Hognoxious · · Score: 1

    Fair point, but I'm pretty sure "Not Invented Here" was invented there.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  43. Re: Rust: a programming lang with a toxic communit by Chemical+Serenity · · Score: 2

    Sadly, his comment is in line with stuff I've seen in the wild. Not *exclusively*, mind. I'm sure there's plenty of normal Rust coders, but it doesn't take a particularly large coterie of insufferable douchenozzles to leave an impression that is really difficult to overcome (in part because, at least for that coterie and those who accommodate them, it's a true impression.)

    --
    "People will pay big bucks for the luxury of ignorance."
  44. Re: Rust: a programming lang with a toxic communit by ArmoredDragon · · Score: 1

    SJW is a term coined by SJWs themselves, and at the time it was meant as a compliment. But at some point, people who aren't activists realized just how smug they are and how entitled they feel, (see the Hugh Mungus lady, and just how bitchy she is when she misconstrues everything as being an affront to women) and just how they're favored topics (identity politics, for example) are really a load of total bullshit.

    A classic SJW in pop culture is PC Principal.

  45. Re:too many languages by K.+S.+Kyosuke · · Score: 1

    Yes, and Ichbiah was a Frenchman working in France. How much commie unarmed foreign godless pinko commie than that can you get? ;)

    --
    Ezekiel 23:20
  46. Re:The Problem isn't C.... it's undisciplined prog by Pinky's+Brain · · Score: 2

    If you test at all you recognize your fallibility. If you are fallible then your tools should make bugs less likely to have severe consequences. The only way your thinking could be consistent is if you removed the testing part. If you are convinced you can do it first time perfect without testing, then better languages to be able to consistently express constraints and guarantee them are not necessary ... you are, so they are.

    Instead you convince yourself that your tests, which we both know will not have had 100% coverage, caught 100% of your bugs. Not even your impressive resume makes that kind of thinking justified.

  47. So I take it everything written there is correct? by Anonymous Coward · · Score: 1

    I see that you haven't made any attempt to refute what that comment says about the Rust programming language and the Rust community.

    So I'm going to have to assume that what that comment is claiming is correct.

    Your response also raises an interesting question: why are you so eager to suppress what that comment is claiming?

    That makes me yet again believe that what the comment is claiming is correct.

    I also see a lot of other Rust fanatics here attacking that comment, but none of them have actually disproved what that comment is claiming.

    Once again, that makes me think that what the comment is claiming is correct.

  48. Re:too many languages by Hognoxious · · Score: 1

    A cheese-eating surrender monkey? It would never happen now.

    Make America Grate Again. Grate ... cheese. Oh, fuck it.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  49. Re: Rust: a programming lang with a toxic communit by Pseudonym · · Score: 2

    SJW is a term coined by SJWs themselves [...]

    Nope, not even close.

    I think you're thinking of the term "PC", which was indeed coined as a joke by the PC crowd.

    "Social Justice Warrior" is a term that arose on Tumblr and Livejournal to describe a certain kind of keyboard warrior (related to what we used to call "flame warrior"). Here's the definition on Urban Dictionary:

    A pejorative term for an individual who repeatedly and vehemently engages in arguments on social justice on the Internet, often in a shallow or not well-thought-out way, for the purpose of raising their own personal reputation. A social justice warrior, or SJW, does not necessarily strongly believe all that they say, or even care about the groups they are fighting on behalf of. They typically repeat points from whoever is the most popular blogger or commenter of the moment, hoping that they will "get SJ points" and become popular in return. They are very sure to adopt stances that are "correct" in their social circle.

    The SJW's favorite activity of all is to dogpile. Their favorite websites to frequent are Livejournal and Tumblr. They do not have relevant favorite real-world places, because SJWs are primarily civil rights activists only online.

    If you see someone in real life engaging in activism to reform the structures of society to be more just (as they see it), that person is not a SJW the way it was originally understood.

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  50. Re: Rust: a programming lang with a toxic communit by Pseudonym · · Score: 1

    It's the message that matters, not the messenger.

    In many cases that's true, but if someone is calling out a code of conduct, it kind of does matter the person calling it out has been personally affected by it.

    The stated purpose of a typical code of conduct is to keep everything civil and professional in official channels. If it's not doing that job (either because things are not civil and professional in official channels, or because it's hurting people in other ways), we need to know, and details matter. Abstract, hypothetical, or context-free arguments are meaningless here.

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  51. Your etymology is completely wrong. by Anonymous Coward · · Score: 0

    "Social Justice Warrior" is a term that arose on Tumblr and Livejournal to describe a certain kind of keyboard warrior (related to what we used to call "flame warrior").

    That's completely wrong. In fact, there's an article from The Washington Post that proves you wrong. The reporter dug into the etymology of the term and found the opposite of what you're incorrectly claiming.

    The article repeatedly contradicts what you're saying (I changed some of the quotation marks and apostrophes since Slashdot still can't handle Unicode characters):

    More than 20 years ago, the term was generally used as a neutral or even complimentary describer.

    "All of the examples I’ve seen until quite recently are lionizing the person," Katherine Martin, the head of U.S. dictionaries at the Oxford University Press, said in an interview last month.

    But a cursory search for the phrase turns up several positive uses, spanning from the early '90s through the early '00s.

    Baptist minister, the Rev. James Obey Sr.'s, 1992 obituary in the Houston Chronicle was titled, "Social justice warrior dies."

    ArmoredDragon is right, and you're wrong. All of the evidence suggests that it's a term that they came up with to describe themselves, and this usage predates the websites you listed.

    1. Re:Your etymology is completely wrong. by Pseudonym · · Score: 1

      That's very interesting. I didn't know the pre-Tumblr history.

      So I am going to reword my claim. The term "social justice warrior" is an old term coined by activists and it had entirely positive. It is the abbreviation "SJW" that arose on Tumblr and Livejournal to refer to a certain kind of insincere keyboard warrior.

      That distinction makes sense to me.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  52. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 0

    ...it would lend some credence to your comment if you bothered to register an account....

    Posted by an AC, no less.

    It would lend some credence to your comment...well you know the rest.

  53. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 0

    Wow, just wow.

  54. Don't count from zero by aberglas · · Score: 1

    Those languages do not count from 0. Nor do they use {}s. So they must be inefficient.

  55. MOD PARENT UP by khchung · · Score: 1, Insightful

    I have never looked at Rust and never participated in Rust's community.

    But when someone posted a clear, well-written comment with some very specific points, and then I see only people either agreeing with or attacking the messenger, but no one refuted the specific points raised... The only reasonable take away is that the points were valid and that got some people pissed.

    It might be a copy/pasted post, so what? One can repeat a lie a hundred times, but one cannot repeat the truth?

    --
    Oliver.
  56. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 0

    I disagree. I've had a really good understanding of C++ after about a year. Yes, I was inexperienced, but even nearly a decade after I still think my knowledge *of the language* is about the same (ignoring for a moment that there's a lot more to know in current C++ than pre-11).

  57. Need I remind you?? by Anonymous Coward · · Score: 0

    I'm seeking peace and security amid a nightmare of chaos.

    Those who sacrifice liberty for a little peace and security deserve neither.

    Wait, I thought this was a /. post on the government encroaching on...oh, never mind.

  58. Re: Rust: a programming lang with a toxic communit by gustygolf · · Score: 2

    Hi. I'm not a Rust supporter, I don't know anything about it except that it came from Mozilla, and I did not attack the person I was replying to.

    It was merely a friendly suggestion, and I see two mods agreed with my message.

    I do have an account, and this time I decided to post under it. I suppose I could have used it for my earlier post too, but I don't always bother to log in.

    (And my skin is fairly thick, but I am not particularly fond of faecal references.)

    --
    "Slow Down Cowboy! It's been 58 minutes since you last successfully posted a comment" -- slashdot, driving users away.
  59. Re:Throwing bodies at a problem isn't always the b by Joey+Vegetables · · Score: 1

    IMO, a top dev empowers other devs by helping them to become more productive; a decent dev adds more value over time than he or she takes away; a crappy dev takes away more value over time than he or she adds. The fact that most code bases rot over time is at least in part due to the fact that crappy devs tend to predominate over top or even decent ones; same bell curve as with most other skills, except that software development is one in which crappy work is significantly worse than no work at all. IMO, crappy devs can learn to add value only by being mentored, and being taught to learn from their mistakes so that over time they become better. Leaving them alone, without motivating them to improve, drags down the entire team.

  60. What is the point of this article? by Anonymous Coward · · Score: 0

    Seriously, I haven't the slightest idea what the author's intent is.

    The title made it sound like there would be some great revelation. That some rockstar, superhero, wunderkind, bar-raiser was going to dazzle us with their superior insight.

    But no. No such insight. Just whiny bitchieness.

    I am so glad to be out of tech. It is all sizzle now, zero steak.

  61. This is white guilt by Anonymous Coward · · Score: 0

    You're normally posting conservative views on here and this post of yours is a great example for others. What you did and what you experienced is "white guilt". Conservatives typically scream about how it doesn't exist, but there it is. It's not necessarily a good thing or a bad thing in my view so I'm not making a judgement on the response you took, just the reason you took it. You recognized your surroundings, the light bulb lit up over your head, and you adjusted practices accordingly. Thumbs up.

  62. Re:Throwing bodies at a problem isn't always the b by Anonymous Coward · · Score: 0

    you sound republican

  63. Re: Rust: a programming lang with a toxic communit by Anonymous Coward · · Score: 0

    I have little love for the GOP either. Being leftist-light (embracing much of the Communist Manifesto, little of the Bill of Rights) is just one of several reasons why. (Posting from phone as AC 'cuz I'm too lazy to log in.)

  64. Re: Rust: a programming lang with a toxic communi by Anonymous Coward · · Score: 0

    The GOP being leftist-light in case that wasn't clear. I am socially conservative but lean strongly libertarian politically.