Sign in to follow this  
Michael Tanczos

New forum - Coding Horrors

Recommended Posts

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.

 

 

computer_problems.png

 

 

 

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);}

 

Share your frustrations.. share your triumphs.. Let the games begin.

Edited by Michael Tanczos

Share this post


Link to post
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 potatoph34r.png

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

Edited by Tournicoti

Share this post


Link to post
Share on other sites

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 this post


Link to post
Share on other sites

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 this post


Link to post
Share on other sites

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 this post


Link to post
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 potatoph34r.png

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 this post


Link to post
Share on other sites

@Mantistongue.png

Yes, not great wink.png, let me elaborate :

 

optimistic version :

if (x==0) then rolleyes.gif   else angry.png

 

pessimistic version :

if (x!=0) then angry.png  else rolleyes.gif

 

 

Now it should make perfectly sense blink.png  (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

Share this post


Link to post
Share on other sites
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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this