Details
-
AboutHigh on life
-
SkillsI use glitter and puffy clouds...
-
Locationover the rainbow
Joined devRant on 2/14/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
-
Testivus On Test Coverage
Early one morning, a programmer asked the great master:
“I am ready to write some unit tests. What code coverage should I aim for?”
The great master replied:
“Don’t worry about coverage, just write some good tests.”
The programmer smiled, bowed, and left.
...
Later that day, a second programmer asked the same question.
The great master pointed at a pot of boiling water and said:
“How many grains of rice should I put in that pot?”
The programmer, looking puzzled, replied:
“How can I possibly tell you? It depends on how many people you need to feed, how hungry they are, what other food you are serving, how much rice you have available, and so on.”
“Exactly,” said the great master.
The second programmer smiled, bowed, and left.
...
Toward the end of the day, a third programmer came and asked the same question about code coverage.
“Eighty percent and no less!” Replied the master in a stern voice, pounding his fist on the table.
The third programmer smiled, bowed, and left.
...
After this last reply, a young apprentice approached the great master:
“Great master, today I overheard you answer the same question about code coverage with three different answers. Why?”
The great master stood up from his chair:
“Come get some fresh tea with me and let’s talk about it.”
After they filled their cups with smoking hot green tea, the great master began to answer:
“The first programmer is new and just getting started with testing. Right now he has a lot of code and no tests. He has a long way to go; focusing on code coverage at this time would be depressing and quite useless. He’s better off just getting used to writing and running some tests. He can worry about coverage later.”
“The second programmer, on the other hand, is quite experience both at programming and testing. When I replied by asking her how many grains of rice I should put in a pot, I helped her realize that the amount of testing necessary depends on a number of factors, and she knows those factors better than I do – it’s her code after all. There is no single, simple, answer, and she’s smart enough to handle the truth and work with that.”
“I see,” said the young apprentice, “but if there is no single simple answer, then why did you answer the third programmer ‘Eighty percent and no less’?”
The great master laughed so hard and loud that his belly, evidence that he drank more than just green tea, flopped up and down.
“The third programmer wants only simple answers – even when there are no simple answers … and then does not follow them anyway.”
The young apprentice and the grizzled great master finished drinking their tea in contemplative silence.
Found on stack overflow https://stackoverflow.com/questions...8 -
My 80 year old very absent minded dad made a website, all by himself, using a two decades old book he got from the thrift store.
He's even hosting it himself on an old laptop running Debian, including a redirect to a beautiful nostalgic /~username/index.htm url (not gonna share the link, because his personal details are on there).
The whole site is incredibly carefully crafted, and I'm super proud of him.
Who cares if it's not a React app? The 14 kilobytes of HTML 4.0 markup load in 20-30ms, and it renders pretty much perfectly in every browser including Internet Explorer 4 and Edge.
🤷♂❤️36 -
My coding-senpai placed this PHP code (before he left) to my org's custom-footer due to a feud that happened months ago
it flooded their cPanel with folders with '.log' as their extension everytime someone visits their website
I LOL'D UNTIL
..They hired me to clean it up :^(
They got over 700,000 of these folders
#feelsbadman14 -
Helpful tip to all you freelancers or those with the authority:
Never let a client dictate anything in how you do your job, no matter how simple.
Even if they ask you to make yourself available at a specific time, don't. Instead, tell them times you have available so they have to work with you.
If you give a client an inch, they will always take a mile.3 -
Client: Can you provide some kind of guaranteed timeline that you're going to be able to move our website to our new servers with the optimizations implemented? I know you said it should take a week, but we have 3 weeks to get this moved over and we cannot afford to be double billed. I'm waiting to fire up the new server until you can confirm.
Me: As I said, it SHOULD take about a week, but that's factoring in ONLY the modifications being made for optimization and a QA call to review the website. This does not account for your hosting provider needing to spin up a new server.
We also never offered to move your website over to said new server. I sent detailed instructions for your provider to move a copy of the entire website over and have it configured and ready to point your domain over to, in order to save time and money since your provider won't give us the access necessary to perform a server-to-server transfer. If you are implying that I need to move the website over myself, you will be billed for that migration, however long it takes.
Client: So you're telling me that we paid $950 for 10 hours of work and that DOESN'T include making the changes live?
Me: Why would you think that the 10 hours that we're logged for the process of optimizing your website include additional time that has not been measured? When you build out a custom product for a customer, do you eat the shipping charges to deliver it? That is a rhetorical question of course, because I know you charge for shipping as well. My point is that we charge for delivery just as you do, because it requires our time and manpower.
All of this could have been avoided, but you are the one that enforced the strict requirement that we cannot take the website down for even 1 hour during off-peak times to incorporate the changes we made on our testbed, so we're having to go through this circus in order to deliver the work we performed.
I'm not going to give you a guarantee of any kind because there are too many factors that are not within our control, and we're not going to trap ourselves so you have a scapegoat to throw under the bus if your boss looks to you for accountability. I will reiterate that we estimate it would take about a week to implement, test and run through a full QA together, as we have other clients within our queue and our time must be appropriately blocked out each day. However, the longer you take to pull the trigger on this new server, the longer it will take on my end to get the work scheduled within the queue.
Client: If we get double billed, we're taking that out of what we have remaining to pay you.
Me: On the subject of paying us, you signed a contract acknowledging that you would pay us the remaining 50% after you approved the changes, which you did last week, in order for us to deliver the project. Thank you for the reminder that your remaining balance has not yet been paid. I'll have our CFO resend the invoice for you to remit payment before we proceed any further.
---
I love it when clients give me shit. I just give it right back.6 -
*wrestling commentator voice*
"In this weeks episode of encoding hell:
The iiiinnnfamous UTF-8 Byte Order Mark veeeersus PHP!"
For an online shop we developed, there is currently a CSV upload feature in review by our client. Before we developed this feature, we created together with the client a very precise specification, including the file format and encoding (UTF-8).
After the first test day, the client informed us, that there were invalid characters after processing the uploaded file.
We checked the code and compared the customer's file with our template.
The file was encoded in ISO-8859-1 and NOT as specified UTF-8.
But what ever, we had to add an encoding check, thus allowing both encodings from now on.
Well well well welly welly fucking well...
Test day 2: We receive an email from said client, that the CSV is not working, again.
This time: UTF-8 encoding, but some fields had more colums with different values than specified.
Fucking hell.
We tell the customer that.
(I was about to write a nice death threat novel to them, but my boss held me back)
Testing day 3, today:
"The uploading feature is not working with our file, please fix it."
I tried to debug it, but only got misleading errors. After about 30 minutes, at 20 stacks of hatered, I finally had an idea to check the file in a hex editor:
God fucking what!?!!?!11?!1!!!?2!!
The encoding was valid UTF-8, all columns and fields were correct, but this time the file contained somthing different.
Something the world does not need.
Something nearly as wasteful as driving a monster truck in first gear from NYC to LA.
It was the UTF-8 Byte Order Mark.
3 bytes of pure hell.
Fucking 0xEFBBBF.
The archenemy of PHP and sane people.
If the devil had sex with the ethernet port of a rusty Mac OS X Server, then 9 microseconds later a UTF-8 BOM would have been born.
OK, maybe if PHP would actually cope with these bytes of death without crashing, that would be great.3 -
Got call from extremely angry customer, our product is shit and doesn't work. At all. Important customer so I went to visit.
He had the perfect setup, our product to the left, our competitor's to the right.
He connected the Ethernet cable to their product, it worked. He plugged it out and connected to ours... Nothing. Shit.
I started to debug on the premises, took logs, everything. It seemed like our product didn't receive any data at all. What the fuck? Tried everything, debugged low level, still nothing. Sweating as hell.
After two hours I got a strange feeling. So I swapped place, our product to the right, competitor's to the left. Now OUR product worked, competitor's zilch.
THE FUCKING ETHERNET CABLE HAD A GLITCH. IF YOU BENT IT TO THE RIGHT IT WORKED, IF YOU BENT IT TO THE LEFT IT WAS BROKEN.
I had never seen a customer be this embarrassed in my life. He apologized to me, my boss, his boss, the Queen, everyone.
We got the contract.20 -
Windows: Would you like me to give all your data to MS or somewhat less data?
Me: Well .. I guess .. I'll choose the Basic option..
Windows: Here is a fun fact .. I'll send all the data regardless of your choice :)
This is what's happening in the background, I think. I mean there isn't even a phuqing option to turn this thing off.19 -
Sometimes you wish life was like computer, so every time some fuck happens you can just fix it or reinstall it5
-
I finally put the "blurred background system" on GitHub.
I simply called it BackBlur.js and I made it to don't require jQuery or any other libraries.
It's now on my new GitHub account: https://github.com/Norech/...
If you don't know what I'm talking about: https://devrant.io/rants/888497
If you want to help me to add more supported platforms, feel free. 😀15 -
Backstory: A few months ago, I wrote an inventory management web app for internal use by the sales team, logistics, and whoever else might need to use it.
Earlier this week: A few minutes before I usually leave, my phone rings. It's some dude I've never heard of. No idea what his function at the company is, still don't, probably never will, don't care. He's never used the app before, and says he's having problems. His cube's on my way out, so I swing by.
I'm not making this next part up. This dude is probably 60 years old, and he's using a very old looking gateway desktop (with the cow print logo thing on the chassis), running Windows XP (not a typo), using IE7.
I don't know what to say, so I just stare at the desktop, look at dude, laugh, and eventually explain that he's never going to be able to use the system via the web app until his rig is replaced.
What the fucking fuck is this. How could this have happened. How do our it people still fucking have jobs. Better question, how did this thing survive the y2k bug?rant this isn't a museum edge case ffffffuuuuuuuuuuuucccccckkkkk evil sorcery 1999 wants its shit back9 -
Today at work, still laugh thinking back to it!
We were on lunch break but the linux support engineers who are on the phones as well have to pick up calls anyways (very small team).
*engineer walks to the table, sits down: Ahhh rest, finally!*
*tringggggggggg*
*engineer pulls a face like 'oh for fucks sake' and walks back to his desk*
*puts headphones on and clicks the answer button just as it disappears*
"really!?! Alright lets finally eat now"
*sits for literally one second*
*tringgggggggggg*
*Engineer seems quite pissed off now. walks to his desk again, puts on headset, clicks the answer button JUST as the call stops again*
"Mother of god, fucking really?"
*stays as his desk for a minute or so, walks back, stays hovering above his chair for a little and finally sits down again*
"Finall......"
*TRINGGGGGGGGGGGG*
"MOTHERFUCKER. THESE GUYS TIME IT OR SOMETHING!?!?"
*walks back to his desk very frustrated this time*
*puts on headphones very quickly and presses the answer button*
*answer works but the call is literally dropped the second he starts it (it was a real client)*
"OH FOR FUCKS FUCKING FUCKING FUCKING SAKE FUUUUUUUUUUUUUUUUUUUUUUCK"
*walks back to table again and sits down. Takes sandwich and....*
*TRINGGGGGGGGGG MOTHERFUCKER*
"FUCKING COCKSUKING MOTHERFUCKING PIECES OF WHAT THE FUCKING FUCK EVER"
*gives a deadly look to another engineer: "I am NOT going to take it this time! En-fucking-joy."*
We laughed so hard xD15 -
I am working with a team that's producing tons of new services..
And me being a fresher, reading new designs every other day with God knows complex implementations and business requirements and attending design review meetings(where I can barely understand anything)
having a great learning curve..
Hopefully, I survive this period and cope up with the inputs...
Note: Just don't ask what's my contribution.. I am gearing up for the D-Day to make my impact(not a negative one).. 😎 -
Dear people who complain about spending a whole night to find a tiny syntax error; Every time I read one of your rants, I feel like a part of me dies.
As a developer, your job is to create elegant optimized rivers of data, to puzzle with interesting algorithmic problems, to craft beautiful mappings from user input to computer storage and back.
You should strive to write code like a Michelangelo, not like a house painter.
You're arguing about indentation or getting annoyed by a project with braces on the same line as the method name. You're struggling with semicolons, misplaced braces or wrongly spelled keywords.
You're bitching about the medium of your paint, about the hardness of the marble -- when you should be lamenting the absence of your muse or the struggle to capture the essence of elegance in your work.
In other words:
Fix your fucking mindset, and fix your fucking tools. Don't fucking rant about your tabs and spaces. Stop fucking screaming how your bloated swiss-army-knife text editor is soooo much better than a purpose-built IDE, if it fails to draw something red and obnoxious around your fuck ups.
Thanks.62 -
IF PROGRAMMING LANGUAGES WERE DRUGS:
JavaScript = Methamphetamine:
Anyone can cook some up at home but only pros can make the good stuff without blowing everything up.
Under the influence it tries to do everything at once, in seemingly no specific order before running off and making plenty of promises - but you have no clue if it kept any until it returns.
C = Heroin:
It takes some prep before you can take a hit but when you do it's far more potent than expected. When prepped (compiled) correctly it will induce complete and utter ecstasy but any error or abuse may kill you, leave you on the floor, in a coma or wishing you were dead.
HTML = Paracetamol(Panado):
Some don't think it's a real drug and others do. Either way you should grow a pair and try something a little more hardcore.
--------------------------------------
I came up with these after I randomly explained asynchronous js to a junior as synchronous code on meth. These were just off the top of my head, please feel free to correct or expand on them :-)25 -
An entirely typical exchange at work:
PM: How long would it take to build an application that collates Gubblefluffs and exports them as a PDF?
ME: Hard to say. What’s a Gubblefluff?
PM: Nothing complex. Its basically an object with some stuff in.
ME: Erm, okay. So I’ll define a Gubblefluff object plus methods to add edit and delete, then for each Gubblefluff have it write a line to a PDF.
PM: It will need to email that PDF to somebody.
ME: Okay, cool. “Gubblefluffs-by-email” should take about a day.
6 hours later…
ME: I’ve done Gubblefluffs-to-pdf, I’m not clear on what’s in a Gubblefluff but I’ve made it flexible so it can take almost anything.
PM: No, a Gubblefluff can ONLY be one of 4 Snigglefingers plus a timestamp and some JSON.
ME: What? Right. Okay. What’s a Snigglefinger?
PM: (sighs) A Snigglefinger is the collection of relevant Babelsets.
ME: Babelsets?
PM: Yeah, a user can have any number of Babelsets but they must correspond to one of the four types of Snigglefingers.
ME: There are users!?
PM: Of course!
ME: But I’ve not coded anything for users.
PM: Shit. I’ve told the client they can have it today. How long to add in users?
ME: And Babelsets, and Snigglefingers and the new Gubblefluff rules?
PM: Yeah.
6 days later…
ME: This is done now. It’s a beast but it works. Who should it email the PDFs to?
PM: Client X, plus cc to Y and bcc to Z.
ME: What? It doesn't support CC and BCC!
1 hour later…
ME: This is done. I’ve tested it and sent you a copy of the PDF it generates.
PM: Okay thanks. Is the cron running daily?
ME: What cron?
…
ME: Okay, so the cron’s running once a day at 8pm.
PM: Oh, it’ll need to be at 3:15pm. That’s when we’ve told the client they’ll get it.
ME: Right. I’ll change it...
PM: Also, the PDF you sent me looks nothing like the visual.
ME: What visual?
...53 -
Yo, his palms are sweaty
knees weak, conscience heavy
There's commits on master already:
Your mom's spaghetti code19 -
Oke so this just happened...
Spent 30 minutes figuring out why the f**k a div was vertically centered within another one.
Apparently margin:auto within a display: flex not only centers horizontally but also vertically.
I remember the days when i spent hours vertically centering sh*t. What universe are we in?12 -
What's a good website to get tech news and help me stay up to date? I'm interning for a company and most times I get lost when they start discussing new tech I've never even heard about.9
-
Motherfucking WordPress coupled with motherfucking sales people.
If you promise the client something, please fucking relay it via the correct process (i.e the fucking ticketing system that took me a month to write for the company - it's seriously just a click away on your desktop.). "I told your boss" is not a fucking apt excuse.
My boss forgets, and well, doesn't give a fuck about procedure either.
Now you phone my boss and he phones me, on a fucking Sunday evening, telling me that the client was promised a website by tomorrow morning at 10AM. You tell me this at fucking 9PM.
Why didn't you tell me earlier? How the fuck am I supposed to shit out something I would be proud of in a few hours? Nevermind me fucking up my sleeping routine; how the fuck?
Conversation went like this:
"xyz was promised this site by sales person fuckTwit, I need this live by Monday morning. I have sent you a few images. Make it in WordPress, client says they want a 'tangy looking theme'.
Me: it's a bit unrealistic requesting this, is there no way we can extend the time so I have time to create this?
Also, what do you mean by 'tangy'?
Boss: don't know. Make it happen. No excuses.
What the fuck is a tangy theme? When I become a webDev at the company? More importantly, fucking WordPress?!
Now I'm sitting on this shit, tired as a manatee in mating season, and using goddamn WordPress.
I have to halt my irritation, because I get severely irritated when I'm tired, I have to restrain myself from telling the involved parties tomorrow to install the FuckYourself WordPress plugin, coupled with a resignation letter.
Same sales person got me in shit a while ago, because I refused to give him access to the network to download fucking cartoons. Sales director went and moaned that his bitch (the sales person) needs this for a presentation. Yeah fucking right.
Go Snorkelling in a sewer truck you egotistic, megalomaniacal, indecent, outrageous, horrible motherfucker of a person.
Time to develop a fucking website with, oh, a company profile pamphlet.
Times like this I keep telling myself, "my time will come, my time will come".14 -
I can’t even say what’s wrong with PHP, because— okay. Imagine you have uh, a toolbox. A set of tools. Looks okay, standard stuff in there.
You pull out a screwdriver, and you see it’s one of those weird tri-headed things. Okay, well, that’s not very useful to you, but you guess it comes in handy sometimes.
You pull out the hammer, but to your dismay, it has the claw part on both sides. Still serviceable though, I mean, you can hit nails with the middle of the head holding it sideways.
You pull out the pliers, but they don’t have those serrated surfaces; it’s flat and smooth. That’s less useful, but it still turns bolts well enough, so whatever.
And on you go. Everything in the box is kind of weird and quirky, but maybe not enough to make it completely worthless. And there’s no clear problem with the set as a whole; it still has all the tools.
Now imagine you meet millions of carpenters using this toolbox who tell you “well hey what’s the problem with these tools? They’re all I’ve ever used and they work fine!” And the carpenters show you the houses they’ve built, where every room is a pentagon and the roof is upside-down. And you knock on the front door and it just collapses inwards and they all yell at you for breaking their door.
That’s what’s wrong with PHP.6 -
For my Thesis
Hello devs on the internet,
I’m currently collecting data for my thesis. As my thesis is about freelancers I was hoping to interview a couple of people here who used to have a regular job and transitioned to freelancing. Interviews will be over email so it hopefully won’t take up a lot of time.
As for people who wouldn’t be available for interviews, could you help me out by answering a survey? 😁
For interviews could you email me at uzair.hayat@benilde.edu.ph
For surveys you can fill it out here https://goo.gl/forms/...
This message has not been approved by Dfox and I hope it won’t be removed haha2