Feature Creep - Give us some of the worst examples of feature creep you've seen. I'm working on some projects and I wanna see what I need to steer clear of.

Flabba_Wabba_Jabba_Noonga

Just a man trying to change things
kiwifarms.net
Yandere SImulator.
Oh yeah I'd forgot about him. Although his feature creep is ALSO extremely unoptimised creep. I saw some analysis on his pathfinding that was using like 90% of the processing power for characters. It was some janky implementation of the Dijkstra/A* pathfinding algorithm, but it was just so fucking inefficient.
 

Flabba_Wabba_Jabba_Noonga

Just a man trying to change things
kiwifarms.net
They kinda complete each other, like an autistic ying-yang. Add to that author's complete and utter refusal to learn.
Even back when I was in first year of my university undergrad for Computer Science, I still absolutely cringed hard when I saw snippets of code here and there. Absolutely abysmal stuff. It's not even all the if statements, it's that he has one student file for every type of student in the game. So it has to check every single time what type of student it is when it's iterating, just absolutely AIDS in terms of performance. Coupled with that small software team that offered to help him, and he got all pissy when they tried fixing his code. God he's a fucking lolcow and a half.
 

JuanButNotForgotten

Friendly Mexican Ghost
True & Honest Fan
kiwifarms.net
Absolutely abysmal stuff. It's not even all the if statements, it's that he has one student file for every type of student in the game. So it has to check every single time what type of student it is when it's iterating, just absolutely AIDS in terms of performance.
And all this pasta in ONE SINGLE FILE.
 

Flabba_Wabba_Jabba_Noonga

Just a man trying to change things
kiwifarms.net
Are they personal software projects? In my experience, those are damn near the only software projects that don't end up dead by feature creep. A good manager will never let a software project go unmolested.
They are personal projects that I want to use to use to demonstrate my programming skill. If you've read the other threads it's about multi-CPU distributed computing. I have a bunch of computers lying around and want to turn them into slaves and abstract it away into a single interface. I can see many areas where feature creep can become a real problem so I just wanna spark some discussion about feature creep in other software projects so that I can better understand the pitfalls of other developers.

But eventually I do want to run a software company of my own, so yes this knowledge will be used for commercial application later lol.
 

mr.moon1488

True & Honest Fan
kiwifarms.net
Even back when I was in first year of my university undergrad for Computer Science, I still absolutely cringed hard when I saw snippets of code here and there. Absolutely abysmal stuff. It's not even all the if statements, it's that he has one student file for every type of student in the game. So it has to check every single time what type of student it is when it's iterating, just absolutely AIDS in terms of performance. Coupled with that small software team that offered to help him, and he got all pissy when they tried fixing his code. God he's a fucking lolcow and a half.
He's so bad I know fuck all about programming, but can still tell he's doing it wrong.
 

Smaug's Smokey Hole

Sweeney did nothing wrong.
kiwifarms.net
Even back when I was in first year of my university undergrad for Computer Science, I still absolutely cringed hard when I saw snippets of code here and there. Absolutely abysmal stuff. It's not even all the if statements, it's that he has one student file for every type of student in the game. So it has to check every single time what type of student it is when it's iterating, just absolutely AIDS in terms of performance. Coupled with that small software team that offered to help him, and he got all pissy when they tried fixing his code. God he's a fucking lolcow and a half.
From what I've seen he doesn't have a sense of game programming either, that is a special skill set. How he sets things up is just atrocious and his solutions to problems are mind boggling.
 

Rupert Bear

utrrbeapre.html
kiwifarms.net
(((Avast))), I stopped using that shit but i remember after reinstalling it, it somehow reverted back to a really old version of avast, and dear god it was so much more quick and effective than the current versions.
Most antiviruses in general are bloat: Pumped with ads, unnecessary side scans that start before the ones that actually fucking matter and modern tryhard flat UI with animations that takes a shitton of resources and time to load.
 

Knight of the Rope

True & Honest Fan
kiwifarms.net
I can see many areas where feature creep can become a real problem so I just wanna spark some discussion about feature creep in other software projects so that I can better understand the pitfalls of other developers.
When it comes to feature creep, the answer is always money.

