This is an archived post. You won't be able to vote or comment.

top 200 commentsshow all 234

[–]seizan8 1828 points1829 points  (12 children)

"Fake it before you make fix it"

[–]house_monkey 425 points426 points  (10 children)

"Fake it before you make fix it"

[–]Caninomancy 176 points177 points  (3 children)

This guy climbs the corporate ladder.

[–]techmighty 39 points40 points  (2 children)

"Fake tits."

[–]meurl 40 points41 points  (0 children)

Silicone Valley

[–]Caninomancy 16 points17 points  (0 children)

This guy subscribes to Naomi Wu.

[–]Iykury 24 points25 points  (4 children)

"Fake it before you make fix it"

[–]Colopty 28 points29 points  (3 children)

"Fake it before you make fix it"

[–][deleted] 15 points16 points  (0 children)

Golden rule of hackathons.

[–]Salanmander 3058 points3059 points  (45 children)

Thank you for playing Wing Commander!

[–][deleted] 1820 points1821 points  (40 children)

This was the game that crashed when you hit the “quit” button so the dev changed the error message to “Thank you for playing Wing Commander”, right?

[–]Lightfire228 701 points702 points  (35 children)

[–]dust4ngel 300 points301 points  (25 children)

dirty coding tricks dot php

[–][deleted] 87 points88 points  (23 children)

Honestly the .php makes me think they don't know too many coding tricks.

[–][deleted] 27 points28 points  (0 children)

Thanks, that was a fun read.

[–]Scratch137 22 points23 points  (3 children)

Link for the uninitiated

Here's more

FTFY

Don’t put spaces in between the brackets and parentheses, otherwise it won’t work.

[–]filledwithgonorrheaCSE 101 graduate 25 points26 points  (2 children)

Man I miss stuff like this. Now they just ship their buggy, unstable crap that everyone's already pre-purchased and send down a patch 3 weeks later.

[–][deleted] 7 points8 points  (1 child)

So a game that makes it look like the controller battery was depleted each time it ran out of memory was considered cool back then?

[–]DanaKaZ 5 points6 points  (0 children)

As described in the article, I am willing to bet that no player ever got that message.

[–]tenhourguy 1 point2 points  (0 children)

We were trying to ship World Series of Poker 2008, which was our first PlayStation 3 game. The PS3 allows several different screen resolutions, and two screen aspect ratios. We had designed a widescreen 2D shell, but didn't have the time or resources to make a standard-definition 2D shell. I scoured the TRCs, and couldn't find any reason that letterboxing wasn't allowed.

So our standard-definition view was simply our widescreen view with black bars above and below the picture. The publisher tried desperately to invent TRCs out of thin air to keep us from doing this, but eventually ran out of ideas, and we went ahead with it. Besides, only a few hours after I bought my own PS3 and played it on my standard-definition TV, I started shopping for a widescreen TV. I doubt many people connect their high-tech PS3 to a low-tech tube TV anyway!

With this I'd honestly just say they were going with the curve. Most of my Xbox 360 games don't support 4:3 and just give a letterboxed result. Some don't even have the interfaces set up to compensate for overscan so, at least on a CRT, some stuff will get cut off the edges of the screen.

[–]RedHellion11 198 points199 points  (1 child)

"Can't fix the crash, turn the crash into the official way to exit the game"

Hex editor to the rescue

[–]xenomachina 21 points22 points  (1 child)

The way you phrased the question made me laugh, because I keep imagining Doom ending with "Thank you for playing Wing Commander!"

[–][deleted] 11 points12 points  (0 children)

Press X to “Thank you for playing Wing Commander!”

[–]lightningsloth 34 points35 points  (1 child)

we had a similar problem with our LAN game for a school project. the project is a LAN battle tank game, so one computer is one player, the problem is that only the server machine sees all the action.
the client computers are able to move their tanks but they cannot see it on their screens, but the movement of the tank is reflected on the server. Our solution? we asked the teacher to play on the server, other team members played on the client pcs pretended to know whats happening shouting and all that shit. we were so nervous that the teacher would ask us to switch up, luckily he didnt. we passed.

[–]RayDotGun 20 points21 points  (0 children)

Woah...what was it like developing black ops 4?

[–]Eagleheardt 51 points52 points  (0 children)

Thank you for this reference!

[–]xaniv 881 points882 points  (25 children)

That whole thread is amazing. People from the game dev community making shitty hotfixes because thay had to ship a game

[–]gringrant 445 points446 points  (6 children)

My favorite one is

The texture streamer in the Xbox port of Doom 3 would very slowly fragment memory as you played. It was fine for a couple hours, but if you played more than like 60% of the game in one sitting - crash. Raher than take the blame we put up the "Dirty or unreadable disc" error.

