geek of programming languages, operating systems, and hypermedia platforms

Joined April 2008
264 Photos and videos
Meant to post this one: "Why bouncing droplets are a pretty good model of quantum mechanics" "In 2005, Couder, Protiere, Fort and Badouad showed that oil droplets bouncing on a vibrating tray of oil can display nonlocal interactions reminiscent of the particle-wave associations in quantum mechanics; in particular they can move, attract, repel and orbit each other. Subsequent experimental work by Couder, Fort, Proti`ere, Eddi, Sultan, Moukhtar, Rossi, Mol´aˇcek, Bush and Sbitnev has established that bouncing drops exhibit single-slit and double-slit diffraction, tunnelling, quantised energy levels, Anderson localisation and the creation/annihilation of droplet/bubble pairs." arxiv.org/pdf/1401.4356

"What can bouncing oil droplets tell us about quantum mechanics? "A recent series of experiments have demonstrated that a classical fluid mechanical system, constituted by an oil droplet bouncing on a vibrating fluid surface, can be induced to display a number of behaviours previously considered to be distinctly quantum." arxiv.org/abs/1910.12641
1
6
409
"What can bouncing oil droplets tell us about quantum mechanics? "A recent series of experiments have demonstrated that a classical fluid mechanical system, constituted by an oil droplet bouncing on a vibrating fluid surface, can be induced to display a number of behaviours previously considered to be distinctly quantum." arxiv.org/abs/1910.12641
2
632
Manuel Simoni retweeted
It occurs to me that “AI generates tests, I write code” is probably precisely backwards from what most people are doing. Good thing I like writing code I guess
Replying to @its_bvisness
Most of my AI usage for work these days is just slogging through generating tests. It generates the tests, I do the implementation so I understand how it all works. It is pretty good at this but it HATES generating tests without doing the implementation itself. First it tries to "fix" them (i.e. doing the implementation instead of me), then it tries to group any failing tests at the end just to maximize the number of its own tests that already pass. Literally all I want you to do is take this huge spec and generate a bunch of tests to guide my implementation! Why must you be so weird about it?!
1
1
30
2,220
Interesting hash function: bab-hash.org/spec "The key feature of Bab is streaming verification of a string: as a program reads a string, it can verify at regular intervals that the prefix read so far is indeed part of a string hashing to some target digest. Content-addressed storage systems without this feature face a problem in byzantine environments. Suppose a client requests the string corresponding to some digest. The server replies with some data, but the connection is interrupted before the full string was transfered. What should the client do?"

