
Article URL: https://inside.java/2025/01/09/sw-startup/
Comments URL: https://news.ycombinator.com/item?id=42648280
Points: 5
# Comments: 1


Article URL: https://archaeology.org/issues/january-february-2025/digs-discoveries/bad-moon-rising/
Comments URL: https://news.ycombinator.com/item?id=42636424
Points: 24
# Comments: 15
https://archaeology.org/issues/january-february-2025/digs-discoveries/bad-moon-rising/

Article URL: https://passo.uno/seven-action-model/
Comments URL: https://news.ycombinator.com/item?id=42645075
Points: 4
# Comments: 0
Article URL: https://jirevwe.github.io/sql-nulls-are-weird.html
Comments URL: https://news.ycombinator.com/item?id=42645110
Points: 5
# Comments: 0

Article URL: https://selfh.st/2024-favorite-new-apps/
Comments URL: https://news.ycombinator.com/item?id=42645119
Points: 4
# Comments: 0

Article URL: https://nts.strzibny.name/rails-autosave-form-turbo-stream/
Comments URL: https://news.ycombinator.com/item?id=42645187
Points: 3
# Comments: 0
I realized that the PDF engines of modern desktop browsers (PDFium and PDF.js) support JavaScript with enough I/O primitives to make a basic game like Tetris.
It was a bit tricky to find a union of features that work in both engines, but in the end it turns out that showing/hiding annotation "fields" works well to make monochrome pixels, and keyboard input can be achieved by typing in a text input box.
All in all it's quite janky but a nice reminder of how general purpose PDF scripting c