MurphyA/hacker-news huggingface dataset:
by dboon | 2025-11-17 14:44:11+00:00
No name mangling by default, far simpler toolchain, no dependence on libstdc++, compiles faster, usable with TCC/chibicc (i.e. much more amenable to custom tooling, be it at the level of a lexer, parser, or full compiler).

C’s simplicity can be frustrating, but it’s an extremely hackable language thanks to that simplicity. Once you opt in to C++, even nominally, you lose that.
by cxr | 2025-11-17 14:44:41+00:00
A recent attempt to bring up an element in Firefox's inspector by right-clicking the element and selecting the appropriate menu item resulted in the fans on my machine spinning up and the process needing to be killed after it appeared to hang and started chewing through RAM. All in response to my attempt to get a relatively simple view of the DOM tree on the screen to interact with.

When I tried it again I observed an increase of 130MB RAM to bring up the initial window/view, along with noticeable lag to put its contents on screen and make the controls interactive. When I collapsed all the nodes so that the only nodes in the tree toggled open were the HTML body element and its ancestors, it ended up consuming 400MB more—to collapse tree nodes and show fewer things on the screen.

That's half a gigabyte to bring up a less usable tool than the original DOM Inspector that Joe Hewitt checked in to the mozilla.org CVS server back in 2001.

The fact that Firefox's devtools team has ignored the readily available information and guidance from Firefox's own repo about how to do large JS codebases because they instead favor doing a wholesale import all of the bad practices from the NodeJS/NPM world is a serious problem unto itself.
by ramses0 | 2025-11-17 14:45:49+00:00
There was one similar issue with DOOM framerate, I'm assuming an intern got tasked with adding the "blink the LED on the fancy mouse" code (due to a marketing partnership) and it absolutely _trashes_ the framerate!

https://old.reddit.com/r/Doom/comments/bnsy4o/psa_deactivate...
by ksherlock | 2025-11-17 14:46:23+00:00
[[ ]] attributes were added in C++11 and later C23. There are 7 standard(C32) attributes but GCC has hundreds of them.

https://en.cppreference.com/w/c/language/attributes.html

https://en.cppreference.com/w/cpp/language/attributes.html

https://gcc.gnu.org/onlinedocs/gcc/Attributes.html

https://gcc.gnu.org/onlinedocs/gcc/Common-Variable-Attribute...
by bluGill | 2025-11-17 14:47:19+00:00
Anyone who needs their help already knows the promise of LFP in at least enough details that they would need the patent search anyway as part of their efforts to learn if it is right for them. All secondary patents are important, the only question is: do you license them, work around them, or not infringe in the first place. (I'm going to ignore the possibility of intentional infringing though that happens)
by dboon | 2025-11-17 14:48:10+00:00
Nice, but if the intention is portability my experience has unfortunately been that you pretty much have to stick to C99. MSVC’s C compiler is rough, but pretty much necessary for actual cross platform. I have my own such header which has many, many things like the OP’s. As much as I would find it constantly useful, I don’t have a cleanup utility because of this.

But if you can stay out of MSVC world, awesome! You can do so much with a few preprocessor blocks in a header
by illuminator83 | 2025-11-17 14:48:12+00:00
For the most part, yes. Because people usually read docs and test it on their own.

But I remember a few people long ago telling me confidently how to do this or that in e.g. "git" only to find out during testing that it didn't quite work like that. Or telling me about how some subsystem could be tested. When it didn't work like that at all. Because they operated from memory instead of checking. Or confused one tool/system for another.

LLMs can and should verify their assumptions too. The blog article is about that. That should keep most hallucinations and mistakes people make from doing any real harm.

If you let an LLM do that it won't be much of a problem either. I usually link an LLM to an online source for an API I want to use or tell it just look it up so it is less likely to make such mistakes. It helps.
by mirolysyuk | 2025-11-17 14:48:26+00:00
I built a small tool to solve a recurring problem I’ve had while starting new projects: it’s hard (timely, costly) to find and get market feedback from assumed customers on whether an idea is valuable before committing weeks or months of work. Conducting market research on competitors and adjacents also takes time.

Most founders (myself included) do one of the following: -ask ChatGPT (outputs vary, tends to be polite/optimistic) -ask feedback from friends & acquaintances (confirmation bias) -skim Reddit threads (anecdotes) -start building before starting sales & feedback gathering (time wasted)

I wanted a consistent, structured way to pressure-test an idea fast before putting in legwork building and gathering demand signal feedback. I also wanted to stress test the usefulness of synthetic persona feedback as an alternative to surveying tools.

What PMFScan does: -You paste your idea or a URL to a site. -The tool runs it through synthetic buyer persona feedback based on a model recently shown to be reliable.

It returns: -An overall demand score and customer persona based ones, with top ones highlighted. -Top objections & reasons the idea would fail -Similar products out there in the market

Why not just use ChatGPT directly? -The key to the approach is generating idea-specific personas and using vector stores to map qualitative responses into quantitative signal. This approach allows avoiding averaged-out synthetic persona response biases if you simply used chatgpt. As mentioned above, it's based on a published paper that verified the viability of the approach (https://arxiv.org/pdf/2510.08338).

Why I built it: -I wanted to get a quick signal on whether an idea is viable, where there might be blind spots or risks, who ideal customers might be, and what businesses already exist in the space.

This is a small project, shipped quickly. If you try it, I’m interested in: -Where the framework breaks & outputs feel wrong -What you’d expect from a true “early PMF test” -What would make this even more useful for you?

Link: https://pmfscan.com/

Also for funsies I added a leaderboard that shows all ideas that have been submitted and also seeded it with recent YC batch companies ;)

