# Monday morning code...

## Recommended Posts

Ashaman73    13715

Monday morning code is this kind of code, where you write some seemingly easy code in hour just before first coffee and your co-workers need at least the rest of the week to figure out what went wrong. You would deny this code until you see the blame in svn, after that you start to believe in global conspirators.

Here's some java code I tracked down which caused some ugly bug

// determine objects to copy
MyClass sourceObj = getSourceObject();
MyClass destObj = getDestinationObject();

// copy now
destObj = sourceObj;


##### Share on other sites
Alpha_ProgDes    6930

Pass pointers by value for the win......?

Monday mornings should be referred to as the "Hours of the n00bpocalypse"

Edited by Alpha_ProgDes

##### Share on other sites
slicer4ever    6769

it's saturday morning, this code doesn't cause a crash, but is just an stupid oversight i caught myself doing:

Tile *World::GetTile(unsigned int x, unsigned int y){ //Same as above, but we can specify x/y coordinates instead of index positions.
if(x<0 || x>=m_Width ) return nullptr;  //We check that the x-axis is inside the world.
if(x<0 || y>=m_Height) return nullptr; //We check that the y-axis is inside the world.
return m_Tiles+(x+y*m_Width);
}


completly idiotic on my part, unsigned numbers are never less than zero;-)

Edited by slicer4ever

##### Share on other sites
TheChubu    9454

One can never be sure enough! :P

Also check if nullptr is actually null.

##### Share on other sites
Puyover    194

If this was C++ there would be some chance of success due to operator overload, but...

##### Share on other sites
NEXUSKill    475

I usually avoid writing any code monday morning, think about stuff, do some testing, identify issues and think of solutions... only start coding after lunch

##### Share on other sites
freyastudio    831

I once made this "beauty" at work...

// Write
bool result = insert(results, data);

if ( m_CurrentSet )
{
result = result || insert(*m_CurrentSet, data);
}


The idea was to store the latest of anything that has been written to file in memory, to make sure the latest set of data was in memory. However, this being a real time application, which in theory should run forever (and generates data for a multi-million dollar service), the results were pretty poor.

No harm done, since this was in a test and not production.

##### Share on other sites
arthurviolence    1621

I ALWAYS end up making two comparisons on X or using X value for both X and Y on something, hahahaha, eventually have some reeeeallly weird behavior and track it to that, lmao

##### Share on other sites
_orm_    112

One can never be sure enough!

Also check if nullptr is actually null.

nullptr is a C++11 keyword that is guaranteed to be null.

##### Share on other sites
Alpha_ProgDes    6930

Here's some recent Monday-morning like code

if (ddl.SelectedValue == "Ticket")
PassengerPanel.Visible = false;


See what I did there......?

##### Share on other sites
Juliean    7077

See what I did there......?

Judging from your formatting, I'd say you forgot to put parenthesis after the if, so that the third line was executed regardless of the selected value? If so, it would be interesting what the results of this was

Edited by Juliean

##### Share on other sites

Just a wild guess, I'd say the PassengerPanel became invisible regardless of whether the selected value was "Ticket" ;)

##### Share on other sites
TheChubu    9454

One can never be sure enough!

Also check if nullptr is actually null.

nullptr is a C++11 keyword that is guaranteed to be null.

That was the point of my comment  Comparing if unsigned values are negative... checking if nullptr is null... rings a bell?

##### Share on other sites
DekuTree64    1168

Here's some recent Monday-morning like code

if (ddl.SelectedValue == "Ticket")
PassengerPanel.Visible = false;


See what I did there......?

Classic. "Hey, I just need to add one more thing in this if case... *copy, paste, compile*, no error, I'm such a good programmer! *moves on*"

2 weeks later, someone else: "Why is this stupid thing vanishing all the time? "