Accidentally created my first fork bomb with Claude Code (droppedasbaby.com)

by offbyone42 23 comments 77 points
Read article View on HN

23 comments

[−] phyzome 45d ago
I appreciate the growth mentality in the use of the word "first" there.
[−] ihaveajob 45d ago
Congratulations! Mine was intentional, back in college, where all PCs had open telnet in order to facilitate cooperation. We discovered it was easy to seize someone's computer for a while, and then watch them look around for the culprit, which we thought was hilarious. Boy were we annoying.
[−] jmalicki 45d ago
My first was in college on the lab computers, I was like "can I create a pthreads bomb instead to circumvent the fork bomb protections?"

Luckily the head sysadmin knew me and was in the room at the time, and I sheepishly explained by the time I realized it worked it was too late for me to stop it, he seemed understanding, understood it wasn't malicious, and luckily got that what else is a CS department for than for students to learn about this stuff?

[−] offbyone42 45d ago
How did you not get caught??!?
[−] hnlmorg 45d ago
My first ever fork bomb was in the 90s, running Microsoft own example code for OLE (or was it COM?).

That was a great early lesson to never trust code you read online. Even if it is from Microsoft’s own developer portal.

[−] eek2121 45d ago
Care to clarify? Windows doesn't have fork or a fork equivalent...
[−] connicpu 45d ago
A fork bomb can refer to any process that spawns multiple recursive child processes. You don't need fork to spawn more copies of yourself, that is merely the classic Unix implementation.
[−] siruwastaken 45d ago
The realization that even badly running code is still faster than the average human is rather terrifying. Lucky you that it hogs so much RAM.
[−] nbbaier 45d ago
I want to know what's going on under the hood of the /adhd skill. Sounds immensely useful for me.
[−] offbyone42 45d ago
I'm working on a part 2 with a bit more detail for that skill! It just has to go through a couple more drafts.

I don't use AI for these. My friends edit/give feedback, so the cycle is slow.

[−] aldousd666 44d ago
And they say you can't learn anything about computers from these bots... I had to learn this lesson from giving a shell account to one of my compatriots. I worked with him on group projects so I trusted him. He installed a fork bomb in his user's cron tab that went off at 3:00 a.m. everyday and I had to wonder why my hand compiled DRI driven screensaver went to a crawl. I did learn the lesson and I did forgive him. But it didn't cost me a couple Grand in API fees.
[−] viccis 45d ago
Wasn't my first, but my first unintentional one was writing multiprocessing code with Python on Windows many years ago. Not sure if this is still true now, but if you didn't wrap your main entrypoint in a if __name__ == "__main__" block, and your code spun up a worker pool, Python would reload your module for every child since Windows doesn't have a fork() for it to use, and they'd all happily rerun the code to create children, and so on.
[−] Jeremy1026 45d ago
What was the purpose of having Claude Code spin up two more instances of Claude Code though? What was the intended outcome there?
[−] awesome_dude 45d ago
I don't know about the author, but I recently saw an article where the author of Claude code apparently spins up multiple instances at once (note that it could have just been a marketing ploy to get people to use more tokens)

https://www.xda-developers.com/set-up-claude-code-like-boris...

[−] MarcelOlsz 45d ago
Just use Git worktrees and a lightweight VM environment (I like macOS native sandbox-exec) and you can spawn as many sessions as you want. I've run upwards of 30 at once on my M2 Pro with no noticeable resource impact.
[−] tstrimple 42d ago
I tend to have multiple sessions running when doing stuff with CC. But rarely in the same space / domain. I'll have one working on some programming task, another making changes to my NAS and another doing research for some other topic (most recently networking gear upgrade paths).
[−] offbyone42 45d ago
I have a SessionEnd hook that summarizes the conversation with a bunch of metadata, but it doesn't always fire 'cause of my habits.

So, the SessionStart hook was meant to catch any conversation where the SessionEnd hook wasn't fired.

Edit: I do realize a batch job is better. That's what I do now.

[−] 331c8c71 45d ago
Exponential productivity gains?;)
[−] nurettin 45d ago
In my days nearest thing to a fork bomb used to be call autoexec.bat from autoexec.bat
[−] LennyHenrysNuts 45d ago
My first was when I was arguing with the IT guy about local shells on their big iron at Uni.

I told him it was a risk to let dumbasses like us have a shell on his server. He said we couldn't do anything, that they were unprivileged accounts.

"Watch this", says I, as his machine froze.

I got in so much trouble for that. I hope you can't do that kind of thing any more.

[−] robshippr 45d ago
[dead]
[−] maxbeech 45d ago
[dead]
[−] maxbeech 45d ago
[dead]
[−] th0ma5 45d ago
[dead]