Happy to answer any implementation questions (LLM setup, prompt chaining, vector-store design, etc.)
by protsenko | 2025-11-17 14:48:27+00:00
Hi Spring-lovers community! Thank you for the warm atmosphere and positive feedback on my previous article on designing entities.

As I promised, I am publishing the next article in the series that provides a detailed explanation of good practices for designing Spring Data JPA repositories.

I will publish the latest part as soon as I finish editing it, if you have something on my to read about Spring technologies, feel free to drop comment and I could write a guide on topic if I have experience with it.

Also, your feedback is very welcome to me. I hope you find this article helpful.
by LexiMax | 2025-11-17 14:48:44+00:00
You don't have to wonder. I have been hearing about several recent church schisms over certain folks thinking the church had become too accepting.

This is literally an example of individuals choosing their religion based on their own values. Folks on one side of the schism might criticize folks on the other side of the schism for not being true Christians, but it's ultimately a dispute over "Thou shalt not lie with another man," versus "Love thy neighbor."
by esafak | 2025-11-17 14:48:45+00:00
On October 23, 2018, an escalator at Rome's Repubblica metro station malfunctioned, resulting in a sudden, uncontrolled acceleration downwards that injured oven twenty people. Investigations revealed that the incident was caused by the failure of the primary brake, a faulty safety relay, and the intentional disabling of the auxiliary brake, highlighting issues of maintenance negligence and overridden safety features.

https://en.wikipedia.org/wiki/2018_Rome_escalator_accident
by cml123 | 2025-11-17 14:49:07+00:00
granted it's not up to courtroom standards, this post linked by another commenter in the chain does paint the picture pretty well of an internal struggle between Search and Ads inside Google as a company, where there was a decision to promote user-negative changes to Search as a way to increase the total number of searches performed, thereby increasing the number of ads that can be shown. This happened during 2019.

https://www.wheresyoured.at/the-men-who-killed-google/
by arielcostas | 2025-11-17 14:49:08+00:00
Plus adblocking usually works by blocking network requests, right? Or at most, modifying the DOM itself in the browser, not even the HTML received from the site.

And even if it was a "friendly MitM" that altered the HTML before being parsed by the DOM, it would (hopefully) be considered a private copy you're entitled to use however you please (except against the copyright by sharing it, for example)
by strogonoff | 2025-11-17 14:49:10+00:00
A synthesizer is generally a higher-level ready-to-use product containing any number of oscillators, sequencers, and other circuits and bells and whistles under the hood. A device with an oscillator and a sequencer qualifies as a basic synth.

At a lower levels you find modules like sequencer, oscillator, etc. They are generally not used by themselves: you plug a sequencer into an oscillator to make use of it, just like a standalone oscillator by itself simply makes a continuous noise that gets old quickly. A synth does that connection for you and exposes the controls.

