MurphyA/hacker-news huggingface dataset:
by mikeyouse | 2025-11-16 02:06:00+00:00
He had a much more treatable and slowly growing variety of pancreatic cancer - it was a neuroendocrine cancer in his pancreas (an islet cell tumor). The 5-yr survival rate for stage 1/2 is something like 95%, and even stage 4 is still around a 25%. The more common and deadly pancreatic cancer you’re thinking of has a 5yr survival rate of under 15% and under 3% if it’s advanced to stage 4.

If he had received real care immediately after diagnosis, he’d almost certainly be alive and cancer free today.
by ChrisMarshallNY | 2025-11-16 02:06:21+00:00
Not sure why that comment got downvoted. I guess that "income inequality" is the Boogeyman Du Jour.

I'm unhappy with it, but it is also a lot harder to address, than hardcore poverty.

A popular thing for people to do, is wring their hands and complain about problems that can't be solved, while ignoring the ones that can be addressed.

Fighting poverty is going to be tough, but fighting income inequality would be orders of magnitude more difficult, because of the entrenched and powerful folks with investment in the status quo.

If we split them, we can deal with the "low-hanging fruit" of poverty, maybe even leveraging the vast resources of the very rich, who might be more willing to help, if they didn't see it as a threat.
by matthewfcarlson | 2025-11-16 02:06:36+00:00
I don’t think Google is a great example to hold up here. They throw so much random crap at a wall hoping for another golden goose. Then kill anything that isn’t after a few years. If you can’t tell, I’m still salty about Google domains.

Many of the things you listed need time to bake and Google never cooks anything more than a quick sear in the pan.
by tapirl | 2025-11-16 02:08:09+00:00
The problem is, when you modified the go version in go.mod, the behaviors of some code change, but the change is not easy to detect in time. Go team never plan to develop a tool to identify/detect code affected by such breaking changes, leaving developers without guarantees for safe migration.

And when running go scripts without go.mod files, the v1.22 toolchain doesn't respect the "//go:build go1.xx" directives: https://go101.org/bugs/go-build-directive-not-work.html

And consider that some people run go scripts even without the "//go:build go1.xx" directives ... (Please don't refute me. The Go toolchain allows this and never warns on this.)
by daveoc64 | 2025-11-16 02:08:25+00:00
Seems pretty easy to cause problems for other people with this.

If you follow the link at the end of my comment, you'll be flagged as an LLM.

You could put this in an img tag on a forum or similar and cause mischief.

Don't follow the link below:

https://www.owl.is/stick-och-brinn/

If you do follow that link, you can just clear cookies for the site to be unblocked.
by hellcow | 2025-11-16 02:08:32+00:00
Vision Pro is a perfect example of a greed-driven failure. Apple pissed off both devs and megacorps by keeping the ecosystem closed, fighting tooth and nail in courts such that every app needed to pay them 30% and couldn't be installed without their blessing, and unsurprisingly very few massive companies (or hackers) wanted to support Apple's fledgling closed garden. Without software, it's just a gadget.
by epolanski | 2025-11-16 02:09:03+00:00
As an European, I'm kinda pissed we don't retaliate the duties.

I'd rather take a financial hit than act so weak and passive.

I swear between chat control, selling out EU's privacy to US tech companies (you can check how many times Palantir & others met commission members, it's public), the insanity of the ICE ban and this tariffs passivity I'm very unhappy.

Also, it's too convenient to only focus on material goods when the biggest US exports are gazillions in financial and IT services.
by the_af | 2025-11-16 02:09:11+00:00
In order to determine if something is or is not "doing the thing" you must first know what "the thing" is. If it's writing your thoughts on your blog, then this is indeed doing the thing.

Not doing the thing would be: planning to write a blog post, tweeting that you're going to write a blog post, reading articles about how best to word your blog posts, watching some YouTube videos as inspiration, etc.