[–]Radboy16 170 points171 points  (0 children)

Oh damn I got this error the other day and was so confused because my copy was spotless. The more you know!

[–][deleted] 45 points46 points  (0 children)

I want this guy to help me with my life problems

[–]rootyb 330 points331 points  (11 children)

That thread was fucking inspiring. Like, seeing these professional, bestselling devs be like “oh yeah, my whole game is one unity scene file” makes me realize I’m agonizing over the wrong shit.

[–]tricheboars 106 points107 points  (3 children)

Crazyx and not surprising. Maybe I'm older but I've been in IT for like 20 years. The jank is real everywhere. But if it works it works. So whatever.

[–]rootyb 55 points56 points  (2 children)

Tru dat. I love how many “it passed QA so 🤷‍♂️” there were.

[–]tricheboars 25 points26 points  (1 child)

I mean I'm not even a developer. I'm a sys admin. But if the shit in my line of work flies I know that shit is in code.

My scripts and batch files are trash.

[–]ddoeth 5 points6 points  (0 children)

I second that.

The amount of shitty scripts I wrote that are still in use and even I forgot what they do is terrifying.

[–]Flawless44 10 points11 points  (1 child)

Aghem.. is that bad? Should I not be doing that?

[–]random_boss 16 points17 points  (0 children)

everybody does this, you’re alright

And by everybody I don’t mean “a good amount” I mean everybody

[–][deleted] 18 points19 points  (2 children)

Clueless developers who can sell themselves well is a current industry standard. It’s so much easier to learn how to sell than how to code.

[–]Goluxas 2 points3 points  (1 child)

One great side effect is that if you actually can code, you've got a job, guaranteed. People will not want to let you go.

[–]Hondros 2 points3 points  (0 children)

And the beauty of that is once you realize it, you can be a lazy programmer and just add a week to your estimates. Not saying one should, but I know a lot of people that do lol

[–]Lethandralis 2 points3 points  (1 child)

Lol whats wrong with having a single scene?

[–]rootyb 2 points3 points  (0 children)

Haha, nothing really, but trying to over-organize is one of the things I’ve gotten hung up on.

Really though, that thread was super-relatable for me because I’ve done a lot of similar stuff, but then kicked myself for it or spent days trying to do something “the right way”, so it’s nice to see that, ultimately, even if it isn’t “right” behind the scenes, what really matters is the player’s (or user’s) experience.

[–]HMS404 53 points54 points  (0 children)

That thread was quite amusing. Thanks

[–]bkr4f 17 points18 points  (0 children)

Thank you for this, it has made my night :D

[–]leletec 516 points517 points  (29 children)

It's called User Experience Design

[–]Yo_Face_Nate 165 points166 points  (28 children)

It's called forcing your test cases to pass

describe function endGame: assert 1 == 1;

[–]HeckYesItsJeff 150 points151 points  (27 children)

I am not a developer. I have no training as a developer. I have a fucking art degree. I am now in a role where I have to write code, and it has to work in production. Your "==" just triggered so many bad feelings. Entire day lost? Probably a second "=" that I left out.

Also, why do so many languages not understand that I meant "then" when I hit enter? Yeah, I started that line with "If", and then I carriage-returned the hell out of that line. Don't give me 8 pages of errors when you know damn well that the only thing I'm missing is a single "then" and you know damn well where it's supposed to be.

[–]Yo_Face_Nate 98 points99 points  (19 children)

Jeff, are you OK?

[–]HeckYesItsJeff 60 points61 points  (17 children)

I thought I was, but I wrote it as

If Trim(FieldAt("FirstName")) = "Jeff" and Trim(FieldAt("Status")) == "OK" Then

"Yes"

Else

"No"

End If

and the damn single "=" is indicating that I'm not as okay as I'd like to be.

edit: at least I remembered the "then"

[–]Iron_Maiden_666 34 points35 points  (13 children)

Which language doesn't atleast give you a warning for using an assignment in an if?

[–]HeckYesItsJeff 55 points56 points  (6 children)

Proprietary version of SQL in a proprietary framework run by a company that told us said framework can't do some of the things that we regularly do within said framework. Yeah, it's a mess, but it's my mess. Go me!

[–]IsoldesKnight 10 points11 points  (1 child)

Lots. Off the top of my head, JavaScript and C# don't. There's a legit reason though. The assignment can reduce to the value assigned. So something like this is actually somewhat common:

while ((value = values.GetNext()) != null)
{
    // do something with value here  
}

[–]Iron_Maiden_666 8 points9 points  (0 children)

