Details
-
AboutI'm QA. Does this make my account illegal?
-
Skillspython
Joined devRant on 11/12/2017
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
-
Well here's how I see things going:
Intel and AMD ditch their assembly architectures for Scratch, because drag and drop is very popular lately.
The Boolean is renamed to the biggot by SJW leaders for only supporting binary views.
You must first ask consent to add an item to a linked list, because forcing two items together promotes rape culture.
Apple removes the "h" and "7" keys on all laptop models and gives no reason for their actions.
Linus Torvalds grows an extra middle finger, and it still isn't enough.
Nintendo makes Mario gay and Luigi black to be more inclusive.
LG makes a curved monitor that curves away from you rather than towards you. People buy it in confusion.
Everyone makes the same ad revenue on YouTube, and it is rebranded to OurTube. Luckily, they were able to keep the color scheme.
People finally realize that machine learning is just math, and stop using it everywhere. (Just kidding lol)
AMD and Gucci merge. Nobody understands why.22 -
I love how "shotgun debugging" works.
Let's say the microwave doesn't work. I put my burrito in it, press buttons. Nothing happens.
Any sane person would trace the possible cause: Check if it is plugged in, maybe the fuse is blown? Nah, we don't have time for this: Let's try shotgunning it!
- Turn the burrito upside down.
- Try aligning the burrito in different cardinal directions.
- Press random buttons
- Remove burrito wrapper
- Separate burrito into single components, sort them onto a plate in a nifty layout and try microwaving that.
- Remove each component of the sorted burrito plate and try microwaving the plate with less and less items.
- Try microwaving each separate item and then later reassembling them back into burrito to see if it gets heated after the act.
- Try putting a cat on top of the microwave.
- Pour water on cat
- Notice a strong reaction involving water and the cat.
- Try catching the cat for additional testing.
- Go to the hospital to get stitches on your open wounds.
Later write a bug report to the maintainer: "Microwave doesn't work. Tracked the issue down to the moisture level of the cat, additional testing needed."7 -
Wrote a script that calms the extreme use of exclamation/question marks and capslocked rants, do have to say, it makes it much easier to read many of the rants, it also adds small stats at the bottom of the rant
may sound like it takes the "fun" out of those rants, but it only triggers if the capslock is more than the lowercased letters
wish the devrant webapp was accessible from mobile, to use all them scripts on mobile too25 -
Hello {Project}, my old friend. I've come to debug you again
Because the scope is softly creeping
Left its seeds while I was developing
And the misery that was planted in my brain
Still remains
Within the sound of silence...
In restless dreams I debugged alone
Narrow file of cobbled code
‘Neath the halo of a desk lamp
I turned my collar to the cold and damp
When my eyes were stabbed by the flash of git checkin
That split the night
And touched the sound of silence
And in the naked light I saw
Ten thousand bugs and maybe more
People coding without asking
People coding without listening
People writing code that they never share
And no one dared
Disturb the sound of silence
Fools, said I, you do not know
{Project} like a cancer grows
Hear my words that I might teach you
Take my arms that I might reach you
But my words, like silent raindrops fell
And echoed in the wells of silence.
And the people bowed and prayed
To the kludgy app they made
And the sign flashed out its warning
In the words that it was forming
And the sign said, the words of the prophets are written on the subway walls
And tenement halls
And whispered in the sounds of silence15 -
Boot up/shut down(different os edition)
Windows:
......eh?....
......zzzz......z...eh?
......
.....
....hold up.....zzz
....eh? Oh right!....
......z.....ok ok I am here...what?
....z...zzzzzz
Mac OS:
........
.......
..eh?
...ok I am here wtf u want?
Linux (most distros)
....snores coke...what?I AM HERE LETS GO MOFOCKA
-----shut down
Windows:
Still eating glue...
....glue....glue....glue...
WINDOWS WILL UPDATE WHE...whst are you doing with that pillow shshuahahhaah..x___x
Mac OS
.....
..ok fuck u bye whatever
Linux (most distros)
Ok bye xoxoxo talk to you lateer
**dead**22 -
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 -
*Now that's what I call a Hacker*
MOTHER OF ALL AUTOMATIONS
This seems a long post. but you will definitely +1 the post after reading this.
xxx: OK, so, our build engineer has left for another company. The dude was literally living inside the terminal. You know, that type of a guy who loves Vim, creates diagrams in Dot and writes wiki-posts in Markdown... If something - anything - requires more than 90 seconds of his time, he writes a script to automate that.
xxx: So we're sitting here, looking through his, uhm, "legacy"
xxx: You're gonna love this
xxx: smack-my-bitch-up.sh - sends a text message "late at work" to his wife (apparently). Automatically picks reasons from an array of strings, randomly. Runs inside a cron-job. The job fires if there are active SSH-sessions on the server after 9pm with his login.
xxx: kumar-asshole.sh - scans the inbox for emails from "Kumar" (a DBA at our clients). Looks for keywords like "help", "trouble", "sorry" etc. If keywords are found - the script SSHes into the clients server and rolls back the staging database to the latest backup. Then sends a reply "no worries mate, be careful next time".
xxx: hangover.sh - another cron-job that is set to specific dates. Sends automated emails like "not feeling well/gonna work from home" etc. Adds a random "reason" from another predefined array of strings. Fires if there are no interactive sessions on the server at 8:45am.
xxx: (and the oscar goes to) fuckingcoffee.sh - this one waits exactly 17 seconds (!), then opens an SSH session to our coffee-machine (we had no frikin idea the coffee machine is on the network, runs linux and has SSHD up and running) and sends some weird gibberish to it. Looks binary. Turns out this thing starts brewing a mid-sized half-caf latte and waits another 24 (!) seconds before pouring it into a cup. The timing is exactly how long it takes to walk to the machine from the dudes desk.
xxx: holy sh*t I'm keeping those
Credit: http://bit.ly/1jcTuTT
The bash scripts weren't bogus, you can find his scripts on the this github URL:
https://github.com/narkoz/...53 -
Why did the chicken cross the road?
Assembler Chicken: First, it builds the road ......
C Chicken: It crosses the road without looking both ways.
C++ Chicken: The chicken wouldn't have to cross the road, you' d simply refer to him on the other side.
COBOL Chicken: 0001-CHICKEN-CROSSING.
IF NO-MORE-VEHICLES
THEN PERFORM 0010-CROSS-THE-ROAD
VARYING STEPS FROM 1 BY 1 UNTIL
ON-THE-OTHER-SIDE
ELSE
GO TO 0001-CHICKEN-CROSSING
Cray Chicken: Crosses faster than any other chicken, but if you don't dip it in liquid nitrogen first, it arrives on the other side frazzled.
Delphi Chicken: The chicken is dragged across the road and dropped on the other side.
Gopher Chicken: Tried to run but got beaten by the Web chicken.
Intel Pentium Chicken: The chicken crossed 4.9999978 times.
Iomega Chicken: The chicken should have ' backed up' before crossing.
Java Chicken: If your road needs to be crossed by a chicken, then the server will download one to the other side. (Of course, those are chicklets.) See also WMI Monitor.
Linux Chicken: Don't you *dare* try to cross the road the same way we do!
Mac Chicken: No reasonable chicken owner would want a chicken to cross the road, so there's no way to tell it how to cross the road.
Newton Chicken: Can't cluck, can't fly, and can't lay eggs, but you can carry it across the road in your pocket.
OOP Chicken: It doesn't need to cross the road, it just sends a message.
OS/2 Chicken: It crossed the road in style years ago, but it was so quiet that nobody noticed.
Microsoft's Chicken: It's already on both sides of the road. What's more its just bought the road.
Windows 95 Chicken: You see different coloured feathers while it crosses, but when you cook it still tastes like........ chicken.
Quantum Logic Chicken: The chicken is distributed probabilistically on all sides of the road until you observe it on the side of your choice.
VB Chicken: USHighways! <TheRoad.cross> (aChicken)
XP Chicken Jumps out onto the road, turns right, and just keeps on running.
The Longhorn Chicken had an identity crisis and is now calling itself Vista.
The Vista Chicken dazzled itself with its own graphics.20