this post was submitted on 21 Nov 2023
190 points (89.9% liked)

Programmer Humor

32365 readers
550 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 9 points 11 months ago (2 children)
[–] [email protected] 7 points 11 months ago (2 children)

The Apache 404 page doesn't really seem that interesting.

[–] [email protected] 5 points 11 months ago

Your browser is trying to load the https version. Try with http.

[–] [email protected] 3 points 11 months ago

The URL is http://toodarkpark.org/computers/humor/shoot-self-in-foot.html and it loads / reloads fine. I don't know what else to tell you.

[–] [email protected] 5 points 11 months ago (1 children)
[–] [email protected] 1 points 11 months ago* (last edited 11 months ago)

Rust:

  • You find a predefined foot shooting function, but it's marked as unsafe and someone forgot to document what the safety contract was. You write up an unsafe block anyway and pass that function ownership of a bullet and a mutable reference to your foot, and get a segfault.
  • You search crates.io for "gun" and find a crate called pewpew. It looks incredibly spiffy. It supports semi or automatic fire, being used with or without a turret (or on a user-supplied turret) and with any number of middlewares for storing the bullets and transforming them on their way to the firing chamber. Unfortunately you can't shoot yourself with it because your foot doesn't implement the relevant autotraits.

Systemd:

  • You create a service file for shooting yourself in the foot and set it to run at system startup. It seems to work, but after a cold boot, sometimes your foot has a hole in it and sometimes it doesn't. After hours of debugging, you discover that this is because sometimes the gun service starts up and fires its bullet at nothing before the foot service finishes initializing and puts itself in the way. To resolve this you will likely need to edit the source code of your foot to make it support systemd-notify.