MurphyA/hacker-news huggingface dataset:
by akoboldfrying | 2025-06-20 12:10:07+00:00
Looks beautiful, but I got as far as the first dependency graph illustration (yellow and light green) and noticed that the final target is a source file, main.cpp, when it should almost certainly be a binary ("main.exe" or simply "main"). Similarly, one.cpp does not depend on one.h in the way that make cares about.

Make cares only about how to generate files from other files.

I point this out because this is one of the classic misunderstandings about dependencies that beginners (and sometimes old hands) make. The code inside main.cpp might well depend on code in one.cpp to work, but you don't generate main.cpp from one.cpp et al. You generate the final binary from those other files, and that's what make cares about.

One right way to show it would be to have one.o depend on both one.cpp and on one.h (yes, this is confusing at first), likewise for two.o, and main.exe depend on one.o, two.o, libc and libm. Another way would be to omit the object files completely (as now), and just have main.exe depend directly on all other targets, but this makes for a less helpful example.

ETA: I'd also appreciate it if you would mention in the "Recursive use of make" section that calling make recursively is a Bad Idea [0]. (Why? In short, because no dependency information can cross that process barrier, so there's always a risk that you don't build things in the right order, forget to build something you should, etc. If you have a hierarchy of projects in a subdir hierarchy, it's much better to use a separate "Makefile fragment" file in each subdir, and then "include" them all into a single top-level Makefile, so that make has a chance to ensure that, ya know, things get built before other things that need them.) I realise the GNU docs themselves don't say so, and GNU make has a ton of hacks to accommodate recursive make (suggesting that this is a blessed way), but that is simply unfortunate.

[0]: "Recursive Make Considered Harmful", https://accu.org/journals/overload/14/71/miller_2004/
by weinzierl | 2025-06-20 12:10:10+00:00
This is an interesting approach, and I wish it will succeed.

I am still skeptical. In the late 90s or early 2000s Linus was interviewed on TV and what he said stuck with me to this day. When asked about competitors he roughly said:

No one likes writing device drivers and as long no one young and hungry comes along who is good at writing device drivers I am save.

I think he was already well aware at that time that keeping the driver interface unstable is his moat. A quarter of a century later kernels that run on virtualized hardware are a dime a dozen but practically useable operating systems in the traditional sense of abstracting away real hardware can still be counted on one hand.
by bediger4000 | 2025-06-20 12:10:43+00:00
> The DHS statement provided no specific details on the Vermont incident

And

> Officials attribute the surge to Chinese technology manufacturers deliberately attempting to bypass customs inspections.

And

> “These are tools of terrorism,” a DHS spokesperson said

This article is still treating DHS as a trustworthy organization. It's pretty clearly not trustworthy any more. This leaves us, the interested readers and citizens, in an odd position. Were jammers actually used here? There's reason to suspect they weren't.
by lukan | 2025-06-20 12:10:48+00:00
Granted, I was not happy with that link and am also not so much with this one:

https://en.m.wikipedia.org/wiki/Ethanol_fermentation#Byprodu...

Still, there is the information inside, that not just ethanol gets produced by fermentation, but also other alcohols and the main point was, alcohol is not the same as ethanol.
Tiptap has open-sourced a bunch of its pro extensions
by philipisik | 2025-06-20 12:11:57+00:00
We just released a bunch of previously pro-only Tiptap extensions under an open source license:

@tiptap/extension-drag-handle @tiptap/extension-drag-handle-react @tiptap/extension-drag-handle-vue-2 @tiptap/extension-drag-handle-vue-3 @tiptap/extension-emoji @tiptap/extension-details-content @tiptap/extension-details-summary @tiptap/extension-details @tiptap/extension-file-handler @tiptap/extension-invisible-characters @tiptap/extension-mathematics @tiptap/extension-node-range @tiptap/extension-table-of-contents @tiptap/extension-unique-id

They are all MIT-licensed and available via NPM. Contributions are very welcome.

