CI/CD

CI/CD stands for "Continuous Integration/Continuous Delivery."

Integration? Delivery?

The "integrating" and "delivering" being talked about here is of actual code that developers are writing.

At some point, all of the separate code from all of the separate developers' computers needs to come together. This is the "integration" part. All of their code is being integrated together.

Next, we have to build that code so that it can be sent to our website visitors. This process is called "bundling." The code that is shown to you as a web user isn't actually the code that someone originally wrote!

Last, this code has to be delivered to you. It's a pretty major process to get code from a developer's computer to you as a user. This process is the "delivery" that we're talking about here.

Continuous?

Today's modern software building processes demand that changes and updates to code happen as quickly as possible. If I write code today and send it to production, I want to see it out in production today. Not in a few weeks.

However, I'm not the only one writing code. All of my teammates are and, depending on the size of our organization, hundreds or thousands of other developers may be doing the exact same thing as me. We all want to be able to continuously push our code to production as we write it.

The old way

This is compared to the old way of doing things. We all used to write code for a month and then, on a specific day, push all of our new code at the exact same time. We would push one gigantic ball of code to production instead of many small changes.