Cooperation and Communication

"The most efficient and effective method of conveying information to and within a development team is face-to-face conversation." -- The Agile Manifesto

Lesson 1: Release it!
Communication is very important.

For lesson 1, please read:
The flattening of the software release process

Lesson 2: Breaking down silos

For lesson 2, please read:
Breaking down silos

Lesson 3: Using Slack

For lesson 3, please go through these Slack guides:

Other Readings
Quiz

    Testing should be done on...?

    1. only the most crucial code in the application
    2. all of the application code
    3. all of the application code AND all of the infrastructure code
    4. none of the above

    The right artifacts of a project to put under version control are...?

    1. project source code
    2. scripts to build the project infrastructure
    3. project documentation
    4. all of the above

    Who should have "ownership" (be able to change) parts of a product in an agile team?

    1. only the creator of that part
    2. anyone on the team
    3. only the project supervisor
    4. only the system administrator

    In DevOps, "silos" refers to the fact that...?

    1. departments in organizations often seemed sealed off from each other
    2. good software should be divided into "silos"
    3. granaries are major users of software
    4. all of the above

    A poly-skilled engineer

    1. graduated from NYU Poly
    2. knows several languages
    3. knows all parts of the technology their team uses
    4. all of the above

    "Chaos Monkey" is...?

    1. a tool Netflix developed to intentionally crash their servers
    2. a description of who is in charge of most software projects
    3. the state of infrastructure before DevOps
    4. none of the above

    If we version control everything about our project, we...?

    1. create a big mess no one could understand
    2. waste a lot of time
    3. establish a single source of truth for the system
    4. clog our version control system with trivial stuff

    What is our main tool for communication in our course?

    1. git
    2. Docker
    3. Kubernetes
    4. Slack

    We want to script our environment so that...?

    1. environments are always in a known state
    2. we lessen the chance that knowledge is locked in team members' heads
    3. deployments are more predictable and repeatable
    4. all of the above

    An advantage Slack has over email threads is

    1. people can join and leave threads as they need to
    2. people won't forget to include someone who needs to see a message
    3. it is easy to bring in a new person and have them pick up on the whole conversation
    4. all of the above