MurphyA/hacker-news huggingface dataset:
by latexr | 2025-09-29 09:34:25+00:00
None of the problems I referenced are “new developments” in technology. The Snowden revelations happened over a decade ago. We know that Facebook hid their discoveries on social media harm, like a tobacco company.

It is patently obvious by now that major developments coming out of big companies will be used to further encroach their dominance at the expense of every one else. It is not a knee-jerk reaction to recognise an obvious pattern and identify probable pathways for abuse. On the contrary, those have to be identified and discussed early if there is any hope of counteracting the problems.

So no, it doesn’t make a difference to distinguish between the technological and human problem when we’re not solving the human problem. It is an excuse which could be applied to anything—technology doesn’t harm by itself, all of it is created by humans. That’s just a variant of “guns don’t kill people, people kill people”. It is important to recognise the role of technology in facilitating and worsening the human problem.
by jonathanstrange | 2025-09-29 09:35:55+00:00
Quite honestly, developing for Android and iOS is no longer worth it. I was planning a set of cross-platform native products using Flutter and other tools, but after a careful analysis came to the conclusion that it makes no sense. You have to distribute 5 different apps (Linux, macOS, Windows, iOS, Android) with 5 different packaging, signing, and distribution requirements and have to fight with all kinds of garbage, from Gatekeeper over expensive certificates for Windows to avoid being flagged by antivirus, to anti-competitive app store requirements by Apple and Google.

Web apps have become unavoidable. Native is beating a dead horse.
by elsjaako | 2025-09-29 09:36:18+00:00
I think we're reading the same article differently.

They start out by describing all the work that has been done by other people to make open source synthesis possible.

Then they say they've added some well known, industry standard optimizations to the existing open source tools. In addition, they made use of the abc tool in a way that maybe wasn't being done much before.

My view is that if you think someone taking your software, changing some parts, and releasing it under a different name (while still giving you credit in an about section) leaves a bad taste in your mouth, don't release your software with a permissive license. You are explicitly giving permission for someone to do this.

I don't like companies doing this, so I tend to release under GPL. Even then, I'm happy for someone to rebrand and sell it, as long as the source is still shared. I gave them permission to do that.

Don't give someone permission to do something, and then say it's in bad taste when they do that thing.
by vendiddy | 2025-09-29 09:36:59+00:00
If you are breaking something up for "long" and "short" you're optimizing for the wrong thing. You don't care about code being short for its own sake or long for its own sake right?

Ultimately, you're going to revisit this code to make the change after some time passes. Is it easy to follow the code and make the change without making mistakes? Is it easy for someone else on the team to do the same?

Sometimes optimizing for "easy to understand and change" means breaking something apart. Sometimes it means combining things. I've read that John Carmack would frequently inline functions because it was too hard to follow.

So, rather than whether something is big or too small, I would ask whether it would be easy to understand/change when coming back to it after a few months.

Put another way: why not optimize for the actual thing you care about rather than an intermediate metric like LOC?
Ask HN: Best Architecture Patterns for Lightweight SWE Workflows?
by ethanjscott | 2025-09-29 09:37:15+00:00
I am working on a lightweight agentic workflow to accelerate software development on my own machine. I am executing AI-generated code locally on my machine in a sandboxed environment, and feeding the errors back into the LLM automatically.

Has anyone done anything similar on their own machine? I am interested to hear other thoughts.

General overview of the current workflow (without a lot of the finer details):

Call Gemini API to generate Python code for specific function/problem ->

Run AI-generated code in Docker container ->

Take any runtime/compilation errors and feed back to Gemini ->

Run hardcoded tests for functionality and send results back to Gemini ->

Repeat step 1 until max iterations are met (or testing passes)

I had a few general questions:

1) What patterns, antipatterns, or architectures do people find best for these workflows?

2) Is using Docker considered the easiest and safest way of quarantining AI-generated code?

