frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

GLM-Legal: Advancing Agentic Legal Intelligence

https://z.ai/blog/glm-legal
121•ilreb•1h ago•72 comments

A Modern Web App in C

https://prophitt.me/writing/a-modern-web-app-in-c
55•prophittcorey•1h ago•26 comments

The Making Of Super Mario 64 – full Giles Goddard interview (2001)

https://pixelatron.com/blog/the-making-of-super-mario-64-full-giles-goddard-interview-ngc/
153•gregsadetsky•1d ago•56 comments

Launch HN: Agent37 (YC F26) – Low-cost agent sandboxes for running agents

5•vishnukool•35m ago•0 comments

Turn a WiFi 7 Router into a 320Msps Software Defined Radio Receiver

https://github.com/h0m3us3r/w1700k-sdr
47•djfergus•4h ago•10 comments

Show HN: PS2 games statically recompiled to WebAssembly

https://github.com/snuri00/ps2-web-recomp
195•deadxwarrior•10h ago•103 comments

Fingerprints are the new cookies

https://royfish.dev/fingerprints-are-the-new-cookies
616•royfish•18h ago•301 comments

Fridges in French supermarkets hit by cyber attack

https://www.bbc.com/news/articles/crq5nzxv9q4yo
48•cataflam•2h ago•19 comments

Type-safe HTML templating in Zig

https://lalinsky.com/2026/10/11/type-safe-html-templating-in-zig.html
201•lukaslalinsky•12h ago•75 comments

Kevin Kelly's 2016 AI Predictions, 10 Years Later

https://taylor.town/kk-ai-2026
5•surprisetalk•2h ago•1 comments

Incident with Actions, Pull Requests and Issues

https://www.githubstatus.com/incidents/93njd414rpbx
121•dkpk•4h ago•109 comments

French supermarkets suffer fridge shutdown after 'unprecedented' cyberattack

https://uk.finance.yahoo.com/news/french-supermarket-chains-cyberattack-forced-115141288.html
124•thinkcontext•1h ago•94 comments

Total Annihilation, rebuilt for modern computers

https://nanolathe.gg
628•jttnr•23h ago•238 comments

Living in the Weimar Era of Ruby

https://blog.julik.nl/2026/10/the-weimar-of-ruby
60•julik•6h ago•19 comments

An Unmade Film Shaped Hayao Miyazaki

https://animationobsessive.substack.com/p/an-unmade-film-shaped-hayao-miyazaki
40•vinhnx•2h ago•5 comments

Secret of Orange Cats Revealed After 60-Year Search

https://www.sciencealert.com/secret-of-orange-cats-finally-revealed-after-60-year-search
150•bookofjoe•1d ago•129 comments

Calculus with Julia

https://jverzani.github.io/CalculusWithJuliaNotes.jl/
217•subset•2d ago•41 comments

Muse Wonder

https://research.meta.ai/blog/muse-wonder
66•meetpateltech•34m ago•26 comments

I Found a $90k Remote Code Execution Vulnerability in Google

https://simonkoeck.com/writeups/google-devsite-flask-session-pickle-rce
73•soeckly•9h ago•35 comments

Running the unmodified Linux amdgpu driver on an iPad

https://github.com/Geramy/LemonSeed-Studio
71•joshcsimmons•1d ago•19 comments

Choreographic Programming in Rust

https://github.com/hibanaworks/hibana
44•o8vm•1d ago•30 comments

QGIS: No A contributions permitted

https://github.com/qgis/QGIS-Enhancement-Proposals/pull/387
330•bwnkl•5h ago•356 comments

Bag of Decisions Reranker

https://softwaredoug.com/blog/2026/10/08/bag-of-decisions.html
60•zdw•2d ago•10 comments

Terence Tao: Math 2.0 [pdf]

https://teorth.github.io/tao-web/slides/math-2-0-caltech-2026.pdf
482•Anon84•1d ago•474 comments

Hackers heat French supermarket fridges, sparking fires and food losses

https://www.reuters.com/business/retail-consumer/french-supermarket-chain-intermarche-hit-by-cybe...
25•salaryman777•2h ago•3 comments

