Yeah, I learned to code almost 20 years ago in order to mod video games, and learned that many bugs and massive problems in mods and games are caused by coders being either extremely lazy or making extremely dumb decisions.
In general, a ginormous problem with basically all software is technical debt and spaghetti code making things roughly increase in inefficiency and unneccesarry, poorly documented complexity at the same rate as hardware advances in compute power.
Basically nobody ever refactors anything, its just bandaids upon bandaids upon bandaids, because a refactor only makes sense in a 1 or 2 year + timeframe, but basically all corporations only exist in a next quarter timeframe.
This Jack Forge guy is just, just starting to downslope from the peak of the dunning kruger graph of competence vs confidence.
"wow, what director level ass pushed them so hard that they had to leave that bug in?"
I think of the T-pose all the time in cyberpunk, that was a bug that was horrible but obviously it was tracked somewhere, and some director was like "it's fine, ship it"
Still stuck on FF15. So much time and energy invested in reinventing Unreal Engine... badly. Then they have to attack the corners of the actual story with a hacksaw to push a title seven years in development out the door half baked.
There was a Dead or Alive game in which a manager literally released it before it was ready without consulting with the team. The game was still in beta and a glitchy mess.
Right?? That's one of my favorite aspects, like there's a weird bug and you can kind of backtrack what happened like "Oh I wasn't supposed to jump out of the car I had to walk through the precise path, I missed the trigger or something I guess??"
Yeah, that's something a shitty developer who is bad at debug would say.
Bugs frustrate me more because I can often guess at why they are happening and how to fix them but can't just apply the fix myself. Even more frustrating when there's an update and I'll think, "oooh maybe they finally fixed that annoying bug!" and then see it again shortly after installing the update.
"ugh I know exactly why this is happening" is such a frustrating feeling. Especially when it's stuff that should've been found in testing, or that you know probably was found in testing, but they deprioritized the fix.
Bugs frustrate me more because I can often guess at why they are happening and how to fix them but can't just apply the fix myself.
That's like a big portion of bugs lmao, lots of bugs exist because the spaghettification of the code makes it too costly to fix. Do you really think devs don't know why the bugs are there? They usually can't be fixed because there is no time or no willingness from management or the root cause is so deeply rooted it requires a shit ton of work to be able to fix it at all.
Sometimes what's worse is when I am pretty sure something they suggest won't fix the bug and then it does fix it. Like I experienced a race condition in my Android email app and talked to support about it. They said try clear app data / cache and see if it worked. I thought there is no way that would solve it and they're just giving be the boilerplate support thing. It did fix it.
Now I'm even more scared at what their code is doing.
The DMR in call of duty years ago. "Here's a bug with a gun that instakills from 4 miles away that breaks the game dynamics. It's literally unplayable. Instead we added more features that make us money."
But sometimes it's just what people need to get their shit together. People get too complacent sometimes, and when everyone has to deal with the consequences sometimes a little emphasis on how bad things are is necessary.
Nah, I complain more about things. Especially ones that should work. “Oh you didn’t test this in my preferred browser and now it only works in Chrome, idiot”. I can see the error and I know why the shortcut was taken or the test that would have caught it was skipped and it pisses me off.
Sometimes it’s deadlines and outside forces and not laziness, and for those the coder is forgiven. And sometimes the bug is hilarious and not frustrating. But if you have an e-commerce site, basic utility, healthcare portal, or other required site that is broken because you couldn’t be arsed to test with something other chrome on a desktop monitor then fuck right off.
One of the things that pissed me off fierce was when my natural gas utility company redid their website, and got redirected to a landing page with an autoplaying video. Excuse me I'm already a customer, I want to spend twenty seconds paying my bill, not two minutes dealing with unnecessary crap someone thinks looks better or more trendy.
I must have learned programming wrong, then, because dear ducking god, the amount of incompetent shit I have to see is surreal.
One system we've got from a different state was marketed as having geolocation. It doesn't. All object relations have to be created manually in a separate page, as in, you register a city, then register an address, THEN, on a different page, you connect the two. Now imagine this for some 24 objects.
It has some specific profile permissions hard coded by id (like, only profile with id 4 can create some stuff)
This is just the shit I remember off the top of my head. The cherry on top is that they didn't validate unique emails for users, you could have 999 users with the same email and no way for them to reset their passwords. I asked why: "we didn't think about it"
Feel your pain there, my second and longest role was doing automated phone systems(IVR) and sadly Everytime I call another company I hear all of their fuckups
This read like a movie review. I love movie reviews.
Don't watch this movie! Died by the second half. My neighbors called SWAT on me cuz the movie script was that bad, the actors completely unlikable, and the direction almost nonexistent. The CGI was not bad if it was 1990s. There was almost no humorous scenes. Just wet paint dripping dialogue by actors that couldn't fake an emotion or facial expression to save their life.
Every time a critic dies a little on the inside
Can't get enough. The opener is always fresh and hilarious
Whenever I feel like this I think back to how many of those "simple" bugs I've had to fix in my own code and how many years it took off my life expectancy and feel a little connection with the poor developer who is probably currently losing their hair over this too
Unfortunately my bank, government, national health, surgery, local shops, food delivery services, etc. don't open source their code. It'd be nice if they did however.
This can also be one of the frustrating parts of open source.
Find something you don't like? Fix it. Will the repo owner approve your pull request? Who knows. Maybe they're a bit absentee. Maybe they view the original behavior as working as designed. Maybe your design doesn't fit their architectural model, so they'll (eventually) heavily refactor your changes and merge them in.
You can always stand up a fork, but keeping those two at feature parity and going in the same general direction can become harder and harder with time.
That's not to say not to try! But it also means reaching out to the repo owners/maintainers before making your first change.
No it just makes me even more frustrated. The amount of incompetence and neglect I see and have to deal with on a daily basis, even with software developed by multi-million dollar corporations, is astonishing.
Why is modern webdev such a clusterfuck?
Why does VisualStudio take multiple seconds to open an empty project?
Why does Nvidia's control panel have multiple seconds long pauses to switch between settings categories or loading lists?
Why does this game run like garbage on a 4090 when it has mostly static environments and the graphics aren't even that good?
I could go on but I'd be here all day. All of those things, with the exception of webdev (because god there's so much shit in there...), could be easily fixed* or should've never gotten that bad in the first place.
*Provided the entire architecture isn't garbage, otherwise see the rest of the sentence...
And I know much of it is not necessarily the fault of the devs, with management and deadlines preventing them from doing the best possible job, I myself was forced to release half broken updates a few times because of that, but they are not the only problem.
There's a real problem in today's programming culture with thinking that computers are so fast, any garbage code you write will be fast enough, or that you only need to optimize the hot path.
Apply that philosophy throughout all your codebase, and suddenly there is no hot path, everything runs like shit. People should also actually learn how things work, not just frameworks, otherwise they won't be able to make informed decisions about what they write.
Also stuff like "Clean Code" and other similarly dogmatic principles still permeate many of the codebases I see. Nigh implementable jungles of <10 lines long functions and OOP garbage that make working with everything a massive pain, other than making every function call virtual and thrashing performance. You need to maintain such a massive amount of context in your head just to figure out the flow of a particular piece of code, with the aid of a debugger because everything is done through abstract classes or interfaces, that even making the smallest change becomes a tedious and error prone task.
Also fuck dynamically typed languages. They suck, every single one of them.
Have tried multiple times to "finally figure out how this web stuff works because I'd like a nice website that isn't a huge chonky slowpoke WordPress install with ad-infested plugins."
I can't do it. Gamedev is hard, but makes 1000x more sense than whatever cargo-cult bubblegum-and-hope the modern web runs on.
I probably should learn JS, but I'm very hesitant to even bother with it because it feels like an insane time commitment. Like getting a doctorate from scratch in something you're not SUPER jazzed about or starting OnePiece from Ep 1.
"Oh cool, you learned that thing everyone complains about! But you know nothing until you get good at ~30 out of 400 different highly opinionated frameworks."
The input to result ratio just doesn't seem like it's there. O.o Maybe I'm just a noob but this is my experience lol.
And don't even get me started on RAM-munchy Electron apps.
"Why yes, I WOULD love a separate instance of Chrome running for every messenger app I use! And I love when Discord is the only support resource! :D"
My favorite part is empty array truthiness.
[] is falsy ( [] == true returns false ), but ![] is false. !![] is obviously true. (! is inversion as in all normal languages)
You might enjoy learning vanilla js and making a site with as few deps as you can get away with. Or a lightweight framework like svelte or preact. The browser stack is definitely some weird shit but it's still somewhat approachable if you dig under the abstractions that most web devs never venture beyond. It definitely helped me cut through all the manufactured noise.
I start to appreciate games that implement complex and sometimes rarely noticeable (immersive, boo) mechanics that come off naturally. And I notice how a thought pattern behind bad ones could've progressed.
Bugs? My favs are buggy to the point some of these bugs became their own mechanics. I only get annoyed when the game bores me out, and if bugs can't make me feel like it, it's fine. And some better-done games are pretty boring to me.
Shoot the dragon head statues, the pedestals raise.
The pedestals make stone grinding sounds and...
Only one pedestal has raised, the pots have caused the animation to bug out and the game engine to assume that the pedestal is in the final position on the floor.
The floor position has the lever locked.
The game developer never anticipated what a massive idiot I was
Dying to a stupid bug is a great way to suddenly get frustrated though. Hard agree with you though, buggy games are my favorite. Especially small indie projects because I you can find the great bugs.
Dying to a bug in indie game can be so hilarious some youtubers in niche game communities got their rep from doing compilations of these. Case in point: PhanracK of WH:VT2 fame: https://www.youtube.com/watch?v=mGlWiMg3bUg
Understanding how software is made, and what are best software engineering practices to make stable software only makes hate AAA studios that release overpriced crashy messes even more.
less about certain bugs and limitations, where I can understand that the problem is harder than it seems
and more about others, where I have to imagine a poor intern dragged around by bad advice for several sprints, finally marking the task done (forehead sweating and all), even though they did not really know what they were doing even for a minute.
Knowing how to code and interacting with stuff like the nintendo e shop scrollimg performance being super shit makes me think I would absolutely be fired if I deployed shit like that in prod for millions of users.
At minimum I think it would stop people from calling devs lazy. I don’t code, but even I know for how boring Ubisoft games are, none of them were “lazy” outputs.
As someone who had a career as a web developer and had to build sites that worked pixel perfect on multiple devices and clients I think game developers are jokers
I've never been a professional programmer, made some apps in C# and C++, played with Python about a decade ago, but this advice definitely does not work for me. I see really obvious simple problems all the time and think "those absolute buffoons."