3) I have read a couple posts online about “compressing” the context of previous changes through quick summaries. We can also use vectors for traversing documentation to speed up context retrieval for the AI. Does anyone have any general advice here on what works and what doesn’t?

4) Should I have an external Agent that reviews the errors of the previous iterations to see if Gemini is falling into a loop? Sometimes when I use LLMs for coding, I notice that they fall into loops (they will just alternate between two buggy solutions). Should we just break the iterations in this case and rely on human intervention?

I am also trying to utilize AutoML packages (like FLAML) with this workflow. I am implementing this workflow to perform “automatic” data analysis on datasets to get better predictions. Obviously, I understand that this will not perform as well as a professional data scientist. However, has anyone done anything similar and seen some positive results?
by austin-cheney | 2025-09-29 09:37:52+00:00
I find that when people value vanity or discussions of how to proceed their confidence is low. These are red flags for me. It’s assumed that if you aren’t a junior you should be able to immediately reason multiple original routes to the goal.

I suppose the most important matter of “taste” is how deterministic the flow control is by just reading the code. It doesn’t have to be pretty. When this is absent I know the author values something other than maintenance or extension. When it’s hidden behind cultural conventions, like a framework, I know the author values those learned conventions more than a utility goal or objective criteria.

Since these observations reflect behavior they apply equally to many other non-code contexts in the real world.
by deafpolygon | 2025-09-29 09:37:52+00:00
Perhaps we are seeing evolution unfold in real time. The human brain is under constant pressure from modern life: technology, nonstop information, and increasingly complex social systems. Autism may not be a limitation, but the emergence of a cognitive style better suited to these challenges. Some researchers suggest we are at the beginning of a divergence in human cognition. If so, autism could be one of the first signs of a broader shift in how our brains develop.
by FearNotDaniel | 2025-09-29 09:38:42+00:00
Partially true, in that on Safari on iOS, you can use that to enlarge the text. But that doesn't change what's really broken about the layout, which is that it forces the column width to allow only a small number of words-per-line, which is what makes for uncomfortable reading. Another Safari-on-iOS option would be to use the built-in "Reader" function, which re-flows the text into a cleaner layout.
by nicce | 2025-09-29 09:39:03+00:00
> You cannot expect a public body to take a legal conclusion with significant financial impact on the basis of a single citizen report or in reply to that report. This takes analysis, technical and legal work, etc. So your expectation that they respond to your message eith something akin to "of course, you provide evidence of a breach. I, the single case officer responding, confirm the facts are true. Thanks for telling us we will now fine them 5 billion" is a bit unreasonable.

Both judging or supporting are conclusions. The message is more supporting than necessarily required and that also can have a significant financial impact. If there is even some unclarity, they should just state that they are investigating it, while noting that DMA may allow this. Otherwise this creates foothold for Google, which is not fair either.
by eesmith | 2025-09-29 09:39:22+00:00
The Soviet Union Politburo also had a lot of engineers. "43 percent of Politburo members attained higher education credentials during their life, while in a close second place, 32 percent of members earned an education in technical engineering." - https://en.wikipedia.org/wiki/Politburo_of_the_Communist_Par...

FWIW, Brezhnev was a metallurgical engineer.

While I think the Soviet Union comparison would be relevant to the article, the only connections I could find are:

> At various points in China’s recent past, the entirety of the senior leadership, all nine members of the Standing Committee of the Politburo, had degrees in engineering, and this was engineering of a very Soviet sort.

and

> ... what the Chinese are interested in is being an engineer of the soul, which is a phrase from Joseph Stalin that Xi Jinping has recently repeated.

Note that Stalin's phrase is, more fully, "As comrade Olesha aptly expressed himself, writers are engineers of human souls" https://en.wikipedia.org/wiki/Engineers_of_the_human_soul

and Xi Jinping's is:

"In 2018, Xi Jinping, general secretary of the Chinese Communist Party, stated that “Teachers are the engineers of the human soul and the inheritors of human civilization. They carry the important task of spreading knowledge, spreading ideas, spreading truth, shaping soul, shaping life, and shaping newcomers. The fundamental task of education must be nurturing capable young people well-prepared to join the socialist cause. Better education and guidance are needed to build the noble ideal of Communism and the common ideal of socialism with Chinese characteristics among the students.”"

That comes across as less top-down or state-controlled than implied in the text, and more metaphorical.
by KronisLV | 2025-09-29 09:39:25+00:00
> I'd argue to write the "stupid" code to get started, get that momentum going.

Yes and no, depending on how dependent you become on that first iteration, you might drown an entire project or startup in technical debt.

You should only ever just jump in if:

A) it's a one off for some quick results or a demo or whatever

B) it's easy enough to throw away and nobody will try to ship it and make you maintain it

That said, having so much friction and analysis paralysis that you never ship is also no good.
by holri | 2025-09-29 09:39:46+00:00
Maybe a sufficient number off hackers are offended enough now and contribute to really free platforms, like PostmarketOS or Mobian. There has been great work there in the last years. I think we are not very far away from a really usable free phone, we need device drivers and android emulation / f-droid as long as native apps did not catch up.
by lbalazscs | 2025-09-29 09:40:15+00:00
The link about Stiver has some details:

> Stiver decided to write his own decompiler as a side project. To overcome the weaknesses of existing alternatives, he took a different approach. After reading the bytecode, he constructed a control-flow graph in static single-assignment form, which is much better to express the program semantics abstracting the particular shape of bytecode. At the beginning of this project, Stiver knew little about static analysis and compiler design and had to learn a lot, but the effort was worth it. The resulting decompiler produced much better results than anything available at that time. It could even decompile the bytecode produced by some obfuscators without any explicit support.

https://blog.jetbrains.com/idea/2024/11/in-memory-of-stiver/
by cjs_ac | 2025-09-29 09:42:50+00:00
I used to be a physics teacher, and very few of my students gave a shit about science. The most popular 'science' content on social media is elephant's toothpaste videos and inspirational quotes photoshopped onto astrophotography. Most people struggle to have a conversation about ideas, they just want to talk about people, and that's perfectly fine.

General-purpose computing was always for nerds, and always will be. There will only ever be a tiny proportion of people who find this stuff interesting enough to actually learn how to engage with it on its own level. Everyone else needs it to be packaged in an idiot-proof way so they can use it to get on with their day.
by liampulles | 2025-09-29 09:44:05+00:00
It happens when devs and businesses reach a point of tolerant negligence w.r.t their codebases. I suspect this is true for the vast majority of codebases, a "labor of love" codebase in the enterprise is a unicorn.

Remember not every project is for some amazing product, with a great agile way of working. Some projects are a withdrawals system internal to an insurance company, for example. No one gives a shit there.

Motivating for any kind of tech debt work on such a project is unlikely to be met with approval, and all the devs who really care about such things will likely have left the project long ago.
by rickdeckard | 2025-09-29 09:44:14+00:00
> But assuming your original list is a list of versions (which seems reasonable given the presence of multiple decimal points for some cases), then that’s the order you’d want.

What level of assumption is here expected from the sorting-system, would it have to process ALL entries of the list to find multiple decimal-points and then assume that they are ALL versions and not numbers?

How to treat this on different locales, where the decimal point is a comma and thousands-separator is a dot. Should the locale then also be considered by that system? Also when listing the folder of a remote-system with a different locale?

What about dates, should that system attempt to sort entries with multiple date-formats (yyyy-mm-dd, dd-mm-yyyy, dd-MMM-yyyy,...)?

The topic is far more complex than this narrow example. If we expect such a system to alter its sorting based on some data format interpretation, there is a risk of misinterpretation which might make the whole list unusable...
by DanielHB | 2025-09-29 09:44:31+00:00
The judicial system is the one who is supposed to prevent abuses of power like this. What you are proposing is essentially security through obscurity, if the data is fragmented all over the place on different institutions it is really hard to be exploited in the government, but still totally can be.

