skysight-inc/HackerNews huggingface dataset:
Some things that don’t measure whether a developer is “good”:

- # LoC added, changed, removed

- number of points earned in a sprint, when those points aren’t quantitatively indicative of business value, and they never are

- number of on or off-the-clock hours schmoozing with others to solidify relationships with the business and “play the game”

- number of times they “sound like good developers / intelligent people” in meetings or presentations

- number of weeks they spent on really complex problems they worked to solve when they could have provided more incremental value earlier much more quickly

- number of solutions they provided the company quickly while leaving many times more LoC to maintain

- number of hours they spent honing code, formatting, updating to the latest versions but doing so for their own edification and preferences rather than focusing on the team and the business and what would help them

and so many more...
The Reasoning Token Explosion
Visualizing Optimisation Algorithms (2018)
They just did this:

"As an added security measure, we’re requiring that all customers choose a new password unique to 23andMe.
To proceed, please reset your password."

I did my test over 10 years ago and lost access to that email.

NICE.
I've had some thoughts on programming practice somewhat related to Tim's role, and some on language design this morning.

I write code for others to read a lot, to explicitly teach them how to do something. This code has always been overly verbose, "decompressed" and teaches people the thought process behind a solution above being a "neat" solution. I was dragged a little reluctantly into this style, by being forced to anticipate all the ways the code may be misunderstood ahead of time -- by all the ways it was misunderstood previously. Its much less work for me to be verbose up-front, than fix misunderstandings later.

After watching and looking at some of the best systems programming code/coders -- I've come to think this is just the best way to program in general.

The latest program I wrote this way, and the quality of code is vastly higher. No abbreviations, any unusual coding practice (eg., conditional imports, using classes as namespaces rather than object templates, etc.) I noted briefly in comments to highlight it's unexpected. Any functions which are domain/app-specific have execessively long names which fully describe that step/asepct of the solution. Extensive design comments where my thinking is noted. etc.

Programs which teach their readers how to think about the solution, rather than how to understand the code -- and teach it to a "smart junior" rather than to an expert. I think this is different than literate programming, and of the maxim "code is read more than written" -- it's a specific "educational ethic": code isnt clean, or literate, or readable -- its educational.

If this is the best way for "programming in the large", then a property of programming languages follows: languages which enable the programmer to "decompress" their thoughts over many lines are preferable to ones which hinder this. This I think then explains something about the uptake of functional languages -- which resist this decompression of thoughts over lines of code. They are often sold on their conciseness -- as if a 200 line C++ ought be reduced to a 10 line F# program. This trades the wrong sort of productivity: long-lived large programs require programmers to build mental models of them far more often than they require them to add to them at-scale. A programmer self-teaches the code base more often than they write it: this isnt about reading.

This goes somewhat to the role of Tim in OP. Perhaps the right software engineering programming practice is to write code as-if you are pairing with a new programmer in the future. To verbalise everything Tim would say, already, in the code.
The worst programmer I know literally could not go a day without either checking in code that did not compile or saying something creepy and sexual in a large open plan office, and we all worked together to get them fired.
It's both at the same time,

Here's Nigeria: https://en.m.wikipedia.org/wiki/Demographics_of_Nigeria

that population growth, combined with somewhat sudden climate change and droughts and famines, and ensuing armed conflicts, does look like a possible upcoming catastrophe, I'd say

While in China, Korea etc yes it's the opposite
That's kind of the point.

Man eats pork.
Man gets sick.
Man believes God made him sick for eating pork.
How did the manager not know Tim didn't have tickets slated for him ? How did Tim not even pick up some (at a lower capacity) and then still helped with the remaining time ?