Happy coding and enjoy your weekend!
by gugagore | 2025-06-20 12:12:46+00:00
The post is from 2018, but it's very topical because of "abundance", as you point out.

You might be interested in this podcast Bad Faith: Episode 478 - The Abundance Conspiracy (w/ Sandeep Vaheesan, Isabella Weber, & Aaron Regunberg)

Episode webpage: https://www.patreon.com/posts/130189560
by leetrout | 2025-06-20 12:13:24+00:00
The article says most people don’t mark recipes as .PHONY and seems to use that as a reason to not bother in the tutorial. I think that is a weak excuse and we should teach the right way to use a tool.

My teammates gave me a hard time for adding and maintaining .PHONY on all our recipes since we use make as a task runner.

Clark Grubb has a great page explaining a style guide for make files:

https://clarkgrubb.com/makefile-style-guide

Does anyone else use this style guide? Or for phony recipes marking phony at the recipe declaration vs a giant list at the top of the file?

I would love to have a linter that enforced this…
by articsputnik | 2025-06-20 12:14:16+00:00
I created the Data Engineering Toolkit as a resource I wish I had when I started as a data engineer. Based on my two decades in the field, it basically compiles the most essential (opinionated) tools and technologies.

The Data Engineering Toolkit contains 70+ Technologies & Tools, 10 Core Knowledge Areas (from Linux basics to Kubernetes mastery), and multiple programming languages + their ecosystems. It is open-source focused.

It's perfect for new data engineers, career switchers, or anyone building their Toolkit. I hope it is helpful. Let me know the one toolkit you'd add to replace an existing one.
by loudmax | 2025-06-20 12:14:32+00:00
There is a proposal to build an apartment complex in my neighborhood in Northern Virginia. The houses that had Trump lawn signs up last year, now have lawn signs arguing to block the new housing (or "preserve the neighborhood's character").

NIMBYism is an economic issue, not a culture issue. It has far more to do with how much impact the new housing is expected to have on the value of people's property. Or more saliently, the equity they have in the property. If people expect that nearby housing will cut their $500k equity in half, they're likely to petition against it, regardless of whether their governor is a Republican or a Democrat.

NIMBY isn't red or blue, it's just fear and greed.
by dgellow | 2025-06-20 12:15:00+00:00
Apple is for sure abusing their position. At the same time, the iMessage thing is a US cultural phenomenon as far as I'm aware. I've never seen anything like that outside of the US, because pretty much nobody is using SMS to communicate in other places in the world. Over the past 15 years I've been using various google chat platforms, Telegram, WhatsApp, Line, WeChat, and others. There is a pretty healthy competition in the messaging world. And creating new accounts to get features of a more interesting platform is a very low barrier of entry.
by lodovic | 2025-06-20 12:15:04+00:00
To start with, Google is now a mandatory expense for many companies. Because 90% of users have Google as their default search engine, either through Chrome or Safari. And Google pays a lot of money for that. You can say goodbye to Google, but that also means goodbye to 90% of users.

Second, the lack of proper competition in the ad market cannot be healthy for the cost of advertising. It's impossible to become a competitor to Google without sinking billions in costs. There is no pressure on the price so traditional publishers pay way too much for the ads. That ad may never be served, because Google renders a summary of your content next to the search results; and if a user would visit the site regardless, there is AMP - Google sells you ads and then deploys middleware to prevent you from serving them.
by khurs | 2025-06-20 12:15:23+00:00
Surely they could have made an example of a more recent pirate rather than go after this one.

It’s madness for any of these pirates to be based in a western country, as no matter how good you think you are at concealing yourself, the amount of money being lost means companies will spend a lot to track you down hiring top level experts. Assisted by the USA and EU state level departments.
by ethbr1 | 2025-06-20 12:15:31+00:00
My gripe with USB C isn't really on the nature, but on the UX and modality of capability discovery.

If I am looking at a device/cable, with my eyes, in the physical world, and ask the question "What does this support?", there's no way to tell.

I have to consult documentation and specifications, which may not exist anymore.

