Editing through the burnout chapter
[themediocreprogrammer.git] / chapter07.md
index 09ed7ba6e5b8ed86e2fb8cfa9b9b74f14cb6d704..948d2ea5f5426eeb11ce74618a075bb336d15474 100644 (file)
@@ -2,7 +2,7 @@
 
 ## The emotions of programming
 
-There's a stereotype of a programmer sitting emotionless in front of the computer. They sit, quietly entering lines of code as though they were transcribing them from memory. But if you're a programmer or have been around programmers you know that the stereotype should be that of a frustrated composer. Sure we sit in front of our computers in long periods of silence and concentration but we're far from emotionless. We bask in the glories of code that works perfectly the first time. We glower at code that misbehaves. We go from cheering ourselves in victory to cursing the machine and threatening it with clenched fists. We clench our teeth when bugs rear their misbehaving heads. We swing from emotion to emotion: exuberance, joy, fear, anger, resentment, sadness, loneliness, guilt, and shame. 
+There's a stereotype of a programmer sitting emotionless in front of the computer. The stereotypical programmer sits, quietly entering lines of code as though they were transcribing them from memory. If you're a programmer or have been around programmers you know that the stereotype should be that of a frustrated composer. Sure, we sit in front of our computers in long periods of silence and concentration, but we're far from emotionless. We bask in the glories of code that works perfectly the first time. We glower at code that misbehaves. We go from cheering ourselves in victory to cursing the machine and threatening it with clenched fists. We clench our teeth when bugs rear their misbehaving heads. We swing from emotion to emotion: exuberance, joy, fear, anger, resentment, sadness, loneliness, guilt, and shame. 
 
 No wonder we're exhausted by the end of the day.
 
@@ -16,85 +16,89 @@ There are several factors that can cause us emotional highs and lows while progr
 
 If we clearly see where and how this code will become useful we can get a sense of drive and purpose --- we're working toward something that will benefit folks! We know that people are depending on us so we do our best to make the code work regardless of the pitfalls that await us. We tap into the emotional highs of self-worth and purpose to help carry us through to completion.
 
-The opposite is true, of course --- if we don't see the purpose then our work will seem useless and in vain. We'll struggle to meet deadlines and feel a sense of worthlessness in our pursuits. Sometimes it's a project that isn't aligned with our own purposes and goals. Or it could be a poorly managed project that we've been forced to work on because of external pressures. We can be held to meet arbitrary deadlines that we never agreed to meet. And we can become frustrated if we don't see the point of what we're working on. 
+The opposite is true, of course --- if we don't see the purpose then our work will seem useless and in vain. We'll struggle to meet deadlines and feel a sense of worthlessness in our pursuits. Sometimes it's a project that isn't aligned with our own purposes and goals. It can be a poorly managed project that we're being forced to work on because of external pressures. We might find ourselves being held to meet arbitrary deadlines that we never agreed to meet. And we can become frustrated if we don't understand the ultimate goal of what we're working on. 
 
 ### Engagement vs. boredom
 
 You've already experienced several layers of engagement with your programming. These are the projects that don't feel like a chore while you work on them. You feel like you're learning something each step of the way. The outside world disappears while we work in this cocoon of focus. We lose track of time and feel both disoriented and refreshed when the work is completed.
 
-Unfortunately you're probably more experienced with the opposite of engagement: boredom. The code base doesn't engage you at all. The topic you're learning or working on is just re-hashing something you already know. It's a chore to get started. Everything in the world feels way more interesting and the minutes drag along throughout the whole process. 
+Unfortunately you're probably more experienced with the opposite of engagement: boredom. The code base doesn't engage you at all. The topic you're learning or working on is just re-hashing something you already know. It's a chore to get started. Everything else in the world feels way more interesting and the minutes drag along throughout the whole process. 
 
 ### Awake vs. tired
 
-Sleep is a major contributor for how we perceive the world. Getting enough sleep allows us to feel refreshed, awake, and inspired. We need to have the energy reserves to take on whatever challenges befall us. But when we don't get enough sleep (or enough quality sleep) we become irritable and less-open to engagement. We conserve our resources as best we can lest we use them up too quickly. We look to stimulants (caffeine, distractions, and the like) to keep us engaged throughout the day.
+Sleep is a major contributor for how we perceive the world. Getting enough sleep allows us to feel refreshed, awake, and inspired. We need to have the energy reserves to take on whatever challenges befall us. When we don't get enough sleep (or enough quality sleep) we become irritable and less-open to engagement. We conserve our resources as best we can lest we use them up too quickly. We look to stimulants (caffeine, distractions, and the like) to keep us engaged throughout the day.
 
 ### Mental state
 
