The video of my #FOSDEM 2026 talk on integrating the Fourth Research Edition Unix tape into the GitHub Unix history repository is now available online: ftp.belnet.be/mirror/FOSDE...
02.02.2026 22:21 — 👍 9 🔁 3 💬 0 📌 1@coolsweng.bsky.social
Professor of software engineering at AUEB and software analytics at TU Delft, programmer, technology author. https://www.spinellis.gr/ (Tech tweets here. Follow @DSpinellis for Greek/Greece tweets.)
The video of my #FOSDEM 2026 talk on integrating the Fourth Research Edition Unix tape into the GitHub Unix history repository is now available online: ftp.belnet.be/mirror/FOSDE...
02.02.2026 22:21 — 👍 9 🔁 3 💬 0 📌 1The discovered Fourth Edition tape (photo credit Rob Ricci)
Several news outlets reported the amazing discovery of a 1970s Fourth Edition Research Unix magnetic tape. I incorporated the tape’s source code into the Unix History Repository hosted on GitHub and studied the code’s composition. Here's what I found.
www.spinellis.gr/blog/2025122...
Now I did: literally LoL!
04.12.2025 14:11 — 👍 2 🔁 0 💬 0 📌 0The LaTeX Korrektor: A funny video series addressing serious LaTeX style infractions. Andreas Zeller (a German), like Dr. Strangelove, convincingly fakes familiar stereotypes. (He also suggests compounding German words as an alternative to the em-dash.)
04.12.2025 13:56 — 👍 3 🔁 0 💬 1 📌 0I also get substantial benefit from it, so I can't say it is. I think it's more akin to nuclear energy: bit potential, big risks.
07.11.2025 15:36 — 👍 4 🔁 0 💬 0 📌 0PR diff
I just received an AI-generated GitHub pull-request that incorrectly replaced 450 test code lines with a comment. Be VERY CAREFUL when reviewing out-of-the-blue PRs these days. AI-generated ones are likely to contain difficult-to-spot faults hidden as plausible fixes.
github.com/dspinellis/g...
Στις 5 Νοεμβρίου λήγει η διορία της διαδικασίας έκδοσης του Προσωπικού Αριθμού.Με τη γεννήτρια γραμμάτων προσωπικού αριθμού μπορείτε να επιλέξετε εσείς έναν καλό συνδυασμό γραμμάτων για τον προσωπικό σας αριθμό. Θα τη βρείτε στο www.balab.aueb.gr/genpa/
01.11.2025 20:17 — 👍 3 🔁 4 💬 0 📌 0I just added a note in the advice for writing LaTeX documents GitHub repository to avoid using the “itemize” environment, when you're describing elements. The “description” environment is better for this purpose.
github.com/dspinellis/l...
A feature in Nature journal published today takes us through the fascinating and frightening world of fake authors, reviewers, and articles. It mentions my recent work on fake articles attributed to known scholars.
www.nature.com/articles/d41...
Process tree output.
Fun, fun, fun! I'm running a binary tournament merge to combine 64 SQLite databases (83 GB in total) into one. More details in doi.org/10.1109/MS.2...
18.10.2025 11:27 — 👍 39 🔁 3 💬 1 📌 1A big problem with reviewing GenAI-written text is that it is often (by design) very plausible but it can also be incorrect or superfluous, therefore requiring substantial concentrated effort to detect.
09.10.2025 12:57 — 👍 8 🔁 2 💬 1 📌 0Real backups must to be automatically maintained as multiple encrypted, integrity-checked, tested, monitored, and documented historical copies, on different media, offsite, and offline or immutable.
07.10.2025 06:33 — 👍 1 🔁 2 💬 0 📌 0RAID, snapshots, Apple Time Machine, Windows Volume Shadow, cloud storage, availability zone mirroring, database replication, Git/GitHub, DRBD. These are all useful, but NOT true backups.
07.10.2025 06:33 — 👍 1 🔁 2 💬 1 📌 0Following the permanent loss of 858TB data due to a fire in a South Korea government datacenter, here's a reminder on the several technologies that are NOT backup solutions:
koreajoongangdaily.joins.com/news/2025-10...
Saw the following hidden deep inside the Linux kernel arm compilation commands. I don't think that the arguments were arbitrarily ordered 😃
ar mPiT init/main.o vmlinux.a arch/arm/kernel/head.o
Why I Choose Email Over Messaging
My colleagues and friends know that I prefer to communicate with them via email rather than chat messaging. There are many benefits in such a choice. You may want to consider them and adopt the same stance.
www.spinellis.gr/blog/2025092...
The proposed changes are well reasoned and documented. More thought could have been given to asking for shorter proposals. A good proposal takes months to write, which is time not devoted to research.
23.09.2025 20:39 — 👍 1 🔁 0 💬 0 📌 0Checking uu_sed v0.0.1 (/xfs/dds/sed/src/uu/sed) error: manual implementation of `.is_multiple_of()` --> src/uu/sed/src/fast_io.rs:869:8 | 869 | if (out_off + head_align) % block_size != 0 { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `!(out_off + head_align).is_multiple_of(block_size)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_multiple_of = note: `-D clippy::manual-is-multiple-of` implied by `-D warnings` = help: to override `-D warnings` add `#[allow(clippy::manual_is_multiple_of)]`
With all the GenAI buzz we tend to forget the value of 100% correct deterministic tools. Thank you Rust clippy!
19.09.2025 17:35 — 👍 13 🔁 4 💬 0 📌 0TIL that setting Turnitin checks to *include* bibliographic references (a check typically disabled, as it generates false positive matches) can help identifying hallucinated generative AI references (as these are less likely to appear elsewhere).
05.09.2025 23:09 — 👍 5 🔁 1 💬 0 📌 0A special place in Hell is reserved who those who create in their programs custom editing areas where the operating system's keyboard editing bindings, copy, paste, and our macros stop working.
30.08.2025 19:35 — 👍 6 🔁 1 💬 0 📌 0Since search is dead, how soon do you think Google Scholar is headed for the Google Graveyard? I'm betting it's soon, and academia is NOT prepared
13.08.2025 01:28 — 👍 867 🔁 377 💬 54 📌 123Logos of Crossref, DataCire, ORCID, ROR, PubMed, USPTO
Google Scholar's lack of an API hinders automation and scientometric studies. In common with all proprietary academic databases, searches are opaque and non-replicable. With the Alexandria3k Python package you can run sophisticated queries on your laptop. dspinellis.github.io/alexandria3k/
27.08.2025 07:39 — 👍 12 🔁 3 💬 0 📌 0That message means your script `fetch-uspto.sh` is expecting an environment variable named **`MYODP_KEY`**, which hasn’t been set in your shell. This usually happens when a script needs an API key to authenticate against the USPTO Open Data Portal (ODP). To fix it, you need to: 1. **Obtain the API key** * Go to the [USPTO Open Data Portal](https://developer.uspto.gov/data/bulk-search) and sign in (or register). * Generate an API key. 2. **Set the environment variable** before running the script: ```bash export MYODP_KEY="your_api_key_here" ./fetch-uspto.sh ``` Or prepend it inline: ```bash MYODP_KEY="your_api_key_here" ./fetch-uspto.sh ``` 3. If you want it to persist across sessions, add the line to your shell config (e.g., `~/.bashrc`, `~/.zshrc`): ```bash export MYODP_KEY="your_api_key_here" ``` --- Do you want me to show you how to modify `fetch-uspto.sh` so that it gives clearer instructions (like printing how to set the variable), instead of just failing?
That's a first! As I write a program's error message, I catch myself thinking whether GenAI will be able to understand it and produce a useful suggestion. (It does.)
24.08.2025 15:56 — 👍 3 🔁 0 💬 0 📌 0— In UML create a comment note. — In UML diagrams, a **comment** (or “note”) is shown as a rectangle with a dog-eared corner. Graphviz can mimic this by using `shape=note`. Example in DOT: ```dot digraph UML_Comment { rankdir=LR; node [fontname="Arial", fontsize=12]; // Regular UML component A [label="«component»\nOrder Service", shape=component]; // UML comment Cmt [label="Processes orders\nand handles payments", shape=note, style=filled, fillcolor="#ffffcc"]; // Dashed association from comment to element Cmt -> A [style=dashed, arrowhead=none]; } ``` **Key points:** * `shape=note` → dog-eared corner rectangle. * `fillcolor` → makes the note background match UML style (light yellow is common). * `style=dashed, arrowhead=none` → matches UML’s “annotates” relationship from a comment to a model element. --- If you want, I can insert UML comment nodes into your **O1/O2 Graphviz diagram** to annotate entire clusters or specific tasks, so they look like sticky notes connected to the relevant part. Would you like me to do that?
Many years ago I contributed to #GraphViz code for several new node shapes, including UML notes. Now #ChatGPT advises me how to use them! 😃
14.08.2025 10:28 — 👍 5 🔁 0 💬 0 📌 0This kind of thing looks like an opportunity for a new generation of developers to make their mark in open source
09.08.2025 05:51 — 👍 5 🔁 1 💬 0 📌 0What are the challenges and gains when porting legacy systems software written in C into #Rust? Here's my own experience porting the BSD Unix / macOS stream editor sed into Rust as part of #uutils.
IEEE Software article: doi.org/10.1109/MS.2...
Source code: github.com/uutils/sed/
I'm sure psychologists have a diagnostic name for this disorder.
07.08.2025 11:32 — 👍 1 🔁 0 💬 0 📌 0Please use the sharing tools found via the share button at the top or side of articles. Copying articles to share with others is a breach of FT.com T&Cs and Copyright Policy. Email licensing@ft.com to buy additional rights. Subscribers may share up to 10 or 20 articles per month using the gift article service. More information can be found at https://www.ft.com/tour. https://www.ft.com/content/b46311ba-a5a1-4754-8d40-eaae475f01eb I’m an industrial designer and I used to work in the design department at a major car manufacturer. I’m a petrol head, and have been my whole life. By now, I’ve probably driven over a hundred different vehicles across various generations of interface technology. Here’s the thing: the user experience designers in my team — the ones tasked with designing the digital interfaces now frequently deployed and rightly deplored in this article — had little-to-no interest in cars. In many cases, they were only working for a car maker because they couldn’t get the jobs they really wanted in tech companies. But the kicker was that many of them didn’t have drivers’ licenses, let alone any interest in how cars really work. All they saw was a screen, abstracted from the broader reality of operating a 2-tonne projectile in a world of sometimes moving, sometimes fleshy, and sometimes immovable targets.
Ever wondered why car ergonomics have gone down the drain as touch screens replaced buttons to drive down costs? This reader comment on an @financialtimes.com article on the topic says it all.
09.07.2025 11:02 — 👍 11 🔁 1 💬 2 📌 2My LLM coding interactions taught me that their benchmark results vastly overstate their capabilities. The paper by M. Mancoridis et al. “Potemkin Understanding in LLMs” explains and formalizes my feeling. Benchmarks derived from human tests are unsuitable for LLM assessment. doi.org/10.48550/arX...
27.06.2025 18:12 — 👍 12 🔁 2 💬 0 📌 2A Sony compact cassette. https://en.wikipedia.org/wiki/Cassette_(format)#/media/File:Sony_C60_Low_Noise_Compact_Cassettte.jpg by Mikus
This week two US courts ruled in favor of AI's use of copyrighted works to train LLMs. How is such a use legal? Should it be legal? Two questions with very different answers. More (and an explanation of the audio cassette's relevance) at www.spinellis.gr/blog/20250626/
26.06.2025 11:50 — 👍 5 🔁 2 💬 0 📌 0