So in the case of standards like MCP, I think it's important to come up with answers to discovery questions, lest we all just accept that nothing can be done and the clusterfuck in +10 years was inevitable.

A good analogy might be imagining how the web would have evolved if we'd had TCP but no HTTP.
by card_zero | 2025-06-20 12:16:49+00:00
It's socially constructed, what's a slur. Something below a fact.

What, you downvoted to disagree? Look:

"We asked many members of the Gypsy, Roma and Traveller communities how they preferred to describe themselves. While some find the term “Gypsy” to be offensive, many stakeholders and witnesses were proud to associate themselves with this term and so we have decided that it is right and proper to use it, where appropriate, throughout the report." Women and Equalities Committee, UK Parliament. 2019.

Of course that was six years ago, maybe it's a slur now. Or maybe it's a slur to you, but not to them. Or it won't be slur tomorrow, or it's a slur everywhere but not on Tuesdays and except in Scotland. Socially constructed, see? Not factual.
by dale_glass | 2025-06-20 12:17:17+00:00
Well, here's some for you:

* In modern times, the practical benefit from a microkernel is minimal. Hardware is cheap, disposable, and virtual machines exist. The use case for "tolerate a chunk of the kernel misbehaving" are minimal.

* To properly tolerate a partial crash takes a lot of work. If your desktop crashes, you might as well reboot.

* Modern hardware is complex and there's no guarantee that rebooting a driver will be successful.

* A monolithic kernel can always clone microkernel functionality wherever it wants, without paying the price elsewhere.

* Processes can't trust each other.

The last one is a point I hadn't realized for a while was an issue, but it seems a tricky one. In a monolithic kernel, you can have implicit trust that things will happen. If part A tells part B "drop your caches, I need more memory", it can expect that to actually happen.

In a microkernel, there can't be such trust. A different process can just ignore your message, or arbitrarily get stuck on something and not act in time. You have less ability to make a coherent whole because there's no coherent whole.
by somenameforme | 2025-06-20 12:17:57+00:00
Of course, but again the issue is the number of people. Software development, as it currently is, has huge barriers to entry. Working in code is something that many people simply cannot do, and of those that can - a huge chunk will find it intolerable as an occupation. 'Prompt engineering' will have far smaller barriers to entry which will, even all other things being equal, significantly increase the labor pool.
by anonzzzies | 2025-06-20 12:18:42+00:00
> Though I could just be wearing rose colored glasses.

> al_borland

Borland had a nice and not complex solution. Which made for very fast, low latency interfaces. Everyone starts crying when you don't have the react, downward reactive (well, for some definition of this leaky abstraction thing they call reactive because javascript doesn't support anything to help), but with simple events, getters and setters it was much much clearer what was happening every tick and you could optimise, even as junior, accordingly because everyone gets it all after 10 minutes of tutorial of how it works. I have seniors asking me (every few days) why something doesn't or does update in react or why it's so slow to input something in a field in react (we fix or patch horrible software for a living, so we see 100s of different companies over the months / years; these are not the same seniors asking me this; there are very very few people actually understanding how it works and how not to crash and burn because it LOOKS like you can do something in 'this way' (even on the official react site), but when you do it, you machine gun yourself in your legs).

Not to mention that you would end up with a consistent UI with shortcuts that every user could use immediately instead of the shitshow of 'designer' choices.
by arccy | 2025-06-20 12:20:29+00:00
It may be gnu make, but it's 20 years old: https://lists.gnu.org/archive/html/info-gnu/2006-04/msg00000...

so for all intents and purposes, it's a different make than what most people think about when they say gnu make.