I guess as someone who does a lot of the same that Tim is doing,and I bet others can resonate, I still "have to" pick up tickets and I think that's always the expectation in any job I've had as an IC. Is Tim managing his time well ?
And they used to be more in control? Epidemics wiping out whole families? Gulags, concentration camps? Religious violence? Persistent threat of starvation death that was just the norm of life? One year of crop failures, and your kids are dead. Two years, and you are dead yourself. And it doesn't depend on you at all, just bad luck (if there was too much luck - like a generation without crop failures - population doubled, then just one year of crop failures meant you were dead). And yeah, the Church that keeps telling people that they were all sinners and will burn in hell, very comforting. Tell me about "control of one's own destiny".
Singular Value Decomposition and its applications (with interactive examples)
Clustering is a poorly defined task. What constitutes a cluster, separation by euclidean distance? That's not scale invariant.

The representation and clustering algorithm should be optimized for the downstream task.
That's a very slanted way of phrasing "abusing executive powers".
Deep vs. Shallow Go Interfaces
Migrating birds use quantum mechanics to navigate
From deep in the article:

"
Jensen drove the point home by discussing how these innovations have made him the “Chief revenue destroyer”. He further illustrated this by highlighting that Blackwell had an up to 68x performance gain over Hopper, resulting in an 87% decline in costs. Rubin is slated to drive even more performance gains – 900x that of Hopper, for a 99.97% reduction in cost.

Clearly, Nvidia is pursuing a relentless pace of improvement – as Jensen puts it: “When Blackwells start shipping in volume, you couldn’t even give Hoppers away”
"
> * multiple options can be combined: -abc is the same as -a -b -c

> * option values can be separated by a space, equal sign, or nothing: -a1 -a=1 -a 1 are all equal

> * options can have multiple values: -a 1 2 3 means that a is an array/slice/struct of three numbers of value [1,2,3]

while convenient, one of the reasons I dislike gnu style flags is just how inconsistent they can be and annoyingly hard to parse by humans
Every company was founded by someone and yeah they do go away at some point; for a more recent company as it grows, the founders often get more and more disconnected from the core mission of the company (at least no longer hands-on). Meanwhile they have the B.o.D. whispering in their ears (in parseltongue!) " ....ssss.... you need to hire some big company people to run this businessssss..."
"Alzheimers-like" is a thing too: https://www.research.uky.edu/news/uk-researchers-find-alzhei... (after covid). I am sure there were other studies, but I'm darned if I can find them after searching just now.
In general, command-line argument parsers should just follow the GNU style. No more, no less. Deviations confuse users as it is not immediately obvious to them what rules a parser is imposing.

> options can have multiple values: -a 1 2 3 means that a is an array/slice/struct of three numbers of value [1,2,3]

Allowing multiple values is inconsistent because you can't tell in "./cmd -a 1 2 3" whether 2 and 3 are positional arguments or arguments for -a. This is not a GNU style. The GNU way is "./cmd -a 1 -a 2 -a 3" (or "./cmd -a 1,2,3"). This package supports that, which is good.

> option values can be separated by a space, equal sign, or nothing: -a1 -a=1 -a 1 are all equal

"--a=1" is a GNU style but "-a=1" is not. This is a minor issue, though.

Also, does this package support "--"? Everything following "--" should be treated as positional arguments.
Now that I'm older I agree with you, but I would have been furious hearing this ten years ago :)
As a straight white male I also believe racial profiling does not exist because it never happened to me.
> ... much better alternatives such as the variance-ratio criterion (VRC) of Calinski and Harabasz [6], the Bayesian Information Criterion
(BIC), or the Gap statistics should always be preferred instead.

That's fair.

And: clustering algorithms are unsupervised by definition, therefore there is no correct answer.

In my experience, the use case almost always controls which algorithm (k-means, DBSCAN, etc.) will be best as well as the parameters chosen, e.g. k if that is available.
If you know of some way that is logically coherent, and can demonstrate it via standard proof notation, then you should definitely publish it.

