what are some other tutorials for implementing a toy version of a hard thing in a short amount of time? Like https://implement-dns.wizardzines.com or https://raytracing.github.io

I’m especially interested in the “in a short amount of time” aspect, I think nand2tetris is extremely cool but you definitely can’t do it in 3 days.

If possible I'd love to hear about a project you personally did and how long it took you.

Implement DNS in a weekend

@b0rk For a more personal example, with notes… I read HTTP: The Definitive Guide in a night (yes… I speed read) then the next day wrote a more functionally complete HTTP/1.1 server in pure Python than I was able to find in Python. (Mine did chunked requests and responses, not just responses.)

The protocol bits compile to 191 opcodes.
Hybridises async and threaded execution.
And survives C10K consuming ~11MB of RAM.

https://github.com/marrow-legacy/server.http/blob/develop/marrow/server/http/protocol.py

Benchmark: https://gist.github.com/amcgregor/707936 (13 years ago)

server.http/protocol.py at develop · marrow-legacy/server.http

A simple development HTTP/1.1 server for WSGI 1 and prototype WSGI 2 applications in both Python 2.x and 3.x. - server.http/protocol.py at develop · marrow-legacy/server.http

GitHub
@alice thanks, this is great -- I want to write an "implement HTTP” tutorial and I've been struggling a bit with figuring out which edge cases from the spec to cover. Definitely going to look through this.
@b0rk @alice A simple HTTP cache doesn't take long.