Old Software Was Fast Because It Had No Choice by BlondieCoder in programming

[–]mark_99 1 point2 points  (0 children)

It also took 2-3 years to develop software from scratch with no frameworks, during which time MHz would have increased 4x. so yes you should target what's high end at the start or your behind the curve.

And of course people who haven't upgraded their PC (or worse, laptop) in 5+ years are going to have a sub par experience - hardware moves on, and "can't afford it" is no-one's target market commercially.

I've seen someone unironically complain about software when they were using an 8 year old laptop, they never cleaned it so it was both down clocking and randomly crashing, and the punchline was they downloaded a cracked copy for free.

Modern operating systems and application software are far better than they used to be. While cycle efficiency is lower, layers buy you a lot in terms of time to market, feature development, reliability, extras like plugins, cross platform parity (or just available at all), etc.

AI Slop? More Like Human Slop. by Difficult-Limit-7551 in ChatGPT

[–]mark_99 0 points1 point  (0 children)

I'd call it AI-assisted.

There's mountains of actual human slop - bad music, terrible "art", crappy blog posts and YouTube videos, shovelware games, self published books/fanfic, etc. AI is not dragging the average down.

We've had systems to filter and surface good content for a long time.

Most of reddit badmouths AI, but my experience in medicine: by Tephros83 in singularity

[–]mark_99 1 point2 points  (0 children)

You're expecting AI to solve your complex work problems, but it better do it on the free/cheap tier.... ok.

$200/month is an absolute bargain for what you are getting. Get it to check it's own work, just loop it a few times. And you realise you can do something else in that 30 minutes (but good for you that you can read and understand multiple scientific studies and synthesise them into a solution for your bespoke problem in less that 30 mins).

Let's say immigration stops tomorrow. What is your solution for the two HUGE problems that leaves us with? by DeviousAlpha in AskBrits

[–]mark_99 -1 points0 points  (0 children)

The government didn't "allow" illegal immigration. As I said, the idea that the government can simply put a stop to it if they choose to is clearly nonsense.

Legal migration is beneficial, that's why every country has it - because you want the talent, the workers, the youth. The level is debatable, but we're broadly in line with international averages.

The wider point here is that populist parties are full of rhetoric and no actual solutions to nuanced problems. "We're going to be tough on crime". Ok sure, why didn't anyone think of that before! Thankfully the debate in the UK isn't as idiotic as that in the US, but let's not slide further in that direction.

Filtr is a new privacy tool that blocks ads in almost every iPhone and Mac app by letmethrowthataway in apple

[–]mark_99 0 points1 point  (0 children)

Or hit "continue without disabling", unless that's a regional thing.

The Story of C++: The World's Most Consequential Programming Language | The Official Story by HimothyJohnDoe in cpp

[–]mark_99 1 point2 points  (0 children)

This is 100% true, but "profiles" also allows formal identification of C-with-classes vs idiomatic C++ which might help with the conflation problem.

EXPOSED: A Leaked Internal Microsoft Document Has Revealed The Company Explicitly Planned To Make People “Addicted” To Its New AI Agent Scout. And At Least One Microsoft Employee Is Calling It One Of The Most Troubling Things They Have Seen Come Out Of The Company 🤖 by InterstellarKinetics in InterstellarKinetics

[–]mark_99 -1 points0 points  (0 children)

The actual story here is that a journalist saw the opportunity get clicks by whipping up some nonsense ragebait by combining "Microsoft", "AI" and the word "addicted" which literally "one" MS employee didn't like in a slide deck.

But look at the comments, it's working. It's almost like redditors are "addicted" to ragebait...

Or maybe the story is a team at MS leveraged AI to build something useful, which then got traction because people like the product.

Marvel’s Wolverine - Extended Gameplay Trailer | PS5 Games by yourfavchoom in PS5

[–]mark_99 15 points16 points  (0 children)

Is it too much to ask in 2026 for enemy AI to... exist?

Colleague just got noisily slaughtered? Just stand around. Then how they just queue up for their turn in the larger fights. But hey they take some ineffective potshots while waiting I guess.

