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 - "taint"
-
Root gets ignored.
I've been working on this monster ticket for a week and a half now (five days plus other tickets). It involves removing all foreign keys from mass assignment (create, update, save, ...), which breaks 1780 specs.
For those of you who don't know, this is part of how rails works. If you create a Page object, you specify the book_id of its parent Book so they're linked. (If you don't, they're orphans.) Example: `Page.create(text: params[:text], book_id: params[:book_id], ...)` or more simply: `Page.create(params)`
Obviously removing the ability to do this is problematic. The "solution" is to create the object without the book_id, save it, then set the book_id and save it again. Two roundtrips. bad.
I came up with a solution early last week that, while it doesn't resolve the security warnings, it does fix the actual security issue: whitelisting what params users are allowed to send, and validating them. (StrongParams + validation). I had a 1:1 with my boss today about this ticket, and I told him about that solution. He sort of hand-waved it away and said it wouldn't work because <lots of unrelated things>. huh.
He worked through a failed spec to see what the ticket was about, and eventually (20 minutes later) ran into the same issues Idid, and said "there's no way around this" (meaning what security wants won't actually help).
I remembered that Ruby has a `taint` state tracking, and realized I could use that to write a super elegant drop-in solution: some Rack middleware or a StrongParams monkeypatch to mark all foreign keys from user-input as tainted (so devs can validate and un-taint them), and also monkeypatch ACtiveRecord's create/save/update/etc. to raise an exception when seeing tainted data. I brought this up, and he searched for it. we discovered someone had already build this (not surprising), but also that Ruby2.7 deprecates the `taint` mechanism literally "because nobody uses it." joy. Boss also somehow thought I came up with it because I saw the other person's implementation, despite us searching for it because I brought it up? 🤨
Foregoing that, we looked up more possibilities, and he saw the whitelist+validation pattern quite a few more times, which he quickly dimissed as bad, and eventually decided that we "need to noodle on it for awhile" and come up with something else.
Shortly (seriously 3-5 minutes) after the call, he said that the StrongParams (whitelist) plus validation makes the most sense and is the approach we should use.
ffs.
I came up with that last week and he said no.
I brought it up multiple times during our call and he said it was bad or simply talked over me. He saw lots of examples in the wild and said it was bad. I came up with a better, more elegant solution, and he credited someone else. then he decided after the call that the StrongParams idea he came up with (?!) was better.
jfc i'm getting pissy again.9 -
I work for "a" company. This company has completely broken my desire to improve user experiences.
For instance, they have fetishized reducing the amount of clicks users have to go through to improve user productivity. Normally this is good, in their grossly mutated views, not so much.
They want ALL the data on a single page, and want people to use ctrl+f to find whatever they want on these pages instead of, ya know, a site-wide search(which fucking exists).
So this makes page times and UX horrible, some pages will take upwards of 2 minutes to completely load. 2 fucking minutes! My team and I had reduced these down to 15 seconds by reducing the data displayed and paginating it using some awesome JS lazy load functions. Not great by any real metric, but still a huge improvement.
You know who uses it out of 400 employees? Me. You know who still constantly gets complaints that the pages load really fuckin slowly? Still me!
Fuck these dumb asses and their retarded ideologies. They are stuck so far up 1990s ass they can practically TASTE Clintons' taint.
The culture is so toxic for developers it's absolutely abhorrent and depressing.
There is no freedom to do what you need to do because you're too busy doing the things they ask you to do. Follow that up with quarterly performance reports that bring up questions like, "What do you do for us?".
The only positive to working in this shithole is that they wouldn't dare fire you because they would never find anyone that would stay long enough to become an expert on this pile of shit. Over the last year we have gone through an entire 16 dev team, twice. That's 36 developers that just straight up quit in 12 months, and it's not like any of them worked together either. I would say 3-4 out of the first group met the second group, and 1-2 stuck around for the current group.
I don't normally rant like this, but I've been holding this shit in for a very long time and I can't hold it in.3 -
I love it when asshats, that wear testicles for sunglasses, like to ask me a question about my past experience with a given technology. Let's call it "X". After I've said my piece about the desired effect "X" was supposed to achieve, and describe the environment/scope where "X" was used, and describe the pain points I've encountered with it or the headaches "X" has caused in those environments, these camel spunk garglers then try to immediately rebut me by saying that every one of the times they've set "X" technology up it's worked just fine.
So, I kindly remind them that my past experience was in large enterprises where "X" technology just doesn't scale well so I've seen some issues with it.
Spunk Gargler: "Hmmm, must've just not been setup correctly."
I lose my shit (internally of course because I can't afford to be without a job right now.) and say, "I'm not so sure that it wasn't setup correctly, I just don't think that 'X' works properly at the scale of 500+ employee environments well. You've only ever set it up in small offices of like - what, 20 users?"
Shitlord McHerp-a-Derp who's Drunk on Spunk: "Maybe, but it just sounds like a bad configuration was causing those issues to me."
He shuffled back into his office shortly after I basically told him he's a fucking chump playing small team tactics and I've seen shit at scale so I've seen first hand what does and does not work well.
I'm writing this because this is the same fucking imbecile that has only ever encountered a /23 network once before from a client they inherited from a previous MSP team and they didn't know how to "safely change it" to a /24 so they just left it in place.
(BTW, just for the non-networking guys/gals out there, I'm sure you've already guessed it, but a /23 network is NOT a fucking problem!)
These puffy cancerous taint boils that call themselves IT engineers are the fucking problem!
I'm not a dev by trade or training, but trying to learn DevOps, and I can totally see why Dev teams can/sometimes get pissed with infrastructure teams... infrastructure/helpdesk side of IT is full of these fucking meat heads.1 -
A microwave can cook potatoes in ten minutes!? Why the fuck did nobody tell me?
A lot of workplaces only offer a microwave and no oven, and barley a kitchen to prepare stuff.
Hence, I was rarely bringing in my own food as I worked under the assumption that I had to prepare it at home and just heat it up at work. And potatoes take round about ~40 minutes the way I make them (20 min to cook, 20 min to steep).
Now, I will be using the shit out of those technical wonders and save a lot of money in the progress, as I used to go to restaurants almost daily for lunch time. Heck, I may even buy myself one for home use.
Oh, now I remember why!
This is what I get by being brought up by a somewhat esoteric mother.
"Microwave are no good, the taint the food."
No, they do not. It's science!4 -
Can't fucking stand my tiny desk!!! It's only 23" x 45" (approx 58cm x 114cm)
I can hardly fit my mouse, keyboard, and laptop on the damn thing let alone an external monitor.
The only reason I can't get a larger desk is that we don't have any goddamn room for a decent sized work station in this shitty 800sqft apartment.
but luckily for me, I get the privilege and blessing to live in california! So this fabulous 800sqft; in all it's hickory-smoked horse taint glory costs over 2K a month in rent. Golly-Gee I sure am glad to be getting raked over the coals every month. IT FEELS FANTASTIC!!! /s12 -
On a business trip. I brought my work laptop and my personal laptop with me. Because I am smart. But a lot of my coworkers only bring their work laptops. So I guess I am basically wondering how much porn has tainted the work laptops. Especially since they will auction them off around once a year. To be clear I am not wondering about the software taint.2
-
I just got hired at a small MSP and I’m just utterly fucking frustrated by the shitty tools and complete lack of client documentation. I want to implement tons of FOSS tools for these newbhats but they seem to like spending money on tools that only work half-assedly at best... looking at you LogMeIn!
I’ve setup Apache Guacamole a few times before and want to get each client a guac-srv setup for client’s server mgmt. or PowerShell Web Access for clients.
I want to build AWS infrastructure for clients cause we can use cloudformation or terraform to build infrastructure. But these skunk-taint licking dipsticks would rather support physical 2003 servers. If I didn’t need this job to pay my bills right now I’d be fucking gone.
But... they are very nice people.
Just technologically speaking, they eat lead paint chips for breakfast and like to piss on electric fences for the funsies. -
Just read an article on cnn.
If people start using the term Aspies for people with aspergers I am just going to start kicking people in the taint.1 -
The Use of Recycled Heart Devices
There are many controversial issues in the healthcare, and some of them seem so debatable that it is difficult to chose which side to support. One of such issues is the use of recycled heard devices – implantable cardioverter-defibrillators (ICDs) that were previously used by people who could afford them and changed them to a new model or died. These devices are still in good condition and have some battery life remaining. Scientists like Pavri, Hasan, Ghanbari, Feldman, Rivas, and others suggest that these ICDs can be reused by those patients who cannot pay for them.
The issue has caused many arguments. Federal regulators and ICDs manufacturers in the United States prohibit the practice of such a reuse; however, it is allowed in India, where very few people can afford defibrillators. The use of recycled ICDs can be regarded as inferior treatment to the poor. People who cannot pay for the expensive devices still deserve the healthcare of the highest quality as any wealthy person. For this reason, other means of providing healthcare to poor people should be found as it is unethical to make them feel humiliated or deprived of medical aid guaranteed to them by the Declaration of Human Rights. Harvard medical experts claim: flagship projects must remain free of the taint of the secondhand, in part by making it clear when devices can safely be reused.
These scientists also doubt the safety of ICDs reuse. Despite the fact that all devices are carefully transported and sterilized, there is still a danger of infection transmission. The experts, for instance, claimed that three people died because of stroke, heart failure, and myocardial infarction. Though it is not proved to be caused by recycled ICDs, there is no evidence about the relevance of the reused devices to these deaths. It can be presumed that the failure of the defibrillator did not prevent the problem. In general, their findings prove that the alternative reuse of ICDs is a comparatively riskless life-saving practice.
There is another side of the problem as well. It is obvious that human life is sacred; it is given to one person only once, so it should be protected and preserved by all means (humanlike, of course) possible. If there cannot be another way out found, secondhand ICDs should be applied to patients who cannot pay for their treatment. If the world is not able to supply underprivileged patients with free devices, richer countries can, at least, share what they do not need anymore. One may draw a parallel between recycled defibrillators and secondhand clothes. There is nothing shameful about wearing things that were used by another person. Many organizations supply children in poor countries with garments in a good condition that richer people do not wear anymore. For the same reason, reused defibrillators in a proper state can be implanted to those patients who cannot afford new devices and will not be able to survive without them. Underprivileged patients in some developing countries receive alternative treatment of drug therapy, which, in this case, can be regarded as inferior method. Apparently, if to consider the situation from this viewpoint, recycled heart devices should be used as they allow saving people’s lives.
The use of recycled implantable cardioverter-defibrillators is illegal and risky as they are classified as single-use devices. Moreover, despite the fact that the results of researches on the topic proved to be positive, there were cases when some people with recycled ICDs died because of stroke, heart failure, or myocardial infarction. It is unethical to break the law, but at the same time, person’s life is more important. If there is no other possibility to save a person, this method must be applied.
The article was prepared by the qualified qriter Betty Bilton from https://papers-land.com/3