this post was submitted on 29 Dec 2025
20 points (100.0% liked)

TechTakes

2350 readers
44 users here now

Big brain tech dude got yet another clueless take over at HackerNews etc? Here's the place to vent. Orange site, VC foolishness, all welcome.

This is not debate club. Unless it’s amusing debate.

For actually-good tech, you want our NotAwfulTech community

founded 2 years ago
MODERATORS
 

Want to wade into the snowy surf of the abyss? Have a sneer percolating in your system but not enough time/energy to make a whole post about it? Go forth and be mid: Welcome to the Stubsack, your first port of call for learning fresh Awful you’ll near-instantly regret.

Any awful.systems sub may be subsneered in this subthread, techtakes or no.

If your sneer seems higher quality than you thought, feel free to cut’n’paste it into its own post — there’s no quota for posting and the bar really isn’t that high.

The post Xitter web has spawned soo many “esoteric” right wing freaks, but there’s no appropriate sneer-space for them. I’m talking redscare-ish, reality challenged “culture critics” who write about everything but understand nothing. I’m talking about reply-guys who make the same 6 tweets about the same 3 subjects. They’re inescapable at this point, yet I don’t see them mocked (as much as they should be)

Like, there was one dude a while back who insisted that women couldn’t be surgeons because they didn’t believe in the moon or in stars? I think each and every one of these guys is uniquely fucked up and if I can’t escape them, I would love to sneer at them.

(Last substack for 2025 - may 2026 bring better tidings. Credit and/or blame to David Gerard for starting this.)

you are viewing a single comment's thread
view the rest of the comments
[–] flaviat@awful.systems 9 points 5 days ago (17 children)
[–] sailor_sega_saturn@awful.systems 9 points 5 days ago* (last edited 5 days ago) (16 children)

https://github.com/leanprover/lean4/blob/master/.claude/CLAUDE.md

Imagine if you had to tell people "now remember to actually look at the code before changing it." -- but I'm sure LLMs will replace us any day now.

Also lol this sounds frustrating:

Update prompting when the user is frustrated: If the user expresses frustration with you, stop and ask them to help update this .claude/CLAUDE.md file with missing guidance.

Edit: I might be misreading this but is this signs of someone working on an LLM driven release process? https://github.com/leanprover/lean4/blob/master/.claude/commands/release.md ??

Important Notes: NEVER merge PRs autonomously - always wait for the user to merge PRs themselves

[–] flaviat@awful.systems 8 points 5 days ago* (last edited 5 days ago) (6 children)

Yes, they are trying to automate releases.

sidenote: I don't like how taking an approach of mediocre software engineering to mathematics is becoming more popular. Update your dependency (whose code you never read) to v0.4.5 for bug fixes! Why was it incorrect in the first place? Anyway, this blog post sets some good rules for reviewing computer proofs. The second-to-last comment tries to argue npm-ification is good actually. I can't tell if satire

[–] Seminar2250@awful.systems 8 points 4 days ago (1 children)

I don’t like how taking an approach of mediocre software engineering to mathematics is becoming more popular

would you be willing to elaborate on this? i am just curious because i took the opposite approach (started as a mathematician now i write bad python scripts)

[–] flaviat@awful.systems 9 points 4 days ago (2 children)

The flipside to that quote is that computer programs are useful tools for mathematicians. See the mersenne prime search, OEIS and its search engine, The L-function database, as well as the various python scripts and agda, rocq, lean proofs written to solve specific problems within papers. However, not everything is perfect: throwing more compute at the problem is a bad solution in general; the stereotypical python script hacked together to serve only a purpose has one-letter variable names and redundant expressions, making it hard to review. Throw in the vibe coding over it all, and that's pretty much the extent of what I mean.

I apologize if anything is confusing, I'm not great at communication. I also have yet to apply to a mathematics uni, so maybe this is all manageable in practice.

[–] corbin@awful.systems 4 points 1 day ago (2 children)

One important nuance is that there are, broadly speaking, two ways to express a formal proof: it can either be fairly small but take exponential time to verify, or it can be fairly quick to verify but exponentially large. Most folks prefer to use the former sort of system. However, with extension by definitions, we can have a polynomial number of polynomially-large definitions while still verifying quickly. This leads to my favorite proof system, Metamath, whose implementations measure their verification speed in kiloproofs/second. If you give me a Metamath database then I can quickly confirm any statement in a few moments with multiple programs and there is programmatic support for looking up the axioms associated with any statement; I can throw more compute at the problem. While LLMs do know how to generate valid-looking Metamath in context, it's safe to try to verify their proofs because Metamath's kernel is literally one (1) string-handling rule.

This is all to reconfirm your impression that e.g. Lean inherits a "mediocre software engineering" approach. Junk theorems in Lean are laughably bad due to type coercions. The wider world of HOL is more concerned with piles of lambda calculus than with writing math proofs. Lean as a general-purpose language with I/O means that it is no longer safe to verify untrusted proofs, which makes proof-carrying Lean programs unsafe in practice.

@Seminar2250@awful.systems you might get a laugh out of this too. FWIW I went in the other direction: I started out as a musician who learned to code for dayjob and now I'm a logician.

[–] blakestacey@awful.systems 4 points 1 day ago

Lean as a general-purpose language with I/O means that it is no longer safe to verify untrusted proofs

This is darkly funny.

[–] flaviat@awful.systems 3 points 1 day ago* (last edited 1 day ago)

Thank you for the links

Junk theorems in Lean are laughably bad due to type coercions.

Those look suspicious... I mean when you consider that the set of propositions is given a topology and an order, "The set {z : ℝ | z ≠ 0} is a continuous, non-monotone surjection." doesn't seem so ridiculous after all. Similarly the determinant of logical operations gains meaning on a boolean algebra. Zeta(1) is also by design. It does start getting juicy around "2 - 3 = +∞" and the nontransitive equality and the integer interval.

[–] Seminar2250@awful.systems 8 points 4 days ago

no need to apologize, i understand what you mean. my experience with mathematicians has been that this is really common. even the theoretical computer scientists (the "lemma, theorem, proof" kind) i have met do this kind of bullshit when they finally decide to write a line of code. hell, their pseudocode is often baffling


if you are literally unable to run the code through a machine, maybe focus on how it comes across to a human reader? nah, it's more important that i believe it is technically correct and that no one else is able to verify it.

load more comments (4 replies)
load more comments (13 replies)
load more comments (13 replies)