blog: tarot for hackers (#64)
* blog: tarot for hackers * lol my markdown engine is broke
This commit is contained in:
parent
578f7a3fbd
commit
c0c6a620be
|
@ -0,0 +1,83 @@
|
||||||
|
---
|
||||||
|
title: Tarot for Hackers
|
||||||
|
date: 2019-07-24
|
||||||
|
---
|
||||||
|
|
||||||
|
# Tarot for Hackers
|
||||||
|
|
||||||
|
"Oh no, she's finally lost it" were the words a very close friend of mine said
|
||||||
|
when I first told her I was experimenting with reading tarot cards. Tarot cards
|
||||||
|
are a stereotypical staple of the occult/The Spoop™. Every card represents an
|
||||||
|
idea (or a meme) that can be expressed in a few ways. They act to your soul
|
||||||
|
like iron filings do to a magnet. When you shuffle the cards, the Universe (via
|
||||||
|
entropy) examines all of those myriad inputs and helpfully orders them so you
|
||||||
|
get exactly the message you need most.
|
||||||
|
|
||||||
|
It's actually an extremely philosophical act to draw from a tarot deck and
|
||||||
|
interpret the results. Over the years there have been many interpretations and
|
||||||
|
frameworks of interpretations about tarot; but I would like to introduce a
|
||||||
|
meta-framework for using tarot cards as a debugging tool.
|
||||||
|
|
||||||
|
As you work on computer systems, you put parts of yourself into them. You
|
||||||
|
create bonds between yourself and otherwise anonymous inner parts of machines you
|
||||||
|
have never seen or touched. These bonds stick from idea to development to
|
||||||
|
testing to deployment phases and can even stay around after you stop working on
|
||||||
|
something. Ever gotten a weird sense that you can recognize the author of some
|
||||||
|
code while reading it? Same idea.
|
||||||
|
|
||||||
|
To start, envision the product or service you are trying to understand more
|
||||||
|
about. Think of the plans that went into it, the users of the service, how this
|
||||||
|
understanding will help them, and where the missing part of knowledge fits into
|
||||||
|
the larger whole. Write this all out if it helps, the more detail the better.
|
||||||
|
Our transition to shared infrastructure and computing on others machines has
|
||||||
|
made it harder to see into individual parts of the whole, so every little bit
|
||||||
|
helps to focus things in.
|
||||||
|
|
||||||
|
The first card is the Motive, so draw it and place it in the center off your
|
||||||
|
spread. Look up the meaning on a site like biddytarot.com (googling "[name of
|
||||||
|
card] tarot meaning" helps a lot here) and consider how it relates back to the
|
||||||
|
other factors at play.
|
||||||
|
|
||||||
|
The second card is the Facet, or the part of the system that is failing. This
|
||||||
|
could refer to a machine, bit of code or even a human factor. Context with the
|
||||||
|
future cards will help you determine what it is. Remember these are metaphors
|
||||||
|
and will need some interpretation to help you understand what is going on.
|
||||||
|
|
||||||
|
The third card is the Immediate Past, or what changed to cause this problem. Use
|
||||||
|
this with the Motive to help you identify what component is broken. Again, this
|
||||||
|
is a metaphor. There are very rarely literal answers here, but the combination
|
||||||
|
of the Facet and Immediate Past helps you identify the systemic or
|
||||||
|
organizational faults at play. These faults are usually enough to help you
|
||||||
|
uniquely identify services or infrastructure.
|
||||||
|
|
||||||
|
Next, draw The Action. This card will help you decide what action you need to
|
||||||
|
take. This could be restarting a server, fixing a communication pattern (or
|
||||||
|
lack thereof), or even just doing nothing and waiting a few minutes. Sometimes
|
||||||
|
it means that you need to stop what you are doing and try to do the read again
|
||||||
|
later. It's okay for that to happen, though that should only be a very rare
|
||||||
|
occurrence.
|
||||||
|
|
||||||
|
The next card is The Result, or what the outcome of that would be given The
|
||||||
|
Action is executed in its entirety. This result isn't supposed to be taken super
|
||||||
|
seriously (as the consequence of you reading these cards is a butterfly effect
|
||||||
|
that makes the outcome in "reality" slightly different); but it usually helps
|
||||||
|
you get a general idea of where you will go and what it will be like when you
|
||||||
|
get there.
|
||||||
|
|
||||||
|
Finally, draw The Lesson. This card signifies what the theme of the postmortem
|
||||||
|
around The Action should be. This can help you guide future discussions about
|
||||||
|
what went wrong and how to avoid it in the future. This may result in charged
|
||||||
|
feelings, but it really is for the best to go through the entire postmortem
|
||||||
|
process to help you get the closure that you need. This postmortem will
|
||||||
|
usually help bring things to the surface that you have missed before. There
|
||||||
|
should be no blame or anger. This is a place of healing and growth, not of hate
|
||||||
|
and strife.
|
||||||
|
|
||||||
|
Optionally you can draw The Metaresult, or what will happen as a result of The
|
||||||
|
Lesson. This isn't strictly required but I find it can help for peeking into a
|
||||||
|
potential future where The Result is taken to heart.
|
||||||
|
|
||||||
|
I hope this is able to help you in your debugging needs. I use this strategy
|
||||||
|
when I am trying to understand complicated computer systems and how they all
|
||||||
|
fit together. Be well.
|
||||||
|
|
Loading…
Reference in New Issue