--- /dev/null
+# The Journey of the mediocre programmer
+## How we got here
+
+You have your own unique story of how you got here as a programmer. Whether you found out about programming as a curious child who wanted to see what the computer could do, or as an adult who heard that there were these things called computers that you could program, you had a journey to get to this point. And you learned a certain amount to get here. You spent your free time learning how to code or you were fortunate to be able to work on it as part of your job. You went to school to learn more about programming or you took training classes. You bought books or read articles online to learn more about programming. Whatever the path you took you started the journey as a programmer.
+
+And now you feel stuck.
+
+You look around and wonder if you'll ever know everything that you should know. You read an article on a site and your interest is piqued. A friend online mentions this neat thing that they've found and expects that you should learn more about it. Your colleague found something that seems to solve the issues you're having at work and now you have one more thing to learn. Whatever it is there is now a gap between the you that exists today and the you that feels like you are incomplete without learning this new thing.
+
+Perhaps you're seeing this new thing show up in job postings with a minimum of 3+ years of required experience and you're wondering how anyone would have that level of experience yet. Or you chose to ignore that thing for a while and now it's become a driving factor in your domain of work. And now you look over the horizon of where you feel you should be and you see the gap in between where you are and where you think you should be.
+
+## The Gap
+
+I've chosen the word "gap" to describe the difference between where you are now and where you think you should be for good reason. A gap tends to be something imposed by others, whether by force or by neglect. If you have a gap in a fence it means the fence seems weaker because if the missing slats. A gap can also be something that one would need to be aware of. "Mind the gap" is a phrase that was coined in the late 1960s by the London Underground to warn folks about the space between the platform and the train cars that could lead to an unsafe situation.
+
+The gap in this case is the distance in our current abilities and where we think we should be. Sometimes they are self-imposed but more often they are externally imposed. Often they are the result of a changing industry or changing priorities and it is our job as programmers to adapt to those changes.
+
+But change can lead to stress. Stress is prevalent in programmer circles because things are often changing. What worked on Friday afternoon can be different on Monday morning because of a small point release in a library that we were using. Or our development machine was upgraded and now our code has new bugs to fix.
+
+Change can also come from outside of our domain. Our community of developers might move on to a new technology; whether that is because of professional reasons or personal reasons. We might no longer get the support we need to do our jobs and be faced with the prospect that we too need to update our skills or be left behind in an abandoned community.
+
+Not all change is because of bad events happening. The software that we use could have very good reasons for changing. New features can be introduced that require new ways of thinking about your code.
+
+But change requires time and effort in order to adapt to it. The gap can only be closed if we have the resources and time to work on it.
+
+## Closing The Gap
+
+
+++ /dev/null
-# The Journey of the mediocre developer
-## How we got here
-
-You have your own unique story of how you got here as a developer. Whether you came about development as a curious child who wanted to see what the computer could do, or as an adult who heard that there were these things called computers that you could program you had a journey to get to this point. You either spent nights and weekends learning how to code or you were fortunate to be able to work on it as part of your job. Whatever your path you're here.
-
-And now you feel stuck.
-
-You look around and wonder if you'll ever know everything that you should know. You read an article on a site and your interest is piqued. A friend online mentions this neat thing that they've found and you should check it out. Your colleagues find something that seems to solve the issues you're having at work and now you have one more thing to learn. Whatever it is there's now a delta between the you of today and the you that you that now feels like you are incomplete without learning this new thing. Perhaps you're now seeing this new thing show up in job postings with a minimum of 3+ years of required experience and you're wondering how anyone would have that level of experience yet.
The truth is we're all mediocre developers in some way. We all still ask questions and have to look up syntax and concepts in our day-to-day programming. Computers continue to add complexity to everyday programming tasks and it takes a lot of mental bandwidth to keep all of those concepts fresh in our mind.
This book is about helping you along on the journey of being a mediocre developer. Together we'll uncover some of common misconceptions we have about programming, failure, and growth and come to understand that the act of programming and development is something we undertake each day and improve in small ways. It's these small changes that over time transform us from being mediocre developers into better developers.
+
+There are plenty of books on how to become a better developer out there. Usually they have checklists and other things that the author deems important for you to do in order to become a better developer. This book will try not to saddle you with more work (you likely have enough as it is). Rather, we'll discuss what it feels like to be a programmer. We'll talk about the emotion of being a programmer; the feelings of frustration, guilt, anger, and inadequacy. We'll talk about those feelings you have of giving up and walking away from computing and whether those feelings come from a place of love or a worry that you're not keeping up.
+
+This book is a personal journey for both of us. It's a memoir of my time as a programmer and my feelings along the way. I've thought many times about giving up and finding a different career path but funnily enough doing anything other than being a computer programmer scares me even more. Does that mean I'm stuck in a perverse oroborous of self-pity and self-doubt? Hardly. It means that I need to dig deeper to understand why I chose the path of being a programmer and realize that it took a lot to get here and it's going to take a lot more to get where I want to be. It's a commitment to seeing things as they are now and moving forward from wherever I'm standing.
+
+Let's start the journey with figuring out what lead us here and where we are now.
--- /dev/null
+---
+title: 'The Mediocre Programmer'
+author:
+ - Craig Maloney
+tags: [developer, programmer, mediocre]