And become the most famous human being to have ever existed…
It never occurred to me that a rebuttal to "not using lines of code or bugs solved because it can be gamed" is just to point out productivity is literally always gamed
How does a crawler become verified and blessed by Cloudflare?
Average "healthy" body temperature is down more than half degree exactly because of reduction in inflammation. People used to have very unsanitary lives and were fighting infections nonstop. 37.0C was the "normal" body temperature when the "norm" was first discovered in the early XIX century, now it's considered to be a sickness already.
If you want a degree get a degree. All the concerns you list are the least hard part of getting a degree.

Giving yourself permission to get a degree...permission to live your actual values...permission to make yourself happy...those are the hard part. Good luck.
If you end up dealing with a chronic disease that medical doctors completely fail in dealing with, you naturally get driven to look at “alternatives”. There’s a lot of nonsense out there - but some of it works. As a former skeptic I’m now much less dismissive of these things due to my own circumstances. Particularly when I can see that poor medical treatment over the years actually exacerbated my condition and being less skeptical could have improved my quality of life significantly sooner.
The problem is that the cheap books have already had their signatures cut into individual pages so that they can be perfect bound, basically running a strip of hot melt glue down the binding edge. At this point, you cannot rebind the pages in a way that will compare to the strength and durability of the original signatures.
It looks like a great overview of recommendation systems. I think my main takeaways are:

1. Latency is a major issue.

2. Fine tuning can lead to major improvements and I think reduce latency. If I didn’t misread.