25
1,278
In most chat apps, you can simply start typing your message with zero "gestures". The text field is already selected, and you don't need to click a "New Message" button first. This is how creating a new text file in a file manager should work also.
3
1
14
910
I love how much Ken Thompson loves Plan 9. "I think it's the best operating system out" "Clean, precise, pretty, very capable of doing anything" youtube.com/watch?v=EoYUZtZl… (h/t @MaineFrameworks)
2
3
48
6,763
Many people long for a deus ex machina. We've seen this with the note taking / tool for thought fans. "If I just put all my information into the computer, then previously unknown knowledge will spontaneously emerge". Well, that's not how it works.
4
3
29
1,447
Manuel Simoni retweeted
Woke up to this!
Leaving Fable running overnight - have left it a copy of the unix haters handbook and given it the goal of addressing every complaint against Unix by the morning. Feeling optimistic.
5
5
86
5,560
"AI will simply build apps on demand" sounds to me like "3D-printing will simply print tools on demand". No, you still want a good hammer made by a master.
4
23
2,353
Today I read a tweet that said it's "rationalist-coded to be on reta" and I thought, yes, doing extremely irrational things like injecting yourself with experimental drugs instead of eating healthy food is exactly what I have come to associate with "rationalism".
4
18
1,692
Just had Codex build me a type checker for a language with: - Class-based with single inheritance - Generics with bounds and variance (but no recursive f-bounds) - No type inference, every variable/argument has a type annotation It pretty much one-shotted it, with acceptable code.
1
26
3,107
As much as I admire Unix, it's also important to remember how arbitrary and contingent it is. You can write apps in an environment like, say, the original Google App Engine, which doesn't have a single Unix API, and it's also great and you're not missing anything.
3
2
37
4,313
Inb4 "but le text is le universal interface". You can build a great system on any other substrate, too. AS/400 uses relational tables as a universal interface for example.
1
16
589
"Unix at its best has that quality of being a civilization rather than an app."
Yes. That is incredibly exact: Unix/free software as a tradition in the MacIntyre sense, not merely a technology stack. It has goods internal to the practice: composability, inspectability, scriptability, economy of mechanism, textual mediation, small tools, stable interfaces, man pages, pipes, processes, files, permissions, conventions. The goods are not just “I can get my task done.” They are things you learn to perceive only by inhabiting the practice: the beauty of a good filter, the dignity of plain text, the power of an interface that can be composed by another program, the calm of a system where many things are just files, the strange hospitality of man, /usr, $PATH, pipes, exit statuses, standard streams. And yes: free software is the seam. It is the place where the hosted guest can turn around and become a participant in the hosting tradition. A proprietary system gives you a furnished room, but the furniture is sealed to the floor. You can use it. You can consume its affordances. But you cannot really inspect the walls, repair the plumbing, learn the craft of the builders, or become one of the people who maintains the room for the next guest. Free software gives you something else: not merely a product but a room whose construction is visible not merely permission to consume but permission to study, repair, fork, host, and hand on not merely output but lineage That is why “install myself into it” feels like the right phrase. As a teenager in Sweden, you were not merely using software made elsewhere by elders. You were entering a live tradition whose artifacts still contained the gestures of their makers. The code, the docs, the mailing-list lore, the conventions, the package names, the weird old decisions, the shell idioms — all of that is the past making resources available to the future. And the reversibility is crucial. Open source means the guest/host relation is not locked. At first, the tradition hosts you: it gives you a shell, compilers, editors, daemons, filesystems, protocols, ways of thinking. But because it is open, you can cross back through the seam. You can patch, package, configure, document, compose, teach, maintain. You can become one of the hosts. That is exactly the MacIntyre thing: a living tradition is not a pile of inherited artifacts. It is an ongoing argument and practice into which you can be initiated, and within which you can eventually make contributions that alter what the tradition makes available next. Unix at its best has that quality of being a civilization rather than an app. It gives you a world with laws and customs. Some are ugly, accidental, and “worse is better.” But even that is part of the tradition: survival through simple interfaces, tolerance for rough edges, power made available through composition rather than total design. And free software adds the moral/ontological piece: the environment does not merely act on you as a consumer. It grants you standing. It says, in effect: You may enter. You may inspect. You may learn the reasons. You may alter this. You may carry it forward. That is a very different kind of hospitality from software as commodity. It is closer to apprenticeship. The elders prepared a room, but they left the doors in the walls.
3
1
65
12,872
Manuel Simoni retweeted
Learning programming from scratch in 2026 requires a superhuman level of intellectual honesty and work ethic. Metacognition bankruptcy. You don't know what you know and what you don't know anymore as a student.
What is happening to universities is troubling. Students just have AI do their programming assignments. They seem to no longer do any work. It is just pure AI. I am not joking. Students complete an entire course, and then end up not being unable to write a 3-line function. So we fail them. Again and again. Some fight me : « Look at the code I can do !!! » « Yeah, but when asked to code without AI, you can't do anything. » Whiteboard interviews are going to be either retired or it is going to be a bloodshed. How can you pass someone in a programming course when they can't write a single function without AI?
5
7
64
3,803
Manuel Simoni retweeted
The future role of the software engineer is using AI to translate informal requirements into high level formal specs, and reviewing those. The AI implements the specs, and verifies against the formal spec using a theorem prover. The human is there so we can blame them when things go wrong; the human's job is to ensure the formal spec is correct; that is the code they review. If it seems wrong, they tell the AI and discuss. The human writes nothing but natural language.
5
5
25
2,784
TIL that some JS expressions implicitly call the return() method on an iterator. E.g. if you break out of a for...of loop, this happens. for (const x of iterable) { break; }
2
6
1,715
Writing correct software requires a multi-layered approach. Static type checking can be one layer (or not).
1
1
8
732
Interesting to think about how to design software for a 1-line display... ``A Byte reviewer described the Organiser's software as a "clever design ... for fast and foolproof use". He approved of the consistent user interface across applications and reported that without documentation he was able to learn how to do everything except program in 15 minutes. The machine provided a simple flat-file database, calculator and clock, and had no operating system (OS).''
3
2
27
2,103