As some learned people may be new to builds and releases, they may find the phrase “continuous integration" to be misleading. This website is dedicated to making things such as CI clearer and easier.
“Continuous integration" is the term used among I.T. professionals to describe the ongoing, automated deployment of code from two or more developers. The "ongoing, automated" aspect is where the word "continuous" comes from. "Integration" is the deployment of new code from one developer to pre-existing code that was not written by herself. Commonly in an enterprise new code is deployed upon checking it into a software configuration management solution. This term "continuous integration" was coined by the well-recognized Grady Booch (who authored a forward in the seminal book Design Patterns: Elements of Reusable Object-Oriented Software). The definition of "continuous integration" was expanded upon by Martin Fowler, and the phrase became commonly accepted in the programming community.
The problem with this term is that the code integration is always continual and never continuous. Continual is an adjective referring to something happening from time-to-time on an ongoing basis. Continuous is an adjective referring to something happening every moment without interruption.
Before ContinualIntegration.com existed, there were published usages of, what we believe to be, the correct term in the context of computing technology (and not the common, yet grammatically incorrect "continuous integration").
- The 2003 book Extreme Programming Pocket Guide by chromatic uses the term "continual integration" on pages 35 and 36.
- In the 2006 dissertation Customer Integration in Industrial Innovation Projects by Patricia Sandmeier, there is grammatically correct usage of the term "continual integration" on page 68: "Collective ownership: Working hand-in-hand with the principle of continual integration, the idea of collective ownership rejects any notion that a solo programmer (or single group of programmers) bears the full burden of responsibility for any one subsystem under development."
- The 2014 book Cybersecurity by Thomas J. Mowbray has, on page 17, the grammatically correct phrase "continual integration" as quoted here:
"Each iteration delivers new functionality in the system’s production (released) configuration. Ordinary software testing is also iterative and must precede security testing so that any changes are included in the security test results. A key advantage to this best practice is the early and continual integration of security requirements into the development process."
Few companies have deployments as rapid as Amazon -- averaging one every 11.7 seconds (TechBeacon). Despite this rapidity, grammatically speaking, code integrations at Amazon are still continual and not continuous. Currently Google searches for "continual integration," by default, result in automatically "corrected" search results for "continuous integration." While this may benefit ordinary searchers seeking to learn more about CI, this has the effect of perpetuating the incorrect usage of "continuous." Perhaps the word experts will eventually redefine the term "continuous" to be elastic and mean what "continual" currently means. If Google keeps providing the results for searches for "continuous integration" when grammatically astute searchers typed in something slightly different ("continual integration"), the publications that use the correct phrase will not show up in the results. (This website was launched in mid 2015. As of December 2018 we know that the term "continuous integration" is supported by so many publications that Google's suggestions are insignificant to the prevalence of the term.)
For further reading about the difference between "continual" and "continuous," go to this Dictionary.com article. Feel free to browse the original articles on this website. Hopefully you will find it to be a useful knowledge base for DevOps tools, infrastructure administration, automation implementation, and other I.T. topics. You may want to try one of the quizzes (for Python, DevOps and ETL, or Virtualization APIs) too. Please point out any typos or grammatical errors by sending us an email through the Contact page. We would love to hear if this site has helped you or your enterprise.
To see the latest articles, click here.
* Indicates required field
Disclaimer: We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.