- cross-posted to:
- programmer_humor@programming.dev
- cross-posted to:
- programmer_humor@programming.dev
Yall don’t use the consumers as the test. It saves 60% of upfront costs!
Remember to buy “Aunty’s Cleo It’s Better than nature!”
That’s why we have 4 environments, development, test, pre-production and production.
Test only on dev hardware because production hardware is too expensive to waste on developers. No idea why the software runs better on dev hardware than production. They’re kind of similar.
Testing is a sign of weakness.
I’ve definitely had the experience of something being broken in Prod… and no one can reproduce it in Dev.
Guess where we are fixing it!?
Reminds me of this old aeronautical joke. Context is a plane maintenance log.
Plane grounded, airspeed indicator inaccurate above 500 kts. (Signature of the pilot)
Plane airworthy, could not reproduce issue on the ground. (Signature of mechanic)
As a data engineer, testing with production loads is critical to performance checking, as well as finding edge cases where your assumptions about what can be expected in the data are curb stomped and send you back to the drawing board to cry and think about what you’ve done.
And then managers that don’t get this will try to shove policies down our throats about how “pre-prod systems should not have access to prod data”.
“just obfuscate it.” Sure, for all 300Tb of it from the 10 different sources that don’t really talk to each other and we were already doing magic to be able to join them together? They should give us a bottle of hard liquor per month/project.
As one of the devops/sysadmin types, if we give access to prod data to preprod systems, they are now in audit scope and you have to harden them or we lose our insurance and compliance certs.
Obviously the solution is to build some system where everything works out, but it’s not as easy as “just give root to devs”.
You misspelled gallon(s).
Yeah we finally set up a workflow where we get production data available in a staging environment. This has saved a lot of trouble via “well it worked on my local where there were 100 records, but prod has 1037492 and it does not”
I once tanked a production service by assuming it could handle at least as much load as my laptop on residential sub-gigabit Internet could produce.
I was wrong by at least an order of magnitude.
Same. Early on as a new dev, I failed to performance check my script (as did my qa tester) before it was released to production, and that was my first roll back ever. It was very unoptimized and incredibly slow under one of our highest density data streams. Felt like an idiot that I was good with it’s 1-2 second execution time in the dev environment.
I deal with this constantly. Profilers are your friend. I keep begging my team to use the database dumps from production to test with, but nope. Don’t feel bad about messing up though. The amount of fuck ups I deal with in prod is exasperating. At least most of the things I break is a quick 5 minute fix and not weeks of rework.
The hardest thing I have explaining to the team is the concept of time. Once you have done controls programming and get to witness how much happens in 50-100ms, it sinks in. Your thing takes 500ms? 1 second? They think this is acceptable on something that is dealing with less than 100 database records. 😭
I learned about this in my first internship, bless the senior Dev that showed be proper ways to build actual SQL
17 years working with hospital patient data. I’m going to curl up in a corner and cry now…
dev teams usually :
What’s the worst that could happen,people won’t die
this guy :
17 years working with hospital patient data
must be high pressure work.
You test in dev? You mean you don’t have a Q&A environment? or staging?
I test my own code/scripts in dev when I’m working on it. QA usually tests acceptance criteria in test environment. And then staging is used for production data testing for performance and identifying missed edge cases. Actually, we sometimes use dev and test interchangeably when multiple people are working on the same repo, so the lines are a little blurrier than that.
Heh, loads.
A coworker once got an HR talking-to for printing this meme out and leaving it on all the dev’s desks.
Regardless of the meme, it’s just weird behaviour to print off a meme, in presumably tens of copies, and leave it on every desk. Don’t you have a group chat?
That’s why it helps to have a staging environment as well.
Jeez bud just laugh at the meme for fucks sake
“as above, so below”
If your test and prod are different, you need to ensure your manager understands the risks you will not magically account for. It’s on their head when it fucks up.
Testing in prod requires its own separate indemnification because that’s also only ever after direct orders.
I have three setups DEV: an environment that is almost useless thanks to how many changes have to be made between production and the development environment.
TEST: A More useful exact cloan of production that you still have to edit specific things but it is usually the same each time.
PROD: this one just never works right.
Both.
I prefer camel case