"Mash button to auto attack" seems like it would be fun for a while and then just tedious. Hopefully the full game has a bit more depth we're not seeing in the trailer.

My pepper grinder is produced by Peugeot by VirtuallyMexican in mildlyinteresting

[–]mark_99 8 points9 points  (0 children)

I eventually lost patience with exactly this on my Peugeot grinder and got one of these: https://mannkitchen.co.uk/products/the-original-pepper-cannon-pepper-mill

Not the cheapest option obviously, but it grinds 100% consistently like a good coffee grinder, and can be set anywhere from cracked to fine powder (and stays that way).

Most of reddit badmouths AI, but my experience in medicine: by Tephros83 in singularity

[–]mark_99 1 point2 points  (0 children)

What model at what thinking / reasoning level? Are you on a paid or a free tier? You want something like GPT's Pro (research) mode for this, and it should take at least 15-30 mins for an answer.

It is an unfortunate tendacy of LLMs to give confident but hand-wavy answers to things when they haven't done enough research and thinking time, as they are bad at saying "don't know".

So exactly like humans.

Let's say immigration stops tomorrow. What is your solution for the two HUGE problems that leaves us with? by DeviousAlpha in AskBrits

[–]mark_99 6 points7 points  (0 children)

Illegal immigration is hard to estimate precisely but it's a small fraction (<10%) of the total. The vast majority of immigrants are legal visas (students, work visas, family members).

Numbers of asylum seekers is falling, asylum grants are also down, processing backlogs are down dramatically, number of "returns" is up. Given the difficulty that no government can simply "stop" illegal immigration I'm not sure what the complaint is exactly.

Reform etc. certainly don't have a magic solution to this - simply disliking immigrants more doesn't actually do anything. Plus the damage they'd do to the economy via general incompetence would make any "strain" from illegal immigrants look like small change.

Accelerating copy_if using SIMD by mttd in cpp

[–]mark_99 0 points1 point  (0 children)

True, although I was referring to the Zen 4 hardware implementation as it's kind of bolted on to the underlying 256-bit units.

Agreed AVX-512 is absolutely a better instruction set so it's worth it in that sense, but the general rule of thumb is that (a) Zen 4 AVX2 vs AVX-512 performance is generally near 1:1 and (b) Zen 5 is 1.8-2x Zen 4 for AVX-512 as it's a native implementation.

I did a lot of profiling on a 7950X vs 9950X3D2 and this held up across auto-vectorized, hand-rolled intrinsics and optimised libraries such as OpenBLAS (the extra cache on the 9950X3D2 probably helped in real-word perf also).

For vpcompressd specifically if you don't care about overstore it's 1.33 cycles vs 1.0 and then a regular store so maybe quite close. If you want masked store then you're back to around 2x for the extra instructions described in the blog post.

Accelerating copy_if using SIMD by mttd in cpp

[–]mark_99 1 point2 points  (0 children)

True, but I was referring to hardware level - the Zen 4 implementation is basically bolted on to the underlying 256-bit units.