3. There’s some threshold or problems where prompting or fine tuning should be used.
how could anyone possibly know that?
I (an American -- don't blame me, I voted for Harris) traveled to New Brunswick a few years ago. Went to a pub in St. Johns and ordered a burger, medium rare. The waitress informed me that they can't do that. By law, for public health reasons, ground meet served by restaurants must be cooked at a temperature that rules out even medium rare.
I agree, organic is a very good demonstration of that. It usually is much more expensive while it's generally impossible to show it being much better quality than something that isn't bottom of the barrel.

Where it kinda make sense is for veggies/fruits that are not grown with lots of water/fertilized and are not of calibrated genetics but that just gives you better tasting products because they are not engineered for productivity and not too water stuffed and thus have a more intense taste. In practice, if you are going to cook the stuff anyway, it doesn't matter much, it really makes a difference on stuff with no/low transformation.

Everything else "organic" is basically bullshit. Very often, they will sell you worse products at a premium (like the trend of "complete" pasta, where you get to pay more for fibers you can't digest and have bad taste).

I don't think paying more leads to anything indeed. What matters is the actual product choice, but it takes time and you need to be informed a lot, so most people are not able or unwilling to make the effort.

Someone who has time/money can make the effort of going to the local butcher, the preselection is almost guaranteed to be better but that's something only the richest can do nowadays.
IBM hasn't been a primarily consulting company since they split into two in 2020. The one you were probably thinking of is now called Kyndryl.

https://www.kyndryl.com/us/en

IBM still has a consulting business, but focus on AI, so if anything "replacing human programmers" would be their breads and butter.
Does it throw an exception when it fails to parse?
It's not just the French researcher (and I agree with you about the CBP's suspect official statement); three members of a British punk band were also recently denied entry for an "another issue, which they wouldn’t disclose": https://consequence.net/2025/03/uk-subs-detained-denied-entr...
Hmm...

The "war on drugs" probably brings violence associated with drugs, but drugs in general bring harm (when someone becomes an addict or dies because of an overdose, it does harm to the relatives). Nobody would care about drugs if it didn't.
How is that better than embeddings? You’re using embeddings to get a finite list of keywords, throwing out the extra benefits of embeddings (support for every human language, for instance), using a conventional index, and then going back to embeddings space for the final LLM?

That whole thing can be simplified to: compute and store embeddings for docs, compute embeddings for query, find most similar docs.
Show HN: Automated Debugger for Any Language (MCP and VS Code)
Idk how you debug tricky bugs, but I usually don't just stare at the code and take a guess. So I don't fault LLMs too much for being wrong in that scenario. So a couple months ago I built a vs code extension to let the llm debug the same way humans do- placing breakpoints and evaluating expressions in stack frame.

Works pretty well.

It's an mcp server so works with any mcp client and because it uses vs code debugging API, it's language agnostic.

MIT Open Source - Contributions welcome

https://marketplace.visualstudio.com/items?itemName=JasonMcG...
Glad to hear that Tim stayed and author managed to steer the entire process towards the right direction. Which requires a listening manager.

I experienced the "bad ending" of this productivity metric trickle down: OKR. This startup wanted not just team-based 3-month review Objective Key Result but also individual one, and on top of it, tied stock option to OKR. It was a robotics startup so very cross-domain teams (Software, Hardware, Embedded, DevOps, HW design, HW testing, HW maintenance etc etc).

The result? Developers became lonely islands. There were no "Tim" anymore. When I (Software Integrator) encountered an issue, that I just couldn't figure out but had a hunch it must be a deep-rooted issue, went to the expert (control/kinematics) for feedback. The answer I got was "I'm sorry I really want to help you but my OKR deadline is very close, and I simply don't have time". He could've probably fixed it in a day or less, but it ended up taking 2 weeks.

The problem turned out to be quite deep: inside layer upon layer of C++ mega monorepo, I found that boost library and a custom kinematics library had implicit struct copy and the different libraries (more than two) used different order for representing translation & rotation (xyz, rpy, Euler, Quaternion) and all of the ordering of each components were different. Somehow over 2 years of operation nobody got troubled by this until our new team had to use it.

Afaik I reported it to the Software team, but again, because OKR, nothing was done about it.
I find this unlikely. Do have some real world evidence for this? Microbenchmarks are not at all useful for this stuff in my experience. For speed: In the uncontended case, which is what we mostly care about because if you're contended it's game over for speed, they're both a single atomic CAS, so that's no difference.

In terms of size, the pointer is bigger than you'd want - it's no pthread_mutex or the analogous Windows data structure where it's a multi cache line disaster of a data structure - but it's clearly worse than a futex or WaitOnAddress solution.
People of a revolutionary (or "innovative") temperament are those who are going to say, "this system doesnt work, these processes are broken, the wrong outcomes arise" and ignore them. In doing so they just "do the right thing" in their judgement, and in so doing, develop the next iteration on the processes that others will follow.

If these innovators are operating in a niche where innovation is required, they are solving different problems than most others and have different self-defined standards ("narcissism"), and so on.

Probably many people who visit HN have this temperament, and a significant number are in niches which need to evolve this way (eg., this applies to all startups). HN is a small sample of engineers: most don't go to websites to conceptualise their own activity, reflect, etc. These are indications of people with a desire to innovate, or to solve novel problems in their profession.

If you are in a highly stable environment, with effective processes, etc. then people of this temperament can be trouble if left entirely to their own devices: good managmenet would place them in projects/areas where there is some unknown unknowns to figure out.

In many cases however, people without this temperament (say, "it works, dont break it, conservatives") find this behaviour unsettling, arrogant, disruptive, isolating -- because it is. There isn't any thing to "communicate" when you havent figured out what the solution is -- you can air your thought process every day, but that will just unsettle more people when they see how much it changes (in response to more thkning, information, etc.). And the values by which this change takes place are not conservative, they're radical and imposed by a person who sees a route out of a predicament and so on. It's quite arrogant to place yourself in that position, or think it's yours by some invisible duty that no one else has.

In any case, if you operate in this niche, esp. eg., if you're in a start up environment -- then you arent going to care a jot about this "real world". They are acting against the real world, to improve it.
I think there is something to viruses being a big agent of aging. I'm 40 and recently came down with a bad case of norovirus, followed by some kind of flu-like thing. 3 weeks of illness. Afterwards, I felt as if I had aged 10 years, and looking into the mirror it was like looking at what I will probably look like at 50.

It made me wonder how much of aging is mediated by damage from infection, which we fight off, but come out of weaker for it.

It certainly makes me want to double check all my vaccines, and once my kids are older, practice a little better hygiene including things like masking up in tight spaces (pretty much impossible with a 6 and 9 year old in the house, they are the vector right now).
> the problem is trivially fixed by management by attaching tim’s name to any tickets he may have helped out on.

I don't think this comes even close to solving the problem. This in fact makes the problem worse, because a) you admit the metric is shit and does not reflect work, b) you opt to keep the bullshit metric but instead try to manipulate it to bump the score under some scenario. That's not desirable outcome by any metric.

In the end you're building up a system where everyone participating in it knows it's a fraude but just keep gaming it because they become too heavily invested in it.
Also, stop using k-means
I gave them my traffic and they wanted to verify I'm a human
Was Tim hired as a teacher or trainer? What I find strange is that it sounds like Tim was not doing any individual work.

As a very experienced programmer, I'm sure that I could increase the productivity of other programmers by pairing with them all day. However, is that actually the best and most productive use of my time? In my estimation, I think that overall team productivity would be maximized if I spent approximately 20% of my time pairing with others and 80% on individual contributions. (That's a rough estimate; it could be 25/75 or 30/70.) The article said that Tim was "patient", but perhaps he was too patient, wasting a lot of his time that could be spent accomplishing other things.
> I am not from the US, so I am not trying to be apologetic for anyone.