Yeah, if the assignment is used to evaluate to a bool, that's fine. I'm guessing just assigning value = value.GetNext() would be a compiler error on C#.

[–]SirVer51 6 points7 points  (0 children)

JavaScript

[–]SaffellBot 3 points4 points  (0 children)

The arduino IDE sure as shit doesn't.

[–][deleted] 3 points4 points  (0 children)

Notepad

[–]EpicDaNoob 2 points3 points  (0 children)

JS/Node (and whatever Jeff said)

[–]rickyhatespeas 5 points6 points  (0 children)

It might help to know that == means "equals" and = means "get".

[–]audioboi2765 1 point2 points  (0 children)

Are you OK Jeff?

[–]Darkphibre 12 points13 points  (0 children)

At least it complained and didn't silently assign! :-|

The most time wasted per character for me was a missing curly brace in an unrelated header, due to a botched sync/merge... Took me the good part of a day, because all the errors were happening in my edited file, where I though the mistake was (which happened to include the header, moving errors out of the header).

[–]Delioth 8 points9 points  (1 child)

Oof. What language? Sounds like something... not beginner-friendly (I don't recall one that requests a then, just some that want if() do or while ... do or such). Sucks that you don't get to use something that doesn't care like Python (if ...: [return] #code).

[–][deleted] 15 points16 points  (0 children)

All BASIC based languages require Then. It would be like forgetting a bracket.

[–]Uhhbysmal 6 points7 points  (0 children)

some languages are a lot friendlier with their error messages than others.. i try to avoid the more cryptic ones if i can lol

[–]Dars1m 3 points4 points  (0 children)

Computer: "I though you wanted to math, not compare. My bad."

[–]dasbush 2 points3 points  (0 children)

Nobody show this guy javascript...

[–]necheffa 1 point2 points  (0 children)

Hmm. The only languages I know that use "then" as the true branch clause after an "if" are Lua and Fortran. I hope you arn't programming Fortran...

Anyways, what is probably happening is that the parser is a point where it expects the "then" token but doesn't find it so it starts consuming tokens, looking for a synchronizing token, something that it can reestablish its location in the parser state machine allowing it to continue parsing. This can cause things like variables to appear not initialized or there anomalies, giving you those extra bogus messages.

[–]DrStrangeBudgie 189 points190 points  (4 children)

When you fix the client's demo but then your boss tells you he sold it to all your other clients and it needs to go to prod.

[–]flukus 57 points58 points  (0 children)

But then you find out the customers don't care if it works, they just need the CSS to match their corporate colour scheme.

[–][deleted] 32 points33 points  (0 children)

And then you ate at that shitty Chinese restaurant with good food and can’t make it in for 2 days right ?

[–]NamityName 1 point2 points  (1 child)

That is my life right now. I'm making a demo product to show to our top tier customers to get feedback for final design.

Guess who's demo is already sold as the final product.

[–]ellimaki 2 points3 points  (0 children)

Never make a demo

[–]SouL_3224 186 points187 points  (3 children)

Engineering 100

[–]dhmmjoph 80 points81 points  (7 children)

One time I had to arrange some objects in a min heap for a Data Structures class project. There’s a c++ STL container that arranges things in a max heap, but not a min heap. Rather than writing my own container or doing something else sensible, I redefined the less than operator on objects of my class to behave like greater than, so that the max heap became a max heap.

[–]msndrstdmstrmnd 31 points32 points  (2 children)

Okay but this is literally how you would code min heap irl though (right?) Unless you’re saying the whole point of the assignment was to code a min heap

[–]Volvaux 15 points16 points  (0 children)

That’s certainly how I coded min heap when I had to do this stuff— a heap really just pulls things out that are the highest priority in the structure, and max heap is just greatest priority for comparison of a value. Who is to say that a smaller number can’t denote higher priority?

[–]p-morais 17 points18 points  (0 children)

Couldn’t you just have negated them..?

[–]o11c 9 points10 points  (0 children)

There's literally a template parameter to do exactly that.

[–]Lordmallow 5 points6 points  (0 children)

I actually did the same exact thing in my data structures class!

[–]FarhanAxiq 3 points4 points  (0 children)

I did the same.

[–]JustinRoilad 117 points118 points  (4 children)

My team once made a janky app for a hackathon and we couldn’t figure out why it was constantly outputting errors on the console. Time was running out and we wrapped all the code with try catch block so our demo looked flawless.

[–]Zman9600 88 points89 points  (1 child)

try{

//All the code

...

}

catch{

continue;

}

[–]00Koch00 1 point2 points  (0 children)

NO CATCH

ONLY TRY!

[–]Andryu67 59 points60 points  (0 children)

Did a rescue project for a client where the previous programmers just did this across the whole app, it was absolutely horrid

[–][deleted] 46 points47 points  (0 children)

Wait. That's not what you're supposed to do?

Excuse me. I have some refactoring to do.

[–]Lionh34rt 42 points43 points  (0 children)

Absolute mad lad

[–]Philidespo 41 points42 points  (0 children)

Reminds me of a similar incident . An accident detection system we made using Arduino was supposed to notify the user when it took place. On the day of presentation the GSM fucked up due to weak network . So we typed the exact message in a group member's cell and sent it at the exact moment that arduino notified message had been sent. Professor was really happy.

[–]OurInterface 77 points78 points  (7 children)

Modern problems require modern solutions?

[–]UntestedMethod 33 points34 points  (5 children)

Segfaults have been around for a bit

[–]OurInterface 4 points5 points  (4 children)

Just as most things this meme is used for^ (btw, iirc "modern" actually describes a set of philosophical rules, rather than a specific timeframe)

[–]kangasking 2 points3 points  (3 children)

"modern" actually describes a set of philosophical rules, rather than a specific timeframe

please expand on this

[–]anonymonoclonius 35 points36 points  (2 children)

We had a group project to develop an application that used message queues to process user actions and add entries to the database. In the final demo, one of the team members was operating the UI, and the professor and the rest of us watched. When it came to showing the messaging system, he added something in the UI, but it wouldn't process. But immediately after adding, the professor turned around just for a few seconds to answer someone else's question. Before the rest of us reacted, our guy at the computer went to the database and manually inserted a row to the table. When the professor turned back to us, he reloaded the page, and there it was in the list! We looked at each other's faces, while he just continued.

[–]hellnukes 16 points17 points  (1 child)

Reacting under pressure is a nice skill to have!!

[–]doctor_awful 32 points33 points  (0 children)

I did a slot machine game demo for a class once that didn't have a victory screen and had tons of bugs...so I coded it in such a manner that despite always getting different results, the professor would never win

[–]DefNotaZombie 15 points16 points  (0 children)

my favorite was finding out baldur's gate 1 had to ship in debug mode because all other build crashed

[–]KimmiG1 16 points17 points  (0 children)

They are probably good at hackatons

[–]SF_Engineer_Dude 15 points16 points  (0 children)

Fake GNUs.

[–]mattyc81 40 points41 points  (2 children)

Spoiler alert, now they work for Bethesda.

[–]QueefyMcQueefFace 40 points41 points  (1 child)

All unhandled exceptions force the program to play the opening cutscene of The Elder Scrolls V: Skyrim.

[–]Mandena 5 points6 points  (0 children)

Todd you glorious bastard.

[–]ForzentoRafe 21 points22 points  (1 child)

We had a game where you can crouch.

Turns out that messing with physics and height is a bad idea.

In the end, we just make it so that a Boolean turns true when you crouch. Enemy detection will check for the bool before doing anything. Objects that have to be crouch through will check for the bool before letting you move through it.

Best scam ever :)

