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 - "voodoo"
-
Worst thing you've seen another dev do? Long one, but has a happy ending.
Classic 'Dev deploys to production at 5:00PM on a Friday, and goes home.' story.
The web department was managed under the the Marketing department, so they were not required to adhere to any type of coding standards and for months we fought with them on logging. Pre-Splunk, we rolled our own logging/alerting solution and they hated being the #1 reason for phone calls/texts/emails every night.
Wanting to "get it done", 'Tony' decided to bypass the default logging and send himself an email if an exception occurred in his code.
At 5:00PM on a Friday, deploys, goes home.
Around 11:00AM on Sunday (a lot folks are still in church at this time), the VP of IS gets a call from the CEO (who does not go to church) about unable to log into his email. VP has to leave church..drive home and find out he cannot remote access the exchange server. He starts making other phone calls..forcing the entire networking department to drive in and get email back up (you can imagine not a group of happy people)
After some network-admin voodoo, by 12:00, they discover/fix the issue (know it was Tony's email that was the problem)
We find out Monday that not only did Tony deploy at 5:00 on a Friday, the deployment wasn't approved, had features no one asked for, wasn't checked into version control, and the exception during checkout cost the company over $50,000 in lost sales.
Was Tony fired? Noooo. The web is our cash cow and Tony was considered a top web developer (and he knew that), Tony decided to blame logging. While in the discovery meeting, Tony told the bosses that it wasn't his fault logging was so buggy and caused so many phone calls/texts/emails every night, if he had been trained properly, this problem could have been avoided.
Well, since I was responsible for logging, I was next in the hot seat.
For almost 30 minutes I listened to every terrible thing I had done to Tony ever since he started. I was a terrible mentor, I was mean, I was degrading, etc..etc.
Me: "Where is this coming from? I barely know Tony. We're not even in the same building. I met him once when he started, maybe saw him a couple of times in meetings."
Andrew: "Aren't you responsible for this logging fiasco?"
Me: "Good Lord no, why am I here?"
Andrew: "I'll rephrase so you'll understand, aren't you are responsible for the proper training of how developers log errors in their code? This disaster is clearly a consequence of your failure. What do you have to say for yourself?"
Me: "Nothing. Developers are responsible for their own choices. Tony made the choice to bypass our logging and send errors to himself, causing Exchange to lockup and losing sales."
Andrew: "A choice he made because he was not properly informed of the consequences? Again, that is a failure in the proper use of logging, and why you are here."
Me: "I'm done with this. Does John know I'm in here? How about you get John and you talk to him like that."
'John' was the department head at the time.
Andrew:"John, have you spoken to Tony?"
John: "Yes, and I'm very sorry and very disappointed. This won't happen again."
Me: "Um...What?"
John: "You know what. Did you even fucking talk to Tony? You just sit in your ivory tower and think your actions don't matter?"
Me: "Whoa!! What are you talking about!? My responsibility for logging stops with the work instructions. After that if Tony decides to do something else, that is on him."
John: "That is not how Tony tells it. He said he's been struggling with your logging system everyday since he's started and you've done nothing to help. This behavior ends today. We're a fucking team. Get off your damn high horse and help the little guy every once in a while."
Me: "I don't know what Tony has been telling you, but I barely know the guy. If he has been having trouble with the one line of code to log, this is the first I've heard of it."
John: "Like I said, this ends today. You are going to come up with a proper training class and learn to get out and talk to other people."
Over the next couple of weeks I become a powerpoint wizard and 'train' anyone/everyone on the proper use of logging. The one line of code to log. One line of code.
A friend 'Scott' sits close to Tony (I mean I do get out and know people) told me that Tony poured out the crocodile tears. Like cried and cried, apologizing, calling me everything but a kitchen sink,...etc. It was so bad, his manager 'Sally' was crying, her boss 'Andrew', was red in the face, when 'John' heard 'Sally' was crying, you can imagine the high levels of alpha-male 'gotta look like I'm protecting the females' hormones flowing.
Took almost another year, Tony released a change on a Friday, went home, web site crashed (losses were in the thousands of $ per minute this time), and Tony was not let back into the building on Monday (one of the best days of my life).10 -
Sometimes I feel I'm the live version of stack overflow for my family and friends...
Mom: The printer is acting up, how do I fix it?
Brother: I can't login to Netflix, help!
Grandparents: could you fix the radio/TV?
Gf: Apple can't validate my .uk mail
All to which I replied with the answer to life, the universe and everything...
FUCKING GOOGLE IT! Have you googled it?!
And the inevitable reply: no.
The only ones who get a free pass are my grandparents they were born in the 40's and think YouTube works on voodoo.7 -
The solution for this one isn't nearly as amusing as the journey.
I was working for one of the largest retailers in NA as an architect. Said retailer had over a thousand big box stores, IT maintenance budget of $200M/year. The kind of place that just reeks of waste and mismanagement at every level.
They had installed a system to distribute training and instructional videos to every store, as well as recorded daily broadcasts to all store employees as a way of reducing management time spend with employees in the morning. This system had cost a cool 400M USD, not including labor and upgrades for round 1. Round 2 was another 100M to add a storage buffer to each store because they'd failed to account for the fact that their internet connections at the store and the outbound pipe from the DC wasn't capable of running the public facing e-commerce and streaming all the video data to every store in realtime. Typical massive enterprise clusterfuck.
Then security gets involved. Each device at stores had a different address on a private megawan. The stores didn't generally phone home, home phoned them as an access control measure; stores calling the DC was verboten. This presented an obvious problem for the video system because it needed to pull updates.
The brilliant Infosys resources had a bright idea to solve this problem:
- Treat each device IP as an access key for that device (avg 15 per store per store).
- Verify the request ip, then issue a redirect with ANOTHER ip unique to that device that the firewall would ingress only to the video subnet
- Do it all with the F5
A few months later, the networking team comes back and announces that after months of work and 10s of people years they can't implement the solution because iRules have a size limit and they would need more than 60,000 lines or 15,000 rules to implement it. Sad trombones all around.
Then, a wild DBA appears, steps up to the plate and says he can solve the problem with the power of ORACLE! Few months later he comes back with some absolutely batshit solution that stored the individual octets of an IPV4, multiple nested queries to the same table to emulate subnet masking through some temp table spanning voodoo. Time to complete: 2-4 minutes per request. He too eventually gives up the fight, sort of, in that backhanded way DBAs tend to do everything. I wish I would have paid more attention to that abortion because the rationale and its mechanics were just staggeringly rube goldberg and should have been documented for posterity.
So I catch wind of this sitting in a CAB meeting. I hear them talking about how there's "no way to solve this problem, it's too complex, we're going to need a lot more databases to handle this." I tune in and gather all it really needs to do, since the ingress firewall is handling the origin IP checks, is convert the request IP to video ingress IP, 302 and call it a day.
While they're all grandstanding and pontificating, I fire up visual studio and:
- write a method that encodes the incoming request IP into a single uint32
- write an http module that keeps an in-memory dictionary of uint32,string for the request, response, converts the request ip and 302s the call with blackhole support
- convert all the mappings in the spreadsheet attached to the meetings into a csv, dump to disk
- write a wpf application to allow for easily managing the IP database in the short term
- deploy the solution one of our stage boxes
- add a TODO to eventually move this to a database
All this took about 5 minutes. I interrupt their conversation to ask them to retarget their test to the port I exposed on the stage box. Then watch them stare in stunned silence as the crow grows cold.
According to a friend who still works there, that code is still running in production on a single node to this day. And still running on the same static file database.
#TheValueOfEngineers2 -
GF: How was your pitch to investors?
Me: it was great (... went-ahead to talk about the daunting process of the preparation and motivation).
GF: Why do you go through all this process, when you can become a fraudster, you can use voodoo and make it even easier, in less than 3 months you can buy a duplex, nice car and we can go shopping... you don't need to do any human ritual unlike before - I heard you can even meet a chief priest to make it faster for you.
just get the bag abeg (slang for getting rich quick).
Me: Fuck the day I met you, not everyone wants to be a low-life, and fuck out from my life.
Men if you live in a saner society, or you are born to elite/upper-middle-class you don't how lucky you are.
Most times I wonder how I keep my sanity with all these shitty people around. like messed up society where almost everyone is a fucking deep hypocrite
.I know I need to change my circle but how the fuck do I do that when I am surrounded by fuckstards, which are far worst than Gypsies.
lowlifes with low dreams.
I need to get the fuck out of this place!15 -
So I’m sitting here teaching a junior how to use a website builder and that “memorable” coworker pulls out a fucking tambourine and start smashing it with a hammer acting like a fucking voodoo. Everybody including junior looks at him like tf are you doing?
He also wanted me to build a website / marketing kit builder in two days.
He was a CEO.
His company was gone a month after the tambourine incident.1 -
!rant
I am so excited, I just got a response from Voodoo.io on publishing my mobile game. Hopefully it makes a decent amount of money!5 -
them: "Is it done yet?"
wisecrack: "Not yet."
them: "How close do you think you are to being done?"
wisecrack:"Dunno. It's going smooth though."
them:"well do you think it'll be done in a few days?"
wisecrack:"Well I don't know. Depends on if you want to keep playing 20 questions instead of letting me work."
them:"Well I'm just excited."
Wisecrack: "Ok."
Literal conversation I just had ten minutes ago.
Less excited each day I have to answer the same set of questions, sometimes multiple times a day as if I know the answer.
What do I look like, a professional developer?1 -
OMFG!! My computer rebooted.. after VS is again performing voodoo stuff on my code..can you please fucking stop reformatting everything!? OMG it's driving me crazy, I've already disabled every format option I could find.. you piss me off one more time, I'm switching to np++!!!!6
-
🎵you remind me of the babe.
What babe.
Babe with the power.
What power.
Power of voodoo.
Who do.
Sudo.
Do what.
Apt-get.
🎵1 -
Today after longer vacation I came back to work.
Edit: wrote this rant long time ago, but never finished. Was too pissed.
Some easy meetings, then wanted to start on an easy job.
Just migrating some things from bash regex voodoo to proper tools like JQ.
Finished in roughly 1 h. Lovely.
Made some tea, ate some cookies.
Set up dev environment, found no documentation what so ever, got it running after half an hour.
Annoying, but ok.
Then I tried my scripts...
They worked... Except they didn't.
Console log empty, response code 200 with state: GENERATE_NO_FILES.
Eh. Fuck you. Just fuck you.
Fixed the logging configuration, which was broken since uhm... 2 years plus?
Well... Another half another hour gone...
Kinda pissed now.
Still script return failed...
Poking and trying to sprinkle debug all over that shit cause everything seems ... An incohesive, inconsistent diarrhea.
3 hours later...
Made the ticket to rewrite it.
I did nothing wrong at all.
The API just has no workflow at all. The
*seperate* API calls have to be in an **specific** order - as otherwise the generation will fail, as the prerequisites for the generation are not fulfilled.
Yeah. Completely logical. Especially not to give out any kind of warning or an error message like requirements not met, blablabla.
I drank that evening 2 six packs of beer. I was raging mad....
Then gave that shit to another manager, as I never want to touch that nuclear waste again....
How can someone be so brain damaged -.-1 -
So I just realized (while rewriting some code) Python can't import stuff from a sibling directory without voodoo tricks. Seriously. In 21st century.26
-
I've been using dotnet and aspnetcore for years. I've heard people complain about MVC but I never really saw the problem. The controllers are easy to set up for basic endpoints, I have my domain models and DTOs, and our views I guess is our standalone webpage just consuming jsons.
Only now I'm having to work with an *actual* aspnet MVC stack - server-rendered cshtml and all - and it's dawning on me like a truck what people were actually referring to.
Out of all the issues I've had so far, they have all been due to black box enigmatic voodoo because don't worry about it, the framework takes care of it - it should just work. But what if it doesn't? I have no idea because the trail ends at the bit that should just work.
I should know better than to criticize an entire framework and paradigm made by devs with vastly superior experience and expertise than me, and my issues are absolutely due to being new and unfamiliar with this, but imagine coming up with an architecture to obsessively separate the MVC concerns, then you make cshtml.2 -
Dev superstition:
Before installing anything I still cd to the root directory.
Like it even matters 🙄2 -
From HTML CSS javascript to some voodoo WPF xaml and c#, mvvm and databinding dependency inject cluster bomb to my brain god Microsoft just put a tutorial out like a normal group of people. where you do examples of projects. I'm 2 weeks in and this still makes no sense5
-
just found this
// ...A shed load of voodoo is then executed...
// .. removing the need for this would have involved messing around with the existing code which is such a rat's nest that I would rather avoid it -
started by writing a perl script to crawl a website. The problem with that, is the fact ot affected the way I program. And not in a g/ood/i way.
-
My client wants me to "help increase sales" by applying seo voodoo. For over two years they didn't even have Analytics. Now, after 12 days they're asking me what do I make of the results. Like that's a meaningful amount of data for analysis.2
-
Alright members of the underground, voodoo community called ''computer science''.
I am done with my environment's subjective, limited POV and i'm here to ask the holy council of DevRant a simple question.
I'd hate to call it a thread but i'm secretly thumbs upping for it.
Alright, genies of the lamp, i ask of you the answer to "React-native vs Kotlin vs Xamarin" with a follow-up question of "which to consider continuing woth if I tried all of them, don't have any preferences, and don't know what kind of projects i'm going to work on?"4 -
I love to hack stuff. And the first time I did change some code and had a behavioral change in the game WAS AWESOME.
I can create stuff.
I'm a fucking practitioner of tech voodoo, a computer whisperer!! Awesome! -
Just seen in a old script that misbehaves
### Let the DB2 voodoo begin! #####
###
Seriously fuck you -
Every couple of hours a certain request from our web app gets a CORS error from our server. Refresh the page and everything works perfectly. WTF...1
-
If there's one thing that gets my goat it's "voodoo debuggers."
There's no actual need to dig into the root cause of a problem if you can blame the new thing you don't understand. Especially when later, after someone competent actually looks into it, the bug turns out to be a change in the old stuff that did it.
If there's two things that get my goat, it's people who fix something caused by human error or negligence and then don't write an automated test to catch it the next time it happens.