(To make things even more fun, the lines between lower-level audio modules are often blurred. For example, the difference between a sequencer and an oscillator can be best summed up as: the former is commonly designed for unipolar control rate signal change where you can specify exact level per step, while the latter is designed for bipolar audio rate signal change between two predetermined extremes—however, as the “designed for” hints, you could configure some sequencers to output a bipolar signal changing so fast it is audible, just like you could run a square wave oscillator so slowly that it becomes a 2-step sequencer.)
by delichon | 2025-11-17 14:49:19+00:00
It is voluntary. The two times I have been approached by census takers I declined to participate. They had no problem with that, everything stayed friendly, they thanked me and left. There was never a consequence.

The last time, during the last census, the census worker asked me why. I asked her if she knew about census data being used to round up U.S. citizens with unpopular ancestry and put them into concentration camps. She didn't, so I told her a little about the Japanese internment when my father was a teenager, and that I too have unpopular ancestry, and would prefer not to be on their list. She was agreeable.
by jank199x | 2025-11-17 14:49:44+00:00
Too many bots.

My US East Coast VPS firewall logs are full of Russian and Ukrainian IPs. They are more numerous than Chinese, even.

I'm not sure the people behind them are all Russian and Ukrainian, though. My guess RU/UA IPs are just cheaper and easier to obtain by malicious actors.

AFAIK you better be using VPN living in Russia, anyway. Doesn't Russian govt block a ton of stuff from their side?
by hermannj314 | 2025-11-17 14:50:00+00:00
The inital goal of counting every person for determining congressional appointments seems trivial in our modern surveillance state. I feel like we know this answer every minute of every day even without a census.

I don't understand why it became a 70 question survey you are forced to answer. A core value of America is our right to obstruct any government attempt to improve our lives and I defend that stubborness.
by barrell | 2025-11-17 14:50:01+00:00
I have listen/notify on most changes in my database. Not sure I've experienced any performance issue though but I can't say I've been putting things through their paces. IMHO listen/notify's simplicity outweighed the perf gains by WAL.

I'm only sharing this should it be helpful:

def up do whitelist = Enum.join(@user_columns ++ ["tick"], "', '") execute """ CREATE OR REPLACE FUNCTION notify_phrasing() RETURNS trigger AS $$ DECLARE notif jsonb; col_name text; col_value text; uuids jsonb := '{}'::jsonb; user_columns text[] := ARRAY['#{whitelist}']; BEGIN -- First, add all UUID columns FOR col_name IN SELECT column_name FROM information_schema.columns WHERE table_name = TG_TABLE_NAME AND data_type = 'uuid' LOOP EXECUTE format('SELECT ($1).%I::text', col_name) INTO col_value USING CASE WHEN TG_OP = 'DELETE' THEN OLD ELSE NEW END; IF col_value IS NOT NULL THEN uuids := uuids || jsonb_build_object(col_name, col_value); END IF; END LOOP; -- Then, add user columns if they exist in the table FOREACH col_name IN ARRAY user_columns LOOP IF EXISTS ( SELECT 1 FROM information_schema.columns WHERE table_name = TG_TABLE_NAME AND column_name = col_name ) THEN EXECUTE format('SELECT ($1).%I::text', col_name) INTO col_value USING CASE WHEN TG_OP = 'DELETE' THEN OLD ELSE NEW END; IF col_value IS NOT NULL THEN uuids := uuids || jsonb_build_object(col_name, col_value); END IF; END IF; END LOOP; notif = jsonb_build_object( 'table', TG_TABLE_NAME, 'event', TG_OP, 'uuids', uuids ); PERFORM pg_notify('phrasing', notif::text); RETURN NULL; END; $$ LANGUAGE plpgsql; """ # Create trigger for each table Enum.each(@tables, fn table -> execute """ CREATE TRIGGER notify_phrasing__#{table} AFTER INSERT OR UPDATE OR DELETE ON #{table} FOR EACH ROW EXECUTE FUNCTION notify_phrasing(); """ end) end

I do react to most (70%) of my database changes in some way shape or form, and post them to a PubSub topic with the uuids. All of my dispatching can be done off of uuids.
by cogman10 | 2025-11-17 14:50:35+00:00
> as long as the C++ sources of GCC are compatible with older and newer versions of the C++ standard.