$ gmake --version GNU Make 4.4.1 Built for aarch64-apple-darwin24.0.0 Copyright (C) 1988-2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
by pama | 2025-06-20 12:20:54+00:00
The output of the verilog optimizer is different every time. The output of a fab is different in every batch. Each chip in a batch is different from others in that batch. Quality control drops the fraction of truly poor chips, and hardware design features might downgrade some of the partially failed chips to be classified as lesser versions of the same initial design. The final chips work as intended, mostly, but perhaps the error tolerance to overclocking or the mean time between failures is slightly different between chips. We can all work with them just fine almost all the time. The same principles apply to complex LLM-orchestrated code projects. I dont mind if my compiler gives different code each time because it uses a stochastic optimizer, but I want my code to do what I want and to not fail more than a certain tolerance I have for this code, which depends on the application. By giving more insight into the layers of testing to more people, and by encouraging the new documentation practices that Andrej mentioned, LLM coding will change the practice of software engineering rather dramatically. Code 2.0 was flexible and could yield results that were better than human coded efforts for complex problems, but the architecture, code, data, were selected by humans. In code 3.0 humans have access to (non-deterministic) building blocks that are written in natural language, to bug fixes and feature addition that happen in a conversation style. Similar engineering principles as with code 1.0 still apply (even more so than with code2.0, unless the product is a neural net), but the emphasis on verification increased dramatically as a fraction of the total effort, even though the total effort has gone down a lot. I can’t wait to see increased help in code verification efforts from this batch of people in the AI startup school as a result of Andrej’s presentation.
by freedomben | 2025-06-20 12:21:14+00:00
I wouldn't think it gorged to death because the leaves close around the fly while digesting. I have a few small Venus fly traps as well and the greenhouse I bought them from said they are really easy to kill with too much or too little water, even just using basic fertilizer. Just speculating of course. These plants are cool but feel so alien.

But yeah they definitely can attract a lot more flies than they can eat and can make the fly problem way worse
by aqme28 | 2025-06-20 12:21:38+00:00
I see this take a lot but it's a very static take on homelessness.

Yes, homeless people are often in a mental state where they are difficult to take care of. However, that doesn't mean they're homeless because they're mentally unstable. Often, the reason they are unstable is because they are homeless.

Being on the street heavily exacerbates drug and mental health issues. Plenty of homeless people start out normal and then fall into this state. So if you want to reduce the number of crazy people on the street, then people need stability and homes to cut off the pipeline.
by lyu07282 | 2025-06-20 12:22:04+00:00
Also kind of the simplicity of the problem: You have homeless -> give them homes = no more homeless. Just build a shit ton of public housing. It really doesn't help the liberals argument that in the last 40 years, China raised 800 million people out of poverty. [1]

[1] according to the communists at the world bank: https://www.worldbank.org/en/news/press-release/2022/04/01/l...
by 3cats-in-a-coat | 2025-06-20 12:22:18+00:00
The whole "expanding Universe" model is repeatedly dealt blows in the past few years, so I'd accept it as a plausible, but not sufficiently demonstrated hypothesis and not waste time bothering about the impact on our bodies.

But if you will, think about it like that. All life adapts to its environment. All life. All the time. Everywhere. And the expansion is not that fast that a single generation of anything from a one day fly to a centenarian turtle, or a millennia old tree has to bother about it. It's invisible at our timescale.

I've always thought why animals were so huge at the beginning. Not just dinosaurs, but insects the size of a large dog. Maybe it's the oxygen rich environment. Maybe it's evolutionary processes shrinking size in time to optimize energy needs and improve survival. Maybe gravity somehow changed in time, or it was the expansion of the Universe or a myriad of sci-fi reasons we can come up with. But life adapted and moved on.

So that's what expansion means for us. One of millions of variables we constantly adapt to. If it's slow enough, no problem. But if it's hitting us fast like the accelerating climate change or technological progress, that... we may have problems with. That's when you see unrest, violence, crime. Wars. Famine. Suffering.