Confidential data can have better security checks and encryption layers so it is accessible only by the citizen itself or whoever the citizen grants access to (please don't bring up blockchain, it can be done without it). The technology exists.
by dominicrose | 2025-09-29 09:45:05+00:00
This is about bookingcom but it shows how a big platform operates:

https://www.theguardian.com/business/2025/aug/07/thousands-o...

“Over 10,000 hotels have already joined the pan-European initiative to claim compensation for financial losses caused by Booking.com’s use of illegal ‘best price’ (parity) clauses,” Hotrec said in a statement.

It alleges that the “best price” pledge on Booking.com was extracted from hotels under huge pressure not to offer rooms at lower prices on other platforms, including their own websites.
by accurrent | 2025-09-29 09:45:31+00:00
My general experience as a PhD student makes me feel that we probably should look at the system as a whole. I get the feeling most universities are abusing publications as a way of assessing their own students. It means people will tend to publish slop for the sake of publication instead of genuinely tackling hard problems. I personally have seen my university get away with forming defence committees with 0 knowledge of the field they're assessing. If the university can't assess its students work then they should not be teaching.

I think both conferences and journals are broken in this regard. It doesn't help that professors primary jobs these days is to be a social media influencer and attract funding. How the funding is used doesn't seem to matter or impact their careers. What we need is more accountability from senior researchers. They should be at the very least assessing their own students work before stamping their name on the work.

On the flip side it isn't untrue that there are major breakthroughs happening daily at this point in many fields. We just don't have the bandwidth to handle all the information overload.
by quantum2022 | 2025-09-29 09:45:45+00:00
Want a product idea? You know the paper bags that you get at the grocery store? Why don't they have coupons/advertising printed on them? Take your groceries home and then cut up the bag for coupons for the next time you shop. I don't think I've ever seen this, and I can't find anything similar in a quick google search. Maybe you could create a business out of that?
by rietta | 2025-09-29 09:46:29+00:00
We use grocery bags as trash bags for the small bathroom bins. Also to contain poopy diapers for sanitation purposes. The thicker plastic bags Kroger has uses for their pickup service are harder to use for this. Also are not being reused since they always use new bags with every order. I save the bags we don’t use and place them in the bin outside Publix or Home Depot. Ironically the Kroger drop off pin appears to have been removed.
by deafpolygon | 2025-09-29 09:46:41+00:00
Most modern audio, especially from streaming services, is mixed with the center channel carrying the bulk of spoken dialogue. That works great in a theater or on a proper 5.1 surround system, but most people don’t have that setup in their living room. Most TVs only have two speakers for stereo sound. When a 5.1 mix is played back in stereo, the TV or streaming box has to fold the center channel into the left and right channels. The result is that dialogue often loses clarity and can sound muffled or buried in the mix.
by whywhywhywhy | 2025-09-29 09:47:01+00:00
> But if CPU time is so valuable, why aren't we arguing for hand written C or even assembly code instead of the layers upon layers of abstraction

Maybe we should, all it took was Figma taking it seriously and working at a lower level to make every other competitor feel awful and clunky next to it then it went on to dominate the market.
by tmtvl | 2025-09-29 09:47:56+00:00
If (2) being mandatory means that you need an Android or iPhone in order to work or do anything you need an ID for, then I refer to my basic stance whenever this kind of crap comes up:

Tying citizen's rights to acceptance of Alphabet or Apple's Terms of Service ought to be a crime against humanity. It would also be a bad idea for a sovereign state to give foreign corporations so much power.
by yxhuvud | 2025-09-29 09:48:20+00:00
or C): You cultivate a culture of continuous rewrite to match updated requirements and understandings as you code. So, so many people have never learned that, but once you do reach that state, it is very liberating as there will be no more sacred ducks.