Cartographers of North Korea (2019)

https://cartographers-nk.wonyoung.so/
306•edent•21h ago•62 comments

Reverse engineer anything with agents, from app behavior down to native binaries

https://github.com/morluto/rea
6•taytus•50m ago•0 comments

Doory – Open-Source Canva

https://github.com/shaongitbd/doory
184•acley•16h ago•68 comments

Ask HN: Do you want a router that has DD-WRT pre-installed?

113•Ixander•1d ago•124 comments

Deep dive into Azure Maia 300 architecture

https://azure.microsoft.com/en-us/blog/deep-dive-into-azure-maia-300-architecture/
16•azhenley•2h ago•2 comments
Open in hackernews

A Modern Web App in C

https://prophitt.me/writing/a-modern-web-app-in-c
52•prophittcorey•1h ago

Comments

paularmstrong•36m ago
> Everything about marketyour.games is modern

I can't read any of the text on that page other than the headings. Is that what makes it modern? I assume the stack mentioned in the blog post is vibe-slop as well.

prophittcorey•2m ago
I wanted to try my hands at a monochromatic website and chose two shades that were far enough apart to pass a AAA contrast rating for accessibility. I'll try to improve it soon.

It was 100% human slopped :)

fmo91•33m ago
It's not very clear to me why the author has chosen C in the first place. I appreciate the effort of sharing the experience with us, anyway.
EGreg•29m ago
I'm old enough to remember when the OKCupid guys wrote their own webserver in C++!

I took the concept of "slots" in requests, from it: https://github.com/okws/okws

uecker•19m ago
Yesterday or so there was a post about using Zig. When I read it I thought that using C would work equally well.
afavour•30m ago
A shame to hand code a project in C and then use AI to write a blog post.

It’s a cool project to test yourself but most of the benefits outlined would also apply to Go, Rust, etc, and then you also get memory safety thrown into the mix as well.

skrrtww•24m ago
I don't think the post was written by AI.

It has headers like AI blogposts, and features a lot of parallel structure like AI blogposts ("there's no <blank>. you <blank>"), but if you actually read it none of it reads like slop. To me anyway.

xd1936•9m ago
Interestingly, Pangram says that exactly the first 50% is AI and the second half is not. ¯\_(ツ)_/¯
EGreg•30m ago
"Every request spawns a fresh process. Deploying a new version is replacing one file. That means no server restart and no downtime. New requests simply pick up the new binary."

I think that's why FastCGI exists. It is the equivalent of PHP's "Swoole" or "FrankenPHP" or "amphp" or Laravel's "octane", etc. Each process is long-lived and tries to clean up its state as much as possible between requests. Forking a new process can take around 8ms (https://news.ycombinator.com/item?id=19005586)

When I was building https://github.com/Qbix/webserver in PHP, I was faced with forking a new process per request. I implemented fork-per-request at first, similar to PHP-FPM and then implemented the "FastCGI" approach of long-lived processes that clean up after each request. (Modern PHP has introspection so the engine can know what to clean up, before calling the php files to handle things.) However, some things are not really possible to completely reset in PHP, and you have to be careful with database connection pools, etc. Typically those are left open even by preforking processes like php-fpm.

Anyway, I ended up flipping it: use the "FastCGI" approach as a default, and if the original PHP code doesn't work (rare), then for that app, you can choose the regular CGI approach of forking a process per request. That way you get maximum speed by default, and manually opt into safety (this is an exception to my usual priorities).

PHP is actually quite fast. But I was also interested in transpiling it to C. So I built the transpiler at: https://ulanguage.org/playground ... used Claude to transform about 1000 PHP functions to their native equivalents, but if you use any of the others, it would hook into the Zend runtime and link with it. (There are some nuances with zvals and objects, and resources in previous PHP versions, but I managed to overcome them.) By the way, it also works with Node and Python FFI the same way.

You can basically now take PHP, Python or Javascript/Typescript code, and speed up the CPU-bound parts about 10-50x. A lot of that is because of string and JSON handling. Many web apps use strings and JSON a lot. So underneath, I had the compiler use "ropes" for the strings, and avoid concatenation. It also parallelizes the JSON encode and decode into code that can run on multiple cores at once, i.e. large JSON payloads are encoded and decoded in parallel. Those are just huge speedups.

