Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Continuous wut?

Continuous wut?

Small talk on continuous integration

Sergey Arkhipov

January 14, 2013
Tweet

More Decks by Sergey Arkhipov

Other Decks in Programming

Transcript

  1. package com.hello.world; public class HelloWorld { public static void main(String[]

    args) { System.out.println("Hello, world!"); } } Magic
  2. package com.hello.world; public class HelloWorld { public static void main(String[]

    args) { System.out.println("Hello, world!"); } } Magic Product
  3. — Agile renamed team leaders to scrum masters, gave billions

    to sticky notes manufacturers and responsibility for developers.
  4. — Agile renamed team leaders to scrum masters, gave billions

    to sticky notes manufacturers and responsibility for developers.
  5. Agile fundamentals ― Team responsibility ― Iterative development ― Plan

    driven management ― Requirements emerge through feedback
  6. Agile fundamentals ― Team responsibility ― Iterative development ― Plan

    driven management ― Requirements emerge through feedback
  7. Continuous Integration Continuous Integration is a software development practice where

    members of a team integrate their work frequently, usually each person integrates at least daily — leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible. Many teams find that this approach leads to significantly reduced integration problems and allows a team to develop cohesive software more rapidly. — Martin Fowler
  8. Continuous Integration Continuous Integration is a software development practice where

    members of a team integrate their work frequently, usually each person integrates at least daily — leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible. Many teams find that this approach leads to significantly reduced integration problems and allows a team to develop cohesive software more rapidly. — Martin Fowler
  9. Continuous Integration Practices ― Maintain a Single Source Repository ―

    Automate the Build ― Make Your Build Self-Testing ― Everyone Commits To the Mainline Every Day ― Every Commit Should Build the Mainline on an Integration Machine ― Keep the Build Fast ― Test in a Clone of the Production Environment ― Make it Easy for Anyone to Get the Latest Executable ― Everyone can see what's happening ― Automate Deployment
  10. — Please stop this marketing bullshit! What is the main

    idea to use CI? responsibility for developers.
  11. The real reasons why CI ― We don't trust you

    ― We care about overall quality of product
  12. The real reasons why CI ― We don't trust you

    ― We care about overall quality of product ― We hate big merges
  13. The real reasons why CI ― We don't trust you

    ― We care about overall quality of product ― We hate big merges ― We hate duches prefer escalating not solving problems
  14. The real reasons why CI ― We don't trust you

    ― We care about overall quality of product ― We hate big merges ― We hate duches prefer escalating not solving problems ― We got paid