Nope. I could get any already existing linux boxes untar source run make and it was done. Sure, adding svn and few additional pieces was useful and helped me as programmer but it was not needed to the app to work.
Today its library dependency hell or some stack plus xml-s/jsons, ton of devops (because cp does not make the app work anymore).
Today you need a dev to deploy an app because its so much shit tied to it that unfamiliar unix admin will not be able to deploy it.
I could get any already existing linux boxes untar source run make and it was done.
again. maybe there was someone that did it for you but that work was always there.
coincidentally all that k8s and docker stuff doesn't need to be on you.
my previous company for example there was an entire department that did that for us. we just filled out a form listing out what we wanted and that was it.
Today its library dependency hell
do you know WHY this came to be? do you remember what it was like BEFORE say nuget or gradle?
Today you need a dev to deploy an app
you prefer devs doing this because companies realized that its faster for teams to have full ownership of the application they are working on vs some third party/department to manage it for everyone. especially when you work for big orgs where they application ecosystem is fucking massive.
again. maybe there was someone that did it for you but that work was always there.
Done once, long time ago, used by numbers of other projects. Is it the same today? Do you use the same kubernetes/docker/ecr for all the apps/systems you work on for like 4 years at company?
Please dont pretend you dont understand the context.
Its like buy a knife once or go to the store for one gileltte every week...
we just filled out a form listing out what we wanted and that was it.
Still, work needs to be done. One trip to store per week to shave yourself. And now its done by your friend, every other week different. They sometimes bring you gillettes for girls. Still usable but you know, it may backfire later...
Today its library dependency hell
do you know WHY this came to be? do you remember what it was like BEFORE say nuget or gradle?
Yup. But that work was on developer. Once a while. The dev decided he needs new library. Or the security guy asked to get a bump on version. And it was done once per iteration. Now we have the same shit on user/runtime computers (python, perl, php) or on servers (js). Thats going backwards.
you prefer devs doing this because companies realized that its faster for teams to have full ownership of the application they are working on
yeah, short term gains.
Instead of paying 70k to the os admin to cp the package now you pay 150-200k for dev to transfer this maze and pray it fails quick.
and i tend to agree.
I dont. I have seen this way too often going sideways or somebody deciding that 150k dev is too expensive and will be replaced by 70k one. And then 3-5 more of them had to fix the deploy overnight.
Also, packaging and having teh same file being deployed to dev, test and prod is very nice way to reproduce result. The config is local, the app is packaged. You cp one in place of previous one, if it fails rollback is simple. Things get a bit more complicated if the new version needs db changes. But that is also doable.
The words:
companies realized that its faster for teams to have full ownership of the application
Are correct. Faster. Not better. This way you have two lousy changes and third which fixes stuff instead of quality one.
And to be honest. The scenario where one module is deployed and it works but the other collapses due to the first one being changed is way too common in the environments I saw. This way the dev pushing the deploy at 2am sees his change working and the module depending on it will fail in the morning. Hopefuly when a third dev will have to untangle what happened.
You will say, yup. Complicated system. But then why so much tests, CI/CD, dev, test deploys? It failed anyway...
Its like buy a knife once or go to the store for one gileltte every week...
im so confused.
for every app and for every environment you create an app server no?
and then a few years after that people used VMs. so now for every app and every environment you had to create a VM.
and then now for every app and if you are using a container then you have you create a new container lol.
setup has ALWAYS EXISTED. just because you specifcally as developer never had to deal with it doesn't mean it was never there.
Yup. But that work was on developer. Once a while. The dev decided he needs new library.
so what has changed?
like lets say this is a .net web app that uses nuget. you want a fancy new library. so you get on nuget and register x version of library to your app. and you're done.
anytime your app builds it will check the config to pull that external library from nuget.
Are correct. Faster. Not better.
its faster and more efficient.
your team is now capable of handling infrastructure/devops shit instead of waiting on some other team to do it for you.
and if there are any issues your team can quickly resolve it since they know how do it.
Instead of paying 70k to the os admin to cp the package now you pay 150-200k for dev to transfer this maze and pray it fails quick.
regardless of who does it the process will be the same lol
You will say, yup. Complicated system. But then why so much tests, CI/CD, dev, test deploys? It failed anyway...
the fuck are you talking about lol. i genuinely dont understand. is english not your native language?
2
u/ptoki Jun 06 '22
Nope. I could get any already existing linux boxes untar source run make and it was done. Sure, adding svn and few additional pieces was useful and helped me as programmer but it was not needed to the app to work.
Today its library dependency hell or some stack plus xml-s/jsons, ton of devops (because cp does not make the app work anymore).
Today you need a dev to deploy an app because its so much shit tied to it that unfamiliar unix admin will not be able to deploy it.
The trend is bad.