Anyway... all of this is mostly focused on speed optimization, so you can solve the literally C100K problem (forget C10K) today, on a regular box. If you don't need speed or FastCGI, your approach is fast enough for the vast majority of applications.

PS: By the way, if you fork after your program already loaded the framework and initialized the configuration, then you can run a lot more workers, literally 10x-100x more of them, because Linux and Mac will share all the loaded memory between processes, and do Copy-On-Write only on dirty pages. And when your request is done, and the process exits, that custom memory is efficiently cleaned up by the OS. It is this feature that allowed me to finally get the best of both worlds... run all existing PHP code, that makes blocking I/O requests all over the place to the database, filesystem, network etc. while at the same time being able to handle 100,000 requests in flight at the same time! Swoole and FrankenPHP can't do that.

Levitating•26m ago
CGI is great. Sadly nginx doesn't support it natively as opposed to lighttpd.

I like this project for adding CGI to nginx: https://github.com/pjincz/nginx-cgi

There's also methods of starting Rack applications directly form nginx via passenger[1]. Rack is the CGI like interface for ruby webapps: https://github.com/rack/rack It easily allows for writing applications and middleware with a few lines of ruby.

[1]: https://www.phusionpassenger.com/documentation/Users%20guide...

BirAdam•22m ago
fastcgi wrap.
marcelox86•26m ago
Another interesting looking blog post that I can't bear to read without my eyes bleeding :(
Panzerschrek•23m ago
> There's no separate database server. You open the database file through SQLite's C API.

> Every request spawns a fresh process.

How does it work when multiple concurrent requests are possible? Does SQLite allow simultaneous write access from multiple processes?

prophittcorey•17m ago
SQLite can handle multiple concurrent requests if it's set to WAL mode. Reading is all non-blocking/concurrent but writing is still synchronous. You should also set the "busy timeout" or else your blocked writes will timeout immediately.
warkdarrior•16m ago
Users who send concurrent requests will be summarily banned and their data deleted. It's the only way to be sure.
citrin_ru•15m ago
SQLite does allow write access from mulitple processes - file locks (fcntl) are used to ensure at any given moment only one of processes modifies the database (or WAL if WAL is enabled).
Scubabear68•21m ago
From the article, "WRITING HTML AND CSS IN C ISN'T TOO BAD".

Um, any and all string handling in C is pretty miserable.

prophittcorey•19m ago
To be fair, the HTML and CSS in C wasn't too bad.. the Youtube scraper was also written in C and that was a lot more painful :)
Joker_vD•17m ago
If you do it with the string functions from the standard library then yes, it is.
prophittcorey•7m ago
The standard string functionality is painful. I wrote my own string view and string builder that work with fixed size strings. No memory allocations, etc.
PhilipRoman•4m ago
Emitting strings is fine, it's the parsing that sucks.
devmor•11m ago
I still like writing web applications in PHP for many of the same reasons listed here - modern PHP anyways.

I shy away from frameworks unless I am building something that I expect a large team to work on, or I specifically need multiple complex features that don't make sense to maintain.

I've written a few applications for my own personal use or targeted at friends/family recently that have no third party dependencies other than Bootstrap, which I still like more than tailwind for anything that doesn't need to look like a marketing page.

OleksandrC•10m ago
For people who find interest in weird web applications, I have been working on a game project, in C++, where the client is compiled to WebAssembly with Emscripten, and the application server is also implemented in C++ (behind nginx).

This is from pre-AI era also. The game is Civ-like. Custom engine from scratch (including both the 3D stuff, and all the web handling also).

Take a look: https://statebuilder.com/

codazoda•2m ago
It hasn't been touched in a long time, maybe that's because it's "complete", but here's a quick CGI library:

https://github.com/codazoda/cgi-lib

iririririr•11m ago
what are the code paths in php you're dropping for the actual speed improvement? just the parsing?

if not, you could have sent patches and have the best of both worlds