MurphyA/hacker-news huggingface dataset:
by steveBK123 | 2025-05-30 11:29:50+00:00
I dunno, generationally we may be correcting a problem that will soon no longer exist, or even invert.

Women are attending and graduating college in higher numbers than men in GenZ. Much of the man-o-sphere GenZ rightward turn seems to be resentment at society being sure what the use of men is anymore.

That is, from a very young age girls are told they can do/be whatever they want. Often now, boys are described in terms of what they can't/shouldn't be, or in how their very gender gives them a sort of ancestral debt of shame for wrongs done by the men of previous generations.

You'll hear left wing progressive parents in places like NYC tell stories like "my 8 year old boy came home from school crying because his teacher told hime everything bad that has happened in history was because of men" and stupid stuff that's unthinkable if it was reversed.

Men by and large are still expected by society to be the provider, and shamed if they aren't. Women generally won't "date/marry down" anymore than they ever did. But women are now achieving higher educational attainment than men. It's a setup for future societal disfunction, so I do think we do need to solve the male part of the equation after spending the last 50 years raising women up.
by ToucanLoucan | 2025-05-30 11:29:53+00:00
> The concern is valid. But there’s a deeper worry, one that involves the enlargement not of our gullibility but of our cynicism. OpenAI CEO Sam Altman has voiced worries about the use of AI to influence elections, but he says the threat will go away once “everyone gets used to it.”

> Some experts believe the opposite is true: The risks will grow as we acclimate ourselves to the presence of deepfakes. Once we take the counterfeits for granted, we may begin doubting the veracity of all the information presented to us through media. We may, in the words of the mathematics professor and deepfake authority Noah Giansiracusa, start to “doubt reality itself.” We’ll go from a world where our bias was to take everything as evidence to one where our bias is to take nothing as evidence.

It is journalistic malpractice that these viewpoints are presented as though the former has anything to actually say. Of course Altman says it's no big deal, he's selling the fucking things. He is not an engineer, he is not a sociologist, he is not an expert at anything except some vague notion of businessness. Why is his opinion next to an expert's, even setting aside his flagrant and massive bias in the discussion at hand!?

"The owner of the orphan crushing machine says it'll be fine once we adjust to the sound of the orphans being crushed."

> “Every expert I spoke with,” reports an Atlantic writer, “said it’s a matter of when, not if, we reach a deepfake inflection point, after which forged videos and audio spreading false information will flood the internet.”

Depending where you go this is already true. Facebook is absolutely saturated in the shit. I have to constantly mute accounts and "show less like" on BlueSky posts because it's just AI generated allegedly attractive women (I personally prefer the ones that look... well, human, but that's just me). Every online art community either is trying to remove the AI garbage or has just given up and categorized it, asking users uploading it to please tag it so their other users who don't want to see it can mute it, and of course they don't because AI people are lazy.

Also I'd be remiss to not point out that this is, yet again, something I and many many others predicted back when this shit started getting going properly, and waddaya know.

That said, to be honest, I'm not that worried about the political angle. The politics of fakery, deep or otherwise, has always meant it's highly believable and consumable for the audience it's intended for because it's basically an amped-up version of political cartoons. Conservatives don't need their "Obama is destroying America!" images to be photorealistic to believe them, they just need them to stroke their confirmation bias. They're fine believing it even if it's flagrantly fake.
by subjectsigma | 2025-05-30 11:30:24+00:00
A compelling idea, but cmake writing endif(), find_package() being the equivalent of ‘from package import *’, and CXX automatically getting re-named to CMAKE_CXX_COMPILER is just bad design. There’s no deeper idea to explore. The system is just ugly and confusing.

I’ve been reading through https://cliutils.gitlab.io/modern-cmake/README.html to try and get my head around CMake best practices and the book is just line after line of “Don’t do it the old way or the obvious way, because you will end up accidentally doing the wrong thing due to A Hidden Footgun.” That’s bad design*!
by apavlo | 2025-05-30 11:31:00+00:00
"Bridged Indexes" is a non-standard term. These are just secondary indexes using logical pointers with a mapping index. IIRC, Oracle, Hana, and HyPer do the same thing.

