MurphyA/hacker-news huggingface dataset:
by zahlman | 2025-08-30 22:45:07+00:00
> I’m an experienced developer, but recently my 13-year-old daughter told me she wants to learn programming—and surprisingly, I find myself unsure about how to get her started.

Start by making sure you understand what she hopes to accomplish, and that she has a reasonable concept of what "programming" is.

But you really don't have to sweat these choices as much as it seems like you're doing. Kids are smarter, and more adaptable, than you think.

And don't fret if she discovers a different, related passion (e.g. computer animation) instead.

> I’m torn between a bottom-up approach (teaching the fundamentals first and building up) and a top-down approach (starting with something more visual and practical, then filling in the gaps later)

You don't have to choose. There are visual/simulator based ways to understand hardware at the gate level (check out the various Zachtronics games for just one example) and build up from there. Nothing prevents students from considering this at the same time as really abstract programming concepts (SICP-style). Programming is about problem analysis as much as it is about writing code, after all.

> If we go top-down, should we start with Scratch or dive directly into a language? If it’s a language, should it be Python, JavaScript, or something else?

Many language choices are reasonable and you shouldn't sweat this too much. If you start with written, textual code then you should probably also expect to start with simple command-line programs — anything involving an event-driven framework is going to be too complex to start; code is much more easily reasoned about when the student controls the timing and sequencing of events. (Students will very commonly want to make "action" games, or even just things as simple as "the user has X seconds to type the password or game over". This opens up a new world of complexity, and you should be candid about that.)

But students must be engaged with what they're doing in order to learn. First, make some toy CLI demos/programs of your own. If that kind of program doesn't catch her interest, choose a different starting point.

> Even on the hardware side, I’m debating whether it’s better to get her started on Windows, macOS, or something else entirely.

Has she not used a computer before? (I realize that nowadays this can't be taken for granted any more.) Use the hardware and OS setup she's accustomed to using, if possible.

If you really must introduce to her the concepts of sitting at a desktop, opening a terminal, typing on a keyboard, writing text in an editor etc. — then start on Linux. It's just a more developer-friendly experience. Honestly.

> I’d love to hear from those of you who have introduced programming to kids (or started young yourselves).

For those of us who started young, computers were radically different when we started. For example, I started with ROM BASIC on a Commodore 64.

... Honestly, you could do worse than an emulation of that environment. Certainly it set reasonable expectations.
by panarky | 2025-08-30 22:45:13+00:00
Hypersegregate browsing with profiles.

One profile for banks, a different profile for Amazon, a third profile for Google sites, a fourth for news sites I log into, a fifth for news sites I don't log into, a sixth that automatically forgets everything on exit for sites that UBO breaks.

Then delete all data on each profile periodically, weekly for news sites, monthly for Amazon and banking sites.

It's a giant pain in the ass juggling all these profiles. Seems like there should be a browser that automatically and transparently isolates every site in its own profile.
by Renaud | 2025-08-30 22:46:13+00:00
It seems Circuit Hub is an alternative. Still more expensive than JLC, but not as high as other US alternatives.

https://www.circuithub.com/

Their CEO Andrew Seddon was recently on the AmpHour podcast:

https://theamphour.com/699-circuithub-12-years-later-with-an...
by mcdeltat | 2025-08-30 22:47:10+00:00
I've learnt that just about everything in life boils down to feelings, which is interesting. No matter how rational a person or people claim to be, usually it comes down to feelings... Life choices? Business decisions? Who gets promoted? It's all vibes and feelings. People will deliberate and argue over facts but ultimately there will be some "weighting" factor which is feelings and will make or break the outcome. You can have a perfectly argued decision that fails some vibe check and is hence discarded. Or a terrible argument that plays to some emotional point so is accepted. It's all feelings. Rare is the opposite.
by godelski | 2025-08-30 22:47:24+00:00
There's a related problem I see in academic review, but I think it applies far more broadly. The easy part of review is recognizing flaws. One should always acknowledge the flaws, but the authors tend to already be aware of them[0]. The difficult part is determining if the flaws undermine the research or if despite the limitations that the work pushes progress forward. (All but a few works are incremental)

I think this applies much more broadly because even in conversations people are quick to latch onto a subtle inconsequential detail and then dismiss the rest. Being able to read the words does not make one literate, it is the interpretation of them that does. I think this example is quite prolific with internet conversations, enough that we can circle back to sarreph's mention of this in their first sentence. But I think another great example was from this post from a week ago[1]. Most comments are responding to the headline, but many even looked at the post and missed the entire point (which isn't about work being interrupted).

