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 - "bad code"
-
This code review gave me eye cancer.
So, first of all, let me apologize to anyone impacted by eye cancer, if that really is a thing... because that sounds absolutely horrible. But, believe me, this code was absolutely horrible, too.
I was asked to code review another team's script. I don't like reviewing code from other teams, as I'm pretty "intense" and a nit-picker -- my own team knows and expects this, but I tend to really piss off other people who don't expect my level of input on "what I really think" about their code...
So, I get this script to review. It's over 200 lines of bash (so right away, it's fair game for a boilerplate "this should be re-written in python" or similar reply)... but I dive in to see what they sent.
My eyes.
My eyes.
MY EYES.
So, I certainly cannot violate IP rules and post any of the actual code here (be thankful - be very thankful), but let me just say, I think it may be the worst code I've ever seen. And I've been coding and code-reviewing for upwards of 30 years now. And I've seen a LOT of bad code...
I imagine the author of this script was a rebellious teenager who found the google shell scripting style guide and screamed "YOU'RE NOT MY REAL DAD!" at it and then set out to flagrantly violate every single rule and suggestion in the most dramatic ways possible.
Then they found every other style guide they could, and violated all THOSE rules, too. Just because they were there.
Within the same script... within the SAME CODE BLOCK... 2-space indentation... 4-space indentation... 8-space indentation... TAB indentation... and (just to be complete) NO indentation (entire blocks of code within another function of conditional block, all left-justified, no indentation at all).
lowercase variable/function names, UPPERCASE names, underscore_separated_names, CamelCase names, and every permutation of those as well.
Comments? Not a single one to be found, aside from a 4-line stanza at the top, containing a brief description of that the script did and (to their shame), the name of the author. There were, however, ENTIRE BLOCKS of code commented out.
[ In the examples below, I've replaced indentation spacing with '-', as I couldn't get devrant to format the indentation in a way to suitably share my pain otherwise... ]
Within just a few lines of one another, functions defined as...
function somefunction {
----stuff
}
Another_Function() {
------------stuff
}
There were conditionals blocks in various forms, indentation be damned...
if [ ... ]; then
--stuff
fi
if [ ... ]
--then
----some_stuff
fi
if [ ... ]
then
----something
something_else
--another_thing
fi
And brilliantly un-reachable code blocks, like:
if [ -z "$SOME_VAR" ]; then
--SOME_VAR="blah"
fi
if [ -z "$SOME_VAR" ]
----then
----SOME_VAR="foo"
fi
if [ -z "$SOME_VAR" ]
--then
--echo "SOME_VAR must be set"
fi
Do you remember the classic "demo" programs people used to distribute (like back in the 90s) -- where the program had no real purpose other than to demonstrate various graphics, just for the sake of demonstrating graphics techniques? Or some of those really bad photo slideshows, were the person making the slideshow used EVERY transition possible (slide, wipe, cross-fade, shapes, spins, on and on)? All just for the sake of "showing off" what they could do with the software? I honestly felt like I was looking at some kind of perverse shell-script demo, where the author was trying to use every possible style or obscure syntax possible, just to do it.
But this was PRODUCTION CODE.
There was absolutely no consistency, even within 1-2 adjacent lines. There is no way to maintain this. It's nearly impossible even understand what it's trying to do. It was just pure insanity. Lines and lines of insanity.
I picture the author of this code as some sort of hybrid hipster-artist-goth-mental-patient, chain-smoking clove cigarettes in their office, flinging their own poo at their monitor, frothing at the mouth and screaming "I CODE MY TRUTH! THIS CODE IS MY ART! IT WILL NOT CONFORM TO YOUR WORLDLY STANDARDS!"
I gave up after the first 100 lines.
Gave up.
I washed my eyes out with bleach.
Then I contacted my HR hotline to see if our medical insurance covers eye cancer.32 -
Me, a junior dev: * reports an important issue and a possible fix *
Senior dev 1: nah, it'll do just fine.
Senior dev 2: that won't be an issue, don't you see? It's under control, man.
Senior 3: why are you even here? Why are you even talking?
Manager: yeah, what could possibly go wrong?
* a year after releasing the product, one of the seniors got fired and another one was hired *
New senior: this thing is bananas, code is inconsistent and there's memory leaks everywhere, how does that even work?
Me: nobody believed me when I said that.
Manager: it did work very well, where's the issue?
Me: it's everywhere, goddammit! Don't you see?
New senior: junior dev is right.
Me: I've been a WHOLE YEAR saying that!
Manager: did you? Really? Nah, you didn't.
...
I'm tired of this shit.16 -
How it should be:
- First: solve the problem
- Second: Write your code.
How many people do:
- First: Write code
- Second: solve code problems
- Third: Adapt code with requirements
- Forth: get lost on your spaghetti code
- Sixth: make a suicide7 -
Future Teller: Your bad code and unhappy behavior will last till you're 30.
Me[curiously]: and after 30?
FT: You'll get used to it.3 -
When your colleagues have no tests for their code and tell you not to touch it, because it WORKS!15
-
A good programmer can get more done than 10 bad programmers, but a bad programmer's code can keep 10 good programmers busy for years.
~ Ed Weissman8 -
Sometimes I wish I was allowed to just strangle my colleagues...
Example from the 'code base':
try:
do_something()
except Exception as e:
log(e)
do_something()
When I asked why they would redo the same call right after it failed I was told that 'It works the second time because it takes time to raise the Exception '.
Bitch, you've got a race condition in your sensitive banking software. You know it's there. Do you really want to trust the time needed to raise your exception will always be enough to synch that dumpster fire you call code?
Show some fucking respect for your craft and fix that shit. But of course they won't, because it will work flawlessly until it suddenly stops working. Taking down who knows what in this damn, undocumenred monolith with it....
Sometimes I'm honestly afraid to trust banks with my money.7 -
If you thought your legacy code was bad, this is what I'm dealing with. The below SQL is stored in a cookie on login and executed to on every further request to determine the user / privileges.15
-
when you had to maintain some stranger's shitty codebase, and you couldn't resist looking up his name on LinkedIn, then you found his profile which says he is a Rockstar coder8
-
About two years ago I get roped into a something when someone was requesting an $8000 laptop to run an "program" that they wrote in Excel to pull data from our mainframe.
In reality they are using our normal application that interacts with the mainframe and screen scrapping it to populate several Excel spreadsheets.
So this guy kept saying that he needed the expensive laptop because he needed the extra RAM and processing power for his application. At the time we only supported 32 bit Windows 7 so even though I told him ten times that the OS wouldn't recognize more than 3.5 GB of RAM he kept saying that increasing the RAM would fix his problem. I also explained that even if we installed the 64 bit OS we didn't have approval for the 64 bit applications.
So we looked at the code and we found that rather than reusing the same workbook he was opening a new instance of a workbook during each iteration of his loop and then not closing or disposing of them. So he was running out of memory due to never disposing of anything.
Even better than all of that, he wanted a faster processor to speed up the processing, but he had about 5 seconds of thread sleeps in each loop so that the place he was screen scrapping from would have time to load. So it wouldn't matter how fast the processor was, in the end there were sleeps and waits in there hard coded to slow down the app. And the guy didn't understand that a faster processor wouldn't have made a difference.
The worst thing is a "dev" that thinks they know what they are doing but they don't have a clue.8 -
Today I got my programming test back. 50/50 points. I only deserved 40 of them, since I wrote horrible code, so I told the teacher "I don't understand my points." His reply: "I also don't understand." I was laughing for at least 5 minutes 😂8
-
<rant data-type="corny">
My Gf of 3 years left me for some douche. Thus said, she "removed" her feelings before kissing him. WTF! I didn't know feeling came like dependencies...
</rant>9 -
So I was at work and send to another location (distribution centers) and in the lunch break my guider for that day and I started a conversation about servers etc (he appeared to do loads of stuff with that). He recommended me all those programs but I didn't recognize anything so I asked him what kinda servers he ran. He runs a lot of Windows servers. No problem for me but I told him that I am into Linux servers myself.
Guy: "Linux guy, eh? That system is considered to be so secure but in reality it's insecure as fuck!".
Me: (If he would come up with real/good arguments I am not going to argue against that by the way!) Uhm howso/why would you think that?
Guy: "Well all those script kiddies being able to execute code on your system doesn't seem that secure.".
*me thinking: okay hold on, let's ask for an explanation as that doesn't make any fucking sense 😐*
Me: "Uhm how do you mean, could you elaborate on that?"
Guy: "Well since it's open source it allows anyone to run any shit on your system that they'd like. That's why windows rocks, it doesn't let outsiders execute bad code on it.".
Seriously I am wondering where the hell he heard that. My face at that moment (internally, I didn't want to start a heated discussion): 😐 😲.
Yeah that was one weird conversation and look on open source operating systems...22 -
Less a rant, more just a sad story.
Our company recently acquired its sister company, and everyone has been focused on improving and migrating their projects over to our stack.
There's a ton of material there, but this one little story summarizes the whole very accurately, I think. (Edit: two stories. I couldn't resist.)
There's a 3-reel novelty slot machine game with cards instead of the usual symbols, and winnings based on poker-like rules (straights and/or flushes, 2-3 of a kind, etc.) The machine is over a hundred times slower than the other slot machines because on every spin it runs each payline against a winnings table that exhastively lists every winning possibility, and I really do mean exhaustively. It lists every type of win, for every card, every segment for straights, in every order, of every suit. Absolutely everything.
And this logic has been totally acceptable for just. so. long. When I saw someone complaining in dev chat about how much slower it is, i made the bloody obvious suggestion of parsing the cards and applying some minimal logic to see if it's a winning combination. Nobody cared.
Ten minutes later, someone from the original project was like "Hey, I have an idea, why don't we do it algorithmically to not have a 4k line rewards table?"
He seriously tried stealing a really bloody obvious idea -- that he hadn't had for years prior -- and passing it off as his own. In the same chat. Eight messages below mine. What a derpballoon.
I called him out on it, and he was like "Oh, is that what you meant by parsing?" 🙄
Someone else leaped in to defend the ~128x slower approach, saying: "That's the tech we had." You really didn't have a for loop and a handful of if statements? Oh wait, you did, because that's how you're checking your exhaustive list. gfj. Abysmal decisions like this is exactly why most of you got fired. (Seriously: these same people were making devops decisions. They were hemorrhaging money.)
But regardless, the quality of bloody everything from that sister company is like this. One of the other fiascos involved pulling data from Facebook -- which they didn't ever even use -- and instead of failing on error/unexpected data, it just instantly repeated. So when Facebook changed permissions on friends context... you can see where this is going. Instead of their baseline of like 1400 errors per day, which is amazingly high, it spiked to EIGHTEEN BLOODY MILLION PER DAY. And they didn't even care until they noticed (like four days later) that it was killing their other online features because quite literally no other request could make it out. More reasons they got fired. I'm not even kidding: no single api request ever left the users' devices apart from the facebook checks.
So.
That's absolutely amazing.9 -
Can't fall asleep because of unfinished code...
Wake up at 03:00 AM because of nightmares about bad code...
Too tired to finish code or rewrite bad code :'(7 -
Oh I sure hate working on other people their code. This is one of the gems I found, but this project contains stuff worse than this. Literally most of the class names aren't even proper according to the naming conventions27
-
Who encodes a whole gif inside the main CSS of a multifolder JS app without any documentation as to what it is? My university, that's who.9
-
Hello everyone, this is my first time here so hi! I want to tell you all a story about my current situation.
At 18 while in the military I was able to get my first computer, it was a small hp pavilion laptop with windows 7. The system would crash constantly, even though I would only use it for googling stuff and using fb to talk to people. 5 months after I got it and continuously hated it decided to find out why and who could I blame (other than myself) for the system making me do the ctrl alt del dance all the time....
Found out that there are people called computer programmers that made software. Decided to give it a go since I had some free time most days. Started out with c++ because it was being recommended in some websites. Had many "oh deeeeer lord" moments. After not getting much traction I decided to move to Java which seemed like an easier step than C++. Had fun, but after some verbosity I decided to move into more dynamic lands. Tried JS and since at the time there was no Node and I was not very into the idea of building websites I decided to move into Python, Ruby, PHP and Perl and had a really great time using and learning all of them. I decided to get good in theoretical aspects of computer programming and since I had a knack for math I decided to get started with basic computer science concepts.
I absolutely frigging loved it. And not only that, but learning new things became an obsession, the kind that would make me go to bed at 02:40 am just to wake up at 04:00 or 06:00 because the military is like that. I really wanted to absorb as much as I could since I wanted to go to college for it and wanted to be prepared since I did not wanted to be a complete newb. Took Harvard CS50, Standford Programming 101 with Java, Rice's Python course and MIT's Python programming class. I had so much fun I don't regret it one bit.
By the time I got to college I had already made the jump to Linux and was an adept Arch user, Its not that it was superior or anything, but it really forced me to learn about Linux and working around a terminal and the internals of the system to get what I want. Now a days I settle for Fedora or Debian based systems since they are easier and time is money.
Uni was a breeze, math was fun and the programming classes seemed like glorified "Hello World" courses. I had fun, but not that much fun, most of my time was spent getting better at actual coding. I am no genius, nor my grades were super amazing(I did graduate with honors though) but I had fun, which never really happened in school before that.
While in school I took my first programming gig! It was in ASP.NET MVC, we were using C#, I got the job through a customer that I met at work, I was working in retail during the time and absolutely hated it. I remember being so excited with the gig, I got to meet other developers! Where I am from there aren't that many and most of them are very specialized, so they only get concerned with certain aspects of coding (e.g VBA developers.....) and that is until I met the lead dev. He was by far one of the biggest assholes I had ever met in my life. Absolutely nothing that I would do or say made hem not be a dick. My code was steady, but I would find bugs of incomplete stuff that he would do, whenever I would fix it he would belittle me and constantly remind me of my position as a "junior dev" in the company saying things as "if you have an issue with my code or standards tell me, but do not touch the code" which was funny considering that I would not be able to advance without those fixes. I quit not even 3 months latter because I could not stand the dick, neither 2 of the other developers since the immediately resigned after they got their own courage.
A year latter I was able to find myself another gig. I was hesitant for a moment since it was another remote position in which I had already had a crappy experience. Boy this one was bad. To be fair, this was on me since I had to get good with Lumen after only having some exposure to Laravel. Which I did mentioned repeatedly even though he did offer to train me in order to help him. Same thing, after a couple of weeks of being told how much I did not know I decided to get out.
That is 2 strikes.
So I waited a little while and took a position inside another company that was using vanilla PHP to build their services. Their system was solid though, the lead engineer remains a friend and I did learn a lot from him. I got contracted because they were looking for a Java developer. The salary was good. But when I got there they mentioned that they wanted a developer in Java...to build Android. At the time I was using Java with Spring so I though "well how hard can this be! I already use Android so the love for the system is there, lets do this!" And it was an intense, fun and really amazing experience.
-- To be continued.10 -
Found this in a legacy codebase at work. Can't imagine what the coder was thinking. "Just in case"?6
-
Me today at class, doing a group work, while suddenly I saw my colleague’s code looking very odd.
Me : “Why is your code like that?”
Her : “Like what?”
Me : “Its not spaced correctly... look its way over there”
Her : “Oh well, I just like it like that, its my style”
Me “...”
And im just like, if she post her code at SO, she wouldve been eaten alive...22 -
HOW TO KILL A DEVELOPER
Coworker: Hey, is http://website down for you?
Me: yeah. What's up?
Coworker: Ah, that explains why my tests are failing.
Me, internally fuming: It would be good test practice to not depend directly on external services.
Coworker: I know, but this is easier.
This makes my blood boil. I'm not a huge fan of mocking and stubbing everything, but when it's actually very easy to mock something and you're too lazy, that makes me fucking angry.
Remember kids: doing it right takes longer than doing it wrong. But doing it wrong will eventually take significantly more of your time. Just wait until your shitty assumptions fail and you don't have any recourse.6 -
If you ever come across a Java codebase with capitalized method names, RUN. I should've taken this advice years ago.
-
Warning: long read....
I got a call this morning from a client who was panicking about not being able to login to his web panel.
So I went to the web panel and tried to login and was just redirected back to the login page. No errors or anything (at least visible on the page). Went looking for an error_log file and found it.
It turns out there was an error was showing: Disk quota exceeded.
So I went into the cPanel and checked, he used about 16GB out of 100GB and that got me confused. So I looked around and found out he was using about 510000/500000 inodes.
Went looking trough FTP to see where he has so many files and try and remove some.
Well it turns out that there were about 7 injected websites (warez, online casino, affiliate one etc) and a full hacking web panel on his FTP. After detailed analysis some who actually built the site (I just maintain some parts) made an upload form available to public with any checks on it. Meaning anyone could upload whatever they wanted and the form would allow it.
The worst part is that the client is not allowing us to secure the form with some sort of login or remove it completely (the best option) as it is not really needed but he uses it to upload some pdf catalogs or something.
TL; DR;
Old programmer created an upload form that was accessible to anyone on the web without adding any security or check as to see what kind of files was getting uploaded. Which lead to having maximum number on inodes used on server and client being unable to login.
Side note:
And ofc I had to go and fix the mess behind him again, even though he stopped working a long time ago and I started just recently and have been having nightmares of this project.2 -
When the code is so bad that the only meaningful thing to do should be executing
rm -Rf *; git add -A; git commit -m "bugfix"
and then start the project again.4 -
Before I learned how to code and people said that you should print hello world I thought they really meant hook it up to a printer and print it on paper1
-
This was on a key cutting machine at the range:
1) They use XP
2) They use Java
3) It was touch screen so I could have gotten up an on screen keyboard and actually used the command prompt6 -
Do you guys know any Github repos with really Bad C++ code?
Just wanna see if I can understand it, as a test... 🤔9 -
This guy who earns 20% more than me wrote a method to check which string of 2 is lexicographically smaller.
public boolean isSmaller(String s1, String s2) {
String [] temp = new String[2];
temp[0] = s1;
temp[1] = s2;
Collections.sort(temp);
if (temp[0].equalsIgnoreCase(s1)) {
return true;
}
else {
return false;
}
}5 -
So Friday afternoon is always deployment time at my company. No sure why, but it always fucks us.
Anyways, last Friday, we had this lovely deployment that was missing a key piece. On Wednesday I had tested it, sent out an email(with screenshots) saying "yo, whoever wrote this, this feature is all fucked up." Management said they would handle it.
The response email. 1(out of 20) defects I sent in were not a defect but my error. No further response, so I assume the rest were being looked into.
In a call with bossman, my manager states that the feature is fixed, so I go to check it quickly before the deployment(on Friday).
THERE IS NO FUCKING CODE CHECK-IN. THE DEV BASTARD JUST SAID THAT MY USECASE WAS WRONG, SO MY ENTIRE EMAIL WAS INVALID.
I am currently working on Saturday, as the other guy refuses to see the problem! It is blatant, and I got 3 other people to reproduce to prove I am not crazy!
On top of that, the code makes me want to vomit! I write bad code. This is like a 3rd grader who doesn't know code copy-pasted from stack overflow! There is literally if(A) then B else if(!A) then B! And a for loop which does some shit, and the line after it closes has a second for loop that iterates over the same unaltered set! Why?! On top of that, the second for loop loops until "i" is equal to length-1, then does something! Why loop???
The smartest part of him ran down his Mama's leg when it saw the DNA dad was contributing!
Don't know who is the culprit, and if you happen to see this, I am pissed. I am working on Saturday because you can't check your code or you lied on your resume to get this job, as you are not qualified! Fuck you!15 -
I was asked by a client to code review their platform built in PHP. The platform was becoming slow and new features built by their current IT supplier broke existing features.
I gained access to the source code... One PHP file (index.php) containing about 80K lines of code... I am impressed and disgusted at the same time. 😂3 -
I’ve never made any of my code open source, because I’m afraid that it’s so freaking bad someone will bash me for it, but I’m really trying my best.8
-
When it's dark outside all the time and the sun suddenly comes around.
Everyone's going crazy about it and walking outside.
Me: FUCK. How am I supposed to read my freakin code like that?!
*Me standing up and closing the shutter*1 -
Found this gem yesterday...
function justNumber(BigDecimal n) {
string negative_sign = "-";
BigDecimal response = BigDecimal.valueOf(n.toString().replace(negative_sign, ""));
return response;
}13 -
Continuation from :
https://devrant.io/rants/835693/...
Hi everybody! I am sorry that as a first time poster I am building 2 long stories, but I really like the idea of connecting with other people here!
Well, as I was mentioning before, I got a job in Android development and had a blast with it. Me and the developer clicked and would spend our time discussing PHP, the move to other stacks (I was making him love the idea of Django or Spring Java) games, bands and cool stuff like that. This dude was my hero, his own stack was developed in a similar MVC fashion that he had implemented from scratch before for many projects. It was through him that I learned how to use my own code (rather than frameworks and other libraries) to build what I wanted. I seriously thought that I had it made with a position that respected me and placed me in the lead mobile development position of the company. Then it happened. He had taken 2 weeks of unauthorized leave, which was ok since he was best friends with the owner of the company, those 2 along another asshole started it so they could do whatever they wanted. And I could not make much progress without him being there since there were things that he needed to do, that I was not allowed, for me to continue. When he came back I was quickly rushed to the owner of the company's office to discuss my lack of progress. The lead developer was livid, as if he knew that he had fucked up. He blamed the whole thing on me (literally told the owner that it was my fault before I was summoned) and that we lost 2 weeks of business time because I did not had the initiative to make progress on my own. I felt absolutely horrible, someone that I had trusted and befriended doing something like that, I really felt like shit. I had mad respect and love for this guy. It got heated, I showed the owner the text messages in which I showed him my pleas to led me finish the parts that were needed while he was away. Funny enough, he acted betrayed. After that it was 3 months of barely talking to one another except for work related stuff. He got cold and would barely let me touch the internal code that he was developing. It was painful. The owner kept complaining about progress and demanded that I do a document scanner for the company, which was to be attached to their mobile application. Not only that but it had to be done with OpenCV. Now, CV is great, but it is its own area, it takes a while to be able to develop something nice with it that is efficient and not a shitstorm.
I had two weeks.
Finished in one. After burning my brain and ensuring that the c++ code was not giving issues and the project was steady I turned it in...to their dismay. And I say so because I felt that they gave me such a huge project with the intention of firing me if it was not done. After that it was constant shit from the owner and the lead developer. I was asked then to port the code to the IOS version. I had some knowledge of it already so I started working on it. Progress was fast since the initial idea was already there and I really love working on Apple devices. And when I was 70% done the owner decided to cut me loose. At first he cited things such as lack of funding and him being unable to pay my salary. I was fine with that even though I knew it was not true. So at the time I just nodded and thanked the company for my time there. Before I left, he decided to blame it on me, stating that if they were not producing money that it was perhaps my fault. I lost my shit, and started using my military voice to explain to him how a software company is normally ran. Then I stormed out.
It was known to me, that the lead developer had actually argued against me being laid off. And that he was upset about it, we made amends, but the fact remains that I was laid off because the owner did not think of me as an asset, regardless of how many times I worked alongside the lead developer or how valuable I was actually to the company, their infrastructure did get better while we worked together, so I just assumed that he never actually did any mention of my value.
I lasted 2 months without a job, feeling horribly shitty because my wife had to work harder to ensure our stability whilst I was without any sort of salary. At this time I had already my degree, so all I had to do was look better. In the meantime I decided to study more about other technologies. I learn React, and got way better at JS and Node that I thought I could and was finally able to get another job as a full stack developer for another company.
I have been here since 2 months. It has been weird, we do classic ASP, which is completely pointless at this time, but meh. At this time though, I just don't really have the same motivation. Its really hard for me to trust the people that I work with and would like to connect with more developers.21 -
Did you fucking idiots think that I was gonna tell you to implement async await on the requests and not notice that you IMPLWMENTED GODDAMN SYSTEM-SLEEP YOU DESNE MOTHERFUCKEDS IT NOT TAKES 10X AS LONG AS MY OATCH TO JUST LIMIT THE NUMBER IF HTTP REQUESTS FOR FUCJS SAKE THIS CODE LOONS LIKE A RACCOON FUCKED AN MACBOOK THAT ALSO GOT FUCKED BY A GOAT FROM CHERNOBYL THAT SOMEHOW MUTATED TO A RACCOON GOAT 🐐 MACBOOK 💻 HYBRID ABOMINATION THAT IS NOW CLAWING MY EYES OUT AND GIVING ME RABIESCANCERAIDS5
-
I think I want to quit my first applicantion developer job 6 months in because of just how bad the code and deployment and.. Just everything, is.
I'm a C#/.net developer. Currently I'm working on some asp.net and sql stuff for this company.
We have no code standards. Our project manager is somewhere between useless and determinental. Our clients are unreasonable (its the government, so im a bit stifled on what I can say.) and expect absurd things from us. We have 0 automated tests and before I arrived all our infrastructure wasn't correct to our documentation... And we barely had any documentation to begin with.
The code is another horror story. It's out sourced C# asp.net, js and SQL code.. And to very bad programmers in India, no offense to the good ones, I know you exist. Its all spagheti. And half of it isn't spelled correctly.
We have a single, massive constant class that probably has over 2000 constants, I don't care to count. Our SQL projects are a mess with tons of quick fix scripts to run pre and post publishing. Our folder structure makes no sense (We have root/js and root/js1 to make you cringe.) our javascript is majoritly on the asp.net pages themselves inline, so we don't even have minification most of the time.
It's... God awful. The result of a billion and one quick fixes that nobody documented. The configuration alone has to have the same value put multiple times. And now our senior developer is getting the outsourced department to work on moving every SINGLE NORMAL STRING INTO THE DATABASE. That's right. Rather then putting them into some local resource file or anything sane, our website will now be drawing every single standard string from the database. Our SENIOR DEVELOPER thinks this is a good idea. I don't need to go into detail about how slow this is. Want to do it on boot? Fine. But they do it every time the page loads. It's absurd.
Our sql database design is an absolute atrocity. You have to join several tables together just to get anything done. Half of our SP's are failing all the time because nobody really understands the design. Its gloriously awful its like.. The epitome of failed database designs.
But rather then taking a step back and dealing with all the issues, we keep adding new features and other ones get left in the dust. Hell, we don't even have complete browser support yet. There were things on the website that were still running SILVERLIGHT. In 2019. I don't even know how to feel about it.
I brought up our insane technical debt to our PM who told me that we don't have time to worry about things like technical debt. They also wouldn't spend the time to teach me anything, saying they would rather outsource everything then take the time to teach me. So i did. I learned a huge chunk of it myself.
But calling this a developer job was a sick, twisted joke. All our lives revolve around bugnet. Our work is our BN's. So every issue the client emails about becomes BN's. I haven't developed anything. All I've done is clean up others mess.
Except for the one time they did have me develop something. And I did it right and took my time. And then they told me it took too long, forced me to release before it was ready, even though I had never worked on what I was doing before. And it worked. I did it.
They then told me it likely wouldn't even be used anyway. I wasn't very happy at all.
I then discovered quickly the horrors of wanting to make changes on production. In order to make changes to it, we have to... Get this
Write a huge document explaining why. Not to our management. To the customer. The customer wants us to 'request' to fix our application.
I feel like I am literally against a wall. A huge massive wall. I can't get constent from my PM to fix the shitty code they have as a result of outsourcing. I can't make changes without the customer asking why I would work on something that doesn't add something new for them. And I can't ask for any sort of help, and half of the people I have to ask help from don't even speak english very well so it makes it double hard to understand anything.
But what can I do? If I leave my job it leaves a lasting stain on my record that I am unsure if I can shake off.
... Well, thats my tl;dr rant. Im a junior, so maybe idk what the hell im talking about.rant code application bad project management annoying as hell bad code c++ bad client bad design application development16 -
All the noob jokes about "tee hee I write such bad code exdee" fucking drive me nuts.
There are absolutely such things as good codebases, in any language. By posting "tee hee funny relatable" "memes" about your shitass code you just make yourself look like a fucking idiot who excuses poor quality with "haha so relatable!" bullshit excuses.
Thank you for being the literal cancer of the industry, oversaturating the markets and making all of our managers think we're fucking idiot babies that have to be wrangled like cats in order to get a single feature out the door, devoid of rational thought or a modicum of expertise.
Fuck you. You're the problem. Be better or find another profession where slacking off is acceptable.21 -
The best part about being a teaching assistant in programming is the ability to bitch about bad code.
The worst part is all the bad code...2 -
For those of you tired of boring old div soup, one of my classmates has some new and innovative span soup for you to try!10
-
Having pets is a good way to prepare yourself for working in a brown-field environment.
When your cat or dog shits on the floor, you get the same feeling as when you need to dive into a legacy code base.
You know you can't just leave it there, and yet you still want to find anything else to do except for touch the pile of shit in the middle of the room.
Meanwhile you know your users are going to end up trampling over it and mashing it into your carpet.4 -
Two questions:
Is over engineering code a good thing or a bad thing?
Is writing verbose code a good thing or a bad thing?10 -
In elementary my teacher gave me bad mark, because instead of painting house in Paint, I was trying to code6
-
One of my former coworkers was either completely incompetent or outright sabotaging us on purpose. After he left for a different job, I picked up the project he was working on and oh my God it's a complete shitshow. I deleted hundreds of lines of code so far, and replaced them with maybe 30-40 lines altogether. I'm probably going to delete another 400 lines this week before I get to a point where I can say it's fixed.
He defined over 150 constants, each of which was only referenced in a single location. Sometimes performing operations on those constants (with other constants) to get a result that might as well have been hard-coded anyway since every value contributing to that result was hard-coded. He used troublesome and messy workarounds for language defects that were actually fixed months before this project began. He copied code that I wrote for one such workaround, including the comment which states the workaround won't be necessary after May 2019. He did this in August, three months later.
Two weeks of work just to get the code to a point where it doesn't make my eyes bleed. Probably another week to make it stop showing ten warnings every time it builds successfully, preventing Jenkins from throwing a fit with every build. And then I can actually implement the feature I was supposed to implement last month.6 -
Last time I post my need-to-be-refactored code, I see some mean-but-useful comments.
Everyone's comments are like: "Look this stupid coder trying to be clever and write an idiotic code, let's bully him because we are better".
Ok guys, sorry for hurting your eyes, but please do it again...
I really want to know your opinion, especially on the part where I try to make the "if condition" more readable by defining some boolean variables.29 -
While working I was munching from a bowl of candy, suddenly realized my face hurt and hard to breathe. Emergency room....
I apparently ate something I'm allergic to while in a code fog.
No idea what it was yet.
Must have been bad code.3 -
*squirming in bed*
If it ain't broke don't fix it.. If it ain't broke don-WHAT THE FUCK IS "payment.needed2"??
Calm down, it's just some bad code but it works, you didn't write it, it's not your probl-WHY THE FUCK DO THE IF STATEMENTS HAVE SO MANY DUPLICATED LINES??
Sleep. Just sleep. -
When you look back at Code from your 2nd year of university...
Using while loops as if statements to check for vowels... *shudders in fear*5 -
When a senior developer changes your impeccable code and pushes their ugly indented lines with bad naming scheme without review.
-
Looking through our gitlog today and see 3 PR's from our "lead developer". 2 of these were removing a single blank line from a class, and the 3rd was adding one back in. None of these had any title or commit messages on the PR's. This is a guy that talks down to everyone and deliberately makes other devs feel insignificant, saying he's too busy to write documentation and it's not needed because his uncommented code is self documenting. But hang on he's not too busy to waste time with pointless non-functional PR's that only remove a couple of blank lines? Scratching my head in disbelief that some devs think they can get away with shit like this. How about you drop the ego and actually try and work in collaboration with the other devs.undefined arrogance self documenting code waste of time lead dev no comments pull request bad design2
-
So I've taken over a project, well, not really taken over, we've been hired to add more functionality to a Wordpress site.
I have never seen such a messy code in my life... variables have mixed languages, indentation is a mix of tabs, 2, 3 and 4 spaces, camelcase, snake case, short names, long names. ' and ", no spaces after commas (gotta save those bytes doode)
Almost like it has been copypasted from everywhere.
I think I said 10-15 hours for it. I think I will spend a lot more time tidying up this code.
Hey, look, 3 index files!!
index.php
index__backup.php
index__backup_2.php
I don't dare to look into the CSS or JS, but I know I have to3 -
That feeling when a coworker screws up totally. doesn't accept it as their fault.
You look at the code and see so much of redundancy and bad practice galore.
You look at it for a while and think you can rewrite it from scratch. But you finally end up saying "fuck this" and feel hopeless because there is not enough time.
Hate that feeling. Hate it. Depresses.2 -
Hey everyone. I decided to rewrite python's abs() function, as it's really slow. Here is my new and improved version. It's up to 500% faster!!!
def abs(int=None):
if not int is None:
try:
lnt = math.sqrt(int);
lnt = math.pow(lnt, 2);
return lnt;
except Exception as E:
lnt = int/-1;
return lnt;
else:
raise ValueError("oopsie whoopsie! uwu we made a fucky wucky!!1 a wittle fucko boingo! the code monkies at our headquarters are working VEWY HAWD to fix dis!!");
Edit: devrant fucked up the indention.
Here is a hastebin instead:
https://hastebin.com/iyajuyoxuq.pl7 -
Today I reached a point where I made an really bad looking, uneficient, unreadable function, but it works!, That's what counts right?!
Just kidding, I just couldn't fix it, hopefully the me from tomorrow will be smarter.7 -
After typeing this:
interface IDeviceTypeTraitPropertyPropertyDefintionMap {
I feel like I need to take my self out behind the shed, for the good of humanity...2 -
Being a programmer in a scientific discipline can be infuriating.
using "no one" ="almost no one"
using everyone = "almost everyone"
1. No one knows what even the very idea of good practice is. And everyone refuses to learn. 3k lines of repetitive copy pasted main. 500 lines of plotting method.
2. Raw C-style pointer based array creation. Won't use develope array libraries because what if development stops. FUCKING HAVE YOU SEEN YOUR CODE WHAT IF DEVELOPMENT ON YOUR CODE STOPS. FUCK.
3. LOOP VARIABLES DECLARED AT THE BEGINNING OF THE METHOD WHY.
4. Everyone wants to make modular, independent code. No one wants to use OOP. NOPE. ALL IN ONE FILE. WRITE C++ LIKE A FUCKING PYTHON NOTEBOOK. FUCK.
5. LIBRARIES OH MY GOD PLEASE DO NOT CODE UP YOUR MATRIX MULTIPLICATION. PLEASE DO NOT TRIPLE LOOP IT. NO. THE LINEAR ALGEBRA LIBRARY WILL STAY IN DEVELOPMENT.
6. Please realize that literally not one comment over an 1800 line file does not help anyone.
FUCKING. WHY. WHY ARE WE SCIENTISTS SO GOOD AT SCIENCE AND SO FUCKING SHIT AT THE CODE THAT MAKES OUR SCIENCE HAPPEN. WHY. FUCKING. WHY. FUCK.undefined rage no comments scientific computing fuck this shit wall of text bad code science fuck c++ fucking4 -
I can't code
So 3 things i hate because i can't code. #selfrant
1. My father was a programmer in the 80-90ties. So he forced me at 11 years old to do a stupid "Java for Kids" book. You had to write sooooo much verbose code just that a stupid grey button would appear that looked ugly. I really really hated it.
2. Now I'm a graphic designer by trade. The first time I came in contact with something useful code related was in 2011. https://processing.org the generative design framework. It looked glorious! But it was in Java! I hated it.
3. I hate that i can't code because I'm dependend on you guys to get my design to become alive. Thanks to 3 years on devRant, the days arguing with a lazy dev that something can't be done is thankfully gone.7 -
public class Main {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
sorry for my messy code23 -
if you're gona write huge monolithic, 1 file, 1000s of lines, code...at least have the gusto to go all or nothing
don't carve out function after function, for actions only called once, and end up having 100 functions.
or were you trying to reach 69 "static void"s ?2 -
Must nearly every recently-made piece of software be terrible?
Firefox runs terribly slowly on a four-core 1.6GHz processor when given eight (8) gigabytes of RAM. Discord's user interface is awfully slow and uses unnecessary animations. Google's stuff is just falling apart; a toaster notification regarding MRO stock was recently pushed such that some markup elements of this notification were visible in the notification, the download links which are generated by Google Drive have sometimes returned error 404, and Google's software is overall sluggish and somewhat unstable. Today, an Android phone failed to update the Google Drive application... and failed to return a meaningful error message. Comprehensive manuals appear to be increasingly often not provided. Microsoft began to digest Windows after Windows XP was released.
Laziness is not virtuous.
For all computer programs, a computer program should be written such that this computer program performs well on reasonably terrible hardware... and kept simple. The UNIX philosophy is woefully underappreciated.38 -
Knockout JS.
I am not sure if the library itself is so bad or the code which I was working on was ugly. But since then I avoid anything that is related to knockout js.10 -
This is definitely a total first world problem but I am so frustrated.
I am stuck in a team that embodies the Japanese proverb "The nail that sticks out gets hammered down".
The management are there because it is convenient and flexible and have no interest in managing or keeping up with tech.
The lead developers are extremely anti-social and are not approachable and the this stems down to the devs (not all but really most) - all there just to do the bare minimum and spend most of their energies in trying to avoid work or having learn something.
Unfortunately I am passionate about what I do and want to build high-quality products and this has put me at odds with the way things work.
I could fill up alot of time talking about how I was ordered to "cut" images/icons out of PDFs rather just getting them from the branding team, or how I was scolded for having set up logging, detected a problem caused by another developer and fixed it before it cost a big client a massive amount of money... But really the point is that I have never worked somewhere with such an awful attitude to enthusiasm and quite frankly it boggles my mind trying to understand how they rationalise these things but the answer is always laziness.
Obviously there are worse problems in the world than working in a job where you are encouraged to do nothing... But it actually really depresses me and causes anxiety that I am working with people who don't care about testing or monitoring or learning new things or even collaboration.
...sigh...
Hopefully the job market will start opening again soon5 -
First time I was screaming out of anger while looking at code.
I'm doing a group project in my university.
We are developing a indoor navigation Android app.
And a team mate of mine just merged this…
/*Method for help-feature.
Sets all the TouchEvents that are at least 400 ms long. This is made for all the relevant buttons or editTexts, which are seen on the mapView.
The case for mapView is needed because otherwise the other buttons, etc. wont work properly.*/
public void setButtonsForHelpDialog(){
View v = mapView;
switch (v.getId()) {
case R.id.mapview:
mapView.setOnTouchListener(…);
case R.id.buttonUp:
buttonOn.setOnTouchListener(…);
case R.id.buttonDown:
buttonDown.setOnTouchListener(…);
…
case R.id.description:
description.setOnTouchListener(…);
}}
The code is really aligned like this - no breaks. And it's even worse. There are if statements like if("constantly false var" == true). Which is highlighted by Android Studio.
This is done in a own class. The views are set via public member variables of this new class. The constant vars were added in the actual class holding the buttons and also stuff like this useless method
public void getDoStuff() {
doStuff()
}
And I could continue like this.
I never saw code this bad…
I can't even find words for it :/4 -
I was looking at some poorly written code today in a project and I was curious to see who wrote it. I blamed it and found I had wrote it 6 months ago! smh Well... at least I know I'm getting better! I ended up refactoring it to use better code patterns.2
-
The people who allow bad code to pass through the review process are the biggest menace to humanity.5
-
I'm hoping it's not just me, but whenever I'm using a website or mobile app, and see something badly designed I get very angry...2
-
Programming commandment: Thou shall blame all bad code on thy comrade who has bequeathed your company!2
-
Come up with a bad version of flipping a bool's value. (value = !value)
I'll start with a bad way of doing it in C# (.NET):
char[] bca = boolWert.ToString();
if (bca.Length == 4 && bca[0] == 't' && bca[1] == 'r' && bca[2] == 'u' && bca[3] == 'e')
{
boolWert = !bool.Parse($"{bca[0]}{bca[1]}{bca[2]}{bca[3]}");
}
else if (bca.Length == 5 && bca[0] == 'f' && bca[1] == 'a' && bca[2] == 'l' && bca[3] == 's' && bca[4] == 'e')
{
boolWert = !bool.Parse($"{bca[0]}{bca[1]}{bca[2]}{bca[3]}{bca[4]}");
}
else throw new Exception("y e s");6 -
What do you call poorly written code? The most common one is probably spaghetti, but here in Finland it's often called 'purkka' which means chewing gum, perhaps because it's sticky and difficult to get out of your hair.7
-
If you do this, please, don't have children.
P.D. count the number of *if*srant kill me pliz thinking of my children frankencode bad code pichardo for president ng cry angular6 -
Worst code I ever had to touch: a React application, createClass era, before redux was a thing, that had everything in one fucking component.
Every fucking thing.
This was a simple video chat application, but still. The component's code included:
- Views (contact list and video call screen) and logic to switch between them;
- All application state;
- API calls;
- Websocket message handling;
- WebRTC logic (getUserMedia and p2p streaming).
This app was built by one person in one month for a demo. That person left the company after the demo and I had to maintain that mess without zero React knowledge (I was doing angular at that time). On his last day he gave me a crash course and an overview of how the app worked.
Around that time I attended a few meetups and a conference with talks about React. That, my curiosity and ability to learn by refactoring helped me a lot when I had to add new features and fix bugs in that app.5 -
Found this in a third party library once. Only thing I can think is that this programmer was paid by the line. Because, seriously, this could have been one line.1
-
If got to do some bugfixing at work today.
Looking through code:
if (x !== undefined || x !== null){
I want the person who wrote this to wear the ugliest and scratchiest christmas sweater with "i write bad code" written on it15 -
My first job and the amount of bad code I had to work with influenced my coding style a lot.
One thing is reading about bad examples. Another thing is it to maintain these bad examples.3 -
I just hate it when a co-worker says "AS LONG AS IT WORKS. It doesn't matter how you code it as long as it outputs what the client/user wants. They don't check how you code it anyway" *facepalm*
We effin' follow standards so that it will be convenient for everybody!
Bad code is still bad code if you don't follow standards even if it works.4 -
So I got this new job as Java developer, the people are really great but is the kind of companies that only takes care for fast results and not for code quality.
Because this I have to deal with libraries updated 4 years ago, classes with 8000 lines, methods with 500 lines, a WHOLE lot of work arounds because there is no time to really fix the issue unless it affects directly the customer (something not working or being really slow) aaand we use fucking svn.
Some of this practice's they know and encourage it (+1000 lines classes for example) and every time I try to talk about good practices in the code everyone seems so interested but there is always no time.
Sooo I will stay here for at least two years, I hope I can make a change for good in their code smells.3 -
How to deal with legacy code when you see such thing:
if function() == !!!false
1. Ctrl+A
2. Del
3. rm -rfv /3 -
Found this beautiful piece of code, that I wrote apparently a year ago .... oh my 😂 🤦♂ 😅
If I could travel back in time, I would would slap myself for doing this. Although I remember, why I did this, because of many min()/max() operations that I needed. I wanted to keep the code, so that I would know, which code piece belonged to which part, but man ... is that badly written! Nowadays with Clean Code style, I would certainly do it differently.7 -
Why are most developers/software engineers so absolutely fucking shit at their craft?
I understand incompetence exists in every occupation but it seems in development the ratio of bad developers to good developers is like 9:1. There’s a serious lack of quality in this industry and it’s only further exacerbated by coding bootcamps and orgs like general assembly pumping out more dog shit11 -
Being told code is "production ready" only to find this:
if name == 'foo' or name == 'bar' or name == 'someothershit'
What's wrong with:
if name in ['foo','bar', 'someothershit']?
Oh and they had 10 different values they were matching, not just 3. What kind of joker am I dealing with?1 -
And then, looking for the source of a bug in the code .... I randomly found this:
public bool IsOperationStarted { get; set; }
public bool IsOperationStartedTrue
{
get { return IsOperationStarted == true; }
}
public bool IsOperationStartedFalse
{
get { return IsOperationStarted == false; }
}4 -
$a = 1;
$b = 2;
echo ($a < $b) ? ($a > $b) ? 'This is totally fine' : ($a < $b) ? 'This is not ok!' : 'Perfect' : 'No problem here';
Why do people do this?!
(And I mean nested ternary ifs, not coding in PHP :P)17 -
I think I'm a good developer. I have pretty decent debugging skills, including pulling apart disassembled x86 and other architecture code.
I'm fascinated by how things work.
But almost everything is catered for by a library. Or has already been done.
I find it enjoyable to create a library or program myself, but get disheartened when I find some library or program that is written seemingly very well, compared to my own code. And then I start to think I'm not a good developer after all.
Sort of relates to my previous rant about repeatedly rewriting code.
Applies to me doing programming as a hobby but probably affects my code at work as well... I just can't help but think my code is probably awful compared to what someone else might write.
...then I see incredibly ugly, messy, badly written code by other people and I feel better...
I suppose it is like an artist who sees amazing works but cannot paint to that standard, but is well beyond drawing stick figures with crayons.
Sounds like a trivial problem but it probably impedes my progress with a lot of things.3 -
There should be a developer licence so we could stop these stupid wannabes from getting into and ruining the industry with their shit work. We're so fed up maintaining these stupid codes the company previously outsourced somewhere on earth.9
-
When the WYSIWYG editor needs to go back to school for coding.
<span style="font-weight: bold;"><br></span>
How is that even useful!?1 -
I can’t understand why every time I work for a multimillionaire company that sells their product to thousands of companies, when I start to debug this fucking product it crashes because of the absence of simple input checks... wtf
“Can’t divide by zero”
“Null everywhere”4 -
Stop commenting out code blocks!
Either fix your shit or delete it.
I am open to argue what fixing may mean, as it is perfectly fine to make your broken code not reachable, e.g. via feature flags or skipping certain tests. Yet never ever should you comment those blocks!
So you say you want to keep it for historic reasons? You know, that is why we use version control! If you ever need certain functionality back, you can restore that state.
Each decent IDE also offers a local history where you can even restore code blocks that weren't even pushed or committed. So use that!
Commenting out test cases is a really bad habit, as you have no reminder that you shall restore it.
And no, a TODO and a FIXME won't count as a reminder as you have to actively look for them. And we all know how well that goes, don't we? (One time, I found a typo of a `TDO`. So even with a regular lookup for TODO, stuff will slip.)
Each test suite offers you ways to skip tests if there are valid reasons why they should not fail the build temporary and they offer colorful feedback. Yes, that means that your tests won't be green, but guess what: That's a feature! They shouldn't be.
That yellow is a fine reminder, aka warning!, that you should really fix your shit.
Commented code screams: "I DON'T KNOW WHAT I WAS DOING!" and it confuses the hell out of other developers ("Was this commented because of debugging purposes and should be active again or can I safely delete this!?") and adds verbose crap to the code base.
If you find yourself to be in a place that you comment code a lot, I also argue that your workflow is broken.
When you are using a decent debugger, there shouldn't that much of a need to comment in and out a lot of code in order to reason about your code-base.4 -
Today the government from Costa Rica announced their solution to tax double any UBER charge registered to debit/credit cards.
Their logic is to pretty much do it for any commerce that includes the letters UBER. Like something out of your first Unity C++lesson2 -
Today I submitted one of the worst PR's of my life.
We have to use a service which was developed sometime during the cold war and we query data from it. The exchange is soap.
When you just query the service, it returns over 50k lines of gibberish.
It would stand to reason thay a flag called include X information set to false in the request would eliminate only that section(largest of those 50k). Well... not really...
What actually happens is that everything except the basic information gets excluded once you apply a filter. In order to get the rest of the necessary data, you have to specify flags with the value of 'true' for each section. There are over twenty sections.
Long story short, my pr was over twenty lines of 'setX(true)'. It's horrible and I hate myself for doing it but at least the 50k lines are down top 911 useful ones.
Also, the company that still maintains this crap said that this is perfectly ok. 😐8 -
As a rookie programming, I wrote really bad code and didn't understand why. Now, I've improved to where I know bad code, but I continue writing studios horrible solutions. And in the end up refactoring much until I don't have energy to look at my code anymore. This although knowing what I should/shouldn't do. Shame!6
-
I need guidance about my current situation.
I am perfectionist believing in OOP, preventing memory leak in advance, following clean code, best practices, constantly learning about new libraries to reduce custom implementation & improve efficiency.
So even a single bad variable name can trigger my nerves.
I am currently working in a half billion $ IT service company on a maintenance project of 8 year old Android app of security domain product of 1 of the top enterprise company of the world, which sold it to the many leading companies in the world in Govt service, banking, insurance sectors.
It's code quality is such a bad that I get panic attacks & nightmares daily.
Issues are like
- No apk obfuscation, source's everything is openbook, anybody can just unzip apk & open it in Android Studio to see the source.
- logs everywhere about method name invoked,
- static IV & salt for encryption.
- thousands of line code in God classes.
- Irrelevant method names compared to it's functionality.
- Even single item having list takes 2-3 seconds to load
- Lag in navigation between different features' screens.
- For even single thing like different dimension values for different density whole 100+ lines separate layout files for 6 types of densities are written.
- No modularized packages, every class is in single package & there are around 100+ classes.
Owner of the code, my team lead, is too terrified to change even single thing as he don't have coding maturity & no understanding of memory leak, clean code, OOP, in short typical IT 'service' company mentality.
Client is ill-informed or cost-cutting centric so no code review done by them in 8 years.
Feeling much frustrated as I can see it's like a bomb is waiting to blast anytime when some blackhat cracker will take advantage of this.
Need suggestions about this to tackle the situation.10 -
Actual production code:
while(1):
//A few lines of code here with a conditional break.
while(1):
//More code.
Have you ever just had nested infinite loops...4 -
"Copying and pasting random code from the internet is only bad when you already have the same code elsewhere"
- Someone3 -
Agile coach Agiling: We shouldn't need code reviews as long as there is pair programming.
Me Internally: bad code + bad code doesn't make good code :( -
When the code is so bad that fixing one thing breaks 10 other things because the code was made to work with broken code.3
-
Last year I wrote a sudoku program which did solve easy sudokus but messed up on harder ones. I had got bored after a bit and forgot about it until today I thought I'd rewrite it using new stuff I've learned since and make it work properly.
So I opened it up and look and I'm like 'WHAT!?' because I don't understand what I wrote. After a bit I start to get the idea and see that it was kind of smart even if long and complicated.
If anything, it shows how much my documentation skills have improved.
Now I just have to work out how to redo it in a way I understand.7 -
Some weeks back I mentioned (in a comment) my small program capable of editing the tags in audio files based on the filename.
Today, I had some spear time and implemented it in Go (the original version was Ruby).
For people that are interested, here is a link to the repo: https://github.com/SirWindfield/...
Any help/feedback is appreciated!
I promised someone to mention him if I get to publish it. But I forgot his user name :(9 -
This started off as a rant but it soon grew way too large to fit in 5000 characters, so I had to take to my Medium blog instead.
Here, y'all, have a lesson in web design from hell.
https://medium.com/@linuswillner/...2 -
Had to fix all bugs of my colleague this night because our client was not happy.
Before he joined us he worked as a database admin and now he wants to learn web dev and coding. But he did so bad mistakes like endless loops or requesting api 5 times.
In so tired now, happy when its christmas -
When you want to use Visual Studio Code so bad, but you're waiting for them adding minimap feature.4
-
Automatically clean up code, removing redundant and duplicate bits, splitting large functions, and formatting it nicely. Especially useful when trying to understand some garbage code someone else wrote which you need to rewrite.2
-
I have this constant fear of showing my code to the world, but I’m confident to show my work to the world... How do I overcome this?6
-
Dev Confession:
I wrote a bunch of code today that created more problems than it solved. I did not commit it. I used git stash to hide it. It took me hours to write. I didn't do a test on a small section of code beforehand. Literally hours of wasted man hours.
At least I didn't commit this garbage into the repo. The approach was fine, but the architecture made it a non-solution. Now I need to redesign this code or leave as is. It is production code I cannot just "change" on a whim.
I have officially dubbed this week as confession week. This should be a world wide thing. People should fess up to their terrible deeds. Lets start a trend and confess to our misdeeds in code and life. Make the world a better place!
What do you say?7 -
Started a new job this week, picking up the front end development of a property management system, since they're old developer just left.
Oh my god was his code bad, inconsistent use of js versions e.g only sometimes using lambda for anonymous functions, variable names that were a single letter, no comments, no documentation, and over 30000 lines split into almost 30 js files, following the logic of it is as fun as a hedge maze with no exit.2 -
So PHP 7.2 according to its creator, is actually faster if you write bad code.
Well im not amused.5 -
How do you guys deal with reviewing garbage code?
Do you waste a ton of time, trying to understand the code, so you can write constructive feedback?
Today I wasted 4 hours reviewing something like that and I'm still not finished.10 -
No, the language is not stupid :) No, it is not a problem of the language, it's just the fact that you don't really understand how to use it properly :) i think this is something each of us hates to hear while frustated but needs to hear afterwards, bad design is a posibility tho, but 99.999% of the cases is our fault. face it, nd overcome it! and finally, to grow beyond it 😄
<<edited with my potato phone's standard image editor>> -
I need help and advice!
I currently work as an consultant at a large corporation. Came onboard for 1-2 years to help rebuild one of their platforms. From the beginning the mindset was that the finished product should not be developed based on anything else than customer testimonials and interviews regarding functionality and design. However, they’re building their platform developed and distributed by this other company. Basically they bought a system that is incomplete regarding to being compliant to the specifications brought to them when they decided which system to go with. Now we’re trying to build around all the issue this platform is causing us. The code base for the system is like something a monkey did with their feet. Nothing makes sense and it’s layers on top of layers of 10 year old code. I f-ing hate it. I don’t know what to do. We have some many technical limitation that it’s impossible to create the vision they had from the start.
I’ve been thinking about talking to the highest chief in the department as he has been pissed earlier about project managers not escalating issue to him earlier. But I don’t want to step on anyones toes. Should I leave the project? Should I talk to the chief? What do I do? I’m miserable🤯7 -
So, I'm looking into something and end up on Stack Overflow. Someone posted the question:
"Does minified javascript improve performance?"
This question was old as shit, all they way from 07/25/09, and about an Adobe Air application. (Remember that? Me neither...) It had a great, accepted, and still accurate answer, posted the same day the question was asked. Now, fast forward 8 years and on 12/08/17 (A mere 7 months ago...) the following answer was posted. I don't know what they were thinking, but here it is, complete and unabridged, with my comments in square brackets:
"I'd like to post this as a separate answer as it somewhat contrasts the accepted one: [Somewhat contrasts? More like completely contradicts...]
Yes, it does make a performance difference as it reduces parsing time - and that's often the critical thing. For me, it was even just simply linear in the size and I could get it from 12s to 4s parse time by minifying from 3MB to 1MB. [First off, your parse time should NEVER be THE critical thing, but secondly, and more importantly, WHO THE FUCK HAS 1MB OF MINIFIED JS ON A PAGE!!!]
It's not a big app either, it just has a couple of reasonable dependencies. [THERE IS ABSOFUCKINGLUTELY NOTHING REASONABLE ABOUT ANYTHING HE JUST SAID! What dependancies is he using?! You could use minified and not even gzipped jQuery, AngularJS, Vue, Ember, React, AND Dojo libraries on the SAME PAGE, AND have 118k of application code, AND STILL NOT HAVE HIT 1MB QUITE YET!!!]
So the moral of the story here is: Yes, minifying is important for performance - and not because of bandwidth, but because of parsing. [Javascript should NEVER take longer to parse then to download, even on a low powered device...]"
So, yeah, I'm at a loss for what this guy was thinking, but the thought the people like this exist, and that my browser might one day be subjected to their horrific nightmare of code terrifies me...2 -
So at one point I worked on an inherited project that had the worst code I've ever seen. I mean bad, so bad there may no quantifiable measure that can accurately convey how bad. We ended up naming the thing 'the hydra', cause it had a million issues and they just kept growing as we fixed things. To my point, in C++ they implemented their own primitive type Boolean32 as a signed int32 pointer. If that wasn't enough they used it as an octal bit mask. They also switch the value using logical and / or between 2 numbers, 037777777777 and 000000000001. So essentially they only switch this value to 1 or -1 and end up comparing it to their own const true or false. In c++ any value not 0 is == true...apparently not in this code.undefined octals why me? why would you do that? terrible code awful code c++ coding no designs bad code
-
Ok let's see. Who tha he'll created this code... Well well let's rewrite it. 8 hours later. OK now it is done. Let's see who to blaim... :@
O no!! it's me :( -
Lets make a rant before going to bed
Who had the marvelous idea that a developer's proeficiency could be measured by years?
So at my new job Ive been waiting for credentialls, server access software installation, etc ( i know i know but thats for another rant ) and all that idle time has given me opportunity to crawl in the company's sharepoint page which has the career path for a software developer, since Im a student Im listed as trainee, but after that I have to wait 3 years + certifications to be considered as senior and then be able to hop to next hierarchy level Software Designer and then another three years to be able to become a software architect. So my point, as I was seeing this I thought "I dont wanna wait 6 years to become a software architect, Im going to be better faster in order to become needed and make them promote me faster"
The thing is Ive always wanted to become a softwsre architect and learning that I have to wait 7 years to be considered a proeficient architect just makes me mad.
Pd: One of the requirements for a senior developer is knowing Lines of code time stimationundefined pichardo for president lines of code school is bad trump rules dont do drugs architect loc career career transition1 -
My first job as a '"dev"' (I really need some kind of super quotation mark for this).
I was young and too stupid too know how stupid I really was, I jobbed at a small recruiting firm and one day my boss complained about her database system and that she needed to hire a student to remake it. Suffering from the problem to be too incompetent to even recognise I'm incompetent I obviously offered my services as a python wizard I mean I could write a program that saves fibonacci numbers to a csv file, how much more could there possibly be? Fast forward two months and I proudly presented a GUI written in VB (it had an wysiwyg GUI editor) that was loosely frankensteined onto a bunch of together copy pasted python scripts running on a Windows Server. No web interface just accessible via vnc. It was slow, sluggish and soo ugly but it worked and did exactly what she wanted it to do. Sure the database was a bunch of csv files but non the less, to say it in pm, it resolved the user story. I quit shortly after because of her tendency to not pay the last bill after something was done (and tbh i deserved it) but she never removed my account from the server. So I copied my "magnus opus" from there... Let's just say whenever I look back at it I feel ashamed and yet it serves as a reminder to never be content with how good you are. -
You join a new team. You find that the code is horrendous. Do you
A. Run away while in probation?
B. Start complaining about it and have the others hate you?
C. Cry silently and hope things will get better?9 -
I don't think there is anything more painful than seeing some programmers writing badly formatted code.
I mean how can anyone use a single space or completely inconsistent spaces and tabs.
What is more painful is that you cannot scream at them because you don't wanna be an A-Hole trying to force your methods to others. -
just heard about an LG fridge with built-in Windows 10Tab:
"The fridge has an Intel processor and 2GB RAM. It will not replace your Desktop-PC!"
//you don't say2 -
What if the reviewer gives you bad reviews that lead to bad code, and you can't defend because he couldn't understand the shit you're talking about?3
-
Why the fuck are there so many utterly useless programming blogs? I have to implement DES in C++ for our college project. After coding most of it step by step, I decided to swallow my pride and check for an implementation online to save time because I was confused in the XOR part. Now most programming blogs had the same code copy pasted. To top that, NAME YOUR FUCKING VARIABLES PROPERLY YOU MORONS! I decided I'm better off resolving my confusions the hard way.3
-
I learned very quickly that magic globals are baaaaad.
I mean, it's easier than using a queue for passing data between threads, right? -
I promised to deliver a complete fucking customizable ERP in php on 30th of December based on some on existing database model made by some fucktard which creates a fucking new database for every new company. FML
-
When you spend 3h trying to fix a procedure on MySQL and the problem was a f***** variable name. I felt so bad and sad :'(1
-
Yanno, when I pay $60 for a theme, I get what I get. That's fine. Invariably I end up having to mess with the css. That's fine too.
However, theme makers? Please don't mix hyphens and underscores in your selectors. Decide on a case style. Avoid div-itus.
And for the love of all a selector such as #Top_bar .logo #logo a.logo makes code a pain in the ass to test2 -
1. Commented code instead of actually cleaning it up.
2. Returning default return variables instead of rewriting obsolete code. (Generally if/else conditions with return). So instead of removing the if/else statements i return default value(null or empty objects). This is when the case of if/else will never arise. -
How do you cope with coworkers who are okay with lousy code and don't want to make it better because "how does it matter"?6
-
So why exactly did anyone ever use zoom? The first time I ever heard about zoom was when I read a very detailed code dissecting mini writeup of its obvious flaws by a sec. researcher. Why and when did zoom become a thing? Also wtf where the zoom devs smoking and where can I get sum? That shit must fuck up your brain beyond repair.....2
-
I've been infcted with writing awful, sinful, obscure code, so others can't read or change it.
Recently i got my first full time job as a programmer (yay). It's with a company with 15+ year old system and they are currently upgrading it. But it's driving me crazy with the massive mess of old and new code. However it only gets worse! Instead of making it simple and nice to read, they want it over complex, just to get something from the database i have create at least 5 fucking classes and endless SQL code, the old system didn't requier any SQL or the creation og new classes, WTF. I've become a sinner, of corse i use the old system, but i do it secretly, and i obscurify my code so others can't understand. It's shameful, but i'm afraid to confront the older programmers, they've spend too much time in the system and they've been in the business for a lot longer than me.3 -
Rant and opinions wanted. Its a long one.
I have been working on a project for a month and a half. For the first week I was requesting designs that I got about 2 of out of 15. For the next week and a half the designer was on holiday so I couldn't do anything but delivered a few more designs once he got back.
This takes us 2 weeks in already. I have other things to do as well so at the same time I work on support tickets and some bespoke development coming in.
I get given 2 or 3 more designs and can't get anything else out of the designer after waiting a week so I have to design everything myself as I go and build it. Something I have never done before.
We are now 3 and a half weeks in. My boss randomly tells my pm it needs to be demo ready the next day. I work furiously to hack something together. It works but key functionality is missing.
I move house and work from home for a week and a half. I do my best but the project is full of bugs and the CSS is horrible because I didn't know what I was making at any stage. It is therefore CSS rules repeated in IDs everywhere.
My colleagues join me on the project because my boss has decided to try and sell it tomorrow.
They run through it and find all the bugs left from me working furiously to get things done quickly. Things like no search pagination and missing validation.
My boss is now pisses at me because the project is not finished, my colleagues are now all working on it. Throughout it all he knew the designer was not delivering me anything and that I was struggling.
Am I in the wrong for writing shit code that came about because I was coding with no idea of what the finished project should look like? Is he in the wrong for dumping this on me and just letting me get on with it even though he knew there were no designs?
Btw I am just finishing a 1 year internship and before this have never done web dev before.
Discuss.7 -
I bonded a lot with a co-worker over the last several months as I had to mentor him in iOS and how to maintain our apps. We mostly bonded over how much we hate Objective-C and the management of the project. Now we are buying Christmas presents for eachother. Bad code brings people together
-
Screw Joomla. And screw the agency that put together these sites. I'm almost impressed, I can only assume from the state of things that whoever worked on them has successfully created multiple websites by smashing their face into the keyboard and hoping for the best.1
-
Another terrible rant from the inhereted Hydra source code. So deep in the dark dungeon of that code I noticed something interesting. They declare this INT32 array with an incredibly long (like 200 values) list of hard coded magic numbers. Something along the lines of:
INT32 array[200] = {-1,0,1,21,4,7,19,33...};
However, the resulting output was incorrect. After spending a fort night and a good chunk of my remaining sanity I had overcone the 437 levels of indirection left by the previous programmers, and narrowed it down to this line. But it looked perfectly fine.
I pull up the diffs and notice someone had checked in a change to the source. I track it to this line and find what the original data had been.
INT32 array[200] = {-1,0,1,2l,4,7,19,33...};
In VS the default font shows l and 1 as fucking identical. Someone had accidentally made that change to 21 from the original 2l and checked it in. I mean I can't really blame them. Who the fucking hell inatantiates a fucking int32 array and peppers in a fucking 2l (long) for no fucking reason?! -
Adding a new feature to a mobile app that has a bunch of classes for getting URLs! Want some examples?
FallbackUrlProvider
CompositeUrlProvider
CompositeRouteUrlProvider
CompositeBaseUrlProvider
RootUrlProvider
I was half expecting to find FallbackRootBaseCompositeUrlProvider!
Not only that, but there were a load of interfaces that sometimes didn't match the name of the class!!!
For example,
class RootUrlProvider : ICompositeUrlProvider
Ugh! But I managed to get the new feature in... Somehow... After trying something... Throwing it away... Trying something else... Throwing it away...
😭😭😭3 -
So we used to build these awful "promotion" pages for a leading manufacturer in the area. Because the website was old as dirt, there was no CMS and everything was static html using Coldfusion for a few include files like for the nav and such.
Every year we would get a new project to tweak the promotion details a little, and change the year from 2011 to 2012, etc.
My predecessor put the digit "1" in an HTML file called year.html, then included it like:
"valid from January 1 though December 31, 201<cfinclude template="year.html">..."
Why? Just why? And if you're going to use include files, for Pete's sake at least use the proper .cfm file extension!1 -
Just went over some of my old horrible code from before i started studying. I litterally went from 104 lines of if/else statements to about 15 lines with loops. Then down to 2 lines with lambdas...
I saved 102 lines of actual code. And the runtime! I had a loop count to 10000 with no body! It helps to study apparently :/ -
I think UPS' Api documentation and service must be the worst documented and build API I have ever seen from a corporate.
1. The developer website is a mess. A total mess. You can barely find the API type you are looking for.
2. When you get the API and download the documentation, the files, .pdf etc is still a mess. Pages long that most are craps.
3. Each request returns Status Code 200. Even if it is an error. This blew my mind.
4. Each request, based on error type or based on tracking activity returns different JSON schema.
For example, the JSON Schema for a shipment in transit is different from JSON schema for a shipment that has been delivered. A shipment that has been returned, a shipment that required signature etc. They are different from each other.
5. And the worst. They do not provide with test tracking codes. I have found some on internet, but they do not work in development and production environment.2 -
I went back and looked at some code I wrote a couple years ago. It made me so sad... I well and truely did not understand a lot of core concept yet at the time, and I was stubborn and thought what I was writing was good and refused to start over or delete code.
This try block had 4 FileInputStream objects and I even have a defined branching statement which I never use.
Whoever marked this assignment probably needed a lot of alcohol.1 -
Don't leave "broken windows" (bad designs, wrong decisions, or poor code) unrepaired. Fix each one as soon as it is discovered. If there is insufficient time to fix it properly, then board it up. Perhaps you can comment out the offending code, or display a "Not Implemented" message, or substitute dummy data instead. Take some action to prevent further damage and to show that you're on top of the situation.
We've seen clean, functional systems deteriorate pretty quickly once windows start breaking. There are other factors that can contribute to software rot, and we'll touch on some of them elsewhere, but neglect accelerates the rot faster than any other factor.
"The Pragmatic Programmer"2 -
Whoever wrote this line of code... please take on a different profession.
`else if len(LEFT({ODWR_CLAIMSNAPSHOT.POLICY_TYPE}, 3)) > 0 then`6 -
Some weeks ago I was invite to speak at the Campus Party and this past Thursday was the presentation day.
I was giving a mini-workshop about parallel processing to something around 50 people.
No matter how many times have you tested your code, in the middle of the presentation, it will fail and the next day after the presentation, it will work fine, without any changes.
I’m a bit sad about it and next week I’ll be at TDC to speak to more than 100 people and this if f*cking my mind.
Conclusion: live code is a shit and I’ll think 10 times before put it again in my presentation.1 -
It's kind of depressing looking at how bad the source code has transformed from a previous project that I had planned, designed, and did the initial implementation.
But I guess this is the problem of having developers who don't really care about the quality of their work, especially when it comes to PHP. -
How to react to a coworker using equals() instead of equalsIgnoreCase() for checking case insensitive strings?19
-
It finally happened. They just kept pushing, and pushing, and pushing. Asking for more and more features in an app that was a hard-coded demo from the beginning. Well it's all coming down now.
That database that was added in, missing half the API.
New features, broken.
Old features, broken.
Buttons, missing.
Drivers, need updating.
Yee, haw.
I tried to tell them, I really did. That maybe we should stop asking the client what they want, and instead sell them what we have. Well, now we have nothing.3 -
I guess it's my third or the fourth company that am currently changing.
I have the will to improve and write better code quality level up. But sometimes i guess i have the lack to find the how to do these stuff and how to practice and who is going to tell me that i have to change these lines of code so you can improve am just in a big mess and i feel so bad about it.
Now i had just received a new warning at my current company that i either improve or i get fired. So i have been searching over google and internet how to improve as well i had just created a new project for the will to practice and become better.
Can someone tell me what i should do?
How to fix everything and let my colleagues gain my trust in my code commits ?
Because literally i feel so bad about everything and you can't imagine how miserable i feel.3 -
So I was wondering in which of the Myriad of js files was this function that changed the display attribute on a div.
Dear previous dev,
What the fuck was coming into your mind when you thought it was a good idea to write it in datetime.js???
Lazy fuck.2 -
Arg trying to code in a project that is like a book with chapters. Each sentence is written in a different language, the words of each sentence are in the wrong order, the paragraphs are in the wrong chapters and the book is an elephant. 🐘
-
Coworker 1 starts project
Coworker 2 inherits same project
*repeat 3 more times*
Coworker n has no idea what this spaghetti code is and what it does since everyone has done quick fixes as per management requirements.
This is how the company where i work functions. And with all these projects going from one dev to the other i can tell you its a real shitshow and a lot if frustration 😤2 -
I just got cancer. "full stack" wrote this:
var steams = [] ;
for (var key in images) {
streams[streams.length] = fs.createWriteStream(images.imageName);
streams[streams.length - 1].on('close', function (filename) {.....
why, Why Why and how did you come up with something this bad?
Dude creates an empty array to populate it with write streams just so he can pop each one two lines below and attach a listener.
It's the first thing I checked in this application and I'm afraid what else I'm gonna find.2 -
Another guy and I are each making a CMS to see who can be done first and who's looks/acts the best. He's basically done and I still have a lot to do, but I've been looking over his code and, it. is. bad. The classes are badly made and named with all lowercase. And i found this thing, he has 10 other functions just like this one.
His: https://ide.explosivenight.us/works... (I made sure sql injection isn't possible for normal users)
Mine: https://al1l.com/blog4 -
I fear that my code isnt as much good as expected so I started hurting my fingers... Anyway, started reading "clean code" so hope it helps... But fear remains... Want to do a good performance; I am married now...4
-
Fixing a faulty plugin modification from a former developer, and no documentation, plugin provider wants payment for support...
Me crying on the side near to pull the trigger -
Wanna see MadMan Code?
class DestroyMemory
{
public:
explicit DestroyMemory()
{
auto *destroy = new DestroyMemory();
for(auto i = 0u; i < sizeof(*destroy); ++i)
{ std::cout << "hihi\n"; }
}
};
If this will not work, tell me the reason why... :)
i am explicitly curious if anyone finds a reason that this should not do what it is supposed to do. :)6 -
I think promoting 'a quick lookup on Google' every single time you need to add something useful into your codebase is a bad mentality. It's the same problem with populating your code with Stackoverflow snippets.
I think this is not a good approach because your code will eventually rot and you won't have full control over your codebase in that you didn't write those parts and you don't fully know what's going on underneath. Then, you will forget about that code. A new feature request will come up and oh no, you will be wrestling with your old code because you just quickly inserted it in there, not fully knowing it under the hood. Hours will be lost on debugging.
I advocate much more the approach of really knowing the language and the solutions you're using, instead of just constantly hacking it with the excuse of "Oh, there's no time to learn everything", "You don't need to know the details" and "This is the real world".
No, this is not a good attitude. With the former approach, you will be much more able to safeguard your code and improve on it, rather than wrestling for hours with it. I think it's important to have as much ownership of your code as possible and depend as little on outside libraries as possible.
Fundamentals first, practicality second.2 -
When doing a project from scratch, what would you prefer?
Code Quality + Time = Product
Bad Code Quality + Les Time = Product7 -
When they say 'Write comments!' and you are like:
// Do necessary operations
I have been refractoring a project with a SHITTONE of comments like this and a FUCKLOAD of nested if statements. And then this commes along:
$user2 = User.find($user->id);
WHO WRITES THIS STUFF? I am never working on a cheap project from India again.3 -
Since when was having 3 spinner styles and 2 pop ups styles a good idea in a SaaS? This baby needs a proper spruce up. I must admit it's not really a rant, I enjoy it, decrapifying the code and general refactoring. This is from a hackathon a good couple of years ago. Finally giving it some TLC. Feels amazing.
-
Just found a few methods in the same file which does the same task written by different devs just because they did not know a method already existed in the first place. How tough is it for them to do a grep on the file?1
-
This tuesday I saw a really badly made PHP web application. Two actually. I was giving a time estimate for how long it would take to transfer these applications to our servers. While I was reading the code it became apparent that they had more security holes than Emmental cheese. Most views had obvious SQL-injection vulnerabilities and most probably XSS too. Although I didn't think too look for XSS in the moment. It just puzzled me that this bad code even exists.
But cherry on top was that the password wasn't checked at all. The login form was on the organization's website and was sent to the selected application. But the password wasn't checked in the application. And this was made by a real Finnish software development firm, like what the fuck.
Time to redo the applications I guess. Not like there's anything wrong in that if they pay for it.2 -
Who writes something like this!?!?
if (result == "True")
{
return "True";
}
else
{
return result;
}1 -
I guess i have to be thankful for not knowing whomever wrote this fucking piece of shit of a PHP app that i have to fix stupid bugs in a daily basis.
Cause if i did know the bastard.. i'm pretty sure i would fucking bash his useless head in with anything i had in my hands at the moment... FUCK!.
The level of ignorance and stupidity.. i can't even begin to comprehend.
The worst is that we can't even rewrite this fucking piece of buggy shit cause the bosses are so fucking proud of their deformed creation and wont pay us decently to even to that in the first place.2 -
Cleaning up some old. NET code and found this gem. At least it might be readable once it is rendered to the browser.1
-
Rails views are not meant to have a ton of logic, local variables and 3 or 4 levels of if/else nesting. That's what presenters, view models and assorted other patterns are for. Or helpers, if you really have to.
Yes, this codebase is so packed with legacy it still runs Rails 2.3, and there's no plans to upgrade it, but that's no excuse to keep writing code like it's 2008. MVC does not mean all code must fit in a model, a view or a controller, ffs.1 -
So I'm going to work on a project with a webapp and mobile applications. I look at this monstrosity that sends username and pass as plain json and there is almost no sparation of concerns, along with very little documentation. Please save me1
-
Greatest distraction when coding -> Annoying project managers really. I quit a company after working 4 days because the PM on the project just wouldn't respect boundaries. Always asking for updates every 10mins.
-
!rant
Let's say that you have (or had) a colleague that you utterly despise for whatever reason. Have you ever wrote convoluted or straight up spaghetti code on purpose just to make his/her life harder?
(I am aware that authoring bad code can bite you in the ass down the line, just curious to see if anyone ever went that far) -
Am I that bad at JS or long files of Javascript code (200+ lines) are much worse than their PHP equivalent? :))2
-
When working on an old system that’s a complete mess how do you handle adding new code in terms of effort?
I normally take pride in my work but if the system is such a mess I sometimes find it hard to get motivated to do it. I often find it makes me feel sleepy? Even new code that is tweaked is nowhere near as well written as if it were a new system.
Anyone else get that?3 -
We have this C# class which is like the core of our entire business logic. If you are in another class and it doesn't contain an argument in the constructor and/or property of that core class you're gonna have a bad time.
That core class has lots of useful business logic bools, "IsSomething", "HasSomething" etc. However that core class has a parameterless constructor which is sprinkled dangerously throughout our app, meaning the object is often not initialised properly and it's a 2 day mindfuck to make sure your "IsSomething" bool is actually false and not just false because the other business logic that bool relies on wasn't initialised and the bool has never had a chance to be true.
It's difficult to trust even a simple "if' statement. And if you're somewhere were you've had a list of that core class passed in, you need to trace how the list was initialised to make sure all your bools have been set 😴4 -
when programming fails.
when I updated the firmware on this piece, something went wrong and the device broke.
Google'd and learned that the only way to unbrick is to break the other side open and remove a non-removable battery, to reset. else it will stay bricked forever -
Shitty code. Nothing makes me avoid coding more than seeing bad written obfuscated hard to debug code...
Look a fly. -
Anyone looking for shitty code practices take a look at the Emotiv API. The way they have written sample code should be mode illegal.
I fucking hate reading through such a shitty peace of sample code. -
Just found a service method that saves an entity that isn't related to that service, that returns a ModelAndView object. I think my brain just broke. 1) Single Responsibility Principal. Do not save ObjectB in ObjectAService. 2) Services should not be aware of your view context. That's what controllers are for. Do not return a ModelAndView from a service method.