# New forum - Coding Horrors

## Recommended Posts

Michael Tanczos    5681

I'm just popping in a new post here for this forum we're kicking off.   The description for this forum is simply this:

Discuss software design issues, quirky things you've found, asshat approaches to problems, shitty code your co-workers wrote, shitty code you yourself wrote and wondered what you were thinking, elegant problem solutions (to flip things around), design patterns, "hey look I can write a compiler with one line of code because I'm so clever" type stuff

This is a for-fun forum where you can pretty much discuss software design issues including such as:

• Why every programmer should use singletons
• Why OpenGL is far superior to DirectX
• Using Goto is perfectly fine
• Why professional programmers who only code during their day jobs will never be as good as those who code outside of work
• Why commenting EVERY SINGLE LINE OF CODE is important   // add x to y and store inside of sum

   ....
// tCount keeps showing up negative here for some reason..  it should never be negative

tCount = sqrt(tCount*tCount);  // Fixed!



It is for posting pieces of code that we can all look back on and laugh about.   Code samples are also appreciated.. we love code.   We also love related comics as well.

Glob pattern matcher anyone (*)?

main(int c,char**v){return!m(v[1],v[2]);}m(char*s,char*t){return*t-42?*s?63==*t|*s==*t&&m(s+1,t+1):!*t:m(s,t+1)||*s&&m(s+1,t);}


Edited by Michael Tanczos

##### Share on other sites

if (x^2>0) then patato else tomato

is it supid enough for this new forum ? ^^

Sorry =)

This is stupid because the answer is always potato

Of course you can replace patato with tomato. If you prefer tomato. Do you like patato ?

Edited by Tournicoti

##### Share on other sites
Cornstalks    7030

I wish this forum would've been around when I posted this!

• Using Goto is perfectly fine

This just popped into my mind:

##### Share on other sites
Michael Tanczos    5681

I wish this forum would've been around when I posted this!

• Using Goto is perfectly fine

This just popped into my mind:

Brilliant.  =)    I was trying to find a comic that embodied this idea.. yours is better.

##### Share on other sites
slicer4ever    6769

   ....
// tCount keeps showing up negative here for some reason..  it should never be negative

tCount = sqrt(tCount*tCount);  // Fixed!



o god, i laughed far too hard at this one.

##### Share on other sites
FLeBlanc    3141

33 parameters? Yikes. Reminds me of something I did once when I was learning, a long long time ago. I wrote a function that took 25 parameters. It was for a tile engine, and the 25 parameters represented the values of each tile in a block of 5x5 tiles that were used to calculate some sort of classification code. Even worse, I named them all letters of the alphabet, so I had something like [b]int calculateMegaTileCode(char a, char b, char c....)[/b]. It was... man, it was horrible. I spent [i]hours[/i] laboriously writing that function as a HUGE chunk of [b]if (a==0 && b==0)[/b] statements. I was actually proud of it and myself when I finished it. I was 14, and I felt like I had just completed the most complicated and awesome piece of code anyone had ever written. Eight years later when I looked at it just for nostalgia's sake I nearly wept.

##### Share on other sites
slicer4ever    6769

33 parameters? Yikes. Reminds me of something I did once when I was learning, a long long time ago. I wrote a function that took 25 parameters. It was for a tile engine, and the 25 parameters represented the values of each tile in a block of 5x5 tiles that were used to calculate some sort of classification code. Even worse, I named them all letters of the alphabet, so I had something like int calculateMegaTileCode(char a, char b, char c....). It was... man, it was horrible. I spent hours laboriously writing that function as a HUGE chunk of if (a==0 && b==0) statements. I was actually proud of it and myself when I finished it. I was 14, and I felt like I had just completed the most complicated and awesome piece of code anyone had ever written. Eight years later when I looked at it just for nostalgia's sake I nearly wept.

when i was starting out in lua(and in programming in general), i wrote a risk clone(the board game), i hard-coded each country connection by using huge if/else if blocks, the pain of making a small change was....intense... worse yet, i repeated the huge if/else if block at several diffrent points in the program.

the game was never finished, and the file was a couple megs big(i didn't even break the game into seperate files cause i didn't know how).

it probably stands as the worse most complicated thing i've ever programmed. (and for some reason, i was really proud of what i was doing.)

##### Share on other sites
Mussi    4409
if(lolReturnThisInstead == true)
return true;
else
return false;

##### Share on other sites

I wish this forum would've been around when I posted this!

I think that beats the record I saw in TDWTF...

##### Share on other sites
BCichowlas    106

While helping with QA for Lotus Notes, I found my favorite all-time bug.  The symptom was that somehow application processing became gated by mouse interrupts.  So nothing would process at all unless you moved the mouse.  Better, the faster you moved the mouse the faster things got done!  Interrupt processing must have become entangled somehow, but it was really fun to demonstrate!

##### Share on other sites
NightCreature83    5006

One of the best comments I have found in a code base was "Ow magic numbers, guide us to the light!"

##### Share on other sites
swiftcoder    18437

I wish this forum would've been around when I posted this!

##### Share on other sites
ManTis    1025

if (x^2>0) then patato else tomato

is it supid enough for this new forum ? ^^

Sorry =)

This is stupid because the answer is always potato

Of course you can replace patato with tomato. If you prefer tomato. Do you like patato ?

Wrong. Your code is obfuscated way of checking if (x != 0)

I can't find the screenshot any more, but in one of my past companies, we had cool functions like this one:

int GetID()
{
return 4;
}


and this function would be overloaded for each and every object, with different (well, not always, as I noticed during debugging), typed by hand (sometimes commented // this ID is 4!) value.

Yay!

##### Share on other sites
alh420    5995

post removed because of stupid contents ;)

should wake up before I post...

Edited by Olof Hedman

##### Share on other sites

@Mantis

Yes, not great , let me elaborate :

optimistic version :

if (x==0) then    else

pessimistic version :

if (x!=0) then   else

Now it should make perfectly sense   (cf ZE state of the art in term of conditional branch)

By the way, do you like boats ? (I'm about to create a poll on that)

Edited by Tournicoti

Zipster    2365

##### Share on other sites
Oberon_Command    6088
Sleep sort!
#!/bin/bash
function f() {
sleep "$1" echo "$1"
}
while [ -n "$1" ] do f "$1" &
shift
done
wait

example usage:
./sleepsort.bash 5 3 6 3 6 3 1 4 7

edit: removed link to source since it apparently has NSFW material that I didn't notice before posting. Edited by Oberon_Command