this post was submitted on 22 Jun 2024
715 points (98.8% liked)

Programmer Humor

18206 readers
1616 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 121 points 6 days ago* (last edited 6 days ago) (5 children)

I'm sure there's nothing wrong with the program at all =)

Modern webapp deployment approach is typically to have an automated continuous build and deployment pipeline triggered from source control, which deploys into a staging environment for testing, and then promotes the same precise tested artifacts to production. Probably all in the cloud too.

Compared to that, manually FTPing the files up to the server seems ridiculously antiquated, to the extent that newbies in the biz can't even believe we ever did it that way. But it's genuinely what we were all doing not so long ago.

[–] [email protected] 13 points 6 days ago (1 children)

Promotes/deploys are just different ways of saying file transfer, which is what we see here.

Nothing was stopping people from doing cicd in the old days.

[–] [email protected] 20 points 6 days ago* (last edited 6 days ago) (1 children)

Sure, but having a hands-off pipeline for it which runs automatically is where the value is at.

Means that there's predictability and control in what is being done, and once the pipeline is built it's as easy as a single button press to release.

How many times when doing it manually have you been like "Oh shit, I just FTPd the WRONG STUFF up to production!" - I know I have. Or even worse you do that and don't notice you did it.

Automation takes a lot of the risk out.

[–] [email protected] 3 points 6 days ago (1 children)

Not to mention the benefits of versioning and being able to rollback! There's something so satisfying about a well set-up CI/CD pipeline.

[–] Pacmanlives 2 points 5 days ago (1 children)

We did versioning back in the day too. $application copied to $application.old

[–] [email protected] 1 points 5 days ago

But was $application.old_final the one to rollback to, or $application.old-final2?!

[–] lightnegative 4 points 5 days ago

But it's genuinely what we were all doing not so long ago

Jokes on you, my first job was editing files directly in production. It was for a webapp written in Classic ASP. To add a new feature, you made a copy of the current version of the page (eg index2_new.asp became index2_new_v2.asp) and developed your feature there by hitting the live page with your web browser.

When you were ready to deploy, you modified all the other pages to link to your new page

Good times!

[–] [email protected] 5 points 6 days ago (1 children)

It’s that automated workflow ? With human checkpoints ?

Like, a programmer will ‘hit save’ and drop his work in version control, which automatically lands in a development environment, is promoted to test, and lands in the queue of a tester, and so on ?

[–] [email protected] 6 points 6 days ago

Yes, exactly that.

[–] [email protected] 2 points 6 days ago (1 children)

webapp deployment

Huh? Isn't this something that runs on the server?

[–] [email protected] 9 points 6 days ago

It's good practice to run the deployment pipeline on a different server from the application host(s) so that the deployment instances can be kept private, unlike the public app hosts, and therefore can be better protected from external bad actors. It is also good practice because this separation of concerns means the deployment pipeline survives even if the app servers need to be torn down and reprovisioned.

Of course you will need some kind of agent running on the app servers to be able to receive the files, but that might be as simple as an SSH session for file transfer.

[–] [email protected] 1 points 6 days ago (1 children)

Shitty companies did it like that back then - and shitty companies still don't properly utilize what easy tools they have available for controlled deployment nowayads. So nothing really changed, just that the amount of people (and with that, amount of morons) skyrocketed.

I had automated builds out of CVS with deployment to staging, and option to deploy to production after tests over 15 years ago.

[–] [email protected] 6 points 6 days ago* (last edited 6 days ago) (1 children)
[–] [email protected] 4 points 6 days ago

Tests is the industry name for the automated paging when production breaks