I've worked on a number of pretty large projects. If the target for the source code changes it can be really hard to keep C++20 features from creeping in. It means that you either need to explicitly build targeting 11, or whoever does code reviews needs to have encyclopedic knowledge of whether or not a change leaked in a future feature.

It is "doable" but why would you do it when you can simply keep the compiler targeting 11 and let it do the code review for you.
Show HN: AI Agents can generate music first Music MCP dropped
by rydensun | 2025-11-17 14:51:01+00:00
I’ve been working on a new MCP tool and wanted to share it here in case it’s useful for anyone building agents or multimodal AI products.

I built an AI Music MCP that lets agents generate fully produced songs directly from text instructions. The goal was simple: add “music” as a missing modality to the MCP ecosystem.

The MCP currently supports three main generation modes:

Idea → Track: describe a mood or scene and get a finished 4+ minute song

Lyrics → Song: provide your own lyrics + style, and the tool returns a fully arranged track

Instrumental Mode: generate jazz, orchestral, lofi, cinematic, etc. without vocals

It also works across genres (classical, electronic, folk, rock, etc.) and supports prompts in many languages.

Each generation call returns full metadata, including:

MP3 download URL

title

lyrics (if applicable)

style/genre tags

cover art

duration

created timestamp

The idea is to let agents compose complete, usable music without needing any training, audio pipelines, or GPU setup. Just MCP calls.

If you're experimenting with creative agents or building AI products that could benefit from native music generation, here’s the project: https://www.musicmcp.ai/

Happy to hear feedback, ideas, or edge cases you'd like supported.
by gpvos | 2025-11-17 14:51:30+00:00
When I used PdfSharp about 9 years ago, it wasn't really designed to import arbitrary PDFs; it crashed or hung on many less common constructs or invalid PDF files. It was really only designed to either create PDFs or edit PDFs created by itself (or MigraDoc, which used it); that it could also import some other PDFs was considered a bonus by its maintainers. I submitted some patches back then to fix the most egregious problems. Hopefully it has improved.

We needed a library to read arbitrary PDF files (although I forgot what exactly we needed to read from them; it wasn't for full rendering) and ended up using PdfSharp, because iText did not respond to our pricing request.
by chaps | 2025-11-17 14:51:40+00:00
They initially hired me to do "network security" work. Another similar email-then-bill situation is me responding to them telling them why I won't, under any circumstances, figure out who wrote a Glassdoor review.

A lot of it is about setting boundaries with the client. If I have a conversation with you a handful of times to remove password from a whiteboard and you don't do it, that's a big deal and would professionally impact me if something bad happened. Cause like, your client's clients includes Coinbase. Like another person commented -- I really should have just dropped them as a client because the professional risk was too high.
by gregsadetsky | 2025-11-17 14:51:44+00:00
Just to make sure I'm not misunderstanding:

The relay click sound you're hearing should only happen when a relay turns on, and when it turns off. There is no sound when a button is pressed - you can check this by loading an empty simulator and pressing any of the buttons at the bottom (the simulator won't make any sound):

https://minivac.greg.technology/simulator/

((Once/if I get to see a Minivac in real life, I may learn that buttons do make sounds..))

When a relay turns on and off, a sound is played. In the following circuit, check this by pressing and releasing the button 1:

https://minivac.greg.technology/simulator/#wires=1%2B%2F1C%2...
by skc | 2025-11-17 14:53:43+00:00
The fact that these drones are only appearing in NATO aligned countries makes it seem pretty obvious to me that it's one of two possibilities.

1) Russian sabre-rattling

2) NATO countries running "secret" drills in public in anticipation of 1)

The UFO community is of course running with a third option that doesn't warrant any seriousness.
by Gazoche | 2025-11-17 14:53:46+00:00
Pretty insightful article, it resonates with what I remember of my experience as a kid.

But while I believe the general trends outlined here, it's important to remember that "the world" != "the West" != "the US", and even within a single country, the situation can be vastly different from one place to another, one socio-economic stratum to another, or even one family to another.

