frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

OpenCiv3: Open-source, cross-platform reimagining of Civilization III

https://openciv3.org/
553•klaussilveira•10h ago•157 comments

The Waymo World Model

https://waymo.com/blog/2026/02/the-waymo-world-model-a-new-frontier-for-autonomous-driving-simula...
876•xnx•15h ago•532 comments

How we made geo joins 400× faster with H3 indexes

https://floedb.ai/blog/how-we-made-geo-joins-400-faster-with-h3-indexes
79•matheusalmeida•1d ago•18 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

https://arcadeblogger.com/2026/02/02/unseen-footage-of-atari-battlezone-cabinet-production/
13•videotopia•3d ago•0 comments

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
191•isitcontent•10h ago•24 comments

Monty: A minimal, secure Python interpreter written in Rust for use by AI

https://github.com/pydantic/monty
190•dmpetrov•10h ago•84 comments

What Is Ruliology?

https://writings.stephenwolfram.com/2026/01/what-is-ruliology/
7•helloplanets•4d ago•3 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
303•vecti•12h ago•133 comments

Microsoft open-sources LiteBox, a security-focused library OS

https://github.com/microsoft/litebox
347•aktau•16h ago•169 comments

Sheldon Brown's Bicycle Technical Info

https://www.sheldonbrown.com/
347•ostacke•16h ago•90 comments

Dark Alley Mathematics

https://blog.szczepan.org/blog/three-points/
75•quibono•4d ago•16 comments

Hackers (1995) Animated Experience

https://hackers-1995.vercel.app/
444•todsacerdoti•18h ago•226 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
242•eljojo•13h ago•148 comments

PC Floppy Copy Protection: Vault Prolok

https://martypc.blogspot.com/2024/09/pc-floppy-copy-protection-vault-prolok.html
46•kmm•4d ago•3 comments

Delimited Continuations vs. Lwt for Threads

https://mirageos.org/blog/delimcc-vs-lwt
17•romes•4d ago•2 comments

An Update on Heroku

https://www.heroku.com/blog/an-update-on-heroku/
379•lstoll•16h ago•258 comments

How to effectively write quality code with AI

https://heidenstedt.org/posts/2026/how-to-effectively-write-quality-code-with-ai/
225•i5heu•13h ago•171 comments

Why I Joined OpenAI

https://www.brendangregg.com/blog/2026-02-07/why-i-joined-openai.html
103•SerCe•6h ago•84 comments

Learning from context is harder than we thought

https://hy.tencent.com/research/100025?langVersion=en
162•limoce•3d ago•85 comments

I spent 5 years in DevOps – Solutions engineering gave me what I was missing

https://infisical.com/blog/devops-to-solutions-engineering
131•vmatsiiako•15h ago•56 comments

Introducing the Developer Knowledge API and MCP Server

https://developers.googleblog.com/introducing-the-developer-knowledge-api-and-mcp-server/
41•gfortaine•8h ago•11 comments

Show HN: R3forth, a ColorForth-inspired language with a tiny VM

https://github.com/phreda4/r3
63•phreda4•9h ago•11 comments

Female Asian Elephant Calf Born at the Smithsonian National Zoo

https://www.si.edu/newsdesk/releases/female-asian-elephant-calf-born-smithsonians-national-zoo-an...
20•gmays•5h ago•3 comments

Show HN: ARM64 Android Dev Kit

https://github.com/denuoweb/ARM64-ADK
14•denuoweb•1d ago•2 comments

Understanding Neural Network, Visually

https://visualrambling.space/neural-network/
262•surprisetalk•3d ago•35 comments

I now assume that all ads on Apple news are scams

https://kirkville.com/i-now-assume-that-all-ads-on-apple-news-are-scams/
1035•cdrnsf•19h ago•428 comments

Zlob.h 100% POSIX and glibc compatible globbing lib that is faste and better

https://github.com/dmtrKovalenko/zlob
6•neogoose•2h ago•3 comments

FORTH? Really!?

https://rescrv.net/w/2026/02/06/associative
56•rescrv•18h ago•19 comments

Show HN: Smooth CLI – Token-efficient browser for AI agents

https://docs.smooth.sh/cli/overview
85•antves•1d ago•63 comments

WebView performance significantly slower than PWA

https://issues.chromium.org/issues/40817676
20•denysonique•6h ago•3 comments
Open in hackernews

Convert photos to Atkinson dithering

https://gazs.github.io/canvas-atkinson-dither/
438•nvahalik•8mo ago