Source: https://db.cs.cmu.edu/papers/2017/p781-wu.pdf (see Table 1 + Section 6.1)
Ask HN: Is GitHub down for anyone else also?
by iamtoomas | 2025-05-30 11:31:05+00:00
From their status page:

Github is experiencing some service issues:

Disruption with some GitHub servicesSubscribe Investigating - We are currently investigating this issue. May 30, 2025 - 11:20 UTC

I found out when I tried to push my changes and it just got back an error:

$ git push Enumerating objects: 59, done. Counting objects: 100% (59/59), done. Delta compression using up to 12 threads Compressing objects: 100% (43/43), done. send-pack: unexpected disconnect while reading sideband packet Writing objects: 100% (49/49), 6.84 MiB | 7.34 MiB/s, done. Total 49 (delta 16), reused 0 (delta 0), pack-reused 0 fatal: the remote end hung up unexpectedly Everything up-to-date

I've been debugging it for the last 15 minutes and now I see they updated their status, so might be related?
by nanna | 2025-05-30 11:32:06+00:00
Man here. Female friends key to my not feeling lonely. Couldn't identify less with men who only see hanging out with men as key to not feeling lonely, which is what this app seems to offer. Seems like the target market for this is lonely lads, when lad culture is driving male loneliness. But hey, I guess some men, even in the West where this app is targeted, really just feel uncomfortable making friends who are women. Open yourself up, lads.
by saubeidl | 2025-05-30 11:32:15+00:00
There's a beautiful German song that deals with the abusive use of the term "freedom": https://www.youtube.com/watch?v=C4Zj-S-OdZs

Here's a (somewhat clumsy, but still gets the point across) translation of the lyrics https://lyricstranslate.com/en/meine-freiheit-deine-freiheit...
by green7ea | 2025-05-30 11:33:47+00:00
Author here, parent comment describes it very well — shared_ptr are a last resort, not a first one.

They are quite heavily (and badly) used in some code bases (ROS). I'm planning a future article that covers shared_ptr in more details.

The surprising thing about shared pointer is that a `const shared_ptr<T>` means that you can modify the contents of T. This makes the problem, mentioned in the parent, of keeping track of who can modify the object where impossible. I've never encountered a `const shared_ptr<const T>` but that would be a better approach.
by sesm | 2025-05-30 11:34:24+00:00
IDK about Haskell, but iterating in REPL with Lisp is the most practical form of programming I've experienced. In other mainstream practical languages this approach is reintroduced as a productivity tool like Quokka, etc.

C++ was practical some decades ago (hardware-friendly variant of OOP for GUI), but it failed as a library language and the domain where it's practical on modern hardware is much smaller. I will not say anything about Rust.
by lurk2 | 2025-05-30 11:35:25+00:00
This isn’t really a new sentiment on HN. It chiefly comes here via a loose network of right-wing influencers on Twitter who adopted the attitude from early 20th century ultranationalists, Ted Kacynzski’s Industrial Society and Its Future, and (perhaps most significantly) the work of John B. Calhoun [0], who studied the impacts of overpopulation in captive rats. This influence network was quite likely bought out by Peter Thiel in the last decade and skews young, educated, and male, so there is a lot of demographic overlap with Hacker News (you can watch links and discussion topics diffuse between the Twitter network and Hacker News to confirm this for yourself).

You occasionally see urban skepticism coming from left-wingers (usually techno-skeptic climate doomers convinced the world ended yesterday), but in those spheres urbanism is generally viewed much more favorably.

[0]: https://en.wikipedia.org/wiki/John_B._Calhoun
by lesuorac | 2025-05-30 11:35:31+00:00
> The banks are usually unwilling to do them, and an individual may not be able to force them to in practice, but it's still possible in a way it's not possible with crypto.

Generally they're unwilling to do that because it involves losing money for them.

Transfers work in a multi-step process to ensure money isn't created.

