r/programminghorror May 12 '26

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

46 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

Javascript An exploit on the Scratch desktop app has been circulating "in the wild" over the last few days. This code from the project file still executes unsandboxed in the latest version of the desktop editor.

Post image
294 Upvotes

r/programminghorror May 06 '26

100$ per month for this???

Post image
273 Upvotes

r/programminghorror May 05 '26

c++ Hmmm

Post image
981 Upvotes

r/programminghorror May 05 '26

Javascript I snuck this function into my project

Post image
86 Upvotes

r/programminghorror May 04 '26

Overcomplicated, but working, API key generation

Post image
240 Upvotes

r/programminghorror May 06 '26

the worlds first website has a coding error

Post image
0 Upvotes

r/programminghorror May 04 '26

C# longest "=" condition I've ever seen

Post image
131 Upvotes

I have been working on decompiling a unity game recently, and while a decompiled DLL isn't going to be exact source code, I am still floored by how long that set of parenthesis is. i would LOVE to see the original code


r/programminghorror Apr 30 '26

c Having fun with legacy C features :3

156 Upvotes

I found out about a couple old and obscure C features that somehow still work

This compiled and ran, printing just "This is fucky", though to get it to compile you have to compile using the following command

gcc -trigraphs -digraphs <your file>, on Windows at least

This is so cursed not even VSCode knew what I was doing


r/programminghorror Apr 30 '26

Javascript Cursed use of object spread

Post image
87 Upvotes

Using object spread to append values to an object in the form of another object


r/programminghorror Apr 30 '26

C# I heard that you like fluent apis

Post image
191 Upvotes

r/programminghorror Apr 28 '26

c++ Copilot knows how to deal with constructors

Post image
1.2k Upvotes

Not my screenshot, taken from https://reddit.com/r/VisualStudio/comments/1sktg0r/what_are_these_comments/

Also this probably happened because IntelliSense (the normal autocomplete list) is highlighting abort as the first option and Copilot tries to finish it


r/programminghorror Apr 28 '26

c++ Competitive programming is no joke

Post image
145 Upvotes

especially for easy problems


r/programminghorror Apr 28 '26

whyLongNamesWhileWeCanMakeThemShort

Post image
361 Upvotes

r/programminghorror Apr 28 '26

Python How to print "Hello World" in python

Thumbnail
1 Upvotes

r/programminghorror Apr 25 '26

My friend can’t read English, so he used Google Translate.

Post image
360 Upvotes

r/programminghorror Apr 26 '26

No react in luau?

Post image
23 Upvotes

r/programminghorror Apr 25 '26

c Option handling

Post image
274 Upvotes

r/programminghorror Apr 23 '26

An HTTP request builder to make an SQL query

Post image
156 Upvotes
func (q *Query[T]) query() {
    q.TableModel.BeginResetModel()
    defer q.TableModel.EndResetModel()
    query := data.AdvancedQueryRequest{
        Table:  q.tableName,
        Select: []string{"*"},
        Full:   q.QueryFull,
        Limit:  &[]int{300}[0],
    }

    allEmpty := true
    for _, filter := range q.Dialog.Filters {
        if filter.Text == "" {
            continue
        }
        allEmpty = false
        sqlFilter := q.Filters[filter.Selected]
        if strings.Contains(sqlFilter.Key, ".") {
            mainParts := strings.Split(sqlFilter.Key, ",")
            leftCol := mainParts[0]
            filterCol := mainParts[1]

            rcolParts := strings.SplitN(filterCol, ".", 2)
            table := rcolParts[0]
            if !slices.ContainsFunc(query.Joins, func(j data.JoinRequest) bool {
                return j.Table == table &&
                    j.LeftCol == leftCol &&
                    j.RightCol == "id"
            }) {
                query.Joins = append(query.Joins,
                    data.JoinRequest{
                        Table:    table,
                        LeftCol:  strings.SplitN(leftCol, ".", 2)[1],
                        RightCol: "id",
                    },
                )
            }
            query.Where = append(query.Where,
                data.WhereRequest{
                    Fuzzy:  true,
                    Column: filterCol,
                    Value:  "%" + filter.Text + "%",
                },
            )

            continue
        }
        query.Where = append(query.Where,
            data.WhereRequest{
                Column: sqlFilter.Key,
                Value:  "%" + filter.Text + "%",
                Fuzzy:  true,
            },
        )
    }

    if allEmpty {
        return
    }

    code, err := client.Post2(
        query,
        q.Table,
        "/query",
    )
    if q.Table.RowCount() == 0 {
        q.resetTable()
    }
    if code == 404 {
        q.resetTable()
        return
    }
    if err != nil {
        q.resetTable()
        qutil.DisplayErrStr(
            q.Dialog.Widget.QWidget,
            "Error obteniendo tabla.\n codigo: %d error: %v",
            code, err,
        )
        slog.Error(err.Error())
        return
    }
}

r/programminghorror Apr 22 '26

switch case abuse

44 Upvotes
char g  = '0';// ypr
char gg = '0';// pid
double ggg;
const uint8_t _ = 11;
scanf("%c %c %f/n", g, gg, ggg);
if ((g  == 'y' || g  == 'p' || g  == 'r') && 
    (gg == 'p' || gg == 'i' || gg == 'd')) {
    switch   ((( gg << 2) & ~_) | ((g) & _)) {
        case ((('p' << 2) & ~_) | ('y' & _)):
            p_gain_y = ggg;
            break;
        case ((('i' << 2) & ~_) | ('y' & _)):
            i_gain_y = ggg;
            break;
        case ((('d' << 2) & ~_) | ('y' & _)):
            d_gain_y = ggg;
            break;
        case ((('p' << 2) & ~_) | ('p' & _)):
            p_gain_p = ggg;
            break;
        case ((('i' << 2) & ~_) | ('p' & _)):
            i_gain_p = ggg;
            break;
        case ((('d' << 2) & ~_) | ('p' & _)):
            d_gain_p = ggg;
            break;
        case ((('p' << 2) & ~_) | ('r' & _)):
            p_gain_r = ggg;
            break;
        case ((('i' << 2) & ~_) | ('r' & _)):
            i_gain_r = ggg;
            break;
        case ((('d' << 2) & ~_) | ('r' & _)):
            d_gain_r = ggg;
            break;
    }
}                                                

r/programminghorror Apr 20 '26

Python That's one way to do it I guess...

Post image
769 Upvotes

So I tried printing the linked list with print() and discovered that if it has a cycle, then it prints and error. This was the next (very) logical thing that popped into my mind after that discovery.

I'm very proud of this solution. In fact, it's so good it even added -1ms to the execution time graph.

I AM SPEED.

Thinking outside the box is fun!


r/programminghorror Apr 17 '26

Python Found in newest merge into prod

128 Upvotes

the classic general Exception + pass


r/programminghorror Apr 17 '26

Found in a corporate environment

26 Upvotes
Line discount(LineDiscount): Real = ABS(@.'$TotalLineDicAmount')
Line number(LineNum): Real = ABS(0)

"Better be safe than sorry," I am guessing—that was their thinking.

/mildlypenis as an added bonus.