Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations
Rate it:
Kindle Notes & Highlights
4%
Flag icon
speed depends on stability, so good IT practices give you both.
13%
Flag icon
accomplishing a task in a single line of code that no one else can understand is less desirable than writing a few lines of code that are easily understood and maintained.
13%
Flag icon
Queue theory in math tells us that as utilization approaches 100%, lead times approach infinity—in other words, once you get to very high levels of utilization, it takes teams exponentially longer to get anything done.
14%
Flag icon
In our search for measures of delivery performance that meet these criteria, we settled on four: delivery lead time, deployment frequency, time to restore service, and change fail rate.
14%
Flag icon
lead time: the time it takes to design and validate a product or feature, and the time to deliver the feature to customers.
16%
Flag icon
much dogma in our industry still rests on the false assumption that moving faster means trading off against other performance goals, rather than enabling and reinforcing them.4
17%
Flag icon
The fact that software delivery performance matters provides a strong argument against outsourcing the development of software that is strategic to your business, and instead bringing this capability into the core of your organization.
18%
Flag icon
As Deming said, ’whenever there is fear, you get the wrong numbers’”
23%
Flag icon
Computers perform repetitive tasks; people solve problems.
26%
Flag icon
reducing what he calls failure demand— demand for work caused by the failure to do the right thing the first time by improving the quality of service we provide.
27%
Flag icon
Teams that did well had fewer than three active branches at any time, their branches had very short lifetimes (less than a day) before being merged into trunk and never had “code freeze” or stabilization periods.
28%
Flag icon
We’ve seen that adopting continuous delivery practices improves delivery performance, impacts culture, and reduces burnout and deployment pain.
29%
Flag icon
employing the latest whizzy microservices architecture deployed on containers is no guarantee of higher performance
29%
Flag icon
Melvin Conway, who said, “organizations which design systems . . . are constrained to produce designs which are copies of the communication structures of these organizations”
29%
Flag icon
the “inverse Conway Maneuver,”2 which states that organizations should evolve their team and organizational structure to achieve the desired architecture. The goal is for your architecture to support the ability of teams to get their work done—from design through to deployment—without requiring high-bandwidth communication between teams.
30%
Flag icon
To measure productivity, we calculated the following metric from our data: number of deploys per day per developer.
31%
Flag icon
What tools or technologies you use is irrelevant if the people who must use them hate using them, or if they don’t achieve the outcomes and enable the behaviors we care about.
37%
Flag icon
In software organizations, the ability to work and deliver in small batches is especially important because it enables teams to integrate user research into product development and delivery.
38%
Flag icon
be aware that if deployments have to be performed outside of normal business hours, that’s a sign of architectural problems that should be addressed.
39%
Flag icon
Burnout is physical, mental, or emotional exhaustion caused by overwork or stress
40%
Flag icon
human error is never the root cause of failure in systems.
44%
Flag icon
Automation matters because it gives over to computers the things computers are good at—rote tasks that require no thinking and that in fact are done better when you don’t think too much about them.
46%
Flag icon
Leaders are those who set the tone of the organization and reinforce the desired cultural norms.
49%
Flag icon
As the real value of a leader or manager is manifest in how they amplify the work of their teams, perhaps the most valuable work they can do is growing and supporting a strong organizational culture among those they serve: their teams.
49%
Flag icon
Trust is built on kept promises, open communication, and behaving predictably even in stressful situations.
62%
Flag icon
Research has shown that organizational culture is predictive of technology and organizational performance, is predictive of performance outcomes, and that team dynamics and psychological safety are the most important aspects in understanding team performance (Google 2015).
68%
Flag icon
For people to bring their best to the work that may, in fact, eliminate their current job, they need complete faith that their leaders value them—not just for their present work but for their ability to improve and innovate in their work.
68%
Flag icon
The work itself will constantly change; the organization that leads is the one with the people with consistent behavior to rapidly learn and adapt.
69%
Flag icon
Too often, quality is overshadowed by the pressure for speed.
69%
Flag icon
A courageous and supportive leader is crucial to help teams “slow down to speed up,” providing them with the permission and safety to put quality first (fit for use and purpose) which, in the long run, improves speed, consistency, and capacity while reducing cost, delays, and rework.
69%
Flag icon
“As a leader, you have to look at your own behaviors before you ask others to change,”
70%
Flag icon
“Before, I never discussed culture,” he said. “It was a difficult topic and I did not know how to change it in a sustainable way. But I learned that when you change the way you work, you change the routines, you create a different culture.”
71%
Flag icon
Practice patience. Your current way of work took decades to entrench. It’s going to take time to change actions and thought patterns until they become new habits
72%
Flag icon
since nearly every company relies on software, delivery performance is critical to any organization doing business today.
75%
Flag icon
Two variables moving together can always be due to a third variable or, sometimes, just chance.
75%
Flag icon
The four measures of software delivery performance (deploy frequency, lead time, mean time to restore, change fail percentage) are good classifiers for the software delivery performance profile.