8 ms·
> TIL: That there's an ORG to effectively harass people like Daniel Stenberg to rewrite popular stuff in Rust. This is both inflammatory and wrong. ISRG isn't
by mwcampbell 5y ago
> TIL: That there's an ORG to effectively harass people like Daniel Stenberg to rewrite popular stuff in Rust.
This is both inflammatory and wrong. ISRG isn't harassing Stenberg; they're paying him to do the work they want done. And he's not rewriting curl or libcurl in Rust; he's adding optional new backends for key pieces like the HTTP and TLS implementations.
https://daniel.haxx.se/blog/2020/10/09/rust-in-curl-with-hyper/ https://daniel.haxx.se/blog/2020/10/09/rust-in-curl-with-hyp...
- oscargrouch 5y agoWhat is inflammatory is the way a part of the Rust community deals with other languages. You are right is not just ISRG, but it is part of this big masonry-like movement forming to replace C++, not by virtue, but by force and politics. Unlike any other language out there that is trying to do it in a clean manner. Android for instance was the last asset with a takeover in this hostile manner, no other language out there ever did before. Despite we have tons of other safe memory languages out there. I cheer for Rust the technology, to grow, but lets care about the language, because its not enough we work so hard to make things work, we still need to feel miserable, no matter the things you have done, because you are not using a pink t-shirt (one vector on a multivector of preferences and goals). Is the end there is much more details into why we choose X and Y. A lot of C and C++ code are out there, and with them a lot of great knowledge. man-years of work, of life into them.. they are wonderful pieces of engineering, and yet, just because they are "not written in the right language ™" it will force by culture and not by virtue that they get kicked off like garbage. This is totally disrespectful, and most of the time is pure marketing and salesman pitch. Rust has yet to prove itself in a lot of fronts, and this will only happen with time. I've seen Daniel being constantly bullied to feel miserable for having its tool in C, in Twitter, in mailing lists.. and he is just a sample..
- mwcampbell 5y agoTo be blunt, the security of the software that runs so much of the world is way more important than the feelings of some programmers who feel that their beloved languages are under attack. With ransomware and other online attacks on the rise, the stakes are too high to allow safer alternatives to be developed at a leisurely pace by volunteers. That's why ISRG is paying to have the work done, and why corporate projects like Android are putting financial resources into this as well. It's not a sinister attack on your favorite language, just an effort to make software more secure. Getting back to something you said in your previous comment: > you will take my C++ out of my dead cold hands. Is this really the hill you want to die on? To me this suggests a lack of perspective on what really matters. A programming language is just a tool, not something to get attached to. When a better tool comes along, be open to using it when you can. Especially if someone pays you to do so. I used to be a big fan of both Python and Lua. Now I usually don't use them for new projects, though I may still if I think one of them is the right tool for the job.
- Ericson2314 5y ago> With ransomware and other online attacks on the rise Yeah we really need to show the world better defense is possible, or the US military, always hungry for mission creepy, is just going to subsidize critical infrastructure that should have never been private in the first place with free counter attacks or whatever. The non-technical policy consensus is already "defense is hard", not "we're incredibly sloppy and we should be ashamed of ourselves", and so changing norms is really important and already an uphill battle that's just going to get harder.
- oscargrouch 5y ago> To be blunt, the security of the software that runs so much of the world is way more important than the feelings of some programmers who feel that their beloved languages are under attack. As someone that have created software in at least 7 programming languages, including Rust, I agree with you, i only disagree with the recipe and the tactics used. The bugs will happen, and contrary to the constant hammering sales pitch, Rust will not escape from them. Its like saying we are free from uncertainty. Its a false promise and anyone with real life experience in big software that are not neurotic about security like someone that only see software under this perspective would do. Now, i believe Rust will likely have less bugs in the end? It depends most of the coder, but taking that variable out of the way, its more likely because its design is more strong into that direction. Cant people fix security bugs once they happen? this will be the approach be it in Rust, C++.. Rust still will have to wrap insecure parts in unsafe{} blocks anyway, the same way a C++ coder do only that its not a keyword. Im all for Rust having the right to tell its strenghts, i like the tech and what its offering, i can see why it can be better, but lets take care of the language used and the ideology behind our wording, its all i'm asking here.. Its time for the Rust community to grow up and stop pitching by shaming other languages, projects and communities, as if its the only reasonable answer like as if was some sort of master-race of programming languages and everything else should be replaced because its garbage. This is not true, and while i like the tech, im worried about how a culture formed around bullying "inferior" languages will become with time.
- geofft 5y ago
- tialaramex 5y ago> not by virtue, but by force and politics. It looks like virtue to me. You seem to like C++. Look at the C++ direction of travel. Lifetime annotation? Rust has it, Bjarne now wants it in C++. Volatile access? Rust has it as methods read_volatile and write_volatile, and C++ is moving away from "cv qualfier" towards that same approach. Modules? Rust has them. C++ is now getting them. Backwards compatibility? Rust has editions, C++ is trying to do epochs. C++ has spent years trying to argue that "Good" C++ won't have all the terrible problems, and so far it just hasn't worked out that way. I think the backward compatibility nightmare will consume C++ faster than it can try to dig itself out. Here's the biggest problem: The people who can't leave C++ for Rust are also most invested in the features that prevent C++ from evolving to compete with Rust. If you're programming x86-64 machines with a C++20 compiler, you could go to Rust anyway, you'd be excited about a C++23 with lifetime annotation and epochs, but not so excited that you will throw effort at helping that to happen rather than Rust. Whereas if you're programming a specialist DSP and you're looking forward to getting C++ 17 next year when your vendor offers it, you can't move to Rust easily because there is no Rust for your DSP (yet?) but you also don't care about C++23 because your compiler vendor hasn't even announced a C++20 compiler yet.
- oscargrouch 5y agoJust a correction: Im not implying that Rust have no virtues, it has a lot, and its a very strong candidate to write new projects into whenever you think you need C++. I would and will consider Rust always, and it probably will make sense to use instead. If my former post implied that i dont like Rust, im correcting here, because i like it and i thinks its cool technology and that it have virtues C++ don't have. I was saying that, specially now that the language is more mature theres a thriving community around it, it can go by virtue.. C++ is where it is now because of its "killer apps". OS's, Browser, Games, a great amount of complex software with millions of lines of code. And they are not garbage that need to be replaced. Rust taking over by virtue will be by creating killer apps in it. Showing itself as a great replacement for projects that can also be coded in C++. Security folks invested in Rust saying that all new code in Android will now be coded in Rust its not replacing by virtue as important things like domain knowledge and getting used to a tool is also very important, and it will probably go away. Security is just one thing that is important in a project, its not the only one. But of course if you let the security folks decide, other important aspects will not be taken into account (I tought it was a really bad move by the way, as other problems not linked to security will appear with time).
- bitwize 5y agoForce and politics are how you get shit done when people's minds are closed to virtue. Another example is the climate: we've had decades to solve the climate crisis voluntarily, and people did relatively nothing. Now it will take drastic measures to prevent the crisis from becoming a catastrophe, and believe me, governments WILL implement these measures to much hemming and hawing from the public, especially Americans. But it will happen because it has to, and the public twiddled their thumbs back when solutions were relatively easy. Same with software. If you write critical infrastructure and are not actively involved in writing it in a memory-safe manner at the language level, then you are complicit in every hack that involves a buffer overflow, UAF, or other boondoggle inherent to C and C++ programming. C is the internal combustion engine of software: we've known about its dangers for decades but done nothing to fix it, and now the crisis has reached the point of catastrophe and we have to use coercion or shame in order to fix it.
- oscargrouch 5y ago"Here's Daniel a guy who struggle to keep his open source project used by millions working in very important big tech projects. Despite the fact that big companies use its project, he mostly get funded by ordinary people who can pay a few bucks" "But Daniels destiny is about to change, a ORG that funnels capital from big tech companies to make software more secure is about to give him a grant" "Here Daniel, we have a grant so you can fix your security bugs" "Oh great, now i can invest in more unit test and have people to fix them.. and.. " "But you will only receive the money if you or someone we pay for write those parts in Rust" While Daniel is being payed, this is not actually/only focusing on security as an end goal, but is using security as a pitch to rewrite popular software in Rust which in the end will probably have more bugs giving the older software were much more battle tested.. So we have people with foot on big tech collect money through an org to rewrite software in Rust and not to ACTUALLY help the people doing software with very low resources to fix their software. Daniel is saying he will still keep doing it in C. So why do this org tried this approach giving i bet whatever you want that this money invested for them to focus on security even in C would make it have less bugs, because the real problem here is economics and less the language. Its a pity that an ORG is being used as a facade to create implants of Rust in popular projects, instead of helping out open source developers with money that would probably reach them if they did not act as the middle man to those important projects. See their goals here, is not even about security as a whole, but memory safety, and while they cite other languages, this is clearly biased towards Rust. https://www.memorysafety.org/docs/memory-safety/ https://www.memorysafety.org/docs/memory-safety/ Please dear ORG take the money from big tech, invest part of it for new projects in Rust if you wish, but really help the open source maintainers to fix their security bugs in the technology they use. Note that you are receiving this money using their projects to receive the grants. Really help them make their software more secure. If you are really into the Rust hype, so create a fork in Rust, show that you were right.. or at least be open when collect the money to invest what your real goals. But its a pitty, a project like OpenSSL for instance wont see a dime of this money. So sorry if i dont feel happy about this..
- mwcampbell 5y agoAgain, Stenberg himself seems to feel differently about what's going on than you do. From his blog post "What goes into curl?" [1]: > I’m the lead developer of the curl project but I also offer commercial support and curl services to allow me to work on curl full-time. This means that paying customers can get a “priority lane” into landing new features or bug-fixes in future releases of curl. They still need to suit the project though, we don’t abandon our principles even for money. [1]: https://daniel.haxx.se/blog/2021/06/16/what-goes-into-curl/ https://daniel.haxx.se/blog/2021/06/16/what-goes-into-curl/
- userbinator 5y agoThe comment is inflammatory and over-the-top, but I can definitely relate to the sentiment and comparison with fascism. For the software industry, "memory safety" is the new form of authoritarianism in disguise. No more jailbreaking, rooting, or running what you want on hardware you rightfully "bought". All in the name of "safety and security". They want to proclaim everything else to be "unsafe" to further their goals of total control. As the infamous quote says, "Those who give up freedom for security deserve neither."
- wmf 5y agoIMO a secure system with a developer mode switch is a better tradeoff than "please don't fix bugs because I need them to jailbreak". Unfortunately almost everybody is leaving out the developer mode switch.
- pjmlp 5y agoMemory safety system programming languages exist since early 1960's and already by 1980 it was known that UNIX and C were a disservice to mankind, sadly profit and free beer OS was more appealing than security. The only thing we are giving up is cowboy programming.
- pcwalton 5y agoIs it also authoritarianism when Linux fixes local root exploits? Or syscall RCE?
- Sunscratch 5y agoLet me rephrase your comment: “Saving people from suicides is come kind of fascism and authoritarianism - no more freedom to make decisions related to your own life.”
- Noneofya 5y agoWell, yes.
- wtetzner 5y agoIsn't the authoritarianism in the fact that the hardware you buy doesn't let you just install your own firmware? "Memory safety" has the word "safety" in it, but really it's just a tool to help developers avoid bugs. I want to be able to install whatever I like on my hardware, but I certainly don't want other people to be able to install whatever they want on my hardware.