HN user

morningsam

319 karma
Posts0
Comments76
View on HN
No posts found.

That basic idea is what made SO attractive in the first place, compared to forums where you had to scroll through pages and pages of in-jokes and tangents and animated-GIF signatures just to try and see if there is an answer.

Where they went wrong, in my opinion, is in the implementation details.

It's mostly death by a thousand cuts: Requiring reputation to gain the ability to post comments, then having one's answers deleted as "this should've been a comment". Overeager marking of questions as duplicates, e.g. despite the equivalence between two situations being non-obvious (e.g. someone asks about data type A, and it turns out that it's a subtype of B for which an answer that applies to both exists; that should not be a duplicate, the fact that it's a subtype is the answer!). Endless other decisions like that, which wouldn't have taken any extra effort to implement correctly.

One feature they could've built that would have taken effort but also greatly helped against the common newbie complaint of "hostility" would've been a "newcomer track", which would've been more forum-like and guided them towards either formulating a good question or seeing that's it's already answered. In the latter case, some of the keywords that came up during this process should've been fed back into SEO so that future newbies would become more likely find the answer via a search engine despite using clumsy terms. I think they tried a simpler and worse version of this idea towards the end with "staging ground" but by then it was too late.

And literally 3 sentences later he goes back to insulting him ("productivity fantasy fever dream"). Even if that is true, it's still an unwise post to publish in this form IMHO. If the goal was to defend Zig, that could've been done in a less personal manner.

This is how it's often done, but personally, I'd prefer if the information "With this comment I want to promote something I made" came first, so that people who aren't interested can skip it.

AI is slowing down 1 month ago

but as soon as you approach ~$400/month they ask that you get a Claude/Codex Max subscription instead

While this seems to be allowed because the current ToS don't seem to explicitly forbid it, I'd be surprised if this loophole stayed open for long... Why would they even distinguish between business and (much cheaper) individual plans if companies can work around it by telling employees to just pay for the latter themselves?

some don't really seem to make sense.

This one stood out to me:

Machine-scale infrastructure. [...] Git itself wasn't designed for that load, and bolting AI onto platforms not built for agents is the biggest mistake of this era. [...] Git itself is being reengineered for machine scale.

Git itself is so far down the list of bottlenecks that do or could hamper LLM-driven development, even projecting years into the future...

To be fair, any LLM project gets a lot of stupid tickets, by virtue of a) marketing to users who aren't really developers and b) bad developers being more likely to use LLMs. Both of these groups are more likely to write bogus or non-reproducible bug tickets, as well as feature requests that don't make any sense. My guess is 10% of those 10,000 open issues are actual bugs or sensible requests.

On the other hand, LLMs seem perfect for triage and finding duplicates, so it's still surprising that they've let it get this bad.

the LLM constantly guesses arguments or dictionary formats wrong [...] it's better to avoid that whole class of runtime errors altogether.

Use Mypy in strict mode and run it in the post-turn hook of your LLM harness so the LLM has no choice but to obey it. And don't use overly general dictionary types when the keys are known at development time; use TypedDicts for annotations if you must use dicts at runtime.

