Some of the things I can now fully appreciate after finishing most of the core curriculum
After completing the majority of Launch School and working professionally in automation a recent Launch School Core grad hit me with a truth hammer and it compelled me to write this article. I don’t usually write anything, but this was so important to me I felt like I needed to share it with the world, so without further ado. Some of the things I can now fully appreciate after finishing most of the core curriculum:
take it slow and realize why you are doing what you are doing, and why slowing down is worth it.
I was talking to someone else that recently finished the core curriculum and I was curious how he managed to get through it so quickly. I was also complaining why learning a specific new technology topic (the technology in question is not important) was taking so long and why I was not learning it more quickly. He gave me some rather interesting insight that I never thought about before, and honestly wished I would have had this advice when going through the Core program.
“When you treat learning as something to get through as quickly as possible, then you aren’t really focused on what you are doing. You are only focusing on what comes after.”
“When you try to rush through learning, In my experience I get distracted easily and can’t focus very long. I look for excuses to do anything else but study.”
This had a rather profound impact on me as I reflected on what he said and realized that in my personal life I am always focused on what is next. What is going to be my next job? What is going to be my next project? How can I get through this as quickly as possible? With 2 kids and a wife, it is hard to slow down and fit everything I need to do in one day. Let alone sit down and study for 2+ hours a day for the next year. When I was in launch school I never felt like I was progressing fast enough, and studying was always a dreaded affair. When I had to sit in front of my computer to work on problem number 342, it always felt like nothing was getting done. This led to me absolutely despising some of the exercises and courses in launch school because I never thought the time I was dedicating to learning was productive enough. Things like WHY the heck does Launch School make me work with matrices? WHY am I spending so much time solving all of these useless problems? The problems are just repeating themselves! WHY do I need to know these specific methods or functions to solve these problems? Closures? I never use closures at my job. Why can’t I just move on to the next exercise and get to the new content that is meaningful?
I grunted and grumbled and cursed my way through 101, 120, 130 and 170 because I wanted to work on meaningful projects and meaningful topics. And ultimately I just wanted the content that would be relevant for my job. When you are working a professional job it’s always about deadlines and getting things done as quickly as possible. This is the complete opposite mentality that you need when you learn something in depth and have to have mastery over the topic. Once I shifted to a more programming centric job I realized how valuable those exercises taught at Launch School actually were. Which leads me to my second part:
You will never look at some of the code you wrote ever again, but that doesn’t mean what you wrote is worthless.
I had an epiphany at work the other day as I was working through this crazy nested Json file. The way they teach is absolutely worth the time and effort. Almost every little detail, nuanced case, specific methods and things you are learning in your language of choice have a purpose. Even if that purpose doesn’t come knocking at your door until months later. That one liner that you read in the OOP book and thought you would never use? It actually is important. Closures? Who the heck uses those? (YEP, I now use them daily). All that network information? WHY!? (yep again…I need to know network topics on the daily when working with web apps). While I have forgotten a lot of the details, the core topics are always at the tip of my tongue to recall or find later.
Everything I was working on for that particular problem was just something that was a bit more advanced than what I learned in Launch School, but the underlying theory was the same. Turns out everything I learned at Launch School kind of followed the same model. APis, how to push and pull data from a web app, shallow copies vs deep copies, accessing data in an array, pass by reference vs pass by value. They all have their practical use on the daily, just in more advanced versions of what Launch School teaches. That UUID exercise that I originally thought was worthless? I had to write a more advanced version with GUIDS for an AWS project that I am currently working on. All those hundreds of problems that I originally thought were worthless to solve and code for? Welp… I can tell you honestly, I don’t use everything I learned in Launch School; but, the foundation that I obtained going through everything has given me the ability to recall core concepts by the tip of my tongue. Solving problems, while not always a breeze, I have the tools in my tool belt to break them apart and arrive at a solution.
Once I learned to go slowly. I found out that not only can I study for much longer periods of time, but I understand and absorb the material better as well. I don’t have to go through the material two or three times to memorize what I need to know to pass the assessment. I already had it all jotted down in flash cards and notes that I took throughout the Ruby track.
I don’t know if it is a stroke of genius on the part of Launch School where they discreetly make you learn all these facts and troubleshooting patterns through all of their exercises which results in a disciplined student at the end. OR if it was a very deliberate effort to ensure that no matter what, their students will be disciplined by the end of Launch School, but I greatly appreciate the outcome that it has provided for me.
A little bit about me:
I am a Devops Engineer in San Francisco with a heavy emphasis in automation. I was originally a systems Administrator and was promoted to a Devops engineer in my current company because I was able to show my ability with coding after about 18 months of working through launch school. I never finished the core curriculum but I managed to get to the last course JS(239) before I decided that I had the tools I needed to succeed professionally. Recently I was recognized by the global company with a ‘Pinnacle Award’ as an “asset to the IT team”. Which I don’t think would have been possible without Launch School.
Learning something that is worth it.. Is hard, if it wasn’t hard it wouldn’t be worth it.