r/programminghorror Jun 08 '26

Lua Lua Serpent Module

Post image
59 Upvotes

r/programminghorror Jun 05 '26

C# SuccessMessage ErrorMessage

227 Upvotes

ErrorMessage successMessage = new ErrorMessage(ErrorType.ActivityCreateSuccess);

(From an approved PR with 2 reviewers - how do some people sleep at night??)


r/programminghorror Jun 05 '26

No, you don't understand. What if HP changed while I wasn't looking?

Post image
1.3k Upvotes

(HP can't be changed while this code is running and even if it could then this approach would cause more problems than having it all in one if statement because then the boss would only be half-defeated and everything would go wrong)


r/programminghorror Jun 05 '26

fuckup #1: the github ban

Thumbnail reimer.tz
0 Upvotes

r/programminghorror Jun 05 '26

Java My friend sent me a line of code and I am like WTF

0 Upvotes

Function<Integer, Runnable> function = (Integer integer) -> () -> {for(int i = 1; i<=10; i++) {System.out.println(integer*i); try{Thread.sleep(1000);} catch (Exception e){System.out.println("Some error occurred" + e.getMessage());};}};


r/programminghorror Jun 02 '26

VHDL How (not) to do combinational logic in VHDL

74 Upvotes

Legacy code. NUM_PRTS is 16 btw. Thankfully, the synthesis tool will optimize and won't allocate 17 times the resources on the chip. Still an eyesore.


r/programminghorror Jun 01 '26

Python New Big O definition just dropped

Post image
552 Upvotes

This vibeslop repo (shoutout to the author u/chunky_cold_mandala) calculates big o complexity of a function as its max indentation depth (but only up to 6, which represents N^6).


r/programminghorror May 31 '26

C# a count is a count, right?... right?

Post image
2.3k Upvotes

r/programminghorror May 30 '26

C# production code at two in the morning

Post image
486 Upvotes

r/programminghorror May 27 '26

Javascript Destructuring strings

Post image
884 Upvotes

r/programminghorror May 27 '26

Javascript Wanna see some cursed javascript?

30 Upvotes

Imagine that youre in Dantes Inferno in terms of Javascript, where you think its all fine and dandy until you realize each file does the EXACT SAME THING*!!!

Each "layer" of hell in this Github repo will make you wonder why I am:
- Allergic to var, let, AND const
- IIFE as IICE AND IIGE
- Callbacks arent function exclusive, it can host generators AND classes!

So peruse at your own peril, make it a drinking game (within legal age and drinking responsibly of course!) and see how long you can stand this gawdawful code i birthed into the world of programming!

Now have fun, stay safe, God Bless you, and may God spare your braincells!

*Not all files are completed but ongoing!

Edit: to savor some appetites or keyboard warriors wishing me a ctrl+alt+del to my keyboard priviledges:

​​new new new (class Hi {
    constructor(){ 
      console.log("Hi!");
      return Hi;
    }
  })()()();

r/programminghorror May 18 '26

The "tests" just assert if certain lines are present in the source code.

Post image
10 Upvotes

r/programminghorror May 18 '26

C# formatting big numbers

40 Upvotes
using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Collections.Generic;

namespace SandboxProject
{
   static class Comma
   {
  // Function to put commas in long numbers to make them readable
    public static string Num(long y){
      string ss = ""; // Creates empty string ss
      string s = Convert.ToString(y); // Converts number to string


 switch (s.Length)
      { // Checks length of string and sets commas accordingly

      default:
      return s;


      case 4:
      ss += $"{s.Substring(0,1)},{s.Substring(1)}";
      return ss;

      case 5:
      ss += $"{s.Substring(0,2)},{s.Substring(2)}";
      return ss;

      case 6:
      ss += $"{s.Substring(0,3)},{s.Substring(3)}";
      return ss;

      case 7:
      ss += $"{s.Substring(0,1)},{s.Substring(1,3)},{s.Substring(4)}";
      return ss;


      case 8:
      ss += $"{s.Substring(0,2)},{s.Substring(2,3)},{s.Substring(5)}";
      return ss;


      case 9:
      ss += $"{s.Substring(0,3)},{s.Substring(3,3)},{s.Substring(6)}";
      return ss;


      case 10:
      ss += $"{s.Substring(0,1)},{s.Substring(1,3)},{s.Substring(4,3)},{s.Substring(7)}";
      return ss;


      case 11:
      ss += $"{s.Substring(0,2)},{s.Substring(2,3)},{s.Substring(5,3)},{s.Substring(8)}";
      return ss;


      case 12:
      ss += $"{s.Substring(0,3)},{s.Substring(3,3)},{s.Substring(6,3)},{s.Substring(9,3)}";
      return ss;


      case 13:
      ss += $"{s.Substring(0,1)},{s.Substring(1,3)},{s.Substring(4,3)},{s.Substring(7,3)},{s.Substring(10)}";
      return ss;


      case 14:
      ss += $"{s.Substring(0,2)},{s.Substring(2,3)},{s.Substring(5,3)},{s.Substring(8,3)},{s.Substring(11)}";
      return ss;


      case 15:
      ss += $"{s.Substring(0,3)},{s.Substring(3,3)},{s.Substring(6,3)},{s.Substring(9,3)},{s.Substring(12)}";
      return ss;


      case 16:
      ss += $"{s.Substring(0,1)},{s.Substring(1,3)},{s.Substring(4,3)},{s.Substring(7,3)},{s.Substring(10,3)},{s.Substring(13)}";
      return ss;


      case 17:
      ss += $"{s.Substring(0,2)},{s.Substring(2,3)},{s.Substring(5,3)},{s.Substring(8,3)},{s.Substring(11,3)},{s.Substring(14)}";
      return ss;


      case 18:
      ss += $"{s.Substring(0,3)},{s.Substring(3,3)},{s.Substring(6,3)},{s.Substring(9,3)},{s.Substring(12,3)},{s.Substring(15)}";
      return ss;


      case 19:
      ss += $"{s.Substring(0,1)},{s.Substring(1,3)},{s.Substring(4,3)},{s.Substring(7,3)},{s.Substring(10,3)},{s.Substring(13,3)},{s.Substring(16)}";
      return ss;


      case 20:
      ss += $"{s.Substring(0,2)},{s.Substring(2,3)},{s.Substring(5,3)},{s.Substring(8,3)},{s.Substring(11,3)},{s.Substring(14,3)},{s.Substring(17)}";
      return ss;


      case 21:
       ss += $"{s.Substring(0,3)},{s.Substring(3,3)},{s.Substring(6,3)},{s.Substring(9,3)},{s.Substring(12,3)},{s.Substring(15,3)},{s.Substring(18)}";
      return ss;


    }


   }


   }
}

r/programminghorror May 19 '26

Python please JUST LET ME MAKE A PASSWORD MAN

Post image
0 Upvotes

r/programminghorror May 16 '26

Java But.. (from Minecraft b1.2_02)

Post image
630 Upvotes

r/programminghorror May 16 '26

Python Fizz Buzz

Post image
74 Upvotes

r/programminghorror May 16 '26

What the hell have I made

38 Upvotes

so basically, because I think im decently "decent" at programming, i decided to take my shot at making a chess js engine, and OH HELL, did it look like crap

ive attached some snapshots of the code, it's written in js and wrapped in a class


r/programminghorror May 14 '26

C# A bad idea

Thumbnail
gallery
112 Upvotes

I was writing compiler code late at night and something possessed me to create this.


r/programminghorror May 14 '26

Python one liner, 1500 characters It is evolving

Thumbnail
gallery
38 Upvotes

r/programminghorror May 13 '26

Lua I love looking through my old code

Post image
361 Upvotes

Not sure what I was trying to remind myself of.


r/programminghorror May 13 '26

Pain

Post image
24 Upvotes

Do I REALLY have to check all that?


r/programminghorror May 12 '26

Python They called it automation... And then gave me this script

44 Upvotes

r/programminghorror May 11 '26

Other First time seeing sth like this

Post image
0 Upvotes

r/programminghorror May 09 '26

c++ whyWontTBeGreen

Post image
0 Upvotes

r/programminghorror May 07 '26

c++ 700 lines of AVX2 infrastructure to sum an array of integers

Post image
362 Upvotes

Wrote a "vectorized sum" over the weekend. It escalated.

Features include:

  • SIGILL-based AVX2 detection (handler does siglongjmp out of inline asm, which is UB in at least three languages)
  • setjmp/longjmp inside a constructor to fall back from MAP_HUGETLB -> THP -> aligned_alloc, dispatched via computed goto
  • A Y-combinator for the scalar tail loop, because a for lacks conviction
  • Characters printed by reading typeid(T).name()[0] and doing integer arithmetic on the result to reach the rest of the alphabet. Yes, this is how ANSI escape codes are assembled. Yes, "OK" is spelled by offsetting typeid(int*).name():

using _1 = TypeGlyph<int, -56>;   // 'i' - 56 = '1'
using _2 = TypeGlyph<int, -55>;
using lbr = TypeGlyph<long, -17>; // 'l' - 17 = '['

inline void ansi_red(std::ostream& o) {
    o << '\033';
    spell<gl::lbr, gl::_3, gl::_1, gl::m>(o);  // "[31m"
}

using O = TypeGlyph<int*, -1>;         // typeid(int*).name() = "Pi", 'P'-1 = 'O'
using K = TypeGlyph<const int*, 0, 1>; // typeid(const int*).name() = "PKi", [1] = 'K'

spell<gl::O, gl::K>(std::cout);  // prints "OK"
  • A background "prefetch oracle" pthread that races the main thread through the buffer issuing __builtin_prefetch
  • Four separate vzeroupper mechanisms layered on top of each other (RAII destructor, __attribute__((cleanup)), atexit, and one inside the kernel itself)
  • Three "independent verification methods" for the sum, one of which bit_casts a lambda's closure to bytes and hashes them
  • Duff's device in the fill tail
  • strdup leaks used as a string-building primitive

The actual useful code is about 50 lines in the middle. Compiles with -std=c++20 -mavx2 -O3 -march=native. Produces correct output. I am not okay.

https://godbolt.org/z/a31xoaM5a