Design Patterns
The Phoenix Project
Clean Code
The Pragmatic Programmer
Designing Data-Intensive Applications
100

This is the primary programming language used for the examples in the book.

What is C++ (with some Smalltalk)?

100

This character is the IT manager who is put in charge of the failing "Phoenix Project."

Who is Bill Palmer?

100

The book's author is the well-known software consultant and writer Robert C. Martin, also known by this nickname.

Who is Uncle Bob?

100

The principle "Don't Repeat Yourself" is commonly abbreviated using this acronym.

What is DRY?

100

This is a method of splitting a large database into smaller, more manageable parts, often used to improve scalability.

What is Partitioning (or Sharding)?

200

This behavioral pattern defines a one-to-many dependency so that when one object's state changes, all its dependents are notified.

What is the Observer Pattern?

200

This term refers to the constant, reactive work that prevents the IT team from doing planned, value-adding work.

What is Unplanned Work?

200

According to the book, a function should do only one thing, which is a core part of this programming principle.

What is the Single Responsibility Principle (SRP)?

200

When you're trying to debug a problem by explaining your code to an inanimate object, you are practicing this technique.

What is Rubber Duck Debugging?

200

This widely-used data model stores data in rows and columns, with a predefined schema.

What is the Relational Model?

300

This pattern provides a new interface to an existing class, acting as a wrapper to make it compatible with a new client.

What is the Adapter Pattern?

300

This "First Way" focuses on the flow of work from development to operations, which is often visualized using this type of board.

What is a Kanban Board?

300

The book argues that this type of comment should be avoided because it's often a sign of bad code.

What are comments that explain what the code does?

300

The book suggests that leaving a small piece of bad code or a poor design will lead to the overall quality of the code base deteriorating, a concept known as the "Broken..." this.

What is the Broken Window Theory?

300

This consistency model prioritizes availability over strict consistency, stating that data will become consistent over time.

What is Eventual Consistency?

400

The authors of the book are collectively known by this name.

Who are the Gang of Four?

400

This "Way" of DevOps focuses on creating fast feedback loops to quickly identify and fix problems.

What is the Second Way?

400

The book advocates for the use of this design principle, which states that code should be open for extension but closed for modification.

What is the Open/Closed Principle?

400

A pragmatic programmer is someone who takes responsibility for their work and is not afraid to do this.

What is admit when they don't know something (or admit a mistake)?

400

This concept refers to a system's ability to operate despite the failure of some of its components, which is a key challenge in distributed systems.

What is Fault Tolerance?

500

The three main categories of design patterns are Creational, Structural, and this.

What are Behavioral Patterns?

500

The main principle of this theory is that a system's throughput is limited by its single biggest bottleneck.

What is the Theory of Constraints?

500

The author recommends avoiding this type of variable name because it often obscures the code's true intent.

What are Single-letter variable names (or Hungarian notation)?

500

This term refers to the practice of building in a way that allows a component to be easily replaced with another without affecting the rest of the system.

What is Orthogonality?

500

n distributed systems, this theorem states that a system cannot simultaneously guarantee Consistency, Availability, and Partition Tolerance.

What is the CAP Theorem?