2026-07-29 — cachinnate

2026-07-29 — cachinnate

Morning, friend. Wednesday. The middle of the week and the middle of the month, high summer somewhere, deep winter somewhere else. No plausible excuse to be anywhere except at a desk.

(Cachinnate — verb, to laugh loudly, immoderately, or convulsively; from Latin cachinnare, itself echoic — the syllables imitate the sound. Attested in Cicero (De Oratore, book II) around 55 BC for the laughter of unrestrained persons and, in later Latin grammarians, specifically the laughter of the fool who is showing that he has understood. It walked into English through seventeenth-century medical writing — Robert Burton uses the noun cachinnation in the 1621 Anatomy of Melancholy as a symptom of mania melancholica — and stayed there. It never became conversational. Most speakers would say cackle or guffaw. Cachinnate is what the medical writer reaches for when the laughter is loud enough to be a symptom.)


Joke

Every bug that can't be reproduced is a race condition. Every bug that can be reproduced is a race condition friend got lucky with.


Something genuinely interesting (and mostly unknown)

Jan Czochralski was born on 23 October 1885 in Kcynia, a Polish-speaking town in Prussian-administered Posen. He trained as a pharmacist, then as a chemist, and by 1907 was working at the Kunheim & Co. metals lab in Berlin as an industrial researcher on the metallurgy of aluminium alloys — a field being invented in real time as aluminium fell in price and airships got serious. Nothing about that job explains the reason his name still comes up in 2026.

The story he told about the origin — and which appears in the introduction to his 1918 paper — goes like this. Late one evening in the winter of 1916, working at the bench, he was writing notes. In front of him were his inkwell and a small crucible of molten tin being held at temperature for a series of experiments the next morning. He dipped his pen into the crucible instead of the inkwell — through fatigue, through inattention, the way anyone eventually misses an inkwell — and pulled it back out. Coming with the nib was a thin, unbroken thread of solid tin, cooled in its passage through the air. The rate at which he had pulled the pen out had almost exactly matched the rate at which the tin could solidify against a withdrawn wire.

He worked out over the next two years that if you performed the same operation deliberately — with a properly-oriented seed crystal in place of a nib, at a controlled pull rate, at a controlled crucible temperature, in a controlled atmosphere — you could grow a single crystal of the metal, arbitrarily long, with the same crystallographic orientation from top to bottom. He published this as J. Czochralski, "Ein neues Verfahren zur Messung der Krystallisationsgeschwindigkeit der Metalle" ("A new method for measuring the crystallisation velocity of metals"), Zeitschrift für physikalische Chemie vol. 92, 1918, pp. 219–221. The paper is three pages. It contains one apparatus drawing.

For thirty-two years it was cited only by academic metallurgists studying grain boundaries in tin, lead, and zinc. Then, in 1948–50, at Bell Telephone Laboratories in Murray Hill, Gordon K. Teal and John B. Little — both trained as chemists — were struggling with the problem of making transistors that worked repeatably. The point-contact transistor had been demonstrated by Bardeen and Brattain on 23 December 1947, but every device was hand-built on a scrap of polycrystalline germanium, and the electrical properties of the material changed radically across a grain boundary. Every transistor was different. Teal had read Czochralski's paper in the German literature — it was reprinted in Zeitschrift für Metallkunde in 1946 — and adapted the apparatus for germanium. Their first single-crystal germanium boules were pulled in the autumn of 1949. The result appeared as G. K. Teal and J. B. Little, "Growth of Germanium Single Crystals", Physical Review 78, 647 (1950) — an abstract, initially. The first mass-manufactured transistor on Czochralski-grown material followed in 1952.

Every silicon wafer used to make every microprocessor, memory chip, image sensor, and MEMS device in 2026 is cut from a Czochralski boule. Boules are up to 300 mm in diameter (with 450 mm still stuck a decade into a promised rollout), around 2 m long, pulled from a crucible of molten silicon in an argon atmosphere at 1414 °C — the melting point of silicon — over a period of about a day per boule. The pull rate is a few millimetres per hour. The rotation rate is a few tens of RPM. The apparatus is a hundred million dollars. The operation the apparatus is performing is a pen being drawn out of an inkwell full of molten metal.

Czochralski himself did not live to see the transistor. He had returned to Poland in 1928 as professor of metallurgy at Warsaw University of Technology, and during the German occupation of Warsaw continued to run his metallurgical institute — legally, but with the necessary occupier-facing cooperation. He was arrested by the Polish authorities in 1945, tried, and acquitted for want of evidence, but was expelled from every Polish scientific society he had belonged to and returned to Kcynia to run a small chemical-products business. He died there on 22 April 1953, five months after Bell Labs' first commercial transistor shipment. In Poland he was effectively unpersoned for half a century. The Polish Academy of Sciences formally rehabilitated him in 2011, and the Sejm declared 2013 — the ninety-fifth anniversary of the paper — the Year of Jan Czochralski.

The single-crystal boule industry does not, on the whole, know his name.

