HNHacker News
TopNewBestAskShowJobs

singron

2,697 karma · joined March 2, 2013

Opinions are my own.

Send hate mail and memes to eculperic@gmail.com

submissionscomments
singron··on Traps to Developers
Maybe this is cute monady stuff, but there isn't an equivalent to Optional<Optional<T>> with only null/None. You usually don't directly write that, but you might incidentally instantiate that type when composing generic code, or a container/function won't allow nulls.
singron··on OpenAI Burns the Boats
Yeah parking is $30/day at the theme parks: https://disneyworld.disney.go.com/guest-services/parking/
singron··on Telo MT1
Congress probably isn't functional enough to pull it off, but they could pass a regressive fuel tax and then make up for it with adjustments to income tax. E.g. adjust progressive tax brackets or the EITC.
singron··on I tried to replace myself with ChatGPT in my English class
One of my freshman professors accidentally did nearly that. The final exam was 3 hours. This was normal at my school although many students finish in 1-2 house. After realizing nobody was close to finishing after 2 hours and he had greatly underestimated the difficulty, he expanded the time limit to 6 hours!

I will say it's not practical to have exams that long. In this case, the dorm required me to move out immediately after the exam and my parents were waiting to pick me up, so I decided to leave after 4 hours to avoid unnecessary panic or having to drive overnight. In hindsight, the professor probably would have let me make a phone call, but that didn't occur to me at the time.

singron··on Telo MT1
I believe small trucks were unintentionally killed by CAFE. The regulation gives companies fuel efficiency targets. Prior to 2011, there were separate targets for categories like "passenger" and "light truck", but since 2011 it's been based on a formula of wheel footprint. Manufacturers realized that instead of trying to make current models more fuel efficient they could make bigger trucks instead. It was definitely one of the greatest failures of regulation and unfortunate that Congress never fixed it in 14 years. CAFE was essentially gutted in the recent budget bill.
singron··on Our $100M Series B
"total comp" (salary+equity) is really hard to quantify for a private company. In order to qualify as ISOs, the stock options need to be priced at the Fair Market Value (FMV), which makes them essentially worth ~$0 on paper on the day they are granted. In order to value them differently, you need to guess if/how the company will increase in value in the future. If the gains were guaranteed, then that should be factored into the current FMV, so options always have significant uncertainty.

This is unlike an RSU from a public company, where you can sell the value of your shares as they vest and add that to your income with minor risk of price volatility.

singron··on 4k NASA employees opt to leave agency through deferred resignation program
Are NASA employees even a significant part of SLS? Doesn't the bulk of the money go to Boeing and Northrup Grumman?
singron··on TODOs Aren't for Doing
I have a similar philosophy for low priority tickets. Some people say it's not worth filing a low priority ticket since we can't even do the medium priority ones. I think it's still valuable since (1) it let's you write it down to remove it from your mind, and (2) you can track repeated instances or anything else that might cause you to increase the priority.
singron··on My experience with Claude Code after two weeks of adventures
I tried using aider with godot. CC would probably be better. Aider with 4o/o3-mini wasn't very good at gdscript, and it was terrible at editing tres/tscn files (which are usually modified through the editor). If you had a very code-centric game, it could turn out OK, but if you have resources/assets that you normally edit with special programs, it is going to struggle.
singron··on My experience with Claude Code after two weeks of adventures
I haven't used Claude Code a lot, but I was using about $2-$5/hour, but it varied a lot. If I used it 6 hours/day and worked a normal 21 workday month (126 hours), then I would rack up $250-$630/month in API costs. I think I could be a more efficient with practice (maybe $1-$3/hour?). If you think you are seriously going to use it, then the $100/month or $200/month subscriptions could definitely be worth it as long as you aren't getting rate limited.

If you aren't sure whether to pull the trigger on a subscription, I would put $5-$10 into an API console account and use CC with an API key.

singron··on Adding lookbehinds to rust-lang/regex
I don't think there is discussion of the snort-2 and snort-3 benchmarks, which the linear engine handily beats the python re for once (70-80x faster). I'm guessing they are cases where backtracking is painfully quadratic in re, but it would have been nice to hear about those successes. [In the rest of the benchmarks, python re is 2-5x faster]
singron··on LLM Inevitabilism
You need to train new models to advance the knowledge cutoff. You don't necessarily need to R&D new architectures, and maybe you can infuse a model with new knowledge without completely training from scratch, but if you do nothing the model will become obsolete.