I also think kids escaping to digital places is not a very recent phenomenon, and has been happening for at least a generation. It's just that the platforms have changed. Back in my days, that place was Facebook, and we had entire digital lives there that our parents knew little about. And it's no coincidence that we started migrating elsewhere at the time when the adults started joining as well (though the general enshitification of the platform certainly didn't help either).
by bluGill | 2025-11-17 14:53:48+00:00
There are multiple variables, claiming weight is important is wrong.

Volume is important because the more volume the more space there is for batteries.

Aerodynamics is important because at common highway speeds this is the dominate energy cost. This is a factor that goes up by the square of speed, so at low speeds it doesn't matter but at high speeds it does.

Weight is least important because it has a linear change and is a small factor in efficiency.

There are real safety concerns with SUVs, but their larger size means there is more space for batteries and so they can overall go farther then a Sedan in normal driving despite the other costs.
by vanderZwan | 2025-11-17 14:53:49+00:00
Look at the full picture. The cycling is reduced due a reduction in temperature gradient. That reduction in temperature gradient is due to water not cooling down enough in winter and warming up for longer in summer.

Could you increase cycling by creating a temperature gradient by capturing the heat from the sun to warm up the water at the bottom of the lake? Maybe, but that also would imply an even greater increase of average water temperature than the effects of climate change. Which would have all kinds of other ecological side-effects.

Or put another way: global warming increases thermal energy being added to the system, resulting in a change of the dynamics of the lake. Cooling it would counteract that increase. Capturing more heat would add even more thermal energy. Even if they both could affect cycling in the same way, adding even more thermal energy is almost guaranteed to create other ecosystemic imbalances.
by KetoManx64 | 2025-11-17 14:54:06+00:00
One goverment you have to pay taxes to in order to stay out of jail and don't get to make any real choices about how much money it prints out of thin air..

The other is an organization body that you freely choose to associate with, eg: using Etherium.

I don't understand how you can conflate the two.

Vitalik did not print billions of dollars out of thin air and then force every citizen of the US to bear that cost through the inflation of the US dollar eating away at their savings and investments.
by alias_neo | 2025-11-17 14:55:12+00:00
I'm both pleased and disappointed.

I love reverse engineering efforts, and like to partake myself from time to time, so I'm very happy to see this; but, for a fraction of an infra-red-wave period I thought Miele had decided to be cool and open source some diagnostic tools for everyone to benefit.

If I'm not mistaken, they were the first (and only?) to open source 3d models for vacuum cleaner accessories.
by barrell | 2025-11-17 14:55:41+00:00
Yeah I was debating heavily between WAL and L/N. Tried to get WAL set up, struggled; tried to learn more about WAL, failed; tried to persevere, shot myself in the foot.

At the end of the day the simplicity of L/N made it well worth the performance degradation. Still making thousands-to-millions of writes per second, so when the original article said they were 'exaggerating' I think they may have gone too far.

I've been hoping WAL gets some more documentation love in the years/decades L/N will serve me should I ever need to upgrade, so please share more! :D
by slightwinder | 2025-11-17 14:55:45+00:00
> Yes, and we have plenty of infrastructure to destroy. It's a target rich environment.

Yes, but how is that relevant? Everything is always open for terror. Russia itself is not safe either. Or are you assuming Russia is out for pure blind destruction? Degrading themselves to become lousy terrorists? Just spreading destruction for no reason?

I would assume they at least will have some aim and reasoning behind their targets, which would mean they will come with soldiers and tanks, and conquer land, or destroy the highest profile-targets. In the first case, they will have very limited resources to spare for attacks on middle European targets. For the second case, you only need to focus your defence on those targets.

> I've seen zero indication that this is true.

May you are following the wrong sources? Building up drones-defence is in progress for a while now. Whether it's going well is a different story, but I would assume that they will not talk very openly about those things for obvious reasons.
by hodgehog11 | 2025-11-17 14:56:04+00:00
> to what many people claim government is overwhelmingly more productive compared to the private sector

Whoa, that's a very strong statement that requires some refinement I think.

In any case, I understand the claimed reasons, but I remain skeptical. Sometimes making something "voluntary" is not in the interests of freedom or small government. I'm sure the founding fathers were aware of that.

> to redistribute congressional districts and Electoral College electors

That's extremely important and has been used to "remarkable" effect in recent years.