惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
Stack Overflow Blog
Stack Overflow Blog
Hugging Face - Blog
Hugging Face - Blog
博客园_首页
T
The Blog of Author Tim Ferriss
博客园 - 叶小钗
N
Netflix TechBlog - Medium
腾讯CDC
C
Check Point Blog
P
Proofpoint News Feed
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI
S
SegmentFault 最新的问题
F
Fortinet All Blogs
美团技术团队
U
Unit 42
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 司徒正美
F
Full Disclosure
Recorded Future
Recorded Future
D
DataBreaches.Net
博客园 - 【当耐特】
Martin Fowler
Martin Fowler
J
Java Code Geeks
I
InfoQ
Y
Y Combinator Blog
A
About on SuperTechFans
AI
AI
爱范儿
爱范儿
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Forbes - Security
Forbes - Security
W
WeLiveSecurity
M
MIT News - Artificial intelligence
雷峰网
雷峰网
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Simon Willison's Weblog
Simon Willison's Weblog
Schneier on Security
Schneier on Security
The GitHub Blog
The GitHub Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
aimingoo的专栏
aimingoo的专栏
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
G
GRAHAM CLULEY
Know Your Adversary
Know Your Adversary
Latest news
Latest news
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
D
Docker
Recent Commits to openclaw:main
Recent Commits to openclaw:main
量子位
V2EX - 技术
V2EX - 技术
Project Zero
Project Zero

Fernando Cejas

Rust cross-platform… The Android part… Rust cross-platform… The Android part… An over-engineered Home Lab with Docker and Kubernetes. An over-engineered Home Lab with Docker and Kubernetes. Arch Linux System Maintainance. Arch Linux System Maintainance. Cooking Effective Code Reviews. Cooking Effective Code Reviews. Writing First-Class Features: BDD and Gherkin. Writing First-Class Features: BDD and Gherkin. Learn Linux… Install Arch with Full Disk Encryption. Learn Linux… Install Arch with Full Disk Encryption. Learn out of mistakes: Postmortems to the rescue! Learn out of mistakes: Postmortems to the rescue! Technical Debt… GURU LEVEL UNLOCKED! Technical Debt… GURU LEVEL UNLOCKED! Technical Debt… GURU LEVEL UNLOCKED!
Learn out of mistakes: Postmortems to the rescue!
Fernando Cejas · 2020-06-21 · via Fernando Cejas

Learn out of mistakes: Postmortems to the rescue!

Postmortems are a valuable tool for learning out of mistakes. They provide useful conclusions and should be included in retrospectives for further discussion in order to not fall into the same trap again.

“Continuos improvement and learning should be a must in every organization’s culture.”

Introduction

Some time ago, I wrote about how to build a company’s culture based on human values, and mentioned a bunch of ideas that I would like to bring back:

  • Understand we make mistakes: there are always good intentions but we are human beings and we are not perfect.
  • No finger pointing: learn out of failure and create retrospectives in order to not repeat those failures again, but please do not blame people, we are always together either in the good moments and when going through difficulties.
  • Be positive: there is always light at the end of the tunnel.

As we can see, these ideas reflect human behavior and attitudes against a problem, thus, I would like to take the opportunity to build on them and explore how we can leverage failures in order to learn from them. Let’s get started!

Make sure you visit my postmortems sections in order to complement your learnings in this article.

A culture of lessons learned

I bumped into this inspirational quote and wrote it down some time ago (please ping me if you know the author):

“Whatever you do, you will make mistakes, errors and blunders. Everyone does. Some less, some more, but no one is exempt. Yet, success is nothing more than mistakes you managed to overcome. That is why a mistake is not important. What counts are the things you do after one.

fernando-cejas

In my opinion, it is our reponsibility to minimize failure, but company’s cultures should provide room for failing, and when this happens, we should get something positive and constructive out of it: a lesson learned.

Moreover, let me quote myself:

“Learning something without sharing it, is senseless

We want to share what we have learned:

  • …to gain experience over something new.
  • …to acquire knowledge which will lead to success in similar situations.
  • …to have more tools in oder to recover from similar problems.
  • …to not repeat the same mistake again and again.

The more we fail, the more resilient we become. Let’s let this knowledge to be shared in order to spread and build resilience.”

It is at this point when postmortems come in to play, so in the next section we are going to define what is a postmortem and how this concept can help us to acquire and transmit knowledge based on failure.

What is a postmortem?

DEFINITION: A postmortem (or post-mortem) is a process intended to help you learn from past incidents. It typically involves an analysis or discussion soon after an event has taken place.

I definitely agree with the definition, but from my perspective, postmortems should not be restricted/limited to only technical issues (outages, technical incidents, failures), because otherwise we miss a lot of valuable information from other areas that are helpful for continuous improvement.

They should also include situational issues we might encounter like:

  • Communication problems.
  • Conflicts.
  • Anything you can learn from.

It is VERY IMPORTANT when writing them to:

  • Use blameless language.
  • Be annonymous without fingerpointing.
  • Be constructive.

Which information should a postmortem contain?

  • An overview to provide context.
  • A description of the problem (what happened?).
  • The root cause (Why it happened?).
  • A resolution (How we solved the issue).
  • A lesson learned.

How we organize this information, is a matter of taste, but we should keep consistency within the format to facilitate/favor readability. Some other extra information that could be useful to include:

  • Screenshots.
  • Tickets.
  • Charts.
  • Timelines.
  • External feedback.

Here is an screenshot of a postmortem out of a situation I experienced recently:

fernando-cejas

You can also visit my Postmortems Section if you are curious about my experiences in this field.

There are no silver bullets when it comes to tooling and templates for writing and sharing postmortems.

In the example above I used a simple web using github pages that I created some time ago, but documents, wikis or anything that could be shared company wise is more than valid. I will leave it up to you, the only thing I would add here: make sure postmortems are visible and easy to find.

I have also forked a github repository with a bunch of useful templates that I adapted myself according to my needs.

Wrapping up

Postmortems are a useful tool/technique that can be used in order to contantly improve and learn.

Personally I’m strong believer of building a culture based on the following ideas:

“Make mistakes and embrace them, it is nothing to be ashamed of.”

“Learning something without sharing it is senseless.”

“Foment continuous learning and sharing.”

“Encourage a culture based on postmortems and lessons learned.”

I hope you have enjoyed this article and found it useful. As usual, remember that any feedback is more than welcome, I’m easily found on Twitter and other social networks. Cheers!

Real World Examples

Resources and further reading