

It’s the new trend in software engineering: Turd-Driven Development
It’s the new trend in software engineering: Turd-Driven Development
This is the actual change if you’re curious: https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=80b6f094756f
And the paper: https://dl.acm.org/doi/abs/10.1145/3626780
Moving from C to C++ would also not solve any real problem. C++ of course adds OOP which I think can be nice (not everyone agrees with this!) but it also adds an insane amount of language complexity and instability. Mentally reasoning about C code is hard, reasoning about C++ code is nearly impossible.
Rust however brings a novel solution to classes of problems like ownership and mutability with the borrow checker. It’s now accepted to be a great tool for writing high performance code while preventing a substantial amount of common, but often subtle, bugs from slipping through. It’s not arbitrarily the first non-C code to be accepted in the kernel. And it’s used in other operating systems like Android and Windows already.
As soon as I open the page I get a modal popup with this junk:
We and our up to 182 partners use cookies and tracking technologies. Some cookies and data processing are technically necessary, others help us to improve our offer and operate it economically.
The processing purposes are storing or accessing information on an end device; personalised advertising and content, measuring advertising performance and the performance of content, target group research and developing and improving offers; displaying external content (e.g. YouTube videos, podcasts, Twitter, quizzes), recommendations of own products and content, A/B testing, push notifications/communication, technically necessary cookies (security, login, forum).
By clicking the „Agree“ button, you consent to the processing of the data stored on your device or terminal equipment, such as personal identifiers or IP addresses, for these processing purposes in accordance with Section 25 (1) TDDDG (Telecommunications Digital Services Data Protection Act) and Art. 6 (1) (a) GDPR. In addition, you consent to providers in the USA also processing your data in accordance with Art. 49 (1) GDPR. In this case, it is possible that the transmitted data will be processed by local authorities.
You can consent to or reject individual data processing operations under Settings. You can edit or revoke your consent at any time via the „Cookies & Tracking“ link at the bottom of each page. Further details can be found in our privacy policy.
With our Pur subscription you can use heise.de without tracking, external banner and video advertising for €4.95 / month. Subscribers to our magazines or heise+ only pay €1.95 per month. You can find information on data processing in the Pur subscription in our privacy policy and in the FAQ.
With our pur subscription you use heise.de without tracking, external banner and video advertising. Alternatively, we and our up to 205 partners store and process cookies and other technologies on your device with your consent. We use these to optimise and continuously improve our website for you, as well as to display personalised advertising including profiling and editorial content.
And only Accept or Subcribe buttons.
No thanks.
“With our Pur subscription you can use heise.de without tracking, external banner and video advertising for €4.95 / month.”
Not letting me reject trackers without paying is some real garbage…
It’s been continuously surprising to me how much hatred some C and C++ devs have for Rust. While Rust isn’t perfect, and plenty of criticisms aimed at the language are well-reasoned, the borrow checker is IMO the logical next step forward in “zero-cost abstraction” which is one of the strongest core philosophies behind C and C++.
The R4L effort seems to be structured sensibly, starting out with only allowing Rust code in (new) drivers. From what I can tell there’s comparatively little that has to be maintained upstream, but even that is encountering aggressive pushback.
I can’t help but feel like some devs have spent so much of their professional careers learning how to avoid the many footguns of C(++) that they fundamentally resent Rust for being a language which avoids most these problems, allowing fast code to be written with fewer bugs in less time and with less effort. This feeling is based on having written lots of C++ code for over 20 years, and having personally encountered devs who deeply resent Rust just because it’s not C.
Ok, sounds cool. So I downloaded a .xdc file and… now what? I think they should’ve started with a paragraph on how to actually run one of these files.
inoreader seems very ergonomic, thanks!
I’ve been interested in trying out RSS again but I don’t want to self-host. Can anyone recommend a RSS client (hosted, local, or whatever) that they like?
Companies use the same kind of systems to (poorly) automate the search for candidates, which is also spammy, inefficient, and wastes job-seekers time. This just levels the playing field.
It’s surprisingly calming to listen to Patrick cathartically vent, after what must’ve been a stressful education and career in finance.
Keep Lemmy small. Make the influence of conversation here uninteresting.
I’m doing my part!
It’s basically corporate anti-virus software. Intended to detect and prevent malware.
According to the article this system also detects power outages and shuts off when they happen. Just like full-scale solar power systems. But yeah, no physical kill switch.
I’m guessing regular non-LP DDR works fine socketed in desktops because power is nearly a non-issue. Need to burn a few watts to guarantee signal integrity? We’ve got a chonky PSU, so no problem. On mobile devices however every watt matters…
I doubt doing it in software like that outperforms sqrtss/sqrtsd. Modern CPUs can do the conversions and the floating point sqrt in approximately 20-30 cycles total. That’s comparable to one integer division. But I wouldn’t mind being proven wrong.
Well, yeah, but you asked why they didn’t use integer sqrt. It’s something many programming languages just don’t have. Or if they do, it’s internally implemented as a sqrt(f64) anyway, like C++ does.
Most CPUs AFAIK don’t have integer sqrt instructions so you either do it manually in some kind of loop, or you use floating point…
The builtin u64.isqrt
seems to be available in nightly only, and additionally I guess the author didn’t want to use any external crates as part of their self-imposed challenge. Though I think there may be an off-by-one result with f64.sqrt
I don’t think this functionally breaks their u64 code because they loop to root_n + 1
.
https://doc.rust-lang.org/std/primitive.u64.html#method.isqrt
There isn’t even any memory management in their code. And arguably the most interesting part of the article is implementing a bignum type from scratch.
I never really used Skype as a VOIP platform, but it was a great tool for many years for calling international phone numbers affordably. I’m sure it helped many people saving a lot of money calling their friends and relatives. For that I remember it somewhat fondly.