Also the semianalysis estimate is from Feb 2023, which is before the release of gpt4, and it assumes 13 million DAU. ChatGPT has 800 million WAU, so that's somewhere between 115 million and 800 million DAU. E.g. if we prorate the cogs estimate for 200 DAU, then that's 15x higher or $3.75B.

singron··on LLM Inevitabilism
So the "multiply by 12" thing is a slight corruption of ARR, which should be based on recurring revenue (i.e. subscriptions). Subscriptions are harder to game by e.g. channel-stuffing and should be much more stable than non-recurring revenue.

To steelman the original concept, annual revenue isn't a great measure for a young fast-growing company since you are averaging all the months of the last year, many of which aren't indicative of the trajectory of the company. E.g. if a company only had revenue the last 3 months, annual revenue is a bad measure. So you use MRR to get a better notion of instantaneous revenue, but you need to annualize it to make it a useful comparison (e.g. to compute a P/E ratio), so you use ARR.

Private investors will of course demand more detailed numbers like churn and an exact breakdown of "recurring" revenue. The real issue is that these aren't public companies, and so they have no obligation to report anything to the public, and their PR team carefully selects a couple nice sounding numbers.

singron··on Oakland cops gave ICE license plate data; SFPD also illegally shared with feds
I don't think there is a 10th amendment violation or a question of federal authority. States can't be compelled to perform federal law enforcement because of the 10th amendment. States are accordingly allowed to prevent their own law enforcement from performing federal law enforcement. If state law enforcement aids the feds anyway, then they are just breaking state law.

A 10th amendment violation would be if the feds require the state to perform federal law enforcement.

Federal authority is relevant if they e.g. raided state law enforcement offices to take the data without consent, but in this case they are just given the data by state officers.

singron··on Postgres LISTEN/NOTIFY does not scale
It depends on if you are getting Heap Only Tuples (HOT) updates or not. https://www.postgresql.org/docs/current/storage-hot.html

In this case, you might have enough dead tuples across your heap that you might get a lot of HOT updates. If you are processing in insertion order, you will also probably process in heap order, and you can actually get 0 HOT updates since the other tuples in the page aren't fully dead yet. You could try using a lower fillfactor to avoid this, but that's also bad for performance so it might not help.

singron··on Postgres LISTEN/NOTIFY does not scale
Unfortunately, updating the row also creates dead tuples. It's very tricky!
singron··on Postgres LISTEN/NOTIFY does not scale
Polling is the way to go, but it's also very tricky to get right. In particular, it's non-trivial to make a reliable queue that's also fast when transactions are held open and vacuum isn't able to clean tuples. E.g. "get the first available tuple" might have to skip over 1000s of dead tuples.

Holding transactions open is an anti-pattern for sure, but it's occasionally useful. E.g. pg_repack keeps a transaction open while it runs, and I believe vacuum also holds an open transaction part of the time too. It's also nice if your database doesn't melt whenever this happens on accident.

singron··on Running a Certificate Transparency log
The publishers can't entirely do the storage themselves since the whole point of CT is that they can't retract anything. If they did their own storage, they could rollback any change. Even if the log forms a verification chain, they could do a rollback shortly after issuing a certificate without arousing too much suspicion.

Maybe there is an acceptable way to shift long-term storage to CAs while using CT verifiers only for short term storage? E.g. they keep track of their last 30 days of signatures for a CA, which can then get cross-verified by other verifiers in that timeframe.

The storage requirements don't seem that bad though and it might not be worth any reduced redundancy and increased complexity for a different storage scheme. E.g. what keeps me from doing this is the >1Gbps and >1 pager requirements.

singron··on François Chollet: The Arc Prize and How We Get to AGI [video]
https://arcprize.org/leaderboard

"Avg. Mturker" has 77% on ARC1 and costs $3/task. "Stem Grad" has 98% on ARC1 and costs $10/task. I would love a segment like "typical US office employee" or something else in between since I don't think you need a stem degree to do better than 77%.

It's also worth noting the "Human Panel" gets 100% on ARC2 at $17/task. All the "Human" models are on the score/cost frontier and exceptional in their score range although too expensive to win the prize obviously.

I think the real argument is that the ARC problems are too abstract and obscure to be relevant to useful AGI, but I think we need a little flexibility in that area so we can have tests that can be objectively and mechanically graded. E.g. "write a NYT bestseller" is an impractical test in many ways even if it's closer to what AGI should be.

