Computer Learning Resources

So you wanna work in “IT”, or be a “dude named Ben” (or, a dudette named Bernadette)?

There are many paths and many levels of abstraction of knowledge. From a Computer Scientist that understands how NAND memory works to an IT Person that can just turn things “off and on again”. Really, it depends on what you want to do in “tech” as to where you want to start. It also depends on what you find interesting and what motivates you to do the job. Do you want to build applications? Do you want to maintain and build server infrastructure? Do you want to work in security and make sure bad guys don’t get in? Ask yourself those questions then look at the sources below that I have found useful. Be sure to always be learning, tech never stays the same. And the more you know or the more you are willing to learn, the better off you will be for any profession, especially tech.  Be sure to get down the fundamentals first.  And remember, communication is the best skill to have for an IT person in any tech field.

Below I will outline several “paths” towards general jobs that could be pursued. There are many more than the following but these are the ones that I am familiar with.

Before you being your path, if you have any interest in how a computer actually works, starting with the basics, definitely check out Harvard’s CS50 course here. That will give you the fundamentals on your tech journey. As a prerequisite if you have no experience understanding computers then start here.

Also, as you learn everything, most definitely check out Brian Will’s YouTube channel. Fantastic in-depth explanations on computer-related topics.

This dude is awesome for AWS and Apache Kafka learning: Stephane Maarek
This dude is fantastic for JavaScript, React and Front-End related learning:  Maximilian Schwarzmüller.  You can find both of them on Udemy as well.

 

Best way to learn is to spin up a server and set things up!  Enjoy a $100 credit for Digital Ocean by following my referral link here.

Paths:

Web Dev – a person that may develop a site or an application that runs on the Web.

Start here, a video the complete roadmap of 2020 to Web Dev.

If Front-End is your thing, check out the Front-End Masters Handbook here.

Definitely know Git. Intro here.

Security – a lot of jobs in this field.

I’d suggest checking out Professor Messer’s Security+ course free on YouTube

Also, Hacker101 has fantastic videos.

LiveOverflow on YouTube is amazing for beginner and advanced topics in Security and Hacking.

Also, download VirtualBox and install Kali Linux and mess around there. Linux Academy has/had a free course on that.

System Operations – maintaining the servers that run the systems to host applications, sites, or anything on the Internet.

You may hear job titles such as: Site Reliability Engineer, Systems Administrator, Systems Engineer, etc.  They essentially all do similar things in their roles but may use different techniques or tools (i.e. Linux or Microsoft oriented).  Since most of the web servers nowadays use Linux, it’s better off to learn that. It’s better as an operating system anyways for many reasons. See my Why Linux blog post and check out my Linux Resources page to find where to learn more.

Be familiar with “what happens when…” you type in a web address and hit Enter. Great resource on that here.

For Operators of the Web, some basics on HTTP, SQL, and TCP.

Learn Linux! Here the additional page again of resources for you.

Learn what SRE & DevOps is, as this is the present and future of Operations. Fantastic course on edX from Linux Foundation here.

Great resource for common SysAdmin questions here.

Great free videos over at SysAdminCasts.com
He provides a great list of 25 Bits SysAdmins Should Know.

GitLab is very transparent and provides fantastic documentation on how they operate their Infrastructure team.

Cloud Engineer – similar to System Operations but need to know specific cloud platforms

Plenty of ways to study for cloud platform certifications out there. I only think actually taking the certs is good for those starting out. Everyone else can read docs or watch tech talks. Make your own accounts in the cloud, use their free tiers. Practical experience is the best way to learn.  Also, the Linux Upskill Challenge is a fantastic way to learn

Also, take a look at HashiCorp Nomad and container orchestration like Kubernetes – as both of these introduce the idea of dynamic and stateless infrastructure.

Feel free to reach out to me with any questions, go to my Contact page for how to do so. Let me know what else you find and I can add to the list to pass on the knowledge to others that ask.