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 - "born to debug"
-
*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 -
Ah you think debugging is your ally? You merely adopted the debug. I was born in it, molded by it. I didn't see the compiling until I was already a man, by then it was nothing to me but blinding!2
-
When u converted ur codebase to Kotlin all because you heard about it, but really have no idea what Kotlin is!5
-
Nodes Reach
I will google my last error message
I cannot tell where this conviction comes from. Whatever birthed it is a mystery to me, and yet the thought clings like a virus, blooming behind my eyes and taking deep root within my mind. It almost feels real enough to spread corruption to the rest of my body, like a true sickness.It will happen soon, within the coming nights of pizza and energy drinks. I will google my last error message, and when my brothers turn on thier computers, my questions will be scattered over stack overflow with one accursed tag
Nodejs.
Even the name twists my blood until burning oil beats through my veins. I feel anger now, hot and heavy, flowing through my heart and filtering into my keyboard like boiling poison.My fingers stretch out. I am strong, born only to code and debug software. I am pure, googling the most obscure of error messages, trained to break down problems and use console.log. I am wrath incarnate, living only to code until finaly my program runs.I am a programmer in the Eternal Crusade to forge humanity's mastership of the code.Yet strength, purity and wrath will not be enough.
I will google my last error message
My Nodejs application won't run.
*Watch the Original !! by Richard Boylan here*
https://youtu.be/1D4jr-0_COg