-I'm using "mental state" in a broad sense to cover any of our existing feelings and current mental well-being. These can range from temporary feelings of unhappiness and melancholy to complex and serious topics like clinical depression and Post Traumatic Stress Disorder (PTSD). Our minds are complex machines that do their best to adapt to the situations and environments presented to them. At times this can clash with our desires to be productive and the struggle between our mental state and our desires can cause further emotional drain, discomfort, and despair.
+I'm using "mental state" in a broad sense to cover any of our existing feelings and current mental well-being. These can range from temporary feelings of unhappiness and melancholy to complex and serious topics like clinical depression and Post Traumatic Stress Disorder (PTSD). Our minds are complex machines that do their best to adapt to the situations and environments presented to them. At times this adaptation can clash with our desires to be productive and the struggle between our mental state and our desires can cause further emotional drain, discomfort, and despair.
 
 There are more things that can affect our emotions but these are the ones that I'd like to focus on as they cover a broad spectrum of what we bring to the tasks of learning and programming.
 
 ## Awareness of our Emotional State
 
-Being aware of our emotional state (what we're feeling right now) gives us our current emotional location. We can see where we are and understand what our mind is telling us. Giving ourselves a few moments to truly see what emotional state our mind is in will help us to move forward.
+Being aware of our emotional state (what we're feeling right now) gives us our current emotional location. We can map out where we are and understand what our mind is telling us. Giving ourselves a few moments to truly notice what emotional state our mind is in will help us to move forward.
 
-Note that we're not trying to change our emotional state. We're not trying to force ourselves to be something that we aren't. If we're truly unhappy with where we are or what we're doing it's more helpful to understand what's causing our unhappiness rather than try to paper over those emotions. Seeing our emotions clearly allows us to see what is causing them. Being present with these emotions allows us to better understand our mental state and what we're capable of in the moment.
+Note that we're not trying to change our emotional state. We're not trying to force ourselves to be something that we aren't. If we're truly unhappy with where we are or what we're doing it's more helpful to understand what's causing our unhappiness rather than try to paper over and prevent those emotions. Seeing our emotions clearly allows us to recognize what is causing them. Being present with these emotions allows us to better understand our mental state and what we're capable of in the moment.
 
 You can do this in the context of mindfulness meditation but even sitting at your desk and thinking "for one to two minutes I'm just going to sit here and explore my emotional state" should suffice. Noticing our emotions, understanding what they are, and digging in to find out what is causing them can help us understand what we're feeling.
 
-You might already know what is causing these emotions and emotional state and be afraid of exploring them. Some emotions may overwhelm us and make us feel things that we don't want to feel. Do as much of this as you are able and be gentle with yourself. You may find that your gentle prodding of these emotions can lead you to better understand them. Be as brave as you can with these emotions and if they start to overwhelm you then pull back and let the residue of those feelings subside before continuing.
+You might already know what is causing these emotions and emotional state and be afraid of exploring them. Some emotions may overwhelm us and make us feel in ways that we don't want to feel. This is especially true for emotions related to anxiety and PTSD. Do as much of this as you are able and be gentle with yourself. You may find that your gentle prodding of these emotions can lead you to better understand them. Be as brave as you can with these emotions and if they start to overwhelm you then pull back and let the residue of those feelings subside before continuing.
 
 ## Our story
 
-Each one of us has a story that we tell ourselves. These stories shape our perception of the world. We tell ourselves stories of how the day will be and how we will engage with the day. We create a world through our stories in which we are the central protagonist of our story (which we are). We tell stories like "the work I'm about to do will be amazing" or "I'm going to work through this problem quickly and will have an awesome solution when I'm done". Or we weave a tale about how we're not good enough at what we're doing and will likely fail in the attempt. We create a complex tale of struggle, pain, and misery where everything wrong with the world is the direct result of our actions. 
+Each one of us has a story that we tell ourselves. These stories shape our perception of the world. We tell ourselves stories of how the day will be and how we will engage with the day. We create a world through our stories in which we are the central protagonist of our story. We tell stories such as "the work I'm about to do will be amazing" or "I'm going to work through this problem quickly and will have an awesome solution when I'm done". That's if we're being positive with ourselves. When we're being negative with ourselves our stories weave a tale about how we're not good enough at what we're doing and will likely fail in the attempt. Those stories create a complex tale of struggle, pain, and misery where everything wrong with the world is the direct result of our actions. 
 
 Our emotions help inform the type of story we tell. If we're feeling amazing we tell ourselves that what lies ahead will also be amazing. If we're feeling down and defeated our story reflects our defeated tone.
 
-The truth is that our story is just that --- a story. Our stories are not a guarantee of how the day will progress. We can tell ourselves that today will be amazing and watch in horror as each interaction causes our day to be anything but amazing. Or we can say that today will be terrible and we won't accomplish anything, but instead have a pretty decent and productive day.
+The truth is that our story is just that --- a story. Our stories are not a guarantee of how the day will progress. We can tell ourselves a story that today will be amazing and watch in horror as each interaction causes our day to be anything but amazing. Or our story could be that today will be terrible and we won't accomplish anything, but instead we experience a decent and productive day. The story only accentuates what we're experiencing; it can't predict what we will experience.
 
-What we can do instead of being attached to these grand stories is focus more on the things that we love about the present moment. Instead of saying that we're going to have an amazing day we can say that there are things that we are looking forward to in this project and we hope we can work on them soon. Instead of filling your day with stories of dread and doom you can focus on the little victories along the way. (Yes, even something as small as "my computer booted without crashing" can be a victory.) Our intention can be to have a great next 10 minutes (in our focus containers from the previous chapters) and keep working with that intention throughout the day. They won't all be perfect (perhaps your computer is being extra stubborn today) but we can re-calibrate for the next 10 minutes to see if that container might be better.
+Rather than being attached to these grand stories we can focus more on the things that we love about the present moment. Instead of a story that you're going to have an amazing day you could focus on the aspects of your project that appeal to you and hope that you can work on them soon. Instead of filling your day with stories of dread and doom you can focus on the little victories that happen along the way. (Yes, even something as simple as "my computer booted without crashing" can be a victory.) One of those little victories could be setting an intention to remain focused and curious for the next 10 minutes (the focus container from previous chapters) and celebrating when you make it through that intention. You can get more little victories as you keep working with that intention throughout the day. Our little victories won't all be perfect (perhaps your computer is being extra stubborn today), but we can use them to re-calibrate our day for the next 10 minutes and keep using them to re-calibrate throughout the day as each container of focus becomes another little victory.
 
-Giving ourselves the power to focus more on the present and the very next steps we're about to take gives us the freedom to re-calibrate as the day progresses. We can focus on the positive aspects of what we're doing instead of seeing how reality is diverging from our internal stories. We can course-correct throughout the day and try to trend towards a more productive day rather than see how distant we are from our ideal day and wonder if there's any point to doing any of it.
+Giving ourselves the power to focus more on the present and the very next steps we're about to take gives us a mindful way to check in with ourselves and our progress. We can focus on the positive aspects of what we're doing instead of worrying how reality is diverging from our stories. We can course-correct throughout the day and keep trending towards a more productive day rather than fretting about how distant we are from our ideal day.
 
-This will take practice. We're accustomed to letting our stories drive our day. But over time we'll be able to break our day into chunks where we can be more flexible with our stories.
+This will take practice. We're accustomed to letting our stories drive our day, but over time we'll be able to break our day into smaller chunks where we can be more mindful of stories we tell ourselves.
 
 ## Awareness in action
 
-Say that in this moment we're feeling anxious. We've just received a bug report and it's related to something we've been working on. The bug report states that code that we committed earlier isn't working and probably has never worked the way we thought it worked. As we read the bug report our anxiety levels increase. Our inner monologue kicks in and we start telling ourselves that we aren't nearly as good as we thought. We're not perfect. We suck. We didn't get enough sleep the night before so our emotions are in a state of heightened awareness. Our mind races and flashes images of the other times when we've failed. As we keep reading our sense of dread kicks in. Our internal monologue kicks in: "What will they think of me? What do they think of me now? Am I going to lose my job over this?"
+Let's pretend for a moment that it's a typical day for us. Today we're feeling anxious. We've just received a bug report and it's related to something we've been working on. The bug report states that code that we committed earlier this year isn't working and likely never worked the way we thought it worked. As we read the bug report our anxiety levels increase. Our inner monologue kicks in and we start telling ourselves that we aren't nearly as good as we thought. We're not perfect. We suck. We didn't get enough sleep the night before so our emotions are in a state of heightened awareness. Our mind races and flashes images of the other times when we've failed. As we keep reading our sense of dread kicks in. Our internal monologue becomes a frenzied chatter: "What will they think of me? What do they think of me now? Am I going to lose my job over this?"
 
-Before we've even finished reading the bug report we've created a story. The story begins with a montage of our past failures and adds this latest bug report to that montage. Our story then ratchets up the pressure by raising the stakes of the importance of this bug report: not only do we have to fix whatever broke but now we have to fix our reputation and start a job search. As the story progresses in our minds we're wondering if we'll ever work as a programmer again, and feel that our career as a programmer is over.
+Before we've even finished reading the bug report we've created a story. The story begins with our own anxiety for what will happen during the day. Then the worst happens: we get something that confirms our fears. The story then presents us with a montage of our past failures and adds this latest bug report as a capstone to the montage. Our story then ratchets up the pressure by raising the stakes of the importance of this bug report: not only do we have to fix whatever broke but now we have to fix our reputation and start a job search. As the story progresses in our minds we wonder if we'll ever work as a programmer again, and feel that our career as a programmer is over.
 
-The story we've created isn't a pleasant story, but I'm sure you can relate to the factors that generate it. You've probably had similar stories play out in your head. It's a story that draws from the rich lakes of our insecurities and feelings of inadequacy. It's fueled by fear: fear that you'll ruin your reputation, fear they won't trust you, and fear that you'll fail.
+That story we created is a terrible story, but I'm sure you can relate to the factors that generate it. It's a story that draws from the deep pools of our own feelings of inadequacy and insecurity. It's fueled by fear: fear that you'll ruin your reputation, fear they won't trust you, and fear that you'll fail.
 
 Fear is one of the most powerful emotions we have but it's not the only one. Reading that bug report may also elicit other emotions like grief (we thought that code was good and now that thought is gone.), uncertainty (how will we fix the problem?), and anger (how could we have deluded ourselves into thinking this worked?). We may also feel other feelings: sadness, loneliness, and abandonment. Our sense of self worth may also be affected, and we could feel disconnected from those whom we serve and the folks we work with.
 
 Being aware of these feelings can help us diagnose the story we told ourselves and how it didn't match reality. These feelings and the story we told ourselves can give us feedback on how we are perceiving our world and the work we're doing. Pausing for a moment to acknowledge our feelings and understand where they are coming from give us an understanding of what our emotions are trying to tell us.
 
+You can relax now. The bug report in this book isn't real, but take a moment to recognize the feelings that you felt when you read the above section and notice where your mind went. That's the kind of awareness we're seeking to have.
+
 ## Finding our feelings
 
-Our feelings manifest themselves in our bodies in many different ways. Fear can be a knot in our stomach or tension in our chest. Anger can make our head feel hotter, or we can feel our jaw clenching. When we notice these feelings we can pause for a moment and just sit with our feelings and keep noticing them. Think of this exercise as though you are scanning your body looking for the source of the feelings you have. Notice where your mind is drawn: tightness of your chest, tightness in your stomach, a clenched jaw, or whatever you may feel. Notice the sensation of that feeling. You can dig deeper and try to find the underlying causes of the feeling but for now just notice that it exists. Sit for a few moments more and be curious about how it feels. Let the feeling exist --- be kind and gentle with it. Give it space. Above all don't try to fight the feeling or wish that it would end; just notice it. Eventually the feeling may subside but for now just acknowledge that you have this feeling and you're going to be curious about it.
+Our feelings manifest themselves in our bodies in many different ways. Fear can be a knot in our stomach or tension in our chest. Anger can make our jaw clench or make our head feel hotter than normal. Sadness can feel like a weight upon our shoulders, or make us feel tired. When we notice these feelings we can pause for a moment and just sit with our feelings while we keep noticing them. Think of this exercise as though you are scanning your body for the source of the feelings you're having. Notice where your mind is drawn: tightness of your chest, tightness in your stomach, a clenched jaw, or whatever you may feel. Notice the sensation of that feeling. You can dig deeper and try to find the underlying causes of the feeling but for now just notice that it exists. Sit for a few moments more and be curious about how it feels. Notice any other attributes about that feeling: color, texture, intensity, or any other attributes you're experiencing. Let the feeling exist --- be kind and gentle with it. Allow it to exist without judgment. Give it space. Above all don't try to fight the feeling or wish that it would end; just notice it. Eventually the feeling may subside but for now just acknowledge that you have this feeling and you're going to be curious about it.
 
-Some feelings and emotions may be more painful or traumatic than others. Give them space and be curious about them for as long as you are able to. If you notice yourself starting to panic or feeling overwhelmed by these feelings then you may stop before they overtake you. Remind yourself that these are emotions and are a part of you. You and your emotions work together. You're on the same team.
+Some feelings and emotions are be more painful or traumatic than others. Give them space and let yourself be curious about them for as long as you are able to. If you notice yourself starting to panic or feeling overwhelmed by these feelings then you may stop noticing them before they overtake you. Remind yourself that these are emotions and those emotions are a part of you. You and your emotions work together to help you. You're both on the same team.
 
-This exercise isn't about dwelling in or punishing yourself with your feelings. If the act of noticing these feelings is causing you pain and anguish then you may need some help from a professional or a support group to help guide you in understanding these feelings and where they come from. There is no shame in finding others to help you along your journey.
+This exercise isn't about dwelling on or punishing yourself with your feelings. If the act of noticing these feelings causes you to experience physical or emotional pain then you may need help from a professional or a support group to help guide you in understanding these feelings and where they come from. They can help you to have those feelings without having those feelings overwhelm you. There is no shame in finding others to help you along your journey.
 
 ## Emotional Triage
 
-There's a tendency to want to run away from our feelings, or try to suppress them. Our feelings aren't always pleasant and we want to avoid things that make us unhappy or uncomfortable. And we want our internal narrative to be one of someone who is smart and capable of doing anything we put our mind to doing. But when we feel negative emotions or fail to live up to our stories we start to feel crappy about ourselves. We wonder if this is worth it and wonder if we will ever be happy working with computers.
+One of our learned behaviors with our feelings is to run away from them or try to suppress them. We do our best to avoid feelings that make us unhappy or uncomfortable. We also try to hold back our positive feelings lest we show too much exuberance. This can lead us to be confused or conflicted about what we're feeling and why we're feeling that way. By sitting with our feelings and emotions and understanding where they're coming from we can get a clearer idea of what our mind is thinking and the story we're telling ourselves.
 
-Think of this practice as emotional triage. Hopefully you've never had to go to a hospital emergency room, but if you have you'll see a whole string of doctors and nurses who are trained to diagnose what just walked through the door and determine the severity of the problem. When we recognize that we're having an emotion we too are diagnosing what emotion we're having and the severity of the emotion. We take these moments when we're having these emotions to see what the emotion is. As we review our emotions we are gentle with them and see them for what they are. A good doctor or nurse doesn't impose their own desires on the patient; they simply accept the patient for who they are, diagnose what brought the patient in to see them, and act accordingly. When we recognize our emotions for what they are and determine where they are coming from we can better understand what we're facing. 
+Think of this practice as emotional triage. Hopefully you've never had to go to a hospital emergency room, but if you have you'll see a whole array of medical professionals who are trained to diagnose what just walked through the door and determine the severity of the problem. When we recognize and reflect on our emotions we too are diagnosing what emotions we're having and the severity of those emotions. We take these moments when we're having these emotions to determine what the emotions are and what triggered those emotions. As we review our emotions we are gentle with them and recognize them for what they are. A good medical professional doesn't impose their own desires on the patient; they simply accept the patient for who they are, diagnose what the patient is experiencing, and act accordingly. When we recognize our emotions for what they are and determine where they are coming from we can better understand what we're facing. 
 
-The more we do this practice the better we'll become at recognizing our emotions and why we're having them. We'll be better able to see what we're feeling and understand why we're feeling them. When we feel anxious we can recognize that we might be in an area of development where we don't fully know what we're doing. We can then feel the anxiety for a bit (don't try to chase it away just yet) and then think about what we're currently working on and the areas that might be new to us. We can then mentally note them, or (better still) write them down or journal them so when we complete what we're doing we can review the areas that caused us anxiety.
+The more we do this practice the better we'll become at recognizing our emotions and why we're having them. We'll be better able to notice what we're feeling and understand why we're feeling that way. When we feel anxious we can recognize that feeling might be because we're exploring an area of programming where we don't fully know what we're doing. We can feel that anxiety for a bit (don't try to chase it away) and then think about what we're currently working on and how we can explore those areas that are new to us. We can then mentally note those areas or write them down (preferably in a journal) so that when we complete what we're doing we can review the areas that caused us anxiety.
 
-With this practice we can turn our emotions from something that drives us into something that guides us. We can use our emotions as a tool to better calibrate our internal stories. We can stop telling ourselves stories that we're going to be  amazing programmers who generate enormous amounts of production-ready, bug-free, readable code (which is not only fiction, but borders on the realms of legend and myth). We can instead tell ourselves that we're going to spend the next 10 minutes exploring this area of our work and see where the gaps are. We can be curious about where this next 10 minutes will lead us. As we continue to explore we can notice our emotions and anxiety. We can then use our emotions and anxiety to let us know where we feel we need to improve and adapt. This will allow us to change our plans as needed and address those areas we feel are lacking or need improvement. This cycle continues with each practice container, with our emotions acting as a barometer for our comfort level with this topic, and a road-map for how best to proceed. We turn our discomfort and anxiety into indicators of where we feel we need to focus our attention.
+With this practice we can turn our emotions from something that drives us into something that guides us. We can use our emotions as a tool to better calibrate our internal stories. We can re-frame our stories about how we're unworthy of being called programmers and instead give ourselves the intention that we're going to spend the next 10 minutes exploring this area of our work and find where the gaps are. We can set an intention to be curious about where this next 10 minutes will lead us. As we continue to explore these topics we'll notice our emotions and use those emotions to let us know where we feel we need to improve and adapt. This will allow us to change our plans as needed and address those areas we feel are lacking or need improvement. This cycle continues with each practice container, with our emotions acting as a barometer for our comfort level with this topic, and helping us draft a road-map for how best to proceed. We transform our discomfort and anxiety from things that hinder our progress into indicators of where we feel we need to focus our attention.
 
 ## Burnout
 
-One thing that our emotional triage can help us diagnose is feeling burned out. Burnout is a collection of emotions coupled with emotional and physical exhaustion. Burnout can be something as simple as being bored or overworked but it can also be the sign of something more serious. Burnout can lead to physical or mental complications if we're not careful. We can work ourselves into serious levels of exhaustion and delude ourselves into thinking it's part of the price we have to pay as programmers.
+One feeling our emotional triage can help us diagnose is the feeling of being burned out. Burnout is a collection of emotions coupled with emotional and physical exhaustion. Burnout can be something as simple as being bored or overworked but it can also be the sign of something more serious. It can lead to physical or mental complications if we're not careful. We can work ourselves into serious levels of exhaustion and delude ourselves into believing it's part of the cost of being a programmer.
+
+Burnout manifests itself in different ways. For some it may be the feeling of dread while working on a project. They feel like they are ineffectual in making any changes. For others burnout can be feeling exhausted. They feel as though they're on a treadmill that will not stop. Worse, they wanted that treadmill to stop a long time ago. Burnout can also manifest in feeling creatively drained, where imagining a different future is difficult and things that were once inspiring or interesting no longer generate that spark.
 
-Burnout manifests itself in different ways. For some it may be the feeling of dread while working on a project. They feel like they are ineffectual in making any changes. For others burnout can be feeling exhausted. They feel as though they're on a treadmill that just will not stop. Worse, they wanted that treadmill to stop a long time ago. Burnout can also manifest in feeling creatively drained, where imagining a different future is difficult and things you used to find inspiring or interesting no longer generate that spark.
+### FIXME
 
-Burnout is tricky to self-diagnose because it is a collection of seemingly unrelated emotions. Our feelings of boredom, fear, exhaustion, and anxiety can all have different root causes, but when we combine them with an unrelenting working schedule and loss of control we amplify those feelings. Left unchecked we can lead ourselves into trying to numb out those feelings. We find ourselves not wanting to program anymore, and resent ourselves for ever getting into programming in the first place. We can cause ourselves more undue suffering by just "powering through it" which can lead us to compound and complicate our emotional state.
+Burnout is tricky to self-diagnose because it is a collection of seemingly unrelated emotions. Our feelings of boredom, fear, exhaustion, and anxiety can all have different root causes, but when we combine those feelings with an unrelenting work schedule and loss of control we amplify those feelings. Left unchecked we can lead ourselves into trying to numb out those feelings. We'll find ourselves not wanting to program anymore, and resent ourselves for ever getting into programming in the first place. We can cause ourselves more undue suffering by just "powering through it" which can lead us to compound and complicate our emotional state.
 
 There are some things we can do to understand and help alleviate burnout:
 
@@ -128,34 +132,32 @@ Asking for and receiving help is a skill and like any skill it needs practice. W
 
 ## Giving up
 
-### FIXME
-
-Programmers don't like to think about giving up. How many times have we told others to be patient when we're trying to fix something that's not working? ("Just a few more minutes, honest!") We work on machines that have so many possibilities that we feel we should be able to make anything work on them. But sometimes we don't want to see those possibilities. Sometimes we look at the list of things we should be learning and wonder if it's all worth the effort. We look at job postings for our set of skills and find nothing but lists of meaningless work. New programmers ask us what it's like to be a programmer and we consider if we should warn them that the decisions we made led us to being unhappy and unfulfilled. The joy that sustained us while learning the craft disappears and we struggle with the fear that we will never cultivate that feeling again.
+Programmers don't like to think about giving up. How many times have we asked others to be patient while we try to fix something that isn't working? ("Just a few more minutes, please. Honest!") We work on machines that feel like they have limitless possibilities, and as programmers we feel compelled to explore those possibilities. But sometimes we don't want to do that exploration. Sometimes we look at the list of things we should be learning and wonder if it's worth the effort. We look at job postings for our set of skills and find nothing but lists of meaningless work. New programmers ask us what it's like to be a programmer and we consider if we should warn them about the dangers of choosing a career that led us to being unhappy and unfulfilled. The joy that sustained us while learning the craft disappears and we struggle with the fear that we will never cultivate that feeling again.
 
-Programming isn't for everyone. There are times when I've wondered if I should be working as a programmer. I feel as though I can't learn everything that I need to know, and wonder if what I'm learning will still be relevant by the time I'm finished. Will I be able to compete in a job market where I feel like everyone has a head start? I struggle looking at job positions that offer work that I don't think will matter six months from now, let alone 10 to 100 years from now. I feel like the computing future I was promised was corrupted and we're stuck in a world where computers are little more than levers for companies to pry open the wallets of their customers.
+Programming isn't for everyone. There are times when I've wondered if I should continue working as a programmer. I'm frustrated that I can't possibly learn everything that I want to know. I worry if I'm learning will still be relevant by the time I'm finished. I'm anxious that I won't be able to compete in a job market where everyone else seems like they got a head start. I struggle looking through job positions that offer work that I don't think will be relevant six months from now, let alone 10 to 100 years from now. I feel like the computing future I was promised has been corrupted and we're stuck in a world where computers are little more than levers for companies to pry open the wallets of their customers.
 
 It's easy to become fatalistic about the practice of programming but I've realized that there's more to computing and programming than what the job market has to offer.
 
-Part of the joy of programming is the curiosity. If we can continually tap into that curiosity then we have so many avenues to explore. There are always topics and ideas to discover, including areas like game development, esoteric languages, or other programming paradigms. What the job market uses is but a fraction of what is out there waiting to be explored. There's also a whole host of emulators and retro-computers available with good documentation and vibrant communities. One of the things that has intrigued me is learning how older computers work. Older computers are simple and can learned rather easily with the right mindset. They are well-understood and older programs were generally put together by one programmer.
+Part of the joy of programming is curiosity. If we can nurture our curiosity while programming then we have so many avenues to explore. There are always other ideas and other topics to discover, such as game development, esoteric languages, or other programming paradigms. The job market uses a fraction of the programming ideas that are out there, waiting to be explored. There are also many emulators and retro-computers available with good documentation and vibrant communities. One area that has intrigued me is learning about how older computers work. Older computers are simple and can be learned with patience and the right mindset. These machines are well-understood and most of these older programs were put together by one programmer. They make an excellent space for learning not only how older machines worked, but many of the concepts that still permeate our modern machines.
 
-But there can also be the realization that there's no joy left for us in programming. The thought of programming no longer excites us and even the thought of trying something new fills us with dread. We no longer want to even try. What then?
+But we might realize that there is no joy left for us in programming. The thought of programming computers no longer excites us. Even the thought of trying something new fills us with dread. What then?
 
-If we no longer find joy in programming then we need to understand why we feel that way. Perhaps we're tired and have been through a project that sapped the fun and excitement of programming for us. Or we've found that the communities online and in our area are hostile and unwelcoming. Maybe we thought programming would be fun but every time we start we wish we were doing something / anything else instead.
+If we don't find any joy in programming then we need to understand why we are feeling this way. Perhaps we're tired after a rough project that sapped all of the fun and excitement of programming for us. Or perhaps we've found the communities online and in our area are hostile and unwelcoming. Maybe we thought programming would be more fun but every time we start we wish we were doing something / anything else instead.
 
-Programming is not for everyone. Programming is something that is best when you really want to do it. If you're stuck in a situation where you don't want to do this anymore then it's perfectly reasonable to step away from it and give up. There's no shame in this at all --- many programmers have felt they lost the spark and the desire to keep programming and have gone into other fields. It's OK to leave the work of programming computers and do something else.
+Programming is not for everyone. Programming is at its best when you really want to do it. If you're stuck in a situation where you don't want to program anymore then your best course of action is to quit being a programmer. There's no shame in quitting programming --- many programmers have lost the spark and the desire to keep programming and have gone into other fields. It's OK to leave the work of programming computers and do something else.
 
-Programming is only one facet of our lives. True, it may be a big facet of our lives, and it may feel scary to give up something that we've worked so hard to accomplish. But if we examine our feelings and realize that we're just going through the motions, or find that we're no longer experiencing any joy in programming then it's time to think about what else we can be doing with our lives outside of programming. We're granted a limited amount of time to live our lives and doing something we don't enjoy robs us of a meaningful life.
+Programming is only one facet of our lives. True, it may be a big facet of our lives, and it may feel scary to give up something that we've worked so hard to accomplish. But if we realize that we're just going through the motions and are no longer experiencing any joy in programming then it's time to think about what else we can be doing with our lives outside of programming. We're granted a limited amount of time to live our lives. Doing something we don't enjoy robs us of a meaningful life.
 
-Giving up doesn't have to be a negative experience. Taking time away from being a programmer is perfectly fine and is not a mark of shame. Plenty of programmers have taken a "sabbatical" from programming to allow themselves to explore other interests and recharge themselves. Breaking the loop of negative experiences in programming can help us clearly see what we want out of programming and a programming career. It can help confirm our innermost feelings about programming and see if it's right for us to pursue any further.
+Giving up should not be a negative experience. There is no shame in taking time away from being a programmer. Plenty of programmers have given themselves a "sabbatical" from programming to explore other interests and recharge themselves. Breaking loops of negative experiences in programming can help identify what we want out of programming and a programming career. It can help us find and confirm our innermost feelings about programming and see if we're still meant to keep pursuing this path.
 
-There are several fears that can keep us from making this break with programming. The first fear goes by the fancy name of the "sunk cost fallacy". The sunk cost fallacy is the belief that we have invested so much time and effort into learning and development that will be wasted if we quit. I would argue that learning any sort of programming is not a wasted skill and can be applied to many facets of our lives, such as simplifying tasks into manageable steps, structured thinking, and basic Boolean logic. Other fields  have also adopted computers so having some skill with computers and how they work can be helpful for yourself or other colleagues who are struggling to learn the technology.
+There are several fears that can keep us from making this break with programming. The first fear goes by the fancy name of the "sunk cost fallacy". The sunk cost fallacy is the belief that the time and effort we spent learning and developing is an investment, and that investment will be wasted if we quit. Thus, in order to preserve our investment we must keep programming. The problem with this fallacy is that it assumes you have not already received the benefit from that time and effort. I'd argue that learning any sort of programming is not a wasted skill. Programming can be applied to many facets of our lives, such as simplifying tasks into manageable steps, structured thinking, and basic Boolean logic. Many other fields have also adopted computers so having computer skills can be helpful for yourself or other colleagues who are struggling to learn the technology. The knowledge you have will not go to waste.
 
-The second fear is that if we stop programming then we are letting down our fellow programmers in some way. This one is tricky because we might be on a team where we have a large load of tasks to complete and our decision to quit may mean these tasks won't get done the way we wanted them to get done. Or we may fear that our absence will cause harm to the enterprise and its eventual collapse. This fear requires us to choose between which is more important: our well-being or the well-being of others. It also requires us to explore whether those fears are true or whether they are groundless. Are we really that irreplaceable or could someone take our place? The answer might be "no, but I need to leave this situation or I will cause harm to both of us if this continues". Thinking in terms of the well-being of both yourself and the organizations you belong to from a longer-term perspective may help you make this decision.
+The second fear is the fear that we'll let down our fellow programmers and others in our organization if we stop programming. This one is tricky. It's tricky because it includes others in our decision-making process. We might be in an organization that has a large load of tasks to complete, and our decision to quit will mean these tasks won't get done the way we wanted them to get done. It's not hard to imagine our absence causing harm to the entire organization and resulting in its eventual collapse. Is this scenario true? It's up to us to tease out whether our absence will truly let everyone in our organization down. This puts us in a situation where our fear leaves us feeling stuck. We feel stuck because our fear has created a situation where we're choosing between our own well being or the well being of others. But this can be a false dichotomy. Our absence might be the catalyst for someone else to pick up our tasks and work on them. We need to ask ourselves if we are really irreplaceable for this organization or could someone take our place? The answer might be "I am irreplaceable, but I need to leave this situation or I will cause harm to both myself and others if this continues". It's up to us to review if we are helping ourselves and the organizations we serve, or if we are harming them and ourselves by continuing to delude ourselves that this is working. 
 
-The third fear deals with our own personal fears of identity and the memory of our community. If we decide to stop being a programmer will that somehow erase a part of our identity? Will our community stop identifying us as a programmer and will we lose contact with folks that have become friends, colleagues, and such? Again, this fear is tricky to overcome because programming may be a large part of the identity you have crafted for yourself. Letting go of that can lead to feeling less like yourself. And the fear that folks will stop calling you for programming projects can be compounded if you decide to take a break from programming (especially if this break is temporary).
+The third fear deals with our own personal fears of identity and the memory of our community. If we decide to stop being a programmer will that somehow erase a part of our identity? Will our community stop identifying us as a programmer and will we lose contact with folks that have become friends, colleagues, and such? Again, this fear is tricky to overcome because programming may be a large part of the identity you have crafted for yourself. Letting go of programming can lead to feeling less like yourself. And the fear that folks will stop calling you for jobs or other programming projects can be compounded if you decide to take a temporary break from programming. If the break is temporary will people move on from thinking of you as a programmer during your absence.
 
 Each of these fears is a valid fear, but they may not be the truth. We can't control how others perceive us or how organizations move on without us. What we can control is our participation in each of these communities. We can determine if a hard break from programming would be better than gradually easing ourselves out of our commitments. We can clarify to others what our current status is and if this is something that is permanent or temporary. But what is most important is that we don't let others persuade us into doing something that is not what we want or is harmful to us. If we need to stop programming because we are emotionally drained and burned out then we need to make it clear to others that we will be doing as disservice to them and ourselves if we continue.
 
-Mature communities will understand the need to take a break and stop programming. They will understand that your mental and emotional well-being is more important for you than their need for you to continue. And they will be able to piece together what needs to be done and heal from your absence. It is natural and normal for folks to move on from organizations and pursue other priorities. 
+Mature communities will understand the need to take a break and stop programming. They will understand that your mental and emotional well-being is more important than their need for you to continue. And they will be able to piece together what needs to be done and heal from your absence. It is normal and natural for folks to move on from organizations and pursue other priorities. 
 
 What's important to remember is that it's OK to turn off that portion of your being and stop being a programmer. Whether or not you make that a permanent change is up to you and your desires. Feeling emotionally drained, uninspired, and burned out is counterproductive to your programming practice --- programming is hard enough. Taking a break from programming to explore other interests is natural and doesn't mean you're less of a programmer for wanting to do something different to recharge yourself. If you find that you're happiest when you're not programming then pursue whatever else has your attention with wild abandon. If you decide to return to programming after being away for a bit then you can return and pick up your learning practice. Remember: our lives take many different turns and paths. The best path for you is the one you make yourself, regardless of where that might lead.