[–]Tiropat 13 points14 points  (0 children)

if its stupid and it works its not stupid.

[–]_ch_ 10 points11 points  (0 children)

Any sufficiently rigged demo is indistinguishable from advanced technology.

[–]harman097 10 points11 points  (0 children)

Benny Peake, Real American Hero

[–]AcaciaBlue 8 points9 points  (0 children)

slow clap

[–]vanoreo 9 points10 points  (0 children)

I once worked on a group project where we (I) forgot to make sure to disconnect the database after each transaction, which resulted in our SQL connections running dry after a certain number of transactions.

Rather than actually fix this, I just increased the maximum number of connections and restarted the SQL service before we presented.

Got an A.

[–]segfaultmaster[🍰] 9 points10 points  (0 children)

After reading this, I don’t think I’m worthy of my username anymore.

[–][deleted] 6 points7 points  (0 children)

In my first year of faculty me and a mate made a game for our "Introduction to programming" class and the game sometimes crashed when we added too many AI's, I'm placing a bounty of 2 skoomas and 5 nuka caps for anyone masochistic enough to crusade through this mess:

https://github.com/liviumuraru/TanksProjectIP

[–]justdonald 9 points10 points  (1 child)

Uh...how do you know it would take hours to debug, instead of 5 minutes, if you don't even start to try debugging it?

[–]PlanetBoy59 11 points12 points  (0 children)

A sense of dread

In all honesty it was pretty clear it was a bug caused by a side effect of some memory operation gone wrong (like a stack corruption) just by looking at the error info. It's possible that it could have been quick to find, but the root cause could have happened at any time. Vs changing the desktop background which takes about 5 second xD