Sometimes it's the programmer's fault. For example, suppose you can't program for shit and you're really just using the pretense of an "anime waifu murder simulator" as a scam to not have to work for the better part of your late 20s/early 30s. Then since it's a scam, it's in your interest to not actually work on the game at all, right? After all, when you finish the game you stop getting money. But while you're still 'finishing' it, people keep giving you money for some absurd reason. So you need to look like you're accomplishing shit while not actually accomplishing anything. Enter feature creep: "Hey guys! I made a toggle where you can change the size of the MC's boobs!" "Hey everyone! I made a mod where the MC grows wings and flies around shooting lasers!" "Hey guys! I spent a couple of months adding demons and other supernatural shit for the occult club that nobody cares about!"

More often though, feature creep is not the programmer's fault, but management's fault instead. For example, suppose you're a databroker of sorts for a research group in a specific niche: when people want data for their projects, you're their guy. To get the data manually is a tedious slog through multiple different websites. "Not a problem". You're a decent programmer, so you code up a quick curl script that basically scrapes it from the websites and then call it a day. It's done: it's a single purpose script that does one thing and does it perfectly. But then your boss finds out about it. "Holy crap, that's awesome! Hey, can you make it grab data from <other place> as well?" In the interests of money/continued employment, you agree. It's fine to extend it to just this little thing, right?

Enter feature creep. Now your manager's got his mitts on your ostensibly malleable code, and the molesting begins. "Oh, how about these other places!" Done. "Man this is really cool, but actually what I'd want to use is like a Python package that could just download the data for me when I'm using a Jupyter notebook. Think you can sort that out?" Fine, whatever. "Nice! But actually what I think would be really cool is if it was a GUI instead, think you can code up a GTK+ wrapper?" Okay... "Neat, looking great! Can we get some graphs and other data visualizations going on? It's a GUI after all, it might as well look nice!" Um... "Oh, did I say GTK+? But actually I want to be able to use this on Windows, so can we port everything to C#/CLR instead?" What? "Actually you know what would be cool? If we coded the entire thing as a React App and embedded it in our group's website. Think you can get around to that this week?"
 

wtfNeedSignUp

kiwifarms.net
Isn't this just "Kickstarter - The thread"? Virtually every gaming project there that made it big there was terrible because the additional goals actively quadrupled the work of a team that it's their first project.

On a personal note, I've seen a legacy software that had it bad until management gave up and had people write the software from scrap with only the currently relevent features.
 

Pissmaster

True & Honest Fan
kiwifarms.net
Retroarch comes to mind as the posterchild for feature creep. It tries to be a one-stop-shop for all things emulation, but it just doesn't do anything well. There are tons of options in the menus that most people will never use, burying important ones like setting up your controls, and plenty that are buggy in one way or another. It's very easy to accidentally toggle something and mess it up badly enough to where you have to reinstall, too.

Retroarch doesn't need a built-in music/picture/video player. It doesn't need to ask me which of 50 different emulation cores I wanna use when I go to play a SNES game. I never even figured out the esoteric shit like its support for source ports that always just seems to crash when I try to load one. Things like ScummVM that never, ever use gamepads shouldn't even be a part of Retroarch when they have their own reasonably good UI that handles every setting and feature of a Scumm game.

So much of Retroarch needs to be reined the hell in. All of this work, so much support for so many different games and platforms, and yet it's still a journey just to find where to swap what X and O do in the labyrinth that is the settings menu.
 
Last edited:

Pee Cola

Very good cola
True & Honest Fan
kiwifarms.net
It's not just software that can fall victim to feature creep. Remember the Coolest Cooler? It started out being feature-rich, yet the designer kept on adding even more features to the point where it led to massive delays in getting the Coolest Cooler to market.

Whilst the Coolest Cooler Kickstarter was an epic shitshow for more reasons than just feature creep, it's still a cautionary tale worth knowing about.

 

Pinochet Was Right

But he did one wrong thing: not enough
kiwifarms.net
Retroarch comes to mind as the posterchild for feature creep. It tries to be a one-stop-shop for all things emulation, but it just doesn't do anything well. There are tons of options in the menus that most people will never use, burying important ones like setting up your controls, and plenty that are buggy in one way or another. It's very easy to accidentally toggle something and mess it up badly enough to where you have to reinstall, too.