That said, it takes quite a bit of practice to become good enough at refactoring to actually practice that.
by RossBencina | 2025-09-29 09:48:50+00:00
I'm not saying the tools aren't bloated, but I believe that a lot of the size (sorry, can't quantify right now) are the datasets for each and every FPGA model that the tool supports. This includes, among other things, timing information for every wire in the chip. You really only need the files for the device that you are targeting and you do have the option to install only that, or you can install larger groups (e.g. same family, same generation), all the way up to installing every device that ever existed that the tool supports. That's how you get to hundreds of GB.
by disiplus | 2025-09-29 09:49:36+00:00
This weekend I needed to send a few PNGs by email. They were huge, so I figured I’d just grab an image compressor from the Play Store.

I checked out five different apps, each with millions of downloads. Every single one was riddled with data collection prompts and stuffed with ads.

Fine, I thought, I’ll pay to remove the ads. But the options were:

- “Free trial” that defaults into a $5/month subscription

- Or a $19 “lifetime” purchase

It’s so clearly designed to trick people into a recurring subscription for what’s essentially nothing. These apps are just wrappers around existing Android libraries. And if you check the reviews, they’re obviously bought.

This was literally the first time in a year I tried to download something from the Play Store, and the experience was so bad I just gave up and solved it faster in the browser instead.
by Jnr | 2025-09-29 09:50:13+00:00
I think you are correct. https://news.ycombinator.com/item?id=33990413 From the headscale commit log, seems like it was https://github.com/kradalby not the owner of the headscale repo. And he is making a lot of commits.

So, looks like Tailscale is paying one of the developers to develop for headscale, as par of his job.

This is one of the best ways a company can support an open source project though.
by vbezhenar | 2025-09-29 09:50:32+00:00
I'm not sure that @NotNull example is appropriate. Java compiler does not add any checks for @NotNull annotations. Those annotations exist for IDE and linting tools, compiler doesn't care. May be there are Java-like languages like Lombok or non-standard compilers which do add those checks, but I think that Java decompiler shouldn't do assumptions of these additional tools.
by withinboredom | 2025-09-29 09:50:49+00:00
My philosophy:

1. Get it working.

2. Get it working well.

3. Get it working fast.

This puts the "just get it working" as the first priority. Don't care about quality, just make it. Then, and only once you have something working, do you care about quality first. This is about getting the code into something reasonable that would pass a review (e.g., architectually sound). Finally, do an optimization pass.

This is the process I follow for PRs and projects alike. Sometimes you can mix all the steps into a single commit, if you understand the problem&solution domain well. But if you don't, you'll likely have to split it up.
by iinnPP | 2025-09-29 09:50:55+00:00
-If you forget your bag, you're not alone or fully at fault, says Wirsig. "They're actually charging us for cheaper bags that are basically garbage," she said, "We're back to the same problem of this multiplication of [cheap] bags that people are using."

--------

It's this kind of slop at CBC that drives me to dislike them overall. Stop enabling people for no benefit. The sum of people who "forget" their bags every single time is staggering. The reality is that people are fine buying the bag each time and tossing it like before.

I have not needed to purchase or otherwise receive, through any mechanism, any reusable bags since 2021. I have the cheapest version available and exactly 1 has ripped in this time and was promptly reused. So hearing the store is somehow at fault is surprising.
by atoav | 2025-09-29 09:51:29+00:00
One thing I have found to be a very valuable habbit is to first think about what your software has to do on paper and draw some shitty flow charts, lists and other things, without too much care about whether you will do it (especially if it isn't software that you strictly need to do for some reason).

Whether an idea is good or not can often only be judged when it becomes more concrete. The actual finished project is as concrete as it gets, but it takes time and work to get there. So the next best thing is to flesh it out as much as possible ahead and decide based on that whether it is worth doing it that way.

Most people have the bad habit of being too attached to their own ideas. Kill your darlings. Ideas are meant to be either done, shelved or thrown into the bin. It doesn't do any good to roll them around in your head forever.