I think the advice here is an anti procrastination advice: do the thing, don't just think about doing the thing.
by tombert | 2025-11-16 02:09:18+00:00
I actually knew most of that (I've done a lot of Haskell). I don't really disagree with what you said, but I feel like like you eliminate a lot of stuff that people would consider "composition" but aren't as easily classified in happy categories.

For example, a channel-based system like what Go or Clojure has; to me that is pretty clearly "composition", but I'm not 100% sure how you'd fully express something like that with categories; you could use something like a continuation monad but I think that loses a bit because the actual "channel" object has separate intrinsic value.

In Clojure, there's a "compose" function `comp` [1], which is regular `f(g(x))` composition, but lets suppose instead I had functions `f` and `g` running in separate threads and they synchronize on a channel (using core.async)? Is that still composition? There are two different things that can result in a very similar output, and both of which are considered by some to be composition. So which one of these should I "prefer" instead of inheritance?

Of course this is the realm of Pi Calculus or CSP if you want to go into theory, but I'm saying that I don't think that there's a "one definition to rule them all" for composition.

[1] https://clojuredocs.org/clojure.core/comp
by Mikhail_Edoshin | 2025-11-16 02:10:18+00:00
Hierarchy (and thus "inheritance") is a way to express that several different things share the same quality. They are different in general, but same in some way. It is a very natural way for people to express such a thing and no wonder it is so widespread. But it is not the only way nor the general way, of course.

Composition is not an opposite to inheritance. An opposite would be something like:

Message A ( ... ): Type B: { ... } Type C: { ... }

Or, if the body of the method is same ("a parent method"):

Type B, Type C: Message A ( ... ): { ... }

Here we do not give A and B places in the hierarchy but merely say they respond to the same message or that even the procedure is same.

I do not know if any meaningful and systematic alternative to a hierarchical way exists in any programming notations. Interface spec is a partial way, but that's all. (I know only a few notations, of course).
by bitpush | 2025-11-16 02:12:02+00:00
> Apple pissed off both devs and megacorps by keeping the ecosystem closed

This was so incredible to see play out in real time.

You know where else this is happening now? Car makers and CarPlay.

CarPlay might be objectively better but car makers are giving them the boot, for very good reason.

Apple overplayed their hand (or as you say, was incredibly greedy) and now they get to live with the consequences.
by fzeroracer | 2025-11-16 02:12:07+00:00
I had to pay a tariff charge of about $20 on an order of about $100 that I had placed about a year or so prior to this whole tariff bullshit. The idea that the president can decide to tariff whatever the fuck he wants is something that needs to go, since it's essentially levying taxes without representation. If somehow the current admin can't refund the money they stole from people then every single person involved should be thrown in jail and their property confiscated until that money is recovered.
by tombert | 2025-11-16 02:12:43+00:00
I don't think that it really is a useful enough definition. There are lots of ways to glue things together that aren't inheritance that are very different from each other.

I could compose functions together like the Haskell `.`, which does the regular f(g(x)), and I don't think anyone disputes that that is composition, but suppose I have an Erlang-style message passing system between two processes? This is still gluing stuff together in a way that is not inheritance, but it's very different than Haskell's `.`.
by hollerith | 2025-11-16 02:12:44+00:00
2000 years ago in the regions where the Roman army operated, animal husbandry was already an established way of life for 5000 years or even (in some spots like Asia Minor) a lot longer than that, and the overwhelming majority of the mammalian biomass was in the form of domesticated animals, not wildlife. The land that was not under cultivation was either quite hilly or had something wrong with it that make it bad for supporting wildlife just like it was bad for supporting agriculture.

The page you linked does not mention "hunt" except in 2 of the comments (and one comment is about hunting enemy soldiers). Do you claim that the other comment that mentions "hunt" supports your position?

If not, please quote the passage on the page that supports your position.
by ryanSrich | 2025-11-16 02:13:08+00:00
I also imported a roughly $400 item from Romania. Was expecting a 30% tariff at most. Nope. $756. Sender says there is nothing they can do. UPS says that's the money I owe. They will send to collections if you go long enough without paying it. Reddit had no answers, and many are struggling with the same situation.
by lapcat | 2025-11-16 02:13:08+00:00
I believe that Apple is planning for succession, which of course they should, as an obvious responsibility to shareholders, especially given the health issues of the previous CEO Steve Jobs. However, I don't believe that Tim Cook is on his way out. I certainly don't believe that Cook wants to retire. It's not like he has a family to spend time with. Apple is his family.

The final but crucial paragraph in the Financial Times story is a quote from Tim Cook talking about Apple: “I love it there and I can’t envision my life without being there so I’ll be there a while,” he told singer Dua Lipa on her podcast in November 2023.

The story appears to have a lot of hedge words and mere speculation: "as soon as next year" (so how late could it be?), "no final decisions have been made" about Cook's successor, "The company is unlikely to name a new CEO before its next earnings report", "An annoucement early in the year would...", "the timing of any announcement could change" (not that there is any specific timing!).

My impression is that the reporters don't have the faintest clue when or if Cook is leaving.
by pabs3 | 2025-11-16 02:13:18+00:00
There was a report some years ago that found the IP address being connected to is often enough to identify the website being visited, even when using a CDN. I think you have to go to VPNs at a minimum, or Tor preferably. Tor doesn't help with correlation attacks from global passive/active adversaries though, or even folks with access to a lot of netflow data.
by harimau777 | 2025-11-16 02:13:36+00:00
Depends on how egregious it is and how frequently it happens.

In terms of egregious: Someone staying a few minutes over when they are in a store probably shouldn't be punished at all. On the other hand, someone parking in a handycap spot or leaving their car somewhere for a day or more should probably be a reasonably stiff penalty.

In terms of frequency: Perhaps start small but with an exponential increase for each time someone does it within a calendar year.
by ChrisMarshallNY | 2025-11-16 02:13:48+00:00
Each has its place. There's some things that inheritance makes possible, and some things that are best handled by composition. I use both, quite frequently.

It Depends™.

Composition can add a lot of complexity to a design, and give bugs a lot more corners to hide in, but inheritance can be such a clumsy tool, that it just shouldn't be used for some tasks.

That goes for almost everything in software. Becoming zealous about "The Only Correct Way" can be quite destructive.
by bee_rider | 2025-11-16 02:13:54+00:00
I’ve had a 6+ and a 12. I guess 18 should be coming along soon, maybe it will be with an upgrade. But the 12 still feels… I dunno, really quite good.

I’ve also had it in a case the whole time, if I opened a box and found this thing I don’t think I’d be unhappy. Other than the inevitable gunk that gets in the speakers and the charging hole, it could be new…

I guess it is a race between battery health (80%) and update incompatibility, to see what will kill the thing.
by ferd | 2025-11-16 02:15:38+00:00
An important point not mentioned by the article is that of "co-recursion" with inheritance (of implementation).

That is: an instance of a subclass calls a method defined on a parent class, which in turn may call a method that's been overridden by the subclass (or even another sub-subclass in the hierarchy) and that one in turn may call another parent method, and so on. It can easily become a pinball of calls around the hierarchy.

Add to that the fact that "objects" have state, and each class in the hierarchy may add more state, and modify state declared on parents. Perfect combinatory explosion of state and control-flow complexity.

I've seen this scenario way too many times in projects, and worse thing is: many developers think it's fine... and are even proud of navigating such a mess. Heck, many popular "frameworks" encourage this.

Basically: every time you modify a class, you must review the inner implementation of all other classes in the hierarchy, and call paths to ensure your change is safe. That's a horrendous way to write software, against the most basic principles of modularity and low coupling.
by aetherspawn | 2025-11-16 02:15:40+00:00
Just waiting for macOS to get their act together in the Business space so that Windows can become a gaming only OS.

I know people always say that macOS purposely don’t target business, and things like this, but at this point.. why not? Honestly? They have the best hardware in the world right now. Catering just to personal use (and these lines are getting blurrier each day with WFH) is just inconvenient.
by ThrowawayB7 | 2025-11-16 02:16:30+00:00
> Look at Google or Meta...

Yeah, look at them: https://www.visualcapitalist.com/big-tech-companies-billions... Diverse they aren't. Alphabet is broken down in to segments but several segments including the largest one all boil down to online advertising revenue.

And Microsoft was already well diversified back in 2000.
by fozi_ | 2025-11-16 02:17:39+00:00
I'm somewhat new to PHP but ended up having to implement a simple REST API on a LAMP server. I wrote this because I just couldn't connect with the libraries I found.

It's WIP and there is no guarantees, so use at your own risk.

Some features:

- Generates OpenAPI document "pseudoautomagically" from code. This is a high priority item for me given that what I'm developing right now might be reimplemented in another language later.

- I only implement what I need when I need it. So you might notice a strange set of features.

Constructive feedback is welcome.

I'm also trying to judge where this library is landing in terms of interest as I have not seen anything like this for PHP out there. But again, PHP is not really my thing so I might have missed it.
by zahlman | 2025-11-16 02:18:28+00:00
They use interest rates to protect against inflationary (and deflationary) spirals, which are known to be devastating. The effect on the unemployment rate is a known, and predictable, side effect. But formal unemployment is small compared to labour force dropout anyway, and the latter is not necessarily so sensitive to economic conditions anyway. Besides which, the unemployment rate can't really keep going down forever.

Zoom out; recent levels are actually quite impressive in the USA. Yes, they've climbed since 2023, but they're only just reaching the pre-GFC minimum (https://www.bls.gov/charts/employment-situation/civilian-une...).

Zoom out further: https://fred.stlouisfed.org/series/UNRATE/

Had it not been for COVID you'd be at more than 16 years without a(n NBER-determined) recession, long enough to suggest a fundamental shift vs. how things worked in the several decades before that.
by ch4s3 | 2025-11-16 02:18:56+00:00
Natural selection has nothing to do with randomness per se, it’s merely differential selection based on environmental fitness. The fitness function of a given environment can even narrow a range of existing genes without any mutation occurring during the period where the new fitness function is applied. The classic example of this is peppered moths shifting toward the darker range of their preexisting color range during the Industrial Revolution.

Horizontal gene transfer is another way organisms can acquire new traits.
by dinobones | 2025-11-16 02:19:52+00:00
So much text and not a single example, diagram, or demo.

I'm honestly skeptical this will work at all, the FOV of most webcams is so small that it can barely capture the shoulder of someone sitting beside me, let alone their eyes.

Then what you're basically looking for is callibration from the eye position / angle to the screen rectangle. You want to shoot a ray from each eye and see if they intersect with the laptop's screen.

This is challenging because most webcams are pretty low resolution, so each eyeball will probably be like ~20px. From these 20px, you need to estimate the eyeball->screen ray. And of course this varies with the screen size.

TLDR: Decent idea, but should've done some napkin math and or quick bounds checking first. Maybe a $5 privacy protector is better.

Here's an idea:

Maybe start by seeing if you can train a primary user gaze tracker first, how well you can get it with modeling and then calibration. Then once you've solved that problem, you can use that as your upper bound of expected performance, and transform the problem to detecting the gaze of people nearby instead of the primary user.
by xdennis | 2025-11-16 02:21:08+00:00
I'm always surprised by how arrogant and unaware Python developers are. JavaScript/C++/etc developers are quite honest about the flaws in their language. Python developers will stare a horrible flaw in their language and say "I see nothing... BTW JS sucks so hard.".

Let me give you just one example of Python's stupid implementation of inheritance.

In Python you can initialize a class with a constructor that's not even in the inheritance chain (sorry, inheritance tree because Python developers think multiple inheritance is a good idea).

class A: def __init__(self): self.prop = 1 class B: def __init__(self): self.prop = 2 class C(A): def __init__(self): B.__init__(self) c = C() print(c.prop) # 2, no problem boss

And before you say "but no one does that", no, I've see that myself. Imagine you have a class that inherits from SteelMan but calls StealMan in it's constructor and Python's like "looks good to me".

I've seen horrors you people can't imagine.

* I've seen superclass constructors called multiple times.

* I've seen constructors called out of order.

* I've seen intentional skipping of constructors (with comments saying "we have to do this because blah blah blah)

* I've seen intentional skipping of your parent's constructor and instead calling your grandparent's constructor.

* And worst of all, calling constructors which aren't even in your inheritance chain.

And before you say "but that's just a dumb thing to do", that's the exact criticism of JS/C++. If you don't use any of the footguns of JS/C++, then they're flawless too.

Python developers would say "Hurr durr, did you know that if you add a object and an array in JS you get a boolean?", completely ignoring that that's a dumb thing to do, but Python developers will call superclass constructors that don't even belong to them and think nothing of it.

------------------------------

Oh, bonus point. I've see people creating a second constructor by calling `object.__new__(C)` instead of `C()` to avoid calling `C.__init__`. I didn't even know it was possible to construct an object while skipping its constructor, but dumb people know this and they use it.

Yes, instead of putting an if condition in the constructor Python developers in the wild, people who walk among us, who put their pants on one leg at a time like the rest of us, will call `object.__new__(C)` to construct a `C` object.

def init_c(): c2 = object.__new__(C) c2.prop2 = 'three' print(c2.__dict__, type(c2)) # {'prop2': 'three'} <class '__main__.C'>

And Python developers will look at this and say "Wow, Python is so flawless".
by missedthecue | 2025-11-16 02:21:23+00:00
Somewhat unfair. Ballmer took over at the dotcom peak. They were trading at ~70x earnings on his first day as CEO. That's the only reason MSFT stock performance under his leadership was (from start day to retire day) flat. There is no CEO who would have been able to flout the dotcom bust and maintain a 70x PE ratio for 13 years. But under his tenure, he grew revenue at one of the worlds biggest companies by almost 4x, a 10% CAGR, and EPS also increased considerably.

Also, he wasn't forced out, and the reason ValuAct was pushing for a board seat at the time was because Microsoft was falling behind in mobile and tablets. Around that time, Microsoft had taken a $900m writedown related to Surface RT.

Meanwhile, Tim Cook took over in 2011 when Apple's P/E ratio was only 13 (today it's 36). He has also obviously been a skilled operator, but stock charts by themselves don't provide all context or tell the whole story.
by tombert | 2025-11-16 02:22:01+00:00
I use Typst a lot now (which this reminds me of), and the equation support is generally very good, but the thing that gives me pause is that I'm afraid that there's going to be something missing, or worse than the LaTeX equivalent.

LaTeX has been the industry standard for the mathematical world for decades and as a result it has had the most work adding new notation or making nicer formatting.

For example, I needed to do a proof tree recently. Typically I would use bussproofs in LaTeX but I was using Typst, and while there is a package for handling proof trees in Typst [1], I think they're not very pretty, and as a result I ended up porting the document over to Pandoc markdown and doing the rest of my work there (which is annoying because Typst renders around ~1000x faster and has better tooling).

[1] https://github.com/SkiFire13/typst-prooftree
by steveBK123 | 2025-11-16 02:22:38+00:00
It's interesting seeing people in the same geographic areas report completely different experiences.

I think the fanboys self select for above-average risk tolerance / want their toy to succeed.

I recall years ago when I still had a Tesla and frequented forums, often after every FSD/Autopilot release the boosters would declares "this is it, its finally great and I barely need to intervene". However almost as often, they would quietly concede that their girlfriend/wife (cuz it was always dudes pumping the car) refuses to ride with them when the use it due to the ride quality, lol.
by jcz_nz | 2025-11-16 02:23:53+00:00
I would def use this if there was a return “select …” option. There are heaps of scenarios where sql is modified based on parameters. If no doc string just use the return value maybe?

Our queries are typically large, not 3-5 liners.

(Filter view queries where you might add additional CTA’s to provide the necessary filter conditions, but aren’t desirable if particular filter parameter is nill, etc.)
by gpm | 2025-11-16 02:24:06+00:00
I don't think Windows keeps gaming if it loses corporate. Valve's very successfully created a PC-like linux based console, has been gently pushing linux PCs, and it has a huge amount of power over the gaming industry. Dedicated gaming computers probably mostly follow Valve to linux. Non-dedicated gaming computers are whatever people have - i.e. in your hypothetical macs.
by DustinEchoes | 2025-11-16 02:24:13+00:00
> We balance what we see in our product feedback systems with what we hear directly

Step 1. Use dark patterns to funnel users into using a product or service they don’t want

Step 2. Watch usage kpis go up

Step 3. “Everyone says they hate this, but look at our kpis! Must just be a vocal minority” Move on to next thing