You tell Bank A to transfer money to person X at Bank B.

Bank A tells an intermediary bank C to move funds from Bank A's account to Bank B's account. (This step is unnecessary if either A or B are large enough to be an intermediary)

Bank C lets Bank B know that it's gained funds

Bank B moves funds internally from Bank C to customer X.

If you want your money back and Bank C says it's already been withdrawn then somebody in A,B,C is going to take a loss. Personally I think we should have an easy way to pay in a 7d settlement or something. Who really cares if somebody sends a 7d settlement when buying a house as long as its done 7d before closing.
by Loughla | 2025-05-30 11:35:36+00:00
I joined the Lions about three years ago. Our local chapter was defunct, so I got it going again.

Now we have about 40 members (for a town of 500, that's pretty damn good).

We get together to do volunteer and fund raising events. But mostly we meet twice a month to eat supper and bullshit/play cards/pool/darts.

It's awesome.

I think we're going to bring back the formal dances they used to have in the 40's-60's. I think that would be fun.
by disposition2 | 2025-05-30 11:37:06+00:00
This administration might be one of the better examples of the importance of knowing when to ask, “should I do something” vs “can I do something”. And it seems like a lot of the guardrails / historically unwritten rules, that have recently gone the way of the dodo, helped ensure the “should” was considered along with the “can”.

Interesting times to live in
by majoe | 2025-05-30 11:38:34+00:00
Reasons I can think of:

- Wrapping all objects in shared pointer is annoying. - If you stick to that convention, you have to do it on every call side, while you only have to implement RAII once. - You can enforce invariants of your class with RAII, that you can't with a plain shared_ptr - Regarding efficiency: It has the overhead of reference counting plus you have to store all objects on the heap instead of the stack. In hot loops this may hurt cache locality.
by FirmwareBurner | 2025-05-30 11:38:40+00:00
I can disagree with this take.

For one, bouldering is not great if you have a fear of heights or maybe some mobility issues due to a previous injury. It's then a massively painful and risky chore and not a pleasurable activity but requires you to be at 100% health physically and mentally in order to do anything beyond kiddy walls. Otherwise you can fall and injure yourself pretty badly. Granted, that's mostly on you, not the sport but still, it's not a universally approachable sport by everyone by any stretch. At least I never gotten to enjoy it no matter how much I forced myself to based on the hype of those around me and the internet.

> with no inherit social hierarchy

Not 100% true. This might be your conscious way of wanting to see things, but in reality, all sports especially in male groups are inherently competitive where a clear hierarchy gets formed which leads to either admiration or repulsion based on abilities and results, even if it's just subconsciously, but it is there and everyone is aware of it even if we choose to ignore it for the sake of equality and inclusion.

IMHO, team sports like football, handball, volleyball, tennis, ping-pong, various martial arts etc are far better for socializing because you actually have to partner with others and play against others, versus solitary like bouldering.

> I’d highly recommend going on your own as you will find opportunities to meet new people, and others will talk to you

I feel like this take is 100% based on regional social customs of where you live, and not on the sport. This might be my experience of the German speaking country I moved to but from the locals, nobody here ever starts making conversation to you randomly. People tend to go with their social group and not interact with strangers, while those who go alone tend to want to be left alone to practice and not get interrupted with small talk by other who are there to make friends.

Just like the gym, it's definitely not a way to make friends here, since people got here to work out, not have conversations with strangers.
by tialaramex | 2025-05-30 11:39:47+00:00
The C++ 11 move is terrible because it's not the move semantic people actually wanted - which is what people took to calling "destructive" move, the feature Rust provides - instead it's this weird confection where we're scooping the guts out of one object and transferring them into a new object, leaving something hollow behind in order to satisfy the requirements of 1980s C++ programs.

In some cases this can be optimised to the same machine code, but not always, and semantically it's not what we actually wanted anyway. In terms of RAII this means arranging that after the move the "moved from" object remembers it no longer has any resources and so when it is destroyed it won't clean up - much easier to just design the language properly.
by jajko | 2025-05-30 11:40:21+00:00
It brings automatically like-minded folks together into same place, I have to agree. I wouldnt expect spontaneous conversations automatically, at least where I go in Europe thats not the case. But maybe it takes just a polite few words, people in Switzerland are very shy and overly respectful of other's private sphere.

Headphones for any sort of climbing - please dont do that and politely advise others to refrain from use while climbing, thats 1) frowned upon massively in whole community; 2) increases risk of something bad happening; 3) just a bit too arrogant, one doesnt do that in ie restaurant neither
by nickslaughter02 | 2025-05-30 11:40:59+00:00
> This is good and too little, too late. Tech giants have become more powerful than most governments, and that is a net negative for society.

