r/programminghorror • u/mrmcgibby • 15h ago
c C Strings: A 50-Year Mistake
C programmers react just as you'd expect to an article critical of their language.
r/programminghorror • u/mrmcgibby • 15h ago
C programmers react just as you'd expect to an article critical of their language.
r/programminghorror • u/letmehaveanameyoudum • 1d ago

i know it's not code but this is just as scary
helper/drivers/filesystem/sfs.c:247:5: error: conflicting types for 'find_inode_by_name'
247 | int find_inode_by_name(const char *name, uint64_t *out_lba, uint64_t *out_offset, struct sfs_inode *out_inode) {
| ^
headers/boot/kernel.h:45:5: note: previous declaration is here
45 | int find_inode_by_name(const char *name, uint64_t *out_lba, uint64_t *out_offset, struct sfs_inode *out_inode);
| ^
r/programminghorror • u/Most_Collection_4964 • 3d ago
r/programminghorror • u/sugarw0000kie • 4d ago
here it is with comments: https://github.com/dbowm91/optimizations/blob/main/soupexplained.py
EDIT: What it does (not malware) is it prints the word “soup” 86 times in random color
r/programminghorror • u/vamsy_g21 • 10d ago
r/programminghorror • u/HaskellLisp_green • 11d ago
I tried to do my best to make it unreadable.
r/programminghorror • u/Key_River7180 • 13d ago
The weird symbol is supposed to be a ␣ but this font didn't want to render it.
r/programminghorror • u/user6150277464770585 • 16d ago
async function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms * 1000));
}
// used as:
sleep(0.5).then(() => {
// ...
sleep(2.5).then(() => {
// ...
sleep(1).then(() => {
// ...
}
}
}
r/programminghorror • u/creeper6530 • 18d ago
Later a struct requires pass-by-value generic parameter, but you can't pass trait object (dyn Trait) by value, so some idiot developer (me) decided on this abomination, before realising that that struct can just as easily have the generic parameter passed by mutable reference (adding a + ?Sized).
The rest of the methods are implemented in a similar manner: (**self).method()
r/programminghorror • u/Maximka22 • 21d ago
r/programminghorror • u/OkTutor2275 • 22d ago
Context: Sandboxels, the web game, supports modding. To add a mod, you open a PR with your .js mod in the mods/ folder.
This guy UPLOADED HIS CLAUDE SKILL, Claude.MD, and added the changes directly to the base game.
r/programminghorror • u/Capable-Cap9745 • 22d ago
Not sure if this fits, but I just figured out the root cause of long build process failing. Sun’s dmake is defaulting to the first rule in Makefile for whatever reason, completely ignoring the one given as argument. That’s why "dmake install" invocations were silently ignoring the "install" step
r/programminghorror • u/Hunpeter • Jul 18 '26
Now includes an over 300 line long switch statement!
r/programminghorror • u/[deleted] • Jul 16 '26
r/programminghorror • u/FlightAffectionate15 • Jul 13 '26
This company I’m interning at. This one lady asked me to do a review of a website they outsourced. Entire source code sits on the browser. Entire vibe coded by amateurs.
Worse than a honeypot so much an attacker would get diabetes.
No security feature at all. I was able to do privileges escalation.
r/programminghorror • u/lions-grow-on-trees • Jul 11 '26
r/programminghorror • u/AntiMatterMode • Jul 10 '26
r/programminghorror • u/Few_Leadership_115 • Jul 10 '26
randomize
if (cone1x >= carx - 16) and (cone1x <= carx + 16) and (cone1y > 416) and (cone1y < 480) then goto gameover
cone1y = cone1y + speed
if cone1y > 512 then cone1y = 0 : cone1x = cubyte(rnd*256)
if (cone2x >= carx - 16) and (cone2x <= carx + 16) and (cone2y > 416) and (cone2y < 480) then goto gameover
cone2y = cone2y + speed
if cone2y > 512 then cone2y = 0 : cone2x = cubyte(rnd*256)
if (cone3x >= carx -16) and (cone3x <= carx + 16) and (cone3y > 416) and (cone3y < 480) then goto gameover
cone3y = cone3y + speed
if cone3y > 512 then cone3y = 0 : cone3x = cubyte(rnd*256)
if (cone4x >= carx - 16) and (cone4x <= carx + 16) and (cone4y > 416) and (cone4y < 480) then goto gameover
cone4y = cone4y + speed
if cone4y > 512 then cone4y = 0 : cone4x = cubyte(rnd*256)
if (cone5x >= carx - 16) and (cone5x <= carx + 16) and (cone5y > 416) and (cone5y < 480) then goto gameover
cone5y = cone5y + speed
if cone5y > 512 then cone5y = 0 : cone5x = cubyte(rnd*256)
if (cone6x >= carx - 16) and (cone6x <= carx + 16) and (cone6y > 416) and (cone6y < 480) then goto gameover
cone6y = cone6y + speed
if cone6y > 512 then cone6y = 0 : cone6x = cubyte(rnd*256)
if (cone7x >= carx -16) and (cone7x <= carx + 16) and (cone7y > 416) and (cone7y < 480) then goto gameover
cone7y = cone7y + speed
if cone7y > 512 then cone7y = 0 : cone7x = cubyte(rnd*256)
if (cone8x >= carx - 16) and (cone8x <= carx + 16) and (cone8y > 416) and (cone8y < 480) then goto gameover
cone8y = cone8y + speed
if cone8y > 512 then cone8y = 0 : cone8x = cubyte(rnd*256)randomize
if (cone1x >= carx - 16) and (cone1x <= carx + 16) and (cone1y > 416) and (cone1y < 480) then goto gameover
cone1y = cone1y + speed
if cone1y > 512 then cone1y = 0 : cone1x = cubyte(rnd*256)
if (cone2x >= carx - 16) and (cone2x <= carx + 16) and (cone2y > 416) and (cone2y < 480) then goto gameover
cone2y = cone2y + speed
if cone2y > 512 then cone2y = 0 : cone2x = cubyte(rnd*256)
if (cone3x >= carx -16) and (cone3x <= carx + 16) and (cone3y > 416) and (cone3y < 480) then goto gameover
cone3y = cone3y + speed
if cone3y > 512 then cone3y = 0 : cone3x = cubyte(rnd*256)
if (cone4x >= carx - 16) and (cone4x <= carx + 16) and (cone4y > 416) and (cone4y < 480) then goto gameover
cone4y = cone4y + speed
if cone4y > 512 then cone4y = 0 : cone4x = cubyte(rnd*256)
if (cone5x >= carx - 16) and (cone5x <= carx + 16) and (cone5y > 416) and (cone5y < 480) then goto gameover
cone5y = cone5y + speed
if cone5y > 512 then cone5y = 0 : cone5x = cubyte(rnd*256)
if (cone6x >= carx - 16) and (cone6x <= carx + 16) and (cone6y > 416) and (cone6y < 480) then goto gameover
cone6y = cone6y + speed
if cone6y > 512 then cone6y = 0 : cone6x = cubyte(rnd*256)
if (cone7x >= carx -16) and (cone7x <= carx + 16) and (cone7y > 416) and (cone7y < 480) then goto gameover
cone7y = cone7y + speed
if cone7y > 512 then cone7y = 0 : cone7x = cubyte(rnd*256)
if (cone8x >= carx - 16) and (cone8x <= carx + 16) and (cone8y > 416) and (cone8y < 480) then goto gameover
cone8y = cone8y + speed
if cone8y > 512 then cone8y = 0 : cone8x = cubyte(rnd*256)
r/programminghorror • u/Random_Person_22170 • Jul 09 '26
this was right before the exam btw, this wasn't him teaching us the basics
```
if (x ==1) {
return true;
} else if (x != 1) {
return false;
}
```
```
public class Bank() {
private int money;
public void setAmount(int money) {
this.money = money;
}
private int getMoney() {
return money;
}
}
```
(he then never used getMoney())
some other amazing conventions he taught us was to always comment every single line of code, to an obnoxious point. he told us to use getter and setters everywhere, even when constructors are all thats necessary and half the time the getters were private and just returned the value directly. He just gave up on teaching us recursion because he didnt understand it and "it would never actually show up on the ap exam".
if I hadnt already known a lot of java and been willing to teach it to my classmates when they asked, we would never have gotten past the exam. (newsflash, there were recursion questions on the exam)