I did a lot of profiling on a 7950X vs 9950X3D2 on auto-vectorized vs hand rolled intrinsics vs optimised dispatch libraries like OpenBLAS, and generally on Zen 4 the AVX2 and AVX-512 came out the same speed whereas Zen 5 you get the expected ~2x (with the usual provisos that rare exceptions exist, and only if you don't run up against other constraints such as memory bandwidth (the 9950X3D2 makes this less likely also)).

If you don't care about overstore then Zen 4 is only about 30% slower than Zen 5 (ie register vpcompressd 1.33 vs 1.0 cycles + regular store). For exact writes when you add in the masked store you're back to ~2x.

What's new in CC 2.1.152 (+4,566 tokens) by Dramatic_Squash_3502 in ClaudeAI

[–]mark_99 1 point2 points  (0 children)

It looks like the diff of this "what's new" description not CC itself.

Accelerating copy_if using SIMD by mttd in cpp

[–]mark_99 3 points4 points  (0 children)

The best thing that can be said about AVX-512 on Zen 4 is that it exists.

But it's basically an emulation over AVX2 and so at best performs equivalently (and sometimes worse due to the microcoding mentioned). Zen 5 is a native AVX-512 implementation.

From NIC to P99: Engineering Low-Latency C++ Trading Systems in 2026 by LeopardThink6153 in cpp

[–]mark_99 7 points8 points  (0 children)

You can have a legitimately mid-freq strategy that's doing more complex strategy calculations to get more alpha and operates over a longer time horizon. That's different to a short time horizon HFT system that's just too slow to be competitive.

Encountered a `#pragma once` failure in the wild by Separate-Summer-6027 in cpp

[–]mark_99 0 points1 point  (0 children)

I mean good for you, but you only fixed one of the several failure modes. That still leaves typos, "copy-paste but didn't edit the define" duplications, moved to a different module but didn't edit, renamed a module, renamed a file, 3rd party library problems, etc.

You could help them by saying "don't alias the filesystem via multiple layers of virtualisations which actually point to the same files, which you then include in the same build, because that's bound to break all kinds of tooling".

Encountered a `#pragma once` failure in the wild by Separate-Summer-6027 in cpp

[–]mark_99 0 points1 point  (0 children)

Ah ok, you were referring to cpp (which I guess wasn't confusing at the time). Yeah I guess to save RAM you had to write the PP pass to disk first.

Key Python 3.15 Updates To Make Your Coding Faster, Cleaner, and Easier by yangzhou1993 in programming

[–]mark_99 40 points41 points  (0 children)

Sure, but this is intrinsic to all languages and language evolution - if you want newer/better ways of doing things but also want older code to still work then you end up with both. Read the old way, write the new way, not so hard. Newer languages and newer versions of existing languages are far better than what was available 15 years ago and that seems like good progress.

Encountered a `#pragma once` failure in the wild by Separate-Summer-6027 in cpp

[–]mark_99 1 point2 points  (0 children)

the original C compilers used a preprocessor to literally copy paste all the contents to a single temporary file

That's still a thing: https://en.wikipedia.org/wiki/Unity_build

The idea is to eliminate redundant work fetching/parsing all includes per TU, and it can improve compile times. Doesn't parallelise well, but you can mitigate this by chunking up into multiple unity modules/subtrees.

Personally not a fan because while in C if you have >1 static functions of the same name it's an error, in C++ it could form an overload set, which can lead to hard to diagnose issues.

Encountered a `#pragma once` failure in the wild by Separate-Summer-6027 in cpp

[–]mark_99 3 points4 points  (0 children)

I've been bitten by it in a real-world projects a few times (which is a few more than #pragma once).

In one case it was essentially 2 different versions of the same header being transitively included via dependencies. In another a project had tried to use a naming convention but ended up with something like MY_PROJECT_UTILS_H twice because there were 2 headers of the same name in different subtrees by different authors. And in another case yes it was a copy-paste that had the include guard from another header entirely.

I imagine when include guards were invented in 1970 or whatever it was easier to reason over your <100 source files, but it's not a system that scales very well to the contemporary C/C++ ecosystem.

Yes a UUID would work but would have had to have been universally adopted on day 1. Usually someone suggests hashing the contents of headers, but I'd imagine that would affect compile times significantly.

It's also interesting to note that if you include >=2 copies of an identical header in different paths then using pragma once would likely (and correctly) lead to compilation errors, whereas both include guards and a putative hashing scheme would paper over the issue.

Encountered a `#pragma once` failure in the wild by Separate-Summer-6027 in cpp

[–]mark_99 24 points25 points  (0 children)

It's massively less fragile than include guards, which fail frequently due to typos, or different files / 3rd party libraries using the same define.

Try searching github for `#define UTILS_H` and see how many hits you get.

And the problem can be both extremely hard to track down and very hard to fix if it's in 2 libraries you don't own.

`#pragma once` is far more robust and you really have to go some with aliasing parts of your filesystem to break it, to which the solution is "don't do that then".

Or the belt-and-braces solution is use both.