Retroarch doesn't need a built-in music/picture/video player. It doesn't need to ask me which of 50 different emulation cores I wanna use when I go to play a SNES game. I never even figured out the esoteric shit like its support for source ports that always just seems to crash when I try to load one. Things like ScummVM that never, ever use gamepads shouldn't even be a part of Retroarch when they have their own reasonably good UI that handles every setting and feature of a Scumm game.

So much of Retroarch needs to be reined the hell in. All of this work, so much support for so many different games and platforms, and yet it's still a journey just to find where to swap what X and O do in the labyrinth that is the settings menu.
Oh god Retroarch is a piece of shit. The only decent application I see for it is as the frontend for some custom console or arcade machine that you set up ONCE and never touch again. And coupled with a launcher.

I grab any individual emulator and it does what I tell it to and the GUI is intuitive. So sad that the only way to use these cool LCD filters for Gameboy games is through Retroarch.

But don't ask emulation communities about emulator set-ups and suggestions, they just reply "Retroarch" to every question. That, if they didn't already ban you for not showing proof you ripped your ROMs yourself instead of "warezing them".
 

Flabba_Wabba_Jabba_Noonga

Just a man trying to change things
kiwifarms.net
(((Avast))), I stopped using that shit but i remember after reinstalling it, it somehow reverted back to a really old version of avast, and dear god it was so much more quick and effective than the current versions.
Most antiviruses in general are bloat: Pumped with ads, unnecessary side scans that start before the ones that actually fucking matter and modern tryhard flat UI with animations that takes a shitton of resources and time to load.
Usually that's because the only people left using Avast, AVG, Norton or McAfee are companies, or old people who got all of them and need them to be visually bloated as fuck to impress oldies. I usually use CCleaner for just clearing shit out and the newer versions have so much shit packed into them. I haven't updated mine since 2017 and it works just fine without all the other scans and bullshit bloat.

When it comes to feature creep, the answer is always money.

Sometimes it's the programmer's fault. For example, suppose you can't program for shit and you're really just using the pretense of an "anime waifu murder simulator" as a scam to not have to work for the better part of your late 20s/early 30s. Then since it's a scam, it's in your interest to not actually work on the game at all, right? After all, when you finish the game you stop getting money. But while you're still 'finishing' it, people keep giving you money for some absurd reason. So you need to look like you're accomplishing shit while not actually accomplishing anything. Enter feature creep: "Hey guys! I made a toggle where you can change the size of the MC's boobs!" "Hey everyone! I made a mod where the MC grows wings and flies around shooting lasers!" "Hey guys! I spent a couple of months adding demons and other supernatural shit for the occult club that nobody cares about!"

More often though, feature creep is not the programmer's fault, but management's fault instead. For example, suppose you're a databroker of sorts for a research group in a specific niche: when people want data for their projects, you're their guy. To get the data manually is a tedious slog through multiple different websites. "Not a problem". You're a decent programmer, so you code up a quick curl script that basically scrapes it from the websites and then call it a day. It's done: it's a single purpose script that does one thing and does it perfectly. But then your boss finds out about it. "Holy crap, that's awesome! Hey, can you make it grab data from <other place> as well?" In the interests of money/continued employment, you agree. It's fine to extend it to just this little thing, right?

Enter feature creep. Now your manager's got his mitts on your ostensibly malleable code, and the molesting begins. "Oh, how about these other places!" Done. "Man this is really cool, but actually what I'd want to use is like a Python package that could just download the data for me when I'm using a Jupyter notebook. Think you can sort that out?" Fine, whatever. "Nice! But actually what I think would be really cool is if it was a GUI instead, think you can code up a GTK+ wrapper?" Okay... "Neat, looking great! Can we get some graphs and other data visualizations going on? It's a GUI after all, it might as well look nice!" Um... "Oh, did I say GTK+? But actually I want to be able to use this on Windows, so can we port everything to C#/CLR instead?" What? "Actually you know what would be cool? If we coded the entire thing as a React App and embedded it in our group's website. Think you can get around to that this week?"
Thanks for the heads up. I plan on potentially looking for work at some startups just for the experience and I can see how this could go sideways very quickly. Thanks
 
Last edited:
Top