a combination of methodologies and techniques that, according to the context, can help teams and companies to adapt to the ever-changing nature of software projects and also reduce the risks associated with them. The Agile disciplines and methodologies can be divided into two main groups: process-oriented and technical-oriented.” - Sandro Mancuso, The Software Craftsman: Professionalism, Pragmatism, Pride, 2014
barriers and friction between organizational silos – development, operations, and other stakeholders involved in planning, building, and running software. Although technology is the most visible, and in some ways simplest face of DevOps, it’s culture, people, and processes that have the most impact on flow and effectiveness.” - Kief Morris, Infrastructure As Code, 2020
the Agile transformation and could pass to the next phase -DevOps- and can now deploy software to production multiple times in a day as a single unit; as a single team.
months, or years in some cases, of having fun in the Post-It party, teams and companies woke up with a massive headache—the Agile hangover,” - Sandro Mancuso, The Software Craftsman, 2014
or feeling things that do not really exist. Usually people have to be awake and conscious to have hallucinations. https://www.canvastar.com/en/salvador-dali-the-persistence-of-memory
in 2001, Kent Beck said that Agile was about the healing of the divide between development and business. Unfortunately, as the project managers flooded into the Agile community, the developers—who had created the Agile community in the first place—felt dispossessed and undervalued. So, they left to form the Craftsmanship movement. Thus, the ancient distrust continues” - Robert C. Martin, Clean Agile: Back to Basics, 2019
it is: Clean Code Test-Driven Development A specific set of technologies or methodologies Software Architecture or Design A selected group of people Religion or Cult
apprentice who works with a master of the handmade comb, what would you do? Watch? Learn? Ask? Be Better? Reflect as you learn? Expose your ignorance? Practice?
don’t want to write cloud-related code ➢ System Admins/Engineers don’t know how they will manage some cloud-related common resources. RACI problem ➢ System Engineers/SREs or “DevOps Engineers”, who are responsible to make the automation for just labeling the whole process as “DevOps” ➢ Apart from there is an System Engineers/SREs or “DevOps Engineers” just don’t care about the tests they are not developing applications in the end(!) ➢ No real collaboration between Dev and Ops.
need to treat it as a first-class concern. Too often, people don’t consider infrastructure code to be “real” code. They don’t give it the same level of engineering discipline as application code. Design and manage your infrastructure code so that it is easy to understand and maintain. Follow code quality practices, such as code reviews, pair programming, and automated testing. Your team should be aware of technical debt and strive to minimize it. - Kief Morris, Infrastructure As Code, 2020