How I Study
This is something I’ve had to perfect over the years for so many different reasons – studying correctly. Recently I was on the Art of Network Engineering Podcast, and I’m going to be totally honest. I was not expecting them to come right out of the gate and ask me if I was bad at anything. I had never really thought about it in their context. They only see “Knox, trainer.” Or “Knox, YouTuber who is doing some training.”
That led to an interesting conversation where I had to demystify what it means to be a CBT Nuggets trainer and how it is that I create content. During the podcast I said that there are two types of trainers – those who train on stuff that they are really, really good at, and those who train on stuff that is way out of their comfort zone. I am the latter.
This image was the first time I ever configured PAT on a cisco router. It was taken April 30, 2016. At the time of this writing, that was about 4.5 years ago. I was one month into my new role working in an MSP. Also worth pointing out, in my first week working at the MSP, I had to have someone show me how to sign out of Windows 10. That’s how green I was.
More importantly. that’s how uncomfortable I was. 4 years later, I still remain that uncomfortable. Embracing the discomfort is what fuels me. And having fuel is the first major step to learning how to study.
I don’t remember who said, or what specifically was said, but this is the honest truth about working in I.T. If you want to be successful, accept the fact right now that your job is really just to learn and study. You don’t have to go crazy with it – you don’t have to get a new certification every month or be on the bleeding edge or anything. You just have to be intellectually curious in order to advance. So the first step to learning how to learn is just accepting that your job is to learn, because that is how quickly tech moves sometimes.
Ok, that’s great. But how do I learn??
Now pictured, my first real homelab. I still have that server to this day, and I’ve documented it quite a bit on my YouTube channel. So it shouldn’t come without a surprise that I think the most important way to learn something is to do something.
Cliché AF. I know. But it’s real. When it comes to learning something new, you have to TRY. You have to keep trying. You may be stuck on something for days. I’ve been stuck on something for days before, too, even recently. For instance, RESTCONF. It’s a relatively new protocol, only a few years old at this point. There simply aren’t a lot of training resources out there on it for the finer details.
Ok, so I’ve accepted the fact that learning is a part of the job and that I should just get used to being thrown into technologies that I don’t understand. I’ve got the hardware to study anything (thanks, EVE-NG!). But now it’s time to dive in.
So my first step when learning anything is start searching for video training content. In my experience, video training content is the starting point because it usually – and I do mean usually – has a human aspect to it. When people record training, they usually deliver training in a conversational way. This is why I’ve gone with CBT Nuggets first from day one (which was October 2015 when I began my certification journey). I still go to CBT Nuggets first when I need to learn something – I can’t stress that enough. I still prefer them, their style, and their content method. In worst case scenarios, I will go to other training platforms and YouTube. Usually, this gets me about 33%-50% the way there.
I also attempt to lab whatever I am learning at the time that I am learning it. This is usually where things start to get hairy, because somehow or other, I create use cases for myself that are hard. Circling back to RESTCONF, recently I found myself in a sticky situation. What happens when I need to create a URL straight down to the point of finding the adjacency status of an OSPF neighbor? The use case (read: lab) that I created for myself was pretty simple – I want to make config changes to my lab, but never have an OSPF adjacency flap.
Look at that nasty URL. How did I get to that point? First, I accepted the fact that I had to take a step back in order to take a step forward. It was time to learn how to interpret YANG data models properly, and subsequently learn tools that help you interpret complicated YANG data models (in this case, Pyang). That set me back a few days. But understanding YANG, the path forward to the URL became clear. The URL just follows the path of the YANG model to the leaf you care about, but you have to specify values to help target the correct neighbor. It gets worse when you have to specify multiple values in the same URL path (like in /ospf-instance above). The ospf-instance endpoint requires two keys – the address family, as well as the router ID. Further, the Router ID that you specify is the full 32 bit value rather than the dotted decimal.
So I knew I had to specify two values, but I had no idea how to format that. I tried query strings (?address-family=ipv4) or ampersands (address-family-ipv4&39384848). Nope, didn’t work. The correct answer is to specify multiple values in RESTCONF URLs with a comma. And I only found that by reading the RFC.
This is just how deep I have to go sometimes when the answer isn’t out there. Look, you can learn just about everything there is to know when it comes to learning routing protocols. OSPF, BGP, EIGRP – they’ve been covered for decades. But network automation? New protocols? SDN? There’s only one way, and that’s brute force learning. You have to get your hands on it and throw yourself into tough situations. Then you just have to scour the world until you find the answer. It’s somewhere out there. YouTube. Message boards like Cisco forums, Reddit, Discord channels, and if worst comes down to it, you hit up the original RFC that outlines every detail of how the protocol works.
Now if I’m getting serious about going for a certification? Then I have to spend some time with the textbooks, and it usually is multiple textbooks. For example, if I am going for an Associate level exam, one of the first things I will do is look at the Professional level exam blueprint. Then I will identify a few topics where I go “hey, that looks cool. I want to learn the associate level stuff, but then I want to take it a step further and do the Professional items, too.” That, again, keeps me OUT of my comfort zone and pushing further than I need to be.
And if I’m still dead serious about the exam after that point, I will go for Boson practice exams. They always fill in the gaps and get me ready for the types of questions that the exam will ask. Basically it gets me in the right frame of mind.