How Do You Teach Everything in IT?



  • So this is a question that has been bugging me for a long time. There are, TTBOMK, no books, videos, guides or even university programs that teach IT. Some things are called that, but realistically there is no program anywhere that teaches "IT". It's a bit of a problem. It's not just a problem for people wanting to enter the field, but also one for people hiring IT and for educators who actually wish to teach it.

    What I mean is... we have conversations every day. Some things are really complex and we expect well educated, constantly thinking IT people to have the tools to make decisions. Same as any field. But often, unlike in other fields, we deal with each other and there are immense gaps in what we each consider to be "base" knowledge.

    I'll give an example. For me, RAID 5 was something drilled into me in the very early days of my being in IT. It, along with other RAID levels and the factors involved with them, were standard knowledge and I had the material covered from many directions. It wasn't "I just happen to read the right book", it was knowledge that was presented and tested regularly. And not rote results but an understanding of the "why" it was so.

    In the opposite way, I was on my sixteenth year in IT, was running the largest server migration Dell had ever done, was an MCP, MCP+I, MCSE and MCSE+I along with having the full Previsor Windows Administration certification track plus all of the ancillary CompTIA certs that would associate with that world (Net+, Server+, Sec+, etc.) And yet, in dealing with a customer, they presented a tool (Robocopy) that in all my years, certs, college and experience, I have never run into, ever. (In my defence, this was in the era when it was not included in Windows but only as the additional resource kit which I never used for reasons I explained in another post.) But to the client, I was an out of touch numbskull for not knowing the main tool from Microsoft for Windows file transfers like we were doing. To them, it was the obvious tool. To me, I'd never even heard the word (MS did not include it in their cert processes or training material because of its resource kit status at the time.)

    What is "common knowledge" to one person is very often not just unknown but literally unheard of to another.

    This gets extra difficult because IT is so large and what is common to a Windows Admin is completely foreign to a Cisco Engineer and vice versa. Often the view of the field is so closed that people in one arena are completely unaware that other arenas even exist. You see this a lot in people who think that Product A is so ubiquitous that everyone must have it, know it and use it, yet it might not even be the dominant product in the market.

    We face issues not only from a technology standard (How do RAID levels compare) but in a market one (who are the key server vendors for business?)

    So my question, I think, is how do we:

    • Catalogue the knowledge needed for IT? I know of this done, literally, nowhere.
    • Create a path or curriculum for learning these things?
    • Create a means to present comprehensive basic, foundational IT knowledge?


  • I think you're already starting with some great methods here. A huge part is just getting the time resources from the right people, in a situation where you can justify working on this, over other stuff that your experience qualifies you for.

    Then you also have the scenario where it can be easy for educators to lose the leading edge, with how hard it is to continue diving into everything going on with evolution of best practices, while also finding the time to synthesize and teach what you're exposed to.

    You gave a great example of how impossible it is to avoid every last gap. With respect to your experience, the breadth of your experience after contracting in dozens or hundreds of types of projects, and your dedication to learning, how could anyone ever avoid feeling like a "half-assed" pro at least once, even if they didn't have a family, or any other interests in life?

    I guess one way to address that is adding more, qualified people to contribute to the cause.

    Really though, what you're describing is so ambitious, it's no wonder other business priorities tend to take precedence.



  • The other practical thing, as you just dive in without worrying about how impossible the ultimate goal is: ok, I collected a shitload of information. Would someone brand new have an apparent path to get started without just getting overloaded?, and Over time, can I reference something if I need to? I would say your organization is covering those types of aspects too.



  • I think there's no real way to teach "everything" in IT without doing so at a generalist level. Teach the basics of virtualization (set up labs with VMware, Xen (and XenServer), Hyper-V, KVM, et al). Teach the basics of Networking (OSI Model, subnetting, and routing, and Labs with at least TWO vendors). Teach the basics of Windows Administration, teach the basics of Linux Administration (I love the way you are doing that other series of posts!), and teach at least pseudocoding -- if not programming in various languages (PHP, C++, HTML, Javascript, CSS, etc, etc)...

    That could EASILY be a 4 or 6 year college degree or technical cetification program with certs at various levels... And that would be just for the basics.



  • @dafyre said:

    That could EASILY be a 4 or 6 year college degree or technical cetification program with certs at various levels... And that would be just for the basics.

    Easily. IT is a bigger field than nearly anything. If you look at things like law, medical, etc. IT is at least comparable or larger than those as a field size (unfairly because it accumulates multiple fields into one like what do database relationship designers have to do with SAN managers) and those typically take seven years of college with a certain expectation of a base of high school work (biology classes or whatever.)

    Having a guide to IT education would, in theory, allow a middle schools to pick up a curriculum and say "how do I start" and build up many years of IT knowledge before being at the ages that most fields can allow people to begin learning. Of course learning law in elementary school is perfectly possible, just not interesting generally 🙂



  • @dafyre said:

    I think there's no real way to teach "everything" in IT without doing so at a generalist level. Teach the basics of virtualization (set up labs with VMware, Xen (and XenServer), Hyper-V, KVM, et al). Teach the basics of Networking (OSI Model, subnetting, and routing, and Labs with at least TWO vendors). Teach the basics of Windows Administration, teach the basics of Linux Administration (I love the way you are doing that other series of posts!), and teach at least pseudocoding -- if not programming in various languages (PHP, C++, HTML, Javascript, CSS, etc, etc)...

    I think that a base of IT knowledge would always be generalist knowledge. Specialists should have the same base but know specifics on top of that. No matter how specialised you are, for example, we expect people to know the ISO OSI model.



  • The scope of what you're proposing is mind boggling. It would take an organization simply to maintain it given the pace of change in IT (and the breadth of the application of that title). I'm not saying it shouldn't be done, or isn't a worthy cause, but I do not know how you would do this on a practical level.



  • @Kelly said:

    The scope of what you're proposing is mind boggling. It would take an organization simply to maintain it given the pace of change in IT (and the breadth of the application of that title).

    I wonder how much that is true. We always say that things change so quickly, but does base IT knowledge really move very quickly? Faster than mechanical engineering, surely. But fast enough to be a problem? RAID, as an example, has not changed in decades. The main OS players and how they work have been relatively static. If you had a solid base of IT in 1998, you'd be just fine today. Almost nothing has changed. Not ISO OSI, not networking, not virtualization, not encryption, not systems, not programming languages. Things are smaller, faster and cheaper but in ways that were pretty much predicted back then. GPUs are the biggest hardware change.



  • At the lowest levels things are relatively unchanged. We are still using binary for computation. Most of the physical systems are, in essence, comparable to what was used 10, 20 years ago. But if you compare it to medicine for example the complexities seem larger in comparison. In medicine you constantly have to learn new drugs and techniques, but the thing you're working on remains unchanged. In addition, your day-to-day, entry level tools remain the same. In IT, aside from the most basic of diagnosis (ping, traceroute, nslookup, etc.) the tools change rapidly.

    I'm not saying this isn't a worthy goal, and should not be attempted, just that it is daunting to contemplate.



  • @Kelly said:

    At the lowest levels things are relatively unchanged.

    As long as IT education focuses on "how" things work instead of how to quickly complete tasks, I think we solve that issue. If someone knows how TCP/IP works, they rarely need to know anything new. Sure, a new interface might come out or a new feature, but learning the new stuff is much more trivial. Where I see people stumbling is when they try to learn things without understanding "why", then when things change they don't realize why they changed, that they changed and learning the new thing takes learning the whole thing over again.



  • @Kelly said:

    At the lowest levels things are relatively unchanged. We are still using binary for computation. Most of the physical systems are, in essence, comparable to what was used 10, 20 years ago. But if you compare it to medicine for example the complexities seem larger in comparison. In medicine you constantly have to learn new drugs and techniques, but the thing you're working on remains unchanged. In addition, your day-to-day, entry level tools remain the same. In IT, aside from the most basic of diagnosis (ping, traceroute, nslookup, etc.) the tools change rapidly.

    I'm not saying this isn't a worthy goal, and should not be attempted, just that it is daunting to contemplate.

    But initially, what I would want to teach would be the theorisms behind the various IT disciplines -- the generalist level stuff. That really doesn't change at such a fast pace. Things like Binary, as you mentioned, or subnetting (even in IPv6, the math behind it doesn't change... there's just more digits, lol).

    Even programming hasn't changed much. Sure, there's new languages, and the semantics are highly different between them, but the core of the code almost always looks similar in a lot of ways (at least to me). But the programming languages change relatively rapidly when compared with something like RAID, or the OSI model.



  • This is interesting as I've been wondering about this sort of thing.

    Example, Scott has been discussing with me in another thread about thinking about a LANless setup. Question is how and where do I learn this sort of thinking from. I'm self taught in all areas of IT so I still think in terms of LAN/WAN as that's what I've been doing for 14+ years, but where do you get the ideas and guidance on new ways of thinking? Is it from attending things like Spiceworld or other conferences? Or are there good online resources to see what people are doing and how?



  • @hobbit666 said:

    This is interesting as I've been wondering about this sort of thing.

    Example, Scott has been discussing with me in another thread about thinking about a LANless setup. Question is how and where do I learn this sort of thinking from. I'm self taught in all areas of IT so I still think in terms of LAN/WAN as that's what I've been doing for 14+ years, but where do you get the ideas and guidance on new ways of thinking? Is it from attending things like Spiceworld or other conferences? Or are there good online resources to see what people are doing and how?

    As iron sharpens iron, so does one person sharpen another.

    I've learned more from folks like @scottalanmiller in the short time I have interacted with him on here and in Spiceworks than I have the last 10 years I've spent in IT.



  • @dafyre said:

    @hobbit666 said:

    This is interesting as I've been wondering about this sort of thing.

    Example, Scott has been discussing with me in another thread about thinking about a LANless setup. Question is how and where do I learn this sort of thinking from. I'm self taught in all areas of IT so I still think in terms of LAN/WAN as that's what I've been doing for 14+ years, but where do you get the ideas and guidance on new ways of thinking? Is it from attending things like Spiceworld or other conferences? Or are there good online resources to see what people are doing and how?

    As iron sharpens iron, so does one person sharpen another.

    I've learned more from folks like @scottalanmiller in the short time I have interacted with him on here and in Spiceworks than I have the last 10 years I've spent in IT.

    I agree. I've learnt so much more in the last 2-3 years from just being on SW and here it's amazing.



  • @dafyre said:

    @hobbit666 said:

    This is interesting as I've been wondering about this sort of thing.

    Example, Scott has been discussing with me in another thread about thinking about a LANless setup. Question is how and where do I learn this sort of thinking from. I'm self taught in all areas of IT so I still think in terms of LAN/WAN as that's what I've been doing for 14+ years, but where do you get the ideas and guidance on new ways of thinking? Is it from attending things like Spiceworld or other conferences? Or are there good online resources to see what people are doing and how?

    As iron sharpens iron, so does one person sharpen another.

    I've learned more from folks like @scottalanmiller in the short time I have interacted with him on here and in Spiceworks than I have the last 10 years I've spent in IT.

    The biggest issue with these communities is becoming a monoculture. If any one person or group of people dominates the discussion without room for new ideas and approaches a community becomes part of the problem. This is not a passive aggressive way for me to call someone out, just something for everyone here to be careful of.



  • @hobbit666 said:

    Or are there good online resources to see what people are doing and how?

    That's what ML is!



  • @Kelly said:

    @dafyre said:

    @hobbit666 said:

    This is interesting as I've been wondering about this sort of thing.

    Example, Scott has been discussing with me in another thread about thinking about a LANless setup. Question is how and where do I learn this sort of thinking from. I'm self taught in all areas of IT so I still think in terms of LAN/WAN as that's what I've been doing for 14+ years, but where do you get the ideas and guidance on new ways of thinking? Is it from attending things like Spiceworld or other conferences? Or are there good online resources to see what people are doing and how?

    As iron sharpens iron, so does one person sharpen another.

    I've learned more from folks like @scottalanmiller in the short time I have interacted with him on here and in Spiceworks than I have the last 10 years I've spent in IT.

    The biggest issue with these communities is becoming a monoculture. If any one person or group of people dominates the discussion without room for new ideas and approaches a community becomes part of the problem. This is not a passive aggressive way for me to call someone out, just something for everyone here to be careful of.

    This is definitely true. That is one of the reasons I have stuck with IT so long. It's that with every job or project that puts me in contact with other folks allows me to make room for new ideas or new ways of thinking.



  • @Kelly said:

    The biggest issue with these communities is becoming a monoculture. If any one person or group of people dominates the discussion without room for new ideas and approaches a community becomes part of the problem. This is not a passive aggressive way for me to call someone out, just something for everyone here to be careful of.

    This is a huge problem and one that sadly plagues both SW and ML, heavily because of me. In both cases I was foundational in the starting community conversations. So the people who got involved were often either there "because they agreed and wanted support in that direction" or "they disagreed and wanted to argue the other side." What grows up rather naturally is a culture not of a single opinion, but of two opinions that are both rather myopic. One is "I think SAM would say this, therefore I'll do that" and the other is "SAM is an idiot, so I'll avoid the solution I think he promotes."

    What makes it harder is that as a community grows that skews away in odd ways. So many people who think that they are repeating me are actually saying something I would never say and have never said, but have become famous for even though it wasn't me. And so you get two groups often trying to follow advice or ideas that were never given or not in the way that it is assumed.



  • The monoculture or duoculture problem arises around all kinds of things from interest areas, to solution sets, to vendors and product choices. You see it in vendors who get lots and lots of attention in certain communities just because it is a vendor that is heavily used by one or two prominent people. Not that that is all bad, the IT world is chock full of pointless vendors with products that have no value or place in the market. Eliminating them from conversation is generally good. But this produces false positives with other vendors that no one knows or has experience with getting ignored unjustly.



  • @scottalanmiller said:

    So many people who think that they are repeating me are actually saying something I would never say and have never said, but have become famous for even though it wasn't me. And so you get two groups often trying to follow advice or ideas that were never given or not in the way that it is assumed.

    This is why I think it is important to express personal opinions and state them as such. it doesn't matter if I think @scottalanmiller and @Kelly would hate it. I would say my piece and then tag you both on it.

    The biggest problem that I see is that most folks once they have reached the @scottalanmiller would say... or @Kelly would say... stage is that they have given up thinking for themselves, in a lot of ways.



  • @dafyre and @scottalanmiller I agree with your statements regarding the fundamentals. The number of IT pros that I have encountered who do not understand subnetting is disappointing. That being said, I think that the problems start when you leave the basics. Using your example in the OP @scottalanmiller, you had never heard of a given tool that a customer considered normative. I'm running in to this on a nearly daily basis as I transition from Windows Admin to Linux Admin. I have no idea what is normative (other than what is mentioned here and elsewhere), and that is a moving target at best.



  • To give a concrete example.... I've done a lot of talking about RAID, mostly not here. What I think people miss is that the ideas I espouse are mostly just repeating really good information from Microsoft, Oracle and ZDNet (Robin Harris) who have done a lot of research in this area. I just talk about how their information applies to the modern landscape. I've done a lot of research on my own, of course, but nothing I have said ever disagrees with those three or, really, any RAID research I have ever seen.

    But things that I say, like that RAID 5's place on Winchester drives is long gone given the factors affecting modern Winchester drives is often distilled to something quite different like RAID 10 is the only viable RAID level. That's very different. It's also often assumed that somehow that means that RAID 5 never made sense, which of course is nonsense. That would be like saying that gasoline was a dumb idea now that electric cars are available - how silly we were to buy gas cars all these years (but ignoring the fact that electric cars didn't exist yet.)

    So there has become two cultures that I see - one that thinks I'm promoting RAID 10 as the one and only answer and repeats that rather strongly (I agree it is the most common answer, but just barely) and another that wants to spite me and basically says that all attempts to research RAID or business factors is dumb and you should always run RAID 5 and not consider cost or risk or performance just because "screw SAM" for caring.



  • @Kelly said:

    I'm running in to this on a nearly daily basis as I transition from Windows Admin to Linux Admin. I have no idea what is normative (other than what is mentioned here and elsewhere), and that is a moving target at best.

    That will always be a moving target, I think -- especially as new tools come and go, and you get experience with different OSes (Windows vs various Linux Distros / *BSD, etc). Customer A might use Robocopy... Customer B might use Free File Sync, and Customer C might use some variation of rsync on Windows. All 3 can accomplish the same task... but various customer mentalities will almost always challenge the perception of "normal".



  • @Kelly said:

    I have no idea what is normative (other than what is mentioned here and elsewhere), and that is a moving target at best.

    I'll agree with that as a problem. I'm less concerned with figuring out how to teach what is normative in a specific area of specialization, however, as in doing so for the generalist as a base of shared knowledge. Specializations are much more of a moving target and once to that level, people have more responsibility to be more critical in their assessments of things, I think.

    If you are a well educated, properly thinking generalist with a broad set of knowledge I think that your ability to avoid bad trends in specialist areas is much easier.

    Sure you might miss big things and always use RPM manually and not realize that everyone uses YUM to make things easy, but that is easy to correct later on.

    I had a long history of UNIX administration before I was introduced to automounting. Doesn't mean I was a crazy UNIX person before that, it was just one more skill I had to add on later on.



  • @dafyre said:

    @Kelly said:

    I'm running in to this on a nearly daily basis as I transition from Windows Admin to Linux Admin. I have no idea what is normative (other than what is mentioned here and elsewhere), and that is a moving target at best.

    That will always be a moving target, I think -- especially as new tools come and go, and you get experience with different OSes (Windows vs various Linux Distros / *BSD, etc). Customer A might use Robocopy... Customer B might use Free File Sync, and Customer C might use some variation of rsync on Windows. All 3 can accomplish the same task... but various customer mentalities will almost always challenge the perception of "normal".

    This is sadly super true. Although I think that it highlights an importance to producing a base for specializations as well... the ability to show potential employers more or less definitively that what they expect an outsider to be familiar with is common or niche.

    Most of us have probably had interviews for a position that we felt that we were far too senior for and yet they felt we were unqualified idiots because their view of that job was totally different from ours. Sometimes with things that are completely unrelated. Like randomly assuming that all Windows Admins know Exchange. I was an MCSE+I, had used Windows in the enterprise for years and often was not even in an environment that used Exchange let alone was the admin for it. Only a small subset of Windows Admins will ever see Exchange, yet some shops just assume that they are one and the same.

    And then people might randomly assume that you manage everything through VBScript, but you only know PowerShell or JScript. Randomly people might assume you can program or that you will never, ever use a command line.

    I actually find the Red Hat certs hard because they assume lots of skills only entry level desktop admins would ever use or see and anyone at even an entry level server level would be unlikely to even know exists (GUIs for printers, for example.)



  • If someone could give me pointers to reinforce critical thinking skills with green IT Staff, I would be eternally grateful. Experience plays a large part in knowing which questions to ask during that process, but other parts are just "common sense" to some people while completely foreign to others. From reading error messages to services breaking, IT people need to dig deep sometimes to resolve an issue. When training staff, I usually ask them the same questions that I ask myself internally. Ex - "What is related to this process that could affect this failure" (Scope & Environment), "What does that error message mean? Break it apart and take it one part at a time"

    I have a saying/theory/whatever: There is always a point where you look at technology and consider it a "magic black box". This is where your understanding ends and it "just works". IT people need to be many, many layers deeper than the average user.

    The concern is how to prep IT People to push deeper when they hit the "magic black box" so that A ) They dont stop or get frustrated before they fix the problem & B ) Their understanding and knowledge improve which helps reduce the "magic black box" issues

    Also I always stress consistent testing environments for new staff. Your hour of testing means little if important factors are not tracked that could influence this issue.

    Feel free to improve my saying (or completely refute it if you disagree). Im always open to improving my management and training skills.



  • @Kelly said in How Do You Teach Everything in IT?:

    I have no idea what is normative (other than what is mentioned here and elsewhere), and that is a moving target at best.

    You've nicely summarized why I'm taking an old MacBookPro home tonight as well as fighting with linux to make it do my bidding in any of several flavors. My days of being a windoze only admin are drawing to a close.

    Tangentially related: I need a better paying job really badly. I'm open to offers / ideas, please msg me or whatever.



  • --



  • @ryanblahnik said in How Do You Teach Everything in IT?:

    Sorry I don't have much help to offer after the mention though, Matt, and good luck with your hunt 🚵🏾

    Cheers mate, you too



  • @Brains said in How Do You Teach Everything in IT?:

    I have a saying/theory/whatever: There is always a point where you look at technology and consider it a "magic black box". This is where your understanding ends and it "just works". IT people need to be many, many layers deeper than the average user.

    That's a great perspective, I like that. At some level, everything because a magic black box to everyone; it's just different levels.