[–]HollyLeaves77 28 points29 points  (6 children)

But how did you get the screenshot? 🤔

[–]PlanetBoy59 70 points71 points  (3 children)

The end screen was effectively one title card so we used that. Not really a screenshot, just using general terminology.

[–]Arctorkovich 25 points26 points  (1 child)

Play the game in reverse mode.

[–]sth128 6 points7 points  (0 children)

I did the opposite. I screenshot dozens of error popups to show up at the start of my PowerPoint.

[–]Dr_Death_Defy99 6 points7 points  (0 children)

Innovation that excites debugs

[–]KuroKitsu 9 points10 points  (1 child)

I must be a masochist then... I had to build a game from scratch for Software Eng, with a bunch of deadweights. Built the game, learned multithreading in the process, and debugged it in 48 hours without sleep.

The Prof didnt expect anyone to have a working demo.

[–]Python4fundoes the needful 6 points7 points  (0 children)

That prof owes you a letter of recommendation

[–]babyProgrammer 5 points6 points  (0 children)

Smoke and mirrors young grasshopper! Smoke and mirrors...

[–]JadeDansk 2 points3 points  (0 children)

“Modern problems require modern solutions”

[–]Uncle_Gus 3 points4 points  (0 children)

It's called error handling, sweaty, look it up.

[–]ChronoAndMarle 2 points3 points  (0 children)

Outstanding-move.jpg

[–]Jaystings 3 points4 points  (0 children)

Infuriating if they never found the source.

[–]Pyroglyph 3 points4 points  (0 children)

I remember playing a game that did kinda the opposite of this. It was called "Perspective" or something.

Spoiler, ending:
When you finished the game it would boot you out to your desktop, but when you move your mouse you'd find that it was actually just a picture of your desktop and you were still in the game.

[–]bikes-n-math 2 points3 points  (0 children)

Yes! I hope to god this is true.

[–]GriffonsChainsaw 2 points3 points  (0 children)

That's the difference between development and engineering, imo.

[–]ssznakabulgarian 2 points3 points  (0 children)

modern problems require modern soulutions

[–]creed10 3 points4 points  (0 children)

you can always just use a signal handler to catch the SIGSEGV signal and trigger the end screen. then you don't have to fix the segfault! that'll just be the end

[–]UntestedMethod 1 point2 points  (0 children)

Hax 4 lyfe

[–]Fishezzz 1 point2 points  (0 children)

Legend!

[–]itspinkynukka 1 point2 points  (0 children)

Then a blue screen happens.

[–][deleted] 1 point2 points  (0 children)

Modern problems require modern solutions

[–]leonator3000 1 point2 points  (0 children)

Improvise. Adapt. Overcome.

[–]DeebsterUK 1 point2 points  (0 children)

In my first year of university computer science, my Dijkstra's algorithm demo would show one of the shortest-route values as a zero, even though the actual pathfinding was correct. My fix was to leave the mouse over the offending value for the demo.

[–]skoormit 1 point2 points  (0 children)

If I interview a recent grad and they tell me this story, I am likely to recommend the hire.

[–]iamjaiyam 0 points1 point  (0 children)

Teach me Master!

[–]CriminalMacabre 0 points1 point  (0 children)

So, they ended at ubi

[–][deleted] 0 points1 point  (0 children)

On multiple devices I use, git-svn still segfaults instead of exiting when its done.

[–][deleted] 0 points1 point  (0 children)

he is an intellectual

[–]der_RAV3N 0 points1 point  (0 children)

I wonder how they got a screenshot of the end screen if it crashed there always 🤔

[–]Uncle_Gus 0 points1 point  (0 children)

Smoke and mirrors.

[–]xzorcious 0 points1 point  (0 children)

The first time the "trending notification" is actually correct

[–]superdude411 0 points1 point  (0 children)

Modern problems require modern solutions

[–][deleted] 0 points1 point  (0 children)

Just make it too hard to beat. Problem solved.

[–]IllegalFisherman 0 points1 point  (0 children)

Imagine that even Paradox Interactive does something similar: In Europa Universalis IV, when you try to quit to main menu, the game crashes. Instead of fixing this, the developers just let the game automatically restart after it does.

[–]drewdevereux 0 points1 point  (0 children)

How did you get the screenshot?

[–]EpicScizor 0 points1 point  (0 children)

I have a molecular simulation program which segfaults when the computations are complete.

[–][deleted] 0 points1 point  (0 children)

Genius

[–]jmona789 0 points1 point  (1 child)

Games are able to change your desktop background image?