> In short: suck it up big tech; please go harder governments.

Meanwhile EU is trying to undermine security of all citizens and Meta is promoting it.

‘ProtectEU’ security strategy: a step further towards a digital dystopian future https://edri.org/our-work/protecteu-security-strategy-a-step...

WhatsApp Goes All In on Privacy with ‘Not Even WhatsApp’ Campaign https://the420.in/whatsapp-not-even-whatsapp-privacy-campaig...
by atoav | 2025-05-30 11:41:32+00:00
I did not question that the varying story of how resource use shifted throughout history. As you correctly pointed out these shifts are extremely relevant for accurate projections though.

It however changes nothing of the fact that exponential growth in a finite system will eventually run into saturation. If you want to grow your corps revenue by X% each year you will have to sell more. Selling more means making more, making more means using more resources. Now you can reduce the resource use per part with clever designs, different materials or by seeing planned obsolescence as a feature (which will mean customers have to buy a replacement earlier and thus the actual resource use of the product over its lifecycle gets in fact worse). So you optimize and optimize and then you have reached the moment where there is nothing left to remove, but you still need to grow, so you just keep using more resources.

Or if you are lucky eventually a new material or design innovation comes around, that again allows you to improve resource use. But your resource use is not going to be zero and you deplete something else on the finite planet. And you need to grow and use more of it each year.

If you're lost on a raft in the ocean and first eat the bread and once the bread is gone switch to cookies that does not mean you won't eventually run out of stuff to eat.

The solution is to tap into resources that regrow and not use more than is regrowing, but that doesn't jive well with infinite growth. I am an electical engineer and I know pretty well how exponential resource use works in complex systems. If a part of my system would like to exponentially grow its resource use infinitly I'd either consider it defective or use the fact that it can't grow infinitly by bounds I set on purpose.
by green7ea | 2025-05-30 11:41:38+00:00
Author here, I do prefer a language like Rust that makes all of this automatic but that isn't always an option. There are other parts of Rust that can be hard as well.

I wrote this article for a few friends who have recently started working with an existing, large C++ code base. Some industries like the video game industry have also stuck to C++ (they have their reasons).

A good programmer can work within the given constraints to make a useful program — sometimes, one of those constraints is the choice of language.
by Esophagus4 | 2025-05-30 11:41:39+00:00
Absolutely - it read to me like a grown up fraternity. Rush our social event and we’ll call you if you’re cool enough (or similar enough to us) to join the club and attend our invite-only poker night.

Maybe I just have a weird outcast complex, but I stay away from clubs that make you get “sponsorship” by shmoozing with existing members first (country clubs, yacht clubs). That really triggers some repulsion in me for some reason.

Instead, I’ve found a few friends from shared experiences and hobbies like my local cycling club, book club, and every now and again, car meets. (Even, weirdly enough, parents of people I grew up with and connected with later on in life.)