The Universe is not our problem. We... are our own problem.
by creatonez | 2025-06-20 12:22:19+00:00
True, but... a good chunk of the time, when an API doesn't exist, it really is because it shouldn't exist. I've seen many examples where an LLM hallucinates an API it wishes existed, but in reality implementing it upstream would turn it into an insane jumble or violate the internal logic in a very bad way. For example: inserting to the middle of a concurrent queue data structure.
by bluecalm | 2025-06-20 12:22:54+00:00
Ok, so they start on equal footing but how is that good for them? People will just watch their favorite influencers on Youtube/Insta/TikTok. They know how to find those already. I mean, how do you envision those businesses (traditional publishers) getting money in a world without Google? I mean specific steps. Are they going to code their own search engine? Advertise on radio and tv so people can find them? I just don't see a scenario that is better for them than the current situation materializing.
by sorcerer-mar | 2025-06-20 12:23:11+00:00
> And the corruption within USAID was off the charts..billions of dollars shovelled out the door to Democrat friends.

Please share evidence. Links to X of people simply stating the same thing does not count as evidence.

> The bypassing of the first amendment by pressuring social media companies to self-censor.

The platforms never claimed to be coerced, the platforms themselves said in court filings they were not coerced, SCOTUS determined they were not coerced.

The actual way this played out was that random crybabies on the Internet were sad their posts were moderated, so they complained to the courts that the government pressured the platforms. The platforms responded "no, we did that because you broke our ToS."

Here's Twitter's own lawyer in their legal filing on the matter:

> Such requests to do more to stop the spread of false or misleading COVID-19 information, untethered to any specific threat or requirement to take any specific action against plaintiffs is permissible persuasion, and not state action... as [SCOTUS] previously held, government actors are free to urge private parties to take certain actions or criticize others without giving rise to state action. The evidence provided does not support a plausible inference of state action because they suggest neither the degree of deep public, private entwinement necessary for joint action, nor the kind of threatened sanction necessary for coercion.

And here are Zuckerberg's own words:

> Ultimately it was our decision whether or not to take content down and we own our decisions.

Both platforms receive millions of government requests per year, the vast majority of which (from the US government) they are free to decline and frequently do decline.

> And the weaponisation of the legal system to take out a political opponent.

The entire purpose of a legal system is to "take out" criminals. Do you think running for office somehow gives someone criminal immunity? That has to be one of the dumbest ideas I've ever heard in my life, and I've heard some astoundingly stupid ones!
by UncleMeat | 2025-06-20 12:23:48+00:00
> 2) rarely is it the actual cost of the home that’s the problem

There is a well demonstrated and strong correlation between housing costs and homelessness rates. There are absolutely cases where the root cause is pre-existing mental health issues or substance abuse but it is simply not true to say that housing costs are rarely the problem.

Further, homelessness can cause substance abuse and mental health issues. So even if you can look at somebody today and say "wow that person has a massive addiction to meth and clearly just giving them a roof won't solve everything" this does not mean that the reason they became homeless in the first place was a substance addiction.

Building more housing will not solve all homelessness. Frankly, so what? Almost no problem on the planet is solved by a single thing. It'll solve a substantial portion of homelessness. That's still good.
by codingdave | 2025-06-20 12:23:51+00:00
We need something in the middle. The ability to be a functional adult is forced into being a binary thing. You either succeed, or you crash and burn down into being homeless, institutionalized, etc.

There really aren't many ways to meet halfway - to have living spaces where you can live up to your abilities and have safety nets for the areas where you struggle. We have "halfway houses" to help people re-enter society after crashing, but not much to catch people before they fall.

(We do have some programs that try to help, but they are swamped, or inefficient, either expensive or under-funded, or some combination of those things. )
by _kb | 2025-06-20 12:23:55+00:00
It's used to rattle more than just humans with processes like DFAT [0]. Here's the NASA handbook on their use [1].

For experiences that are a little more human friendly, subsonic audio is something that's also explored more commonly in the noise art. Stefanie Egedy [2] is one artist that's been working in that space lately.

[0]: https://en.wikipedia.org/wiki/Direct-field_acoustic_testing

[1]: https://s3vi.ndc.nasa.gov/ssri-kb/static/resources/NASA-HDBK...

[2]: https://www.youtube.com/watch?v=_1Yo2hcSAbc