[0] Authors may not acknowledge them in the work because the review process is too adversarial and such acknowledgements can be used as ammunition against them (thanks lazy reviewers ;), because solving those flaws is a good followup and they don't want to get scooped, or many other reasons.

[1] https://news.ycombinator.com/item?id=44999373
by echelon | 2025-08-30 22:47:32+00:00
You're not reading my comment. Go back and read it again.

My entire point is that China is experimenting on BRAIN DEAD living bodies as test tubes.

This is a way to accelerate much faster since there are far more brain dead patients and no effort needs to be made to keep the patient alive.

They're effectively using these bodies as lab experiments. It's an incredibly smart move by China.

Without the red tape and with an endless stream of brain dead bodies, they're going to leapfrog America quickly with this technology.
by sneak | 2025-08-30 22:47:41+00:00
This would make sense if there were a single labor market. There isn’t, so this simply increases prices (even for domestic goods, as raw materials are frequently imported).

There is no meaningful path to restoring much of the US’s lost manufacturing capacity. The rent is too damn high, and the cost of goods is rising quickly as well. Labor is expensive and becoming moreso daily. Manufacturing in the US can never compete with SE asia even with 50% tariffs due to the gigantic disparity in the cost of labor.

It’s not going to increase wages, it may even result in even more offshoring due to the increases in cost for raw materials.
by anigbrowl | 2025-08-30 22:47:42+00:00
It's not so much that theory makes these assumptions, as that they describe the simplest economic models. You can make your models as detailed or not as you'd like, but the more work to construct/operate/understand them, the lower your likely return on that effort. It's just like how some people want simplistic games like Candy Crush, others want high investment ones like Dwarf Fortress.
by kragen | 2025-08-30 22:47:47+00:00
LINQ uses "where".

As for single-word alternatives, "if" is common. For example, in Python:

>>> [(x, y) for x in range(10) for y in range(2, x) if x % y == 0] [(4, 2), (6, 2), (6, 3), (8, 2), (8, 4), (9, 3)]

Common Lisp uses "if" but also uses "when":

* (loop for x from 1 to 100 when (= x (expt (floor (sqrt x)) 2)) collect x) (1 4 9 16 25 36 49 64 81 100)

Perl and Common Lisp both use "unless", of course with the sense inverted:

DB<4> for (1..10) { print "$_ " unless $_ == int($_**.5)**2 } 2 3 5 6 7 8 10

