Ranter
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
Comments
-
The fun thing is.
It's essentially what made C / C++ a nightmare.
I remember the pain of C programmers that had to deal with an "include guard whore"...
I supported at that time a lot of packaging in FOSS. And when you read certain bug entries, it became pretty much evident why packaging can be one hell of a nutjob.
It breaks.... But only if I apply the combination of libraryA with libraryC in conjunction with configuration flag D to enable featureA.
Usually fixing such breakage took quite a time. Since you had to try a few combinations before you were sure that the changes in the Include Guard didn't break stuff somewhere else.
Feature flags are essentially that if I understand it correctly (too warm, I only glanced over the articles).
Code get's cluttered, Code get's conditional and that because you try to save money for something that shouldn't cost money at all.
If you don't have very large systems, a staging server is usually a simple VM / container / .... -
vane110524y100k for stage servers wtf is this ?
Probably most of servers are not doing anything.
With fucking tools and possibilities today you can spin off environments in seconds.
Feature flags are cancer.
This article is probably written by some html developer. -
PAKA8884y@IntrusionCM staging is in my case extact replica of prod, including Oracle running on bare metal. Sure you can replicate database data and anonymize it, how do you replicate real traffic and milions of customers doing weird shit? All you can test below prod is regression really, I'm not saying get rid of staging but true testing happens on prod anyways soooo...
-
@PAKA I hope you are not trolling me...
There are many ways to test - depending on what you want to achieve.
What you describe is mostly stress testing, which I wouldn't do on a prod server.
It's easy to replicate real traffic, you'll just need to capture it (possibility 1 - logging of select statements).
Since performance might suffer, that's not a smart move in large environments.
Possibility 2: Define workflows.
User A enters Form 1 to execute Search 2.
You can then do the workflow with defined values. Parallelizing by utilizing threads / async and just hammering down with a few 1000 connections.
Possibility 3 is fuzzing. Instead of defining fixed values in a workflow, you'll randomely generate data.
There are _tons_ of libraries out there who can generate _realistic_ data.
Possibility 3 opens the gate for a lot of funky stuff.
You can randomize the form's and hence the values, which is in databases a good way to test many execution plans.
But seeding a database is a good idea, too.
Randomly generating a myriad of rows to test execution plans with large datasets and varying selectivity is for complicated queries like searches a good idea. -
vane110524y@PAKA Today you can buy refurbished blade with 10-20 servers with 20-40 cpu and 250-500gb ram for less then 4000$ on ebay so I still don’t fucking understand how the fuck you spent 100k on stage environment except you’re complete moron.
Hardware is cheap as fuck.
Colocation of whole rack (42U) is what 1k$ per month at most ?
It’s just people are idiots and don’t know how to build and scale systems that’s why cloud is winning. Machine is cheaper then good software developer. -
@PAKA Curious... What do you mean by compliance?
There is no country afaik who has laws against using a specific type of hardware or a specific setup of hardware.
Unless you are working for the gov / federal offices...
But that's - from experience - a total different universe. -
PAKA8884y@IntrusionCM Well financial supervison is a bit tricky for example visa and mc won't work with banks who don't meet their standards, also central banks have a say and then finally gouverment comes in. Restrictions imposed by regulatory bodies can range from generic KYC to detailed instructions how our network separation looks like. No strict limitations on hardware or software but having support from vendors is obligatory and not everyone offers that.
-
@PAKA Still missing which country you are talking about.
But KFC (Know your Customer.... Explain abbreviations when you use them. BAD HABIT!) or AML (Anti Money Laundering) is something else.
And I admit, I've reread your answer 5 times now, and I still cannot make sense of it.
It sounds like you are talking about the financial sector per se...
Which has in general higher requirements, yes.
The last part is most confusing: What do you mean - support from vendors?
Like in HP / Dell / ... business support?
As far as I know, that's a NoGo. Especially in companies with high security no external company is allowed. Only internal access.
Related Rants
https://devops.com/dear-staging-wer...
What the F#*@&$# %#@$!?!?!
This person has decided to skip using staging, because it doesn't correctly reflect prod!
If that's your problem, than why don't you try to fix it? Create a DB with fake data, make one based on anonymised customer data, or even do it on non-anonymised data (with permission of course), but fix the staging env so that it reflects prod!
This is a devops site (it's literally the name!), and instead of teaching you how to make staging exactly like prod, they tell you to do what caused the creation of the staging->prod system IN THE FIRST PLACE!!!
There's all these stuff like Vagrant that are literally designed to help you as a dev mimic prod, and you just throw it all out!?
"With feature flags, I can safely test in production without fear of breaking something or negatively affecting the customer experience."
Famous last words.
rant
prod
staging fail
famous last words
dev
deploy to production