You do not have to be from country X to produce apology for them.

> His moral stance is irrelevant if you just want to weigh the odds of a war happening.

It is super relevant. With a moral person as a president, the attempt for annexation and steal wont happen. With immoral one, it is significantly more likely.

> At the end of the day, most of the world is run by interests

Current American politics is highly emotions driven. Trump, Musk, Vance ... they are all very emotional people rather then cold calculators. A lot if not everything is about how they feel.
Delta Plane Crash Investigation Preliminary Report [pdf]
> The end goal is to initialize something no more than once, right?

Took me a while to understand as well. They unregister the handler at the end of the critical section, so the requirement is not "no more then once ever", it's "no more than once at the same time".
Seems like he's just shilling for the (Indian-dominated) 'in-shoring' (H1Bs) and 'outsourcing/offshoring' industries, both of which IBM has been rather active in, the last decade or two.

I think AI will benefit more senior 'architectural' programmers the most.

It won't completely replace programmers of course, and certainly not in 6 months, but it will quite likely substantially reduce the need for the boiler-plate programmers typical of the offshore and H1B industry.
As long as I have access to the resulting model, sure. I thought I made that clear. Copyright is not as important as reaching the next stage of our intellectual evolution. Current-gen AI may not be sufficient to reach that stage, but I believe it is a necessary step.

Like the author of this screed, my work went into training every major model. I get paid back every time one of those models helps me learn or do something. The injustice, if it happens, will occur when a few well-heeled players like OpenAI succeed in locking the technology up with regulatory capture or (worse) if a few greedy, myopic assholes render it illegal or uneconomical to continue development by advocating copyright maximalism.
Interesting, cool insight

> any unusual coding practice (eg., conditional imports, using classes as namespaces rather than object templates, etc.)

Why ever do that kind of stuff though ;__;
This is one of those interesting mathematical attempts to formalize a very human “I know it when I see it” quality. So maybe k-means is a poorly defined task if you don’t know k. Then you end up with the meta task of defining k, which has its problems, as seen in the paper. K-means alone, on some unknown data, without knowing the distance metric, and with no other heuristics or analysis, is going to go wrong. But if you are performing a dataset specific task, in a known vector space, with a good understanding of the outcome, then it’s really useful. The problem is probably that people learn that k-means is an unsupervised learning algorithm, and apply it incorrectly.