We release our software in a few days. And in the last cycle of tests, all kind of bugs are surfacing up. And we are tight, real tight - our release date was two weeks ago.
No time to fix bugs, no time to switch to a different technology, no time to re-design classes: we need to ship the software! Like real artists.
So, I hacked network code to make a 3rd party code work properly, I kept unrelated code in classes just so their inheriting classes could use it, I 'Spaghetti-ed' the hell out of my code just to quickly implement a requirement.
All-in-all, I've been a bad boy. But sometimes a software developer has to be. I'm not proud of it, but if we want to release, we need to make it work.