Comments

JKCalhoun•8mo ago
Still my favorite B&W dither algorithm.

The university had a B&W flatbed scanner attached to a Mac running ... a Hypercard stack? that allowed you to scan an image and get a B&W image.

A clipart book I picked up from the college bookstore and a quick scan and I had a "logo" for the Mac shareware games I started writing in 1988 or so.

At the time I didn't;t realize how really ... nice .. Atkinson's algorithm is. But when, later, I tried dithering with other algos I saw how nice the diffusion was in Bill's code.

More recently I was playing with an eInk calendar project and wanted an "Atkinson-esque" series of images of the Moon in various phases. So I found a site very like the linked one to Atkinson-dither the moon photos I found [1].

[1] see the moon in screenshot: https://github.com/EngineersNeedArt/SystemSix/blob/10f2332b5...

dev_chhatbar•8mo ago
That is honestly beautiful! Is there a place where I could see some of Bill's code? I would like to perhaps play around w it on my own time and learn a thing or two!
larodi•8mo ago
Is it the same Atkinson that died today and is this a tribute ?
throwanem•8mo ago
Yes, he invented* the algorithm. One assumes it must be.

* Corrected from 'discovered;' see below.

zahlman•8mo ago
Invented the algorithm. The choice and arrangement of weights is a matter of fine-tuning to balance practical concerns - not some natural law of mathematics that could be figured out.
4b11b4•8mo ago
That's a good clarification
throwanem•8mo ago
I appreciate the correction.
baq•8mo ago
The algorithm, including the precious weights, can exist outside our universe. It doesn’t need matter, it only needs maths.

Discovered is correct.

throwanem•8mo ago
Bold to say anything "can exist outside our universe" as though one were in a position to know. Do you often visit the Realm of Forms?
baq•8mo ago
Every single time when I talk to the librarian he takes me there - cheap, too, he only asks for some bananas.
mark-r•8mo ago
I would have thought such a simple combination would have been worked out much earlier. But I checked my 1993 copy of Robert Ulichney's "Digital Halftoning", and it only mentions 4. Floyd and Steinberg (1975), Jarvis, Judice, and Ninke (1976), Stucki (1981), and Stevenson and Arce (1985). Does anybody have a date for Atkinson's?
zahlman•7mo ago
It was used on the Macintosh at release, so it must have predated Stevenson and Arce. I doubt that a description was formally published in the way that the others were. Wikipedia describes Atkinson's approach as a variant on Floyd-Steinberg dithering, and I imagine that he must have been aware of at least some of the prior work.
zahlman•8mo ago
In a sense, but the first commit in the repository was 15 years ago - it's not something that someone whipped up in response to the news.
larodi•8mo ago
I adore dither as a tool for my designs. Kudos to Atkinson and everyone involved in the introduction of these algos. They mean a whole world of childhood to me, and a lot more.

p.s. dithermark.com is super cool also.

throwanem•8mo ago
The implementation is excellent, and could be slightly improved by giving a default name and .png extension to the downloaded file, by passing a value to the "download" property on the anchor. See https://developer.mozilla.org/en-US/docs/Web/API/HTMLAnchorE...
57473m3n7Fur7h3•8mo ago
In his defence, that attribute has been available in browsers since March 2017 according to your link [1], whereas the most recent commit in the repo for the dithering tool was in March 2016 by the looks of it.

https://github.com/gazs/canvas-atkinson-dither

He’s still active on GitHub though, in other repos. Maybe he will accept a pull request? :)

[1]: https://developer.mozilla.org/en-US/docs/Web/API/HTMLAnchorE...

throwanem•8mo ago
Oh, I assumed it had been recently built and probably posted today by its author given the news and the lack of a year in the title. I'll open a PR.

edit: I might open a PR. 'CoffeeScript...now there's a name I've not heard in a long time. A long time...'

57473m3n7Fur7h3•8mo ago
> CoffeeScript

It was acceptable in the 2010s

It was acceptable at the time

:p

https://www.youtube.com/watch?v=dOV5WXISM24

throwanem•8mo ago
Nor have I said there is anything wrong with it, only that it's been a long time. So reflexively to equate calling something old with calling it bad seems like a young man's game, but it has been some time since I had close experience of being one of those, also.
57473m3n7Fur7h3•8mo ago
It’s a reference to the linked song. One of my favorite songs :D
dolmen•8mo ago
CoffeScript? This is the kind of task where a coding agent should be helpful.
throwanem•8mo ago
For a tiny PR where 90% of the complexity will most likely be resurrecting an ancient toolchain?
amelius•8mo ago
If you want to do this in Python, there's:

https://github.com/tgray/hyperdither

kinduff•8mo ago
When I scroll, the images in the README get a brown color.
ddingus•8mo ago
I just converted my home stereo. Pioneer, so lots of brushed metal. It looks really great at 2560x1440. Great dither.
AndrewStephens•8mo ago
This implementation is great and the interface brings back memories.

I was wondering why my Atkinson dithering web-component[0] was getting more hits today - sad news. I’ve always thought that Atkinson dithering produces the nicest images on really crisp monitors like the original Mac - something about it just looks cool and 80s which is why I used it in a game last year.

[0] https://sheep.horse/2023/1/improved_web_component_for_pixel-...

shrinks99•8mo ago
Woah cool web component!
kergonath•8mo ago
Dithering at the pixel level on a retina screen is quite something. I quite like the style on some pictures, not so on others. They have a weird modern old-fashioned look and the individual dots are not as distracting as in actually old pictures.
AndrewStephens•8mo ago
Thanks. I originally just wanted pixel-to-pixel dithering (quite difficult with modern browsers and retina class displays) but after I saw the results I knew I needed to add lower resolutions as well. It looks really good with some images, especially photos with lots of details - almost like a high-quality printed magazine. However you are right that the extra detail can be distracting to the eye.
ksr•8mo ago
Cute UI! GitHub link of demo: https://github.com/gazs/canvas-atkinson-dither
nedt•8mo ago
Don't click the "as follows" in the info dialog. Looks like this wasn't updated in a while and since then the link became NSFW.
CaliforniaKarl•8mo ago
There's no guarantee that the site's creator is (or becomes) aware of this thread, so when possibly it's nice to give them a heads-up! I have just done so: https://github.com/gazs/canvas-atkinson-dither/issues/2
lionkor•8mo ago
It's been updated and now goes to the correct page
gcanyon•8mo ago
What am I doing wrong? I import a photo, I click save to desktop, and I get an unidentified file in an unknown format.
busymom0•8mo ago
I believe the file is missing a name and extension. If you rename the file with .png extension, then it works.
gcanyon•8mo ago
HA! For some reason it never occurred to me that it would be in a format the original Mac never knew. Thanks!
kgbcia•8mo ago
Would be great for eink/epaper devices.
9d•8mo ago
Sorry but where did you get the JS/CSS for this? It's so small.
meindnoch•8mo ago
Believe it or not, you can write both CSS and JS by hand.
9d•8mo ago
I do.
minorbug•8mo ago
Here's one I've been working on and off that lets you convert multiple images to MacPaint in a 400k MFS formatted disk image.

https://github.com/minorbug/mfsjs

I've had this project gathering a light layer of dust in my home directory for a couple months now. I used Gemini Deep Research to help produce the library, and I included the LLM-generated markdown for anyone who wishes to reproduce on other languages, improve upon it, etc.

kristianp•8mo ago
> MacPaint images have a fixed format: 576 x 720 pixels resolution

Were they really fixed? It says this on wikipedia, but there's no citation.

zdw•8mo ago
Interesting that one of the size options is 512x384, not 512x342 which was the original mac resolution.
gcanyon•8mo ago
I think that's not a coincidence.
PlunderBunny•8mo ago
The very first Mac really was 512x342 [0]

0. https://512pixels.net/2025/05/original-macintosh-resolution/

Edit: Sorry - I misread what you were saying and intended this as a correction, but you had it right all along.

RodgerTheGreat•8mo ago
A similar tool I wrote several years ago: http://beyondloom.com/tools/dith.html
htk•8mo ago
Thank you for posting this. Very nostalgic!
corytheboyd•8mo ago
Very, very perfect, I love it
franze•8mo ago
I wanted to learn a bit more about that algo, so https://atkinson.franzai.com/ - I double checked through some AIs so I hope it is factually correct.
deverman•8mo ago
Thanks I tried a bunch of my favorite photos in this too.
amai•8mo ago
Why not Sierra?

https://tannerhelland.com/2012/12/28/dithering-eleven-algori...

p_l•8mo ago
I guess it was originally nostalgia for early Mac, and resurfaced because Bill Atkinson had just died.
collingreen•8mo ago
I really enjoyed this article thank you for linking it.
amai•8mo ago
Then you might enjoy this one, too:

https://surma.dev/things/ditherpunk/