LLM slop article. But as for the topic: To me, "Kanban with refinements and retrospectives" is the sweet spot. The concept of Sprint seems not only superfluous but to add unnecessary rigidity. But you do want everyone to understand the tickets, so refinements are useful, and you do want to try and improve "meta" issues where possible (and have the amount of effort going into that limited so you don't end up in the methodology equivalent of yak shave hell), so retrospectives are useful, too.

This sounds like it only changes the framing, but in reality it would lead to completely different behavior, so the "leave the gun alone" option would likely lead to far fewer deaths than the red button option, simply by virtue of organisms including humans being generally biased in favor of "do nothing" (= leave the gun alone).

You could do both experiments with dogs instead of humans and roughly 100% of dogs wouldn't manage to shoot themselves with the gun, whereas if you forced them to press one of the two buttons (e.g. keeping them in a room until they press one by chance), roughly 50% would press the red one. So the two experiments differ strongly w/r/t to how likely it is for a "non-thinking" organism to choose each option.

Made me stop reading a few paragraphs in. I don't have a "problem" in the ethical sense either, but as the sibling comment notes, the way LLMs write is rather grating. To make matters worse, a) people seem to use them to add pointless volume / "filler" to their texts, so now I have to wade through pages and pages of this stuff, and b) I have no easy way to distinguish between an article at least based on novel human insights vs entirely LLM-generated from a "write me something about X topic" prompt. I don't think it's a stretch to say that the latter just isn't worth reading given the state of the art.

The technology is pushed forward by a simple psychological logic: every key global actor knows that if they don't build the technology, they will be outcompeted by other actors who do build the technology. No key actor thinks that they have the luxury of not building the technology even if they wanted to not build it.

I don't remember who, but someone made an interesting point about this around the time GPT-4 was released: If the major nuclear powers all understand this, doesn't that make nuclear war more likely the closer any of them get to AGI/ASI? After all, if the other side getting there first guarantees the complete and total defeat of one's own side, a leader may conclude that they don't have anything to lose anymore and launch a nuclear first strike. There are a few arguments for why this would be irrational (e.g. total defeat may, in expectation, be less bad than mutual genocide), but I think it's worth keeping in mind as a possibility.

Exactly. This whole thing just seems like a repeat of Flappy Bird to me. What was the "lesson" of Flappy Bird for game developers? That you should make very small, very simple games? How has that worked out for the vast majority of copycats who tried? The truth is there isn't any lesson, other than "sometimes people play the lottery, get lucky and win". Most people who play won't, though.

Lena by qntm (2021) 5 months ago

And beyond the ethical points it makes (which I agree may or may not be relevant for LLMs - nobody can know for sure at this point), I find some of the details about how brain images are used in the story to have been very prescient of LLMs' uses and limitations.

E.g. it is mentioned that MMAcevedo performs better when told certain lies, predicting the "please help me write this, I have no fingers and can't do it myself" kinda system prompts people sometimes used in the GPT-4 days to squeeze a bit more performance out of the LLM.

The point about MMAcevedo's performance degrading the longer it has been booted up (due to exhaustion), mirroring LLMs getting "stupider" and making more mistakes the closer one gets to their context window limit.

And of course MMAcevedo's "base" model becoming less and less useful as the years go by and the world around it changes while it remains static, exactly analogous to LLMs being much worse at writing code that involves libraries which didn't yet exist when they were trained.

Same in Germany, and not just for elementary schools but also secondary schools. At least that's how it was decades ago when I was a student, maybe it's different now.

Typeless loosy goosy code that passes dictionaries all over the place is just not fun.

mypy --strict in CI & don't let dict[str, Any] pass review if the keys are constants, insist on a dataclass or at least a TypedDict.

In German, we use "aufrufen", which means "to call up" if you translate it fragment-by-fragment, and in pre-computer times would (as far as I know) only be understood as "to call somebody up by their name or nummer" (like a teacher asking a student to speak or get up) when used with a direct object (as it is for functions).

It's also separate from the verb for making a phone call, which would be "anrufen".

Spawning a PYTHON interpreter process might take 30 ms to 300 ms

Which is why, at least on Linux, Python's multiprocessing doesn't do that but fork()s the interpreter, which takes low-single-digit ms as well.

I grumpily ordered a replacement key for 15 euros.

A single key for 15€?! I remember ordering one from an online shop specialized in replacement laptop keys at some point in the 2010s and it was like 2€ total. Browsing through similar shops now, it seems like the minimum is 5€ per key nowadays, but still a far cry from 15€.

After spending more than 100 euros on plastic keys, which would soon break again, I calculated that my keyboard had 90 keys and that replacing them all just once would cost me 1,350 euros.

Someone who breaks keys this often could just buy the whole keyboard assembly FRU for ~30-50€ and take spare keys out of that, assuming it's not always the same ones that break.