Bearclaw Forest IT - Computers 101

Lesson 1: Keep it Simple Stupid (aka, the KISS principle)

Conquering the psychological instinct to make things more complicated than they need to be

Complexity is the Enemy

Many people believe they're not "computer people" or that these things are so challenging to understand that they'll never have any hope of grasping it.

The Microsoft's and Apple's of the world have sold you this lie and the first step you need to take is to expose the lie. Are computers trivial? Of course not, they are the coolest machine humanity has ever built, but that is all the more reason to figure them out. What's more, you're already using one right now whether you're reading this from a phone, a laptop, or a desktop computer.

You are now the little engine that could and your new motto is, "I think I can". Before you know it, you'll join me on my crusade to teach the world what these things are and what they can do.

A quick rant about "smart" phones

Smartphones are to computers what fisher price toys are to powertools. Just like a plastic hammer resembles a real one, Android and iOS both have a screen and a (virtual) keyboard like a real computer, but they aren't real computers and I think they've had a net negative effect on me personally and humanity writ large.


They also assume you're an idiot and don't give you enough access to the stupid things to learn what you need to know. As with any device that allows you to install an operating system, where there is a will, there is a way; however, I do not recommend using a phone for this course.

Sections

Text

To be able to become proficient in computer use, the primary prerequisite is reading (NOT SKIMMING). I took the time to write these words down and publish them on my website, your job is to read them.


Text is also the primary means by which power users of a computer interact with the thing. I am a firm believer that the pretty, colorful user interfaces you're probably used to were a catestrophic mistake in the progress of humanity.


You are going to learn how to "speak" to a computer in ways you may not have to this point. Expect it, and be excited about it.

Fundamentals

Most of the complexity and pain involved in learning how to use a computer stems from developers trying to hide what they're doing from you. You need to become comfortable breaking things and not knowing immediately how to fix them.


The single best thing you can do right now is get your hands on a machine you don't care about. A 10 year old laptop or desktop that can still boot is perfect. Family and friends often have something like this laying around.


If you don't have a machine like the one I'm describing and you're anywhere near a University, see if they have a surplus store you can buy stuff from.


If all else fails, look on ebay or grab a Raspberry Pi.


Disclaimer: many of my instructions may not directly apply to the raspberry pi OS and ARM architecture. Mileage may vary

Operating Systems (OS)

The most empowering thing a new computer operator can do is to install a new operating system. This is your ground zero and also your first task. Wipe the OS off of the old machine you acquired in the Fundamentals section and put a new one on it.


When you can comfortably reinstall an OS, the world becomes your oyster because now you can solve every software problem known to man. The only skills left to learn are how to deal with hardware and network equipment.


And, of course, what to do with it once you have a working operating system.


For this exercise I can't recommend Linux enough. Pick any Linux distribution that catches your eye and if none of them do, my first one was Linux Mint. While windows and mac try to make it easy, Linux doesn't care about how stupid you are and will do its best to obey your commands and to surface the issues that arise. The experience itself will teach you about as much I can.

Software

What are you doing when you open a website, tap a screen, or say "hey Alexa"? You are asking one or more computer chips to do math and tell you what the answer is. All software boils down to this. There is no magic. There are just lots of electrons moving around really fast.


Your task is to open your computer's command interpreter. This thing goes by many names (e.g. "shell", "terminal", "cmd", "powershell", "iterm", etc), but it is a place where you use english-adjacent language to load the math routines we call "software".


I made a fake one you can interact with on another website: davidbrowning.github.io


Once you've found yours, it's time to go spelunking. The reason you're using an old computer is because nothing you enter will break anything that matters. If you mess it up (and I hope you do), you reinstall the OS. If you followed my advice to this point (installed linux on an old computer), commands like "ls", "pwd", and "cd" should be available to you.

Networking

While individual computers can be useful, there are much more powerful uses for them when you configure many to connect to each other. This information, for example, would not reach you if you were not connected to the computer hosting this file.


For most people, the first and last thought they ever give to a network is "can I have your WiFi password?". Your task is to figure out what the address of the server hosting bearclawforest.com is and how you get from your network to that server


You will use the command interpreter you found in the previous section to load software like "dig", "nslookup", and "traceroute".

Programming

Now that you know how to call software routines written by other people, it's time to write some yourself. Most courses choose python as the entry level language for programming. I started by learning a language called C++.


Selecting your first language (in my opinion) is one of the few areas in life where you are allowed to judge a book by its cover. Visit the websites for each language and find the one that you like best.



These are just a few of the dozens of languages to choose from.

Let’s Work Together

Ready to solve your IT challenges? Reach out to discuss your needs!

Email: [email protected]