SQL uses both "where" and "having". You could also reasonably use "suppose", "stipulate", "assert", "wolog", or "let". Lisp M-expressions (and, arguably, Dijkstra's guarded command language) used "→".
by deepthunder | 2025-08-30 22:47:57+00:00
The elite in Canada want people from countries who have lower work environment expectations.

Over the last 5 years Canada has taken in hundreds of thousands of new immigrants. The govt has a plan to boost the population to 100 Million.

As a result Canada now has the highest housing costs in the world. The Universal Health care system has a massive backlog. Emergency rooms have very long waiting periods and you cant get a family doctor.

At present the population has rebelled so the elite have reduced the inflow somewhat temporarily.
by cblum | 2025-08-30 22:47:57+00:00
This reminds me that when I was a kid, I read an Uncle Scrooge story where a cruise ship of his runs aground and he sends Donald to run it as a new kind of hotel.

I carried that in my head as fact, that there was once a cruise ship that ran aground and they turned it into a hotel.

Only realized it as an adult when one day I brought up the ship-turned-into-hotel thing in a conversation at work.
by haunter | 2025-08-30 22:47:58+00:00
In the end it's the biggest leopard ate my face moment ever:

China has very high growth momentum that surpasses American living standards soon, and not long before it will surpass American security standards too. China's purchasing power is probably more comfortable than most western countries, with extensive housing and high speed rail and electric cars etc. When a country becomes rich, inevitably other countries ask for their help. That's why China's growth must be curbed, fast > tariff them to their death or so. But I really don't think it will work at all. And personally I don't even think it's a good idea at all to begin with.
by underlipton | 2025-08-30 22:48:16+00:00
"The workers only suffer if the owners deliberately act against their own short-term self-interest in order to secure their workforce, their industry, and, ultimately, the economy, over the long term," is the more correct characterization, and accurately portrays the behavior as misanthropic and illogical for anyone expecting to live beyond the next handful of quarters.

Iwata took a paycut. The least our guys could do is take responsibility.

https://www.cnbc.com/2024/02/13/nintendo-ceo-once-halved-sal...
by sneak | 2025-08-30 22:50:25+00:00
https://lareviewofbooks.org/article/the-cia-goes-to-hollywoo...

https://listverse.com/2015/12/17/10-hollywood-movie-scripts-...

https://ageoftransformation.org/exclusive-documents-expose-h...

https://www.independent.co.uk/voices/hollywood-cia-washingto...

> Files we obtained, mainly through the US Freedom of Information Act, show that between 1911 and 2017, more than 800 feature films received support from the US Government’s Department of Defence (DoD), a significantly higher figure than previous estimates indicate. These included blockbuster franchises such as Transformers, Iron Man, and The Terminator.

https://responsiblestatecraft.org/oscars-military-hollywood/

> This partnership comes at a price. In exchange for the use of military personnel and equipment, movie producers must abide by the Pentagon’s strict entertainment policy that grants the DoD final say over a movie’s script. These collaborations frequently require changes to the screenplay that amount to historical revisionism. Spy Culture, the “world's leading resource on government involvement in Hollywood,” has utilized FOIA requests to collect tens of thousands of annotated drafts of film scripts which provide a firsthand glimpse at the breadth of the Pentagon’s influence over the movies we know and love.

https://www.spyculture.com/
by sarchertech | 2025-08-30 22:50:29+00:00
> _sigh_. Really dude? Just because people overestimate them on average doesn’t mean every person does.

In the study, every single person overestimated time saved on nearly every single task they measured.

Some people saved time, some didn’t. Some saved more time, some less. But every single person overestimated time saved by a large margin.

I’m not saying you aren’t saving time, but it’s very unlikely that if you aren’t tracking things very carefully that you are overestimating.
by timr | 2025-08-30 22:51:06+00:00
Even assuming that there were no other federal, state or local YoY differences [1] that could explain this change (and that the numbers are right as presented in the first place), New York City private sector employment is nothing like most other parts of the US: it's the largest city in the US by a large margin, it has a concentration of employment in a few major industries (finance, fashion, publishing, software) that aren't represented elsewhere, and...it hasn't been a manufacturing center since the victorian era.

You can't wave this away with "NYC is a leading indicator for the US economy". To the extent that it's true at all, you could say it about any large city in the US.

[1] Like, say: interest rates, the business cycle, AI, the slowdown in software hiring, or the minimum wage increase that NYC implemented on January 1, 2025.
by immibis | 2025-08-30 22:51:12+00:00
> In economics, values below 100 are considered "Highly Competitive", below 1500 is "Unconcentrated", and above 2500 is considered "Highly Concentrated".

Fediverse is almost straight left, and it's already 690. Straight up would be 5000. This is non-linear scale presented linearly.
by solSpeedofLight | 2025-08-30 22:52:28+00:00
TestFlight (visionOS 26): https://testflight.apple.com/join/SsmPTnh8

Toward the UX of spatial computing: beyond controllers

Spatial computing is still in its early days. The hardware is here, but the interaction language is only starting to emerge. We don’t yet have the “mouse” or the “touchscreen gesture” equivalent for this new medium.

In building Gravitas Dark Matter for Apple Vision Pro, I wanted to see what would happen if I pushed past the familiar metaphors of controllers, joysticks, and handhelds — and designed around something simpler: the eye and a pinch.

Eye Pinch Targeting

What I call Eye Pinch Targeting combines two inputs that Vision Pro offers natively:

Eye gaze: natural head + eye motion to aim.

Pinch: a subtle, controller-free gesture to confirm.

The result surprised me. It didn’t feel like a hack or a compromise. It felt precise — almost inevitable. The dexterity of a gentle pinch gave me more confidence than any floating joystick UI could.

It’s not a virtual gun. It’s not a VR controller disguised as a wand. It’s something native to the medium.

Modes of spatial play

The second experiment was seeing how play changes depending on how much of the environment you keep:

Passthrough mode: your actual room remains visible, with targets anchored in physical space.

Apple Immersion: the curated environments Apple ships with Vision Pro.

Galaxy immersion: a full spatial takeover — black holes and celestial targets filling your field of view.

Each mode carried different affordances. Passthrough made play feel like AR. Apple’s environments gave a filmic layer. The galaxy mode created scale and immersion you simply can’t fake with a flat screen.

Hardcore stress testing

Performance was a hurdle. Cranking graphics to High at first made the experience unplayable. But after optimization passes, I was able to run a “hardcore” session: Arena Mode across the entire length of my home — living room, dining room, kitchen, hallway.

It was physical. You tread lightly to avoid throwing off tracking, but in the heat of it I spun quickly, weaving through space. I lost multiple rounds. It felt more like a sport than a demo. And unlike pre-canned VR attractions (like The VOID at Downtown Disney), this wasn’t on rails. It was reactive, competitive, and punishing.

Why this matters for UX

Spatial computing won’t scale if input feels clumsy or bolted-on. Eye Pinch Targeting showed me that precision and intuitiveness don’t need controllers. They can come from inputs already built into the hardware — if we design for them.

The broader takeaway: UX in spatial computing isn’t about recreating old metaphors. It’s about letting interaction feel native to the body and the environment.

Closing thoughts

Gravitas Dark Matter is still experimental. There are hitches, optimizations, and unanswered questions. But the exercise points toward something larger: that the UX of spatial computing may not look like controllers at all. It may look like gaze, pinch, and movement — gestures that feel inevitable once you experience them.
by hopelite | 2025-08-30 22:52:42+00:00
There are many concurrents? How do you figure? There has never been as little choice and alternatives, let alone actual competition than today.

A few corporations control most of the food you eat, even less control the food you eat in restaurants. Very few media companies control the "content" you can consume and you cannot even own it, let alone sell or even trade it, and it seems everyone just pays more whether they keep raising their prices.

You own very little, are you getting happier?
by ldmosquera | 2025-08-30 22:52:57+00:00
One thing I hate about modern TV shows is that they have been further sliced into ~5-10min sequences between ad breaks, and even if you watch them without ads, you get narratively unnecessary cliff hangers just before a break, complete with dramatic music and a closeup of some dramatic gesture, trivially resolved in the next 5 seconds after the break.

You're constantly yanked out of the narrative in service of ads even if you never see them, which has disfigured the medium.
by fsflover | 2025-08-30 22:53:14+00:00
The camera and calls have been working fine for me on Pinephone since a couple years ago or longer (and not only on SXMo). Perhaps you may have a faulty unit?

SXMo makes the interface unbelievably snappy, including playing videos, maps and more. You can find example videos on their website: https://sxmo.org/
by dalyons | 2025-08-30 22:53:19+00:00
Perhaps if tariffs were implemented in a somewhat sane way, your argument might have more merit. Today, we are also tariffing the raw materials needed for domestic production, including many that have zero or insufficient local production. so it actually makes it harder and more expensive to meet demand domestically.

Plus, with the fickle and chaotic application of trumps tariffs, you’d be insane to invest in domestic production.
by tialaramex | 2025-08-30 22:53:33+00:00
I think more than a few people have recommended waiting until the 3rd or 4th X before you say OK, Don't Repeat Yourself we need to factor this out. That's where my rule of thumb is too.

Deliberately going earlier makes sense if experience teaches you there will be 3+ of this eventually, but the point where I'm going to pick "Decline" and write that you need to fix this first is when I see you've repeated something 4-5 times, that's too many, we have machines to do repetition for us, have the machine do it.

An EnableEditor function? OK, meaningful name. EnablePublisher? Hmm, yes I understand the name scheme but I get a bad feeling. EnableCoAuthor? Approved with a stern note to reconsider, are we really never adding more of these, is there really some reason you can't factor this out? EnableAuditor. No. Stop, this function is named Enable and it takes a Role, do not copy-paste and change the names.
by zahlman | 2025-08-30 22:54:25+00:00
If you notice that two parts of the code look similar, but have a good reason not to merge or refactor, that deserves a signpost comment.

If you're copying and pasting something, there probably isn't a good reason for that. (The best common reason I can think of is "the language / framework demands so much boilerplate to reuse this little bit of code that it's a net loss" — which is still a bad feeling.)

If you rewrite something without noticing that you're doing so, something has definitely gone wrong.

If a client's requirements change to the point where you can't accommodate them in the nicely refactored function (or to the point where doing so would create an abomination) — then you can make the separate, similar looking version.
by layer8 | 2025-08-30 22:54:43+00:00
For my second question I was actually more thinking of value constrains as type annotations. For example, something like

struct S { x : num; y : num; where x < y }

Meaning the compiler would statically verify that x < y for all instances of S at all times. Alternatively, you could also have:

struct S { x : num; y : num; } let s : S where s.x < s.y;

to only restrict a specific variable.

"If" wouldn't fit that use case, and neither would "when". I suppose "require" would work, but it also feels different from "such that". The intended meaning of the latter example would be "let s be an S such that s.x < s.y". "Given", as the sibling comment by hallole proposes, also doesn't fit.
by estearum | 2025-08-30 22:54:49+00:00
> The division in American weren't created by a foreign entity. The class war simply never ended.

You're stating this as if class tensions preclude the existence or effectiveness of foreign information operations. Do you actually believe that to be true?

Frankly you are not thinking very hard if you're making definitive monocausal statements about something like "divisiveness" in America.

Class tensions hurt us, race tensions hurt us, cultural and historical tensions hurt us, ideological tensions hurt us, and all of these are opportunistically weaponized by people (both foreign and domestic) who benefit from a more fractured America.

We're talking about one such entity, which is Russia.

> It's another form of naivete to think that average CIA operative is any better at his job than average Joe.

This isn't required to be effective at a job, which is why there are hordes of totally average yet gainfully employed people in the world. No one stated anyone is better than the average Joe at anything.
by danabramov | 2025-08-30 22:54:55+00:00
>in what way can smaller players federate with ATProto or how the structure allows federation.

Each of the pieces I've described (PDS, Relay, AppView) implement the protocol specified at https://atproto.com/. Anything that acts as an ATProto PDS can be used as an ATProto PDS, anything that acts as an ATProto Relay can be used as an ATProto Relay, and so on. I'm not sure I understand the question so pardon the tautology.

The structure allows federation by design — a Relay will index any PDS that asks to be indexed; an AppView can choose the Relay it wants to get the data from (or skip a Relay completely and index PDS's directly); anyone can make their own AppView for an existing or a new app. That's how there are multiple AppViews (both for Bluesky app and for other ATProto apps) ingesting data via multiple Relays from many PDS's. There aren't many independent operators of each piece (especially outside of PDS self-hosting) but nothing is privileging Bluesky's infra.

Additionally, Bluesky's reference implementations of each piece are open source. So people run them the same way you would usually run software -- by putting it on a computer and exposing it to the internet. To run a custom PDS, you can either use the Docker container provided by Bluesky (https://github.com/bluesky-social/pds) or implement your own (e.g. https://github.com/blacksky-algorithms/rsky). Ditto for other pieces.

>Reading through it, it just sounds like sharding/scaling for a centralized service that's meant to be owned and provided by a single entity.

You're right in that the goal is to make it on par with centralized services in terms of UX and performance/scaling. However, it is decentralized.

The picture at the end of this article might help: https://atproto.com/articles/atproto-for-distsys-engineers