Details
-
Aboutlol
-
Skillsjava
Joined devRant on 5/30/2016
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
-
Today, during the dev meeting I run, I was asked to "tone down" my language. The two obvious responses:
--language
Or my preferred method
Fuckthat++4 -
Haven't slept in the last 72 hours, eaten in 24 and shaved or showered in 48+ .. but it is such a delight to move the project to production an hour before the deadline and two hours later to receive an angry phone call from the client because there is 'horrible bug' in the web system - the logo of his company wasn't showing, only the name ... the moron never sent us a logo to begin with, only a MS word document with the company's information and a compressed 200x80 logo in the bottom ...12
-
Right, you pesky type initialization bug, I'm gonna find you. Hiding by throwing your exception in an external library won't help you. I'll download the sources, library by library, and look for you there too.
I *will* track you down, bastard, and exterminate you locally. Then, I'll make a pull request and kick your sorry ass off GitHub, off the internet and off the bloody surface of the earth. Oh, you have no idea how dead you're going to be when I'm done here!2 -
Yesterday: Senior dev messages out a screenshot of someone using an extension method I wrote (he didn’t know I wrote it)..
SeniorDev: “OMG…that has to be the stupidest thing I ever saw.”
Me: “Stupid? Why?”
SeniorDev: “Why are they having to check the value from the database to see if it’s DBNull and if it is, return null. The database value is already null. So stupid.”
Me: “DBNull is not null, it has a value. When you call the .ToString, it returns an empty string.”
SeniorDev: ”No it doesn’t, it returns null.”
<oh no he didn’t….the smack down begins>
Me: “Really? Are you sure?”
SeniorDev: “Yes! And if the developer bothered to write any unit tests, he would have known.”
Me: “Unit tests? Why do you assume there aren’t any unit tests? Did you look?”
<at this moment, couple other devs take off their head phones and turn around>
SeniorDev:”Well…uh…I just assumed there aren’t because this is an obvious use case. If there was a test, it would have failed.”
Me: “Well, let’s take a look..”
<open up the test project…navigate to the specific use case>
Me: “Yep, there it is. DBNull.Value.ToString does not return a Null value.”
SeniorDev: “Huh? Must be a new feature of C#. Anyway, if the developers wrote their code correctly, they wouldn’t have to use those extension methods. It’s a mess.”
<trying really hard not drop the F-Bomb or two>
Me: “Couple of years ago the DBAs changed the data access standard so any nullable values would always default to null. So no empty strings, zeros, negative values to indicate a non-value. Downside was now the developers couldn’t assume the value returned the expected data type. What they ended up writing was a lot of code to check the value if it was DBNull. Lots of variations of ‘if …’ , ternary operators, some creative lamda expressions, which led to unexpected behavior in the user interface. Developers blamed the DBAs, DBAs blamed the developers. Remember, Tom and DBA-Sam almost got into a fist fight over it.”
SeniorDev: “Oh…yea…but that’s a management problem, not a programming problem.”
Me: “Probably, but since the developers starting using the extension methods, bug tickets related to mis-matched data has nearly disappeared. When was the last time you saw DBA-Sam complain about the developers?”
SeniorDev: “I guess not for a while, but it’s still no excuse.”
Me: “Excuse? Excuse for what?”
<couple of awkward seconds of silence>
SeniorDev: “Hey, did you guys see the video of the guy punching the kangaroo? It’s hilarious…here, check this out.. ”
Pin shoulders the mat…1 2 3….I win.6 -
How to present your app/library more positively:
It's slow and bulky -> "It's feature-rich"
It hardly does anything -> "It's lightweight"
It has no comments -> "It's self-documenting"2 -
In the process of moving our web store to Shopify (yuck!) and we are first creating 150000 fake orders through the API so that as we import our real orders, the numbers match.
I'm disturbed by the fact there is no better way to achieve this and after speaking with support they said our best bet would be asking about it on the forums.1