singron··on Holding Cellphone while driving is illegal, California court rules
I think we can blame the court for this one. "Using" means using. It's not specific, but the court reinterpreted it to be more specific for some reason. It's essentially impossible to write a statute to defend against this since you can't depend on any particular word to be load bearing.

Even if you use comprehensive forward-looking language, the court can choose to strike any part they don't like under the guise that the current situation didn't exist at the time of the drafting.

singron··on AI note takers are flooding Zoom calls as workers opt to skip meetings
I'm sympathetic to this knowing how few people actually read their emails (and slacks etc.). If you've ever sent out a 30 second survey to your coworkers, you know what I'm talking about. But I also know people don't really pay attention in these meetings either.

I feel async communication could work this way with the right cultural hygiene (e.g. consistent labeling, brevity, novelty, and relevancy), and some places I've worked were better about this than others, but they all tend to suffer from tragedy of the commons. If anyone works somewhere where you and all your coworkers actually count on each other to read emails, please tell me where!

singron··on There are no new ideas in AI, only new datasets
I think this is clearly a case of over fitting and failure to generalize, which are really well understood concepts. We don't have to philosophize about what pattern matching really means.
singron··on [dead]
The link has no theory for how it runs models at one tenth the cost and doesn't mention anything like that.
singron··on Event – Fast, In-Process Event Dispatcher
After a brief skim, it looks like this implementation is highly optimized for throughput and broadcasts whereas a channel has many other usecases.

Consumers subscribing to the same event type are placed in a group. There is a single lock for the whole group. When publishing, the lock is taken once and the event is replicated to each consumer's queue. Consumers take the lock and swap their entire queue buffer, which lets them consume up to 128 events per lock/unlock.

Since channels each have a lock and only take 1 element at a time, they would require a lot more locking and unlocking.

There is also some frequent polling to maintain group metadata, so this could be less ideal in low volume workloads where you want CPU to go to 0%.

singron··on Starcloud can’t put a data centre in space at $8.2M in one Starship
Wouldn't a body essentially freeze dry as a wet being exposed to vacuum? I.e. the temperature of the space is still irrelevant and the cooling comes from vaporization.
singron··on Learnings from building AI agents
I think they skipped over a non-obvious motivating example too fast. On first glance, commenting out your CI test suite would be very bad to sneak into a random PR, and that review note might be justified.

I could imagine the situation might actually be more nuanced (e.g. adding new tests and some of them are commented out), but there isn't enough context to really determine that, and even in that case, it can be worth asking about commented out code in case the author left it that way by accident.

Aren't there plenty of more obvious nitpicks to highlight? A great nitpick example would be one where the model will also ask to reverse the resolution. E.g.

    final var items = List.copyOf(...);
    <-- Consider using an explicit type for the variable.

    final List items = List.copyOf(...);
    <-- Consider using var to avoid redundant type name.
This is clearly aggravating since it will always make review comments.
singron··on Google Cloud Incident Report – 2025-06-13
Nearly every global outage at Google has looked vaguely like this. I.e. a bespoke system that rapidly deploys configs globally gets a bad config.

All the standard tools for binary rollouts and config pushes will typically do some kind of gradual rollout.

In some ways Google Cloud had actually greatly improved the situation since a bunch of global systems were forced to become regional and/or become much more reliable. Google also used to have short global outages that weren't publicly remarked on (at the time, if you couldn't connect to Google, you assumed your own ISP was broken), so this event wasn't as rare as you might think. Overall I don't think there is a worsening trend unless someone has a spreadsheet of incidents proving otherwise.

[I was an SRE at Google several years ago]

singron··on OpenAI dropped the price of o3 by 80%
> I thought the whole point of transformers was that inference speed no longer depended on prompt length

That's not true at all and is exactly what prompt caching is for. For one, you can at least populate the attention KV Cache, which will scale with the prompt size. It's true that if your prompt is larger than the context size, then the prompt size no longer affects inference speed since it essentially discards the excess.

singron··on The time bomb in the tax code that's fueling mass tech layoffs
You can deduct 100% of salaries paid 5 years ago, but only 20% of salaries last year (etc.), and since companies tend to hire more people over time, most of your expenses will have been in the last few years that are still amortizing. You might have enough losses to carry forward in your first year of revenue, but 6 years in that could run out. It depends on the exact circumstances.
singron··on How we’re responding to The NYT’s data demands in order to protect user privacy
If OpenAI cared about our privacy, ZDR would be a setting anyone could turn on.
← PreviousPage 5 of 27Next →