this post was submitted on 22 Jul 2024
86 points (97.8% liked)

Programming Horror

2131 readers
1 users here now

Welcome to Programming Horror!

This is a place to share strange or terrible code you come across.

For more general memes about programming there's also Programmer Humor.

Looking for mods. If youre interested in moderating the community feel free to dm @Ategon@programming.dev

Rules

Credits

founded 2 years ago
MODERATORS
 
top 15 comments
sorted by: hot top controversial new old
[–] earmuff@lemmy.dbzer0.com 23 points 11 months ago

Now please publish it as a Node.js module and in 3 weeks, it will be in Top 10 most used modules, being used in 90% of Fortune 500 corporations.

[–] SzethFriendOfNimi@lemmy.world 14 points 11 months ago (1 children)

But… does it pass all the tests?

[–] _stranger_@lemmy.world 16 points 11 months ago (1 children)

If it does, they don't have enough of the right tests.

[–] madcaesar@lemmy.world 3 points 11 months ago (1 children)
[–] 48954246@lemmy.world 7 points 11 months ago* (last edited 11 months ago) (2 children)

What would the output be for the following:

99 Beers on the Wall!

[–] AnUnusualRelic@lemmy.world 4 points 11 months ago

Or for "CAFÉ"?

[–] HelloHotel@lemmy.world 1 points 5 months ago* (last edited 5 months ago)

I think it would be

11 beers on the wall.

[–] jet@hackertalks.com 8 points 11 months ago* (last edited 11 months ago) (1 children)

This will not work on Unicode

Greek and Arabic have cases as well

[–] MoSal@lemm.ee 5 points 11 months ago (1 children)

This will not work on Unicode

Correct.

Greek and Arabic have cases as well

Who told you that?

[–] jet@hackertalks.com 8 points 11 months ago

Brain fart, I meant Cyrillic but I wrote the wrong word! Good catch thanks!

[–] Binette@lemmy.ml 5 points 11 months ago (1 children)
[–] cadekat@pawb.social 8 points 11 months ago* (last edited 11 months ago)

This looks like O(n), because you don't include constants when calculating Big-O. It's still ~26 times slower than the implementation without the inner loop.

~~This looks like O(n^2) because of the sub.~~

I was right the first time. sub is "substring" and not "substitute".

[–] jh29a@lemmy.blahaj.zone 3 points 11 months ago (1 children)

here's a more nuanced question: in school iirc my teacher was implementing terminal 2-human tic-tac-toe with us and used an only slightly less egregious 7-by-3 AND/OR gate to see whether any player had won. because I didn't like all the repetition, my version iterated through a 7-by-3 list of lists of indecies instead. every toy programming problem I've seen since was so general that it didn't go well with this kind of hardcoding either

[–] jet@hackertalks.com 2 points 11 months ago

When creating an example for beginning programmers, sometimes using a very inefficient data structure is more illustrative and a helpful educational tool.

[–] azi@mander.xyz 1 points 9 months ago* (last edited 9 months ago)

Honestly as long as literals are properly converted, I don't see any other way to do this in an entirely encoding agnostic way