Even when I play golf, I do it at a public club rather than a private one.
Show HN: Mastering Modern Time Series Forecasting – A Practical Guide in Python
by predict_addict | 2025-05-30 11:44:50+00:00
I’ve been working on a practical guide for time series forecasting in Python, called Mastering Modern Time Series Forecasting. The goal is to bridge the gap between theory and implementation. It covers both classical statistical models (ARIMA, SARIMA, Prophet) and modern machine/deep learning approaches (N-BEATS, Transformers, Temporal Fusion Transformer). The code examples use Python libraries like statsmodels, scikit-learn, PyTorch, and Darts, and the book focuses on real-world workflows: messy data, feature engineering, model selection, and evaluation. I wrote this after struggling to find forecasting resources that were both practical and up-to-date — especially for applied ML practitioners. You can find the book here: https://valeman.gumroad.com/l/MasteringModernTimeSeriesForec... https://leanpub.com/mastering_modern_time_series_forecasting Happy to answer questions or hear feedback from anyone working with time series forecasting or Python ML tools.
by Applejinx | 2025-05-30 11:45:10+00:00
One point to bear in mind is, lies have proven more effective in the ABSENCE of evidence. I don't know how many times I've run across the idea of 'guess what, Portland (or New York City, or whatever) is burned to the ground because of the enemies!'

This gets believed not because there's evidence, but because it's making a statement about enemies that is believed.

So for whoever finds lies compelling, I don't think it's about evidence or lack of evidence. It's about why they want to believe in those enemies, and evidence just gets in the way.
by jiggawatts | 2025-05-30 11:45:30+00:00
"Native" types like usize and isize as used in Rust I'm totally fine with.

What I got frustrated with in C/C++ is the insanity of each and every third-party library redefining every type. I understand the history and reasoning behind this, but it's one of those things that ought to have been fixed in the early 2000s, not decades later when it's too late.
by pjmlp | 2025-05-30 11:45:33+00:00
RAII when supported natively by the language, is done at the implementation level, not the usage point.

So in languages like Rust, D, Ada, Swift, C++, the compiler will do the rest unless you go out of your way to avoid the call to take place, like placing a value type on the heap using plain pointers.

With the other approach, even if you implement IDisposable, AutoCloseable, ContextManager and similar, you have to remember to manually write the code pattern that takes care of calling close(), or whatever the method/function happens to be called.

In languages with good support for FP patterns, like trailing lambdas, currying and such, there is another pattern, that is much safer, in case you don't want a static analysis tool to track resource usage, the with pattern.

You do something like withDBConnection connection (fun db -> all related db operations).

Assuming the lambda doesn't do naughty things to have db parameter escape the scope, the withDBConnection function will take care of handling the whole connection lifecycle.
by znkr | 2025-05-30 11:46:06+00:00
I agree, this is a real benefit of RAII compared to defer. That said, there are disadvantages of making the resource freeing part invisible. Not having to debug destructors that do network IO (e.g. closing a buffered writer that writes to the other side of the world) or expensive computation (e.g. buffered IO writing to a compressor) is a define plus. Don’t get me started on error handling…
by skydhash | 2025-05-30 11:46:39+00:00
> being able to translate a full application from AT&T Assembly into Intel Assembly compatible with NASM, [...] isn't something a "decent search engine a la Google circa 2005." would ever been able to achieve

No you would have searched for "difference between at&t assembly and intel assembly", and if not found, the manuals for both and compiling the difference. Then write an awk or perl script to get it done. And if you happens to be good at both assembly versions and awk. I believe that could have been done in less than an hour. Or you could use some vim macros.

> In the past I would have given such a task to a junior dev or intern, to keep them busy somehow, with a bit more tool maturity I have no reason to do it in the future.

The reason to give tasks to junior is to get them to learn more. Or the task needs to be done, but it's not critical. Unless it takes less time to do it than to delegate it to someone else, or you have no junior to guide, it's a good reason to hand out the task to a junior if it will help them grow.
by grues-dinner | 2025-05-30 11:46:53+00:00
> Stack by default - Unique ptr if needed on the heap - Shared ptr if needed to share ownership

Sounds about right. Shared ownership is fairly rare though, and you often only need shared access (reference/pointer if nullable) and can provide other, more explicit, ways of managing the lifetime.

> unique ptr is zero cost after make_unique()

Kind of, but compared to the stack, it could cause caching inefficiency because your heap-allocated thing could be almost anywhere, but your stack-allocated thing is probably in the cache already.