Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "overly complicated"
-
I worked with another developer who argued with every choice the rest of the team made, wrote overly complicated code, and was so stubborn we ended up arguing every day for 2 weeks over his poor decisions. I nearly quit twice, and nearly beat him to death with his own keyboard multiple times.2
-
Christmas-rant:
So I'm having a nice dinner with my in-laws when one of them turns to me: "So, what I want is a website with a link on it to another website, you can do this right?". Seems overly complicated to achieve this result, I know, but she had a fair reason for it. So, I start walking her through what she would need for it. "First thing, let's buy a domain name." "I have to buy these??! I don't believe you, I know people that did not pay for this!" "Well, that's technically impossible except for certain subdomains", I respond politely. "No, I don't believe you!"
So far my happy helping christmas mood.
Merry christmas y'all!16 -
PM - We are going to launch registration of users in mobile phone. We are going to use blah internal framework as with it we will have same experience in mobile and desktop will be same.
Me - Shouldn't the experience be different on desktop its easy. On mobile following that many steps may seem complicated to the user.
PM - No but the experience should remain same.
Me - face palm(sees the overly complicated framework just for building 4 pages spends time finds bug in the framework fixes them and takes four months of frustration but launches it)
PM - We feel like ideally mobile and desktop should have different experience. This allows us to register faster on mobile. As we have already aligned with the blah framework team and think best path is to build it from scratch.
Me -3 -
u/bob
"hey can someone help me assign 10 to a variable in rust"
u/1337rustpro
"Well first of all little shithead that is not rust-like we dont do that in rust here is how godfather mozilla intended it first you create a register in your ram then you download these 9 packages that are not in std for some reason then you box your integer 78 times then you sacrifice a goat that the rust compiler doesnt give you random advice that doesnt work then you pee on your motherboard and commit 53 times to open source repos on github bitbucket and svn then you will maybe probably have 7 assigned to your variable"
u/bob
"Oh wow rust sure is overly complicated"
u/bob
<User banned>4 -
When managers look at my code, it’s shit, it’s over complicated, it’s overly difficult to read, it took too long, it’s too much for a simple ticket, i handled too many edge cases, we’ll never need most of it, why did I bother making it extensible when it’ll never need to change, how dare I use “unless”, why did I bother writing all these comments, why did I update the documentation that nobody reads because it’s outdated, etc. They say I should be more like the legendary devs and push janky code quickly, and complain that I don’t have any flops (problems in prod) like those are a good thing.
When my coworkers look at my code, they say it’s clean, amazingly easy to read, a monster feature that’s somehow still a joy to review and work on, it makes their lives easier, that it does exactly what it should in all cases, that they learned something from reading it, and thank me for the comments and documentation. And marvel that I finished it so well in so little time.
Am I bragging? Not intentionally; I’ve heard these things repeatedly since I started here, and the contrast between the above is so stark.
In reality, the managers are just idiots who were promoted far above their competence, and make everything worse. (Gee, who woulda thought?) It’s just so frustrating.19 -
The lead dev left the company two weeks ago. His last hurrah involved committing a bunch of complicated code into our API. The code he writes is generally overly coupled but this particular code is INSANE.
It is so coupled that the tests for it almost mock the entire application end to end. I only found this heap of garbage when the deployment tests were hung after I made a simple change in a totally unrelated file. THEY DIDNT FAIL. JEST GOT INTO A STATE WHERE IT CANT CONCLUDE AND HAS NO ERROR MESSAGES. We are taking about entirely different parts of the code. As far apart in the code as it can get. It took six hours of playing Sherlock Holmes to figure out what was breaking.
He got the most junior developer to approve the garbage PR as well.26 -
"I'm almost done, I'll just need to add tests!"
Booom! You did it, that was a nuke going off in my head.
No, you shouldn't just need to add tests. The tests should have been written from the get go! You most likely won't cover all the cases. You won't know if adding the tests will break your feature, as you had none, as you refactor your untested mess in order to make your code testable.
When reading your mess of a test case and the painful mocking process you went through, I silently cry out into the void: "Why oh why!? All of this suffering could have been avoided!"
Since most of the time, your mocking pain boils down to not understanding what your "unit" in your "unit test" should be.
So let it be said:
- If you want to build a parser for an XML file, then just write a function / class whose *only* purpose is: parse the XML file, return a value object. That's it. Nothing more, nothing less.
- If you want to build a parser for an XML file, it MUST NOT: download a zip, extract that zip, merge all those files to one big file, parse that big file, talk to some other random APIs as a side-effect, and then return a value object.
Because then you suddenly have to mock away a http service and deal with zip files in your test cases.
The http util of your programming language will most likely work. Your unzip library will most likely work. So just assume it working. There are valid use cases where you want to make sure you acutally send a request and get a response, yet I am talking unit test here only.
In the scope of a class, keep the public methods to a reasonable minimum. As for each public method you shall at least create one test case. If you ever have the feeling "I want to test that private method" replace that statement in your head with: "I should extract that functionality to a new class where that method public. I then can create a unit test case a for that." That new service then becomes a dependency in your current service. Problem solved.
Also, mocking away dependencies should a simple process. If your mocking process fills half the screen, your test setup is overly complicated and your class is doing too much.
That's why I currently dig functional programming so much. When you build pure functions without side effects, unit tests are easy to write. Yet you can apply pure functions to OOP as well (to a degree). Embrace immutability.
Sidenote:
It's really not helpful that a lot of developers don't understand the difference between unit, functional acceptance, integration testing. Then they wonder why they can't test something easily, write overly complex test cases, until someone points out to them: No, in the scope of unit tests, we don't need to test our persistance layer. We just assume that it works. We should only test our businsess logic. You know: "Assuming that I get that response from the database, I expect that to happen." You don't need a test db, make a real query against that, in order to test that. (That still is a valid thing to do. Yet not in the scope of unit tests.)rant developer unit test test testing fp oop writing tests get your shit together unit testing unit tests8 -
Fuck regex and everyone who has ever endorsed the use of and/or is affiliated with regex.
It's unreadable, impractical, overly complex and complicated and it adds unnecessary clutter to your code, and your thought process.
It's 00:50 am and I just spent 3 hours debugging a regex only to realise forgot a single "?" in a 75+ character long string and I want to go to bed.13 -
Why is starting a C++ project so overly complicated and annoying?!
So many different compilers. So many ways to organize the files. So many inconsistencies between Linux and Windows. So many outdated/lacking tutorials. So many small problems.
Why is there almost no good C++ IDEs? Why is Visual Studio so bizarre? Why are the CMake official tutorials literally wrong? Why can't we have a standard way to share binaries? Why can't we have a standard way to structure project folders? Why is the linker so annoying to use?
Don't get me wrong, I quite like the language and I love how fast it is (one of the main reasons I decided to use it for my project, which is a game almost comparable to Factorio)... But why is simply starting to write code such a hassle?
I've been programming in Java for years and oh god I miss it so much. JARs are amazing. Packages are amazing. The JDK is amazing. Everything is standardized, even variable names.
I'm so tempted to make this game in Java...
But I can't. I would have a garbage collector in the way of its performance...11 -
Everyday, I am amazed at developers like those here on devRant. I look up at you in awe and admiration, always thinking about how awesome your life probably is, even though you rant about it sometimes. I want to be like many of you in the future.
Thank you for improving our lives with whatever you are doing. I feel like this doesn't get said enough.
Meanwhile, University sucks (failed exams), but I am expected to graduate with good grades. Sigh. I also feel like I'm not learning enough of those things that I need to become a good dev and rather overly complicated math which I'll never need in my later life.24 -
I realized how overly complicated I wrote certain object oriented code a few months ago and now I have to work around it...
I over engineered it... I became the very developer I hate5 -
That moment when you realize, you’ve accepted an overly complicated project with a deadline so short...1
-
Hey, it's 2023.
If your component isn't written in TypeScript, I'm not using it :)
"TypeScript is overly complicated!!!" why, because it pointed out everything wrong in your JS code?
"TypeScript is not flexible!!!" why, because it makes you not rely on fragile "only possible in javascript" patterns?
"TypeScript isn't needed!!!" why, because you've never worked on a project with more than 100 lines of code where dependency management and clean code policies were implemented?
god just stop with the JavaScript purist BS, you aren't going to win this battle, and it's even worse because not only are you injuring everyone in the software community, you're injuring your own productivity and skillset
actually, you know what, fine. just use pure JS and HTML implementations. see you in 10 years when i'm retired and you are still running around in circles wondering why the world has left you behind25 -
Building my own accounting software because everything else is overly complicated and is trying to compete with enterprise accounting tools. All I want is some budgeting, some bill tracking, and categorization.
Writing in Ruby because I'm a masochist. Using built-in minitest because again 😈.
I have currently around 62 assertions. As soon as I add ANY new test that's literally asserting true, everything comes unglued and 20+ failures pop up. Take it out, 62 passes.
I feel like I'm going crazy at this point. The errors also don't make ANY sense. Shit like, "that record doesn't exist" when it's clearly a part of fixtures and is only used in ONE test(the one that's breaking).
Installed minitest bisect, and it's like 🤷♀️"lol get fucked bro!"
So I came here to rant about this before my battery dies and I go drink myself to sleep.
Thank you for coming to my dev-talk.8 -
Ok, I've tried multiple times to learn it, but just hate React and JSX. I don't know why-maybe because I'm a not a professional developer yet and can't see the right use case for it? I feel that's it's so overly complicated to render some HTML. Should I keep trying to learn this or just work with what I like for my projects, then learn React later? ARGH18
-
To everyone who wants a terminal editor but hates how overly complicated vim/emacs is:
Micro is like nano but with lua extensions and multiple tabs.2 -
Who else hates Teams here? I really think it's one of the worst programs I have to use from time time. It's full of overly complicated features and bad UX design. Slack is soooo much better and more user-friendly.7
-
In Rx, what is the point of returning Single for all of our networking request responses, if every call to that method, first of all converts it to an Observable so that it can use flatMap, filters, combineLatest etc.
I get that Observable's have more overhead, Single can only return once, thats all clear. But is it not MORE overhead to create a Single, return it, convert it and now have the Observable we were trying to avoid in the first place.
I don't know if its just Rx I don't like, or how the team here is using it. But it is pissing me off, to no end, how massively overly complicated this is. It really feels to me like this is following a textbook approach while ignoring all the practical details.
<rant>
Next person to say "because its the Rx way", is getting a monitor thrown at their head.
</rant>6 -
I wonder if Google released Flutter because they can't let Facebook have all the fun with react native. Or maybe they did it because they had fushia os in mind for a loooong time. Or maybe because they realized that the android api is overly complicated and the Dart way is easier. Or maybe they did it for the lolz.
-
Guys, do you agree that C++ is getting overly complicated following the updated versions?
At times I wonder whether I should leave C++ and jump to python as my goto programming language.24 -
The only thing that I think works great in Node.js ecosystem is Socket.io
Otherwise anything JavaScript related is too bad for me. So many frameworks releasing each month. First it was React then people said that vue is better... Now hearing Svelte is the best. This shit is going crazy.
Personally I prefer to keep back end in a different language such as PHP or Python. Separation of concerns was a thing some years ago now everything is JS.
Are there other alternatives to Socket.io in other languages which are easy to setup just like Socket.io? XMPP is there but I feel it is overly complicated to get started.7 -
Not loving the implicit return statement within Scala. I like to avoid else statements to keep the level of nesting low and do early return yet Scala doesn't allow that.
(I am aware that I should flatMap that shit though in some cases I just want a simple if not foo then throw exception line. And continue with the next block until I return something.)
So you either have to create if-else-nesting beats or use pattern matching. The latter seems overly complicated for this use case (though it has its moments).
I know that I can make the return explicit yet the linter warns against that. It feels so verbose and I currently do not see any benefits and would argue that the code becomes both harder to read and maintain.3 -
Drupal is such a fucking wortless and infuriating hinder in software development.
I've been a software developer for the past 6 years, I have worked with many different frameworks and technologies in both backend and frontend, such as .net, react, php, you get the idea.
In my current project, we have been forced to use Drupal as backend. Initially I had no complaints, but after trying to use it for the past month, I'm beyond mad at the ridiculous and overly complicated way of doing the most basic tasks in existence.
Not only is installing Drupal such a dependency hell, that we had to modify our entire ecosystem just to accommodate for Drupal's versioning, but it's just a crutch that we have to carry around and make ridiculous exceptions for.
I've seen other projects made in Drupal by professional companies, and not a single one of them actually makes use of the CMS that is meant to be the entire point of this piece of shit.
Instead, we have to make a regular backend database, force the PHP code into Drupal's modules and then try for the impossible of making use of the pointless structure system integrated in Drupal.
It's almost pointless since we still had to make a react application to actually do the pages, since Drupal is limited as hell when it comes to personalization.
Just to end up with this error message: "The website encountered an unexpected error. Please try again later." no explanation, no nothing, just going after an endless debugging using [drush] commands.
Anyway, I fucking hate Drupal7 -
Sometimes I feel like the AWS consoles UI is overly complicated on purpose to discourage using it over the API.
-
Is there a definition for the feeling of fulfillment and joy that occurs, when reading through a rewrite or something overly complicated and messy legacy into a neat and tidy set of classes?1
-
Why do you lil' shits keep making LAYERS and LAYERS of unnecessary abstraction and then call it goddamn progress???
Dude what the fuck is this UEFI shit?!
Why the hell do I NEED to import a frigging library and read tons of boring and overly complicated documentation just so I can paint a pixel on the screen now uh??
Alright alright yeah so the BIOS is a little basic but daaaamit son if you want something a bit more complicated you make it yourself or install an OS that provides it! Like we've been doing it for years!!!
Dude, you don't get to know what a file system is until I tell you!
The PC be like:
"You wanna dereference the 0x0 pointer? There you go: it's 0xE9DF41, anything else?
You wanna write to the screen? Ok I have a perfectly convinient interrupt setup for that.
Wanna paint a pixel yellow? Ok, just call this other interruption. Theere we go.
And it only took four bytes and a nanosecond to do it."
That shit works, and if you want something more complex, but not too much, that still runs efficiently install DOS.
Don't mess around with the hardware pleeease.
We can still understand what's going on down there. Once UEFI steps in, it'll be like sealing a door forever. Long live BIOS damn it all!1 -
A friend of mine showed me his "theme change" code
if (!myControl.BackColor.Equals(Color.Black))
{
this.BackColor = Color.Black;
this.buttonBOT.BackColor = Color.Black;
this.buttonNAV.BackColor = Color.Black;
this.buttonCFG.BackColor = Color.Black;
this.buttonBOT.ForeColor = Color.White;
this.buttonNAV.ForeColor = Color.White;
this.buttonCFG.ForeColor = Color.White;
this.ToolStripMenuItemAntiSun.BackColor = Color.White;
this.ToolStripMenuItemAntiSun.ForeColor = Color.Black;
myControl.BackColor = Color.Black;
myControl.ForeColor = Color.White;
}
The fact that he want to add a dark theme is nice but yeah...
Wat do?1 -
Discourse is a overly complicated software, could have been so much simpler without losing any of its feature. Installation sucks, development sucks and ofcourse their choice of using Rails sucks big time. Hoping Flarum will fix the issue of pathetic forum softwares.
-
i just learnt how much clearcase sucks the hard way. i always used git for personal projects and am used to finding a simple solution to any problem at most one stackoverflow away, i just messed up my local repo, and experienced people could not manage to undo it. i mean come on, this is a f**king versioning software, how hard can it be to delete everything local and re-pull from remote without messing up configuration files? either clearcase has some serious design shortcomings for my understanding of a versioning software, or it is so overly complicated that nobody actually knows how to revert this mistake.2
-
I have been doing android dev for quite a time now and have started to understand/appreciate a few things that I previously hated (Like Kotlin) . so am not sure where would be my stance regarding this rant in upcoming months, but FUCK DEPENDENCY INJECTION FRAMEWORKS!!
dependency injection is rightly said to be a $25 term for a 25 cents concept. If i start refactoring my old apps today to "follow DI principles", they would require just 5-10% refactoring and i will end up with much more testable code.
But integrating dagger in my apps? Oh please fuck me straight instead. That thing is so overly complicated and confusing. Why would you trust compiler to inject instances in YOUR LOGIC ? it was YOUR LOGIC that guided the compiler, remember?
I am yet to work on a product of scale where frameworks like dagger or koin made even a slightest of sense.
Currently it just feels like another bad choice we took between "simple but verbose" and "complicated but pretty to look at"
The way this framework makes me think like a compiler than a programmer somehow reminds me of this beautiful article i read:
https://theatlantic.com/technology/...3 -
What the f**k is it that all companies want to use JIRA? It's really crap; looks awful, is slow and overly complicated. And most of the time used and configured wrongly.
Are there even any better options out there or is this the only thing we have to live with?7 -
Am I the only one who has trouble with some developers I work with making things too overly complicated? It's fine if it's every once in a while, but when almost every code review takes me hours because their code is messy or perplexing, I want to pull my hair out! Why write 50+ lines for something that could be like 10 lines?
When have you worked with a difficult developer that makes things convoluted for no reason? Share your story so I don't feel so alone in this!2 -
Poorly designed software is akin to a torture device and no one can convince me otherwise.
Why on earth would you make a piece of software that randomly disconnects from printers, prints documents improperly for no reason - even if print settings are configured properly - and has a dog shit UI that’s a rats nest of menus and drop-downs.
Only a fool would make software overly complicated to use then blame the user when they voice their concerns. -
I equate design to usability. A bad design and UI = bad usability.
For our current project I gave some feedback on issues I had with the presentation, citing usability problems because the design is wrong and I wanted to spend more time designing it in a way that makes sense and flows better.
My boss and manager responded with "functionality over design". And if they want a better design they have to pay more. But that means giving them a product that is overly messy and complicated to use. It wouldn't be a big job to improve the design.
Any thoughts on this? -
Disclaimer: I love open source and I adore the owasp for what they do.
BUT owasp zap has to be the most overly complicated, badly documented tool in existence. As long as one stays within its most basic functions everything is fine, setting it up as a proxy and even issuing a root cert for our test devices worked wonderfully simple.
Then I made the mistake to try to actually do anything with the data we pulled and had to dive into the scripting console.
The documentation basically consists only of "This thing exists", it provides a msg object with no information what it contains or how it's structured, has no code completion and, here comes the kicker, if the script is run and has an error it gets flagged and can't be reenabled after the error is fixed. So I'm currently at forwarder48.groovy trying to simply store the request on a database for possible diagnostics.
So right now I already know that I'll spend most of my vacation next week trying to decipher the source, document it, fix that damn "flagged as error" bullshit and jump through a billion hoops trying to get a pull request through.2 -
Do some devs think overly complicated code makes them look smart? Why aren't we taught to code efficiently instead of complicating the whole process?!