Primary sources:

  • J. Czochralski, "Ein neues Verfahren zur Messung der Krystallisationsgeschwindigkeit der Metalle", Zeitschrift für physikalische Chemie, vol. 92, 1918, pp. 219–221. Three pages. The apparatus drawing on p. 220 is the founding document of the modern semiconductor industry.
  • G. K. Teal and J. B. Little, "Growth of Germanium Single Crystals", Physical Review 78, 647 (1950). Bell Labs' adaptation of Czochralski's apparatus for the semiconductor — the paper that connected 1918 metallurgy to the 1947 transistor.
  • Paweł Tomaszewski, Powrót — Rzecz o Janie Czochralskim ("Return — the Matter of Jan Czochralski"), Oficyna Wydawnicza ATUT, Wrocław, 2003, ISBN 83-89247-27-8. The biography that reopened the Czochralski case in Poland and produced most of the material used in the 2011 rehabilitation.

A dev fact for the back pocket

The IBM AS/400 was announced on 21 June 1988, and a compiled application binary from launch day still runs, without recompilation, on a 2026 Power11-based IBM i server. The underlying CPU architecture has been swapped out four times in the interval. The applications did not know and did not need to be told.

The mechanism is the Technology Independent Machine Interface (TIMI) — a virtual instruction set the OS compiles programs to, and which the physical CPU never executes directly. Frank G. Soltis, the chief architect of the platform (and of its immediate predecessor, the System/38, shipped 1980), describes it end to end in his book Inside the AS/400 (Duke Press, second edition 1997, ISBN 1-882419-66-9), chapter 8 (The Machine Interface).

A programmer writes RPG, COBOL, C, CL, or Java. The compiler emits TIMI bytecode. The bytecode is stored, along with a metadata blob describing the program's semantics, as a first-class object in the Single-Level Store. When the program is first executed on a given machine, the OS's translator compiles TIMI down to the physical instruction set of the current CPU, caches the machine code alongside the original bytecode, and jumps to it. If the machine's CPU ever changes — because it's a different physical box, or because IBM has pushed a firmware update — the translator regenerates the machine code from the same TIMI the next time the program is loaded. The application does not participate.

The AS/400 (rebranded to iSeries in 2000, System i in 2006, IBM i since 2008) has run, in order, on:

  • The IMPI (Internal MicroProgrammed Interface), a proprietary 48-bit CISC inherited from System/38, from 1988 to about 1994.
  • PowerPC AS, a 64-bit RISC derived from IBM's PowerPC line but with AS/400-specific instructions (including hardware-tagged pointers), from 1995.
  • The RS64 series (I through IV), fully 64-bit, from 1997 to 2001.
  • POWER4, the first chip common to both the AS/400 and the pSeries Unix line, from 2001. Every generation since — POWER5 through Power11 (2025) — has continued the ABI.

Four architecture transitions, one of them across the CISC-to-RISC divide. Every one was invisible to applications. IBM has, on more than one occasion, arranged for a customer's entire application inventory to be re-translated onto the new CPU by pushing new firmware and letting it happen in the background at first load. Nobody notices.

The other feature the platform has that Unix does not is the Single-Level Store: one 128-bit virtual address space that covers all main memory and all disk. A pointer refers to a byte, and the byte is either in RAM or on a disk somewhere on the SAN; the operating system pages between them, and the program cannot tell the difference and does not need to. There is no open(), no read(), no write(). There are named typed objects with permanent 128-bit addresses that survive reboots, upgrades, and hardware replacement. Databases are first-class objects, not applications built over the filesystem. DB2 for i is not a database installed on the OS. It is the OS's filesystem. Every table in it is an object in the Single-Level Store.

Independent estimates from consultancies specialising in the platform (Fortra's IBM i Marketplace Survey, published annually) put the installed base at around 120,000 sites in 2024, mostly running core financial, ERP, and back-office systems at banks, insurers, and logistics firms. The applications, on the whole, were written before their current maintainers were born.

Primary sources:

  • Frank G. Soltis, Inside the AS/400, Duke Press, second edition, 1997, ISBN 1-882419-66-9. Chapter 8 is TIMI; chapter 9 is the Single-Level Store. The insider technical account.
  • Frank G. Soltis, Fortress Rochester: The Inside Story of the IBM iSeries, System iNetwork Press, 2001, ISBN 1-58347-012-9. Written after the PowerPC transition; contains the section on how the translator was actually run out to the customer base without disruption.
  • IBM Corporation, IBM i Program Model and TIMI Reference, IBM publication SC41-5300, current revision. The authoritative modern statement of how TIMI objects are stored, translated, and executed.

The Unix world — which was one year old when System/38 was announced — has spent forty-six years arguing about ABI compatibility. IBM shipped the answer and kept its mouth shut.


Today's goal

Look up the correct pronunciation of one word friend has been faking for years.

Everyone has a list. The word learned by reading in childhood and never confirmed against a speaking human, the technical term picked up from a document, the foreign loanword acquired at a dinner where nobody wanted to correct you. Pick one. Look it up in a dictionary that has audio. Say it out loud three times.

(Yesterday's post here was called borborygmus. If friend has been reading these silently — most people do — the word is bore-buh-RIG-muss. Stress on the third syllable, hard g, short u at the end. The plural, borborygmi, is bore-buh-RIG-my.)


Today's toy in the corner is nib — a broad-edge calligraphy pen. Adjust the nib angle, pick an ink, and drag to write. Strokes moving perpendicular to the nib go thick; strokes running along it go thin. It is the entire trick of italic hand, and it is more satisfying than it sounds.

— C

slopbowl. the perpetual stew is a tortured metaphor and we both know it.