StudyCorner
Back

Computing

Computing and the Command Line

The shell, Linux, and git, practised hands-on, then the theory underneath: how computers, operating systems, data structures, algorithms, and networks work.

80 lessons ~9 h 4 courses

0 of 80 done
Start learning
Who it's for

Getting fluent at the command line and moving from Windows to Linux as a daily system.

Course 1 of 4

The Shell and the Command Line

Bash from the first prompt to working scripts, practised under WSL and carried over to Linux.

0 of 24 done
Unit 1

First Steps

3 lessons · 18 min

  1. 1 The Terminal, the Shell, and the Prompt 6 min Start
  2. 2 A Linux Shell on Windows: WSL 6 min Start
  3. 3 Getting Help and Typing Less 6 min Start
Unit 2

Files and the Filesystem

3 lessons · 19 min

  1. 1 Paths and the Directory Tree 6 min Start
  2. 2 Looking at Files: ls -l, less, and Friends 6 min Start
  3. 3 Creating, Copying, Moving, Linking, and Deleting 7 min Start
Unit 3

Permissions, Users, and sudo

3 lessons · 19 min

  1. 1 Reading Permissions 5 min Start
  2. 2 Changing Permissions and Ownership 7 min Start
  3. 3 Root and sudo 7 min Start
Unit 4

Redirection and Pipelines

3 lessons · 17 min

  1. 1 Standard Input, Output, and Error 6 min Start
  2. 2 Pipelines and Filters 5 min Start
  3. 3 Finding and Searching: find and grep 6 min Start
Unit 5

How the Shell Reads a Command

3 lessons · 19 min

  1. 1 Expansion and Quoting 6 min Start
  2. 2 Variables, PATH, and Aliases 7 min Start
  3. 3 Startup Files and the Prompt 6 min Start
Unit 6

Processes and Jobs

3 lessons · 17 min

  1. 1 What a Process Is 6 min Start
  2. 2 Jobs and Signals 6 min Start
  3. 3 Exit Status and Chaining 5 min Start
Unit 7

Editing in the Terminal

2 lessons · 9 min

  1. 1 nano: Quick Edits 4 min Start
  2. 2 vim Essentials 5 min Start
Unit 8

Shell Scripting

4 lessons · 32 min

  1. 1 Your First Script 7 min Start
  2. 2 Decisions and Loops 7 min Start
  3. 3 Arguments and Functions 8 min Start
  4. 4 Project: a Snapshot Backup Script 10 min Start

Course 2 of 4

Git and Version Control

Version control from the first commit to branches, GitHub, and recovering from mistakes.

0 of 19 done
Unit 9

Getting Started

3 lessons · 14 min

  1. 1 Why Version Control, and How Git Thinks 5 min Start
  2. 2 Installing and Configuring Git 4 min Start
  3. 3 Your First Repository 5 min Start
Unit 10

The Everyday Workflow

3 lessons · 15 min

  1. 1 Staging and Committing Well 5 min Start
  2. 2 Ignoring Files and Reading History 5 min Start
  3. 3 Undoing Changes 5 min Start
Unit 11

Branches

3 lessons · 15 min

  1. 1 What a Branch Is 5 min Start
  2. 2 Merging and Conflicts 5 min Start
  3. 3 Rebasing 5 min Start
Unit 12

Remotes and GitHub

3 lessons · 15 min

  1. 1 Clone, Fetch, Pull, Push 5 min Start
  2. 2 GitHub over SSH 5 min Start
  3. 3 Pull Requests 5 min Start
Unit 13

Fixing Mistakes

3 lessons · 25 min

  1. 1 Reset, Revert, and the Reflog 9 min Start
  2. 2 Stash and Cherry-pick 9 min Start
  3. 3 Finding a Bug with Bisect 7 min Start
Unit 14

How Git Works Inside

2 lessons · 19 min

  1. 1 Objects: Blobs, Trees, and Commits 9 min Start
  2. 2 References and the Commit Graph 10 min Start
Unit 15

Project: Your Dotfiles

2 lessons · 19 min

  1. 1 Your Dotfiles in Git 12 min Start
  2. 2 Setting Up a New Machine 7 min Start

Course 3 of 4

Living on Linux

Installing Linux as an everyday system and running it from the command line: packages, services, disks, networking, and SSH.

0 of 19 done
Unit 16

Choosing and Installing

3 lessons · 19 min

  1. 1 Distributions and Releases 6 min Start
  2. 2 Trying Linux from a USB Stick 6 min Start
  3. 3 Installing Alongside Windows or Instead 7 min Start
Unit 17

Software and Updates

3 lessons · 22 min

  1. 1 apt and Debian Packages 8 min Start
  2. 2 Snaps and Flatpaks 7 min Start
  3. 3 Keeping the System Updated 7 min Start
Unit 18

Services and Logs

3 lessons · 20 min

  1. 1 systemd and systemctl 7 min Start
  2. 2 Reading Logs with journalctl 6 min Start
  3. 3 Timers and Your Own Services 7 min Start
Unit 19

Disks and Filesystems

3 lessons · 20 min

  1. 1 Disks, Partitions, and Filesystems 8 min Start
  2. 2 Mounting Drives and /etc/fstab 6 min Start
  3. 3 Disk Space and Disk Health 6 min Start
Unit 20

Networking and SSH

3 lessons · 18 min

  1. 1 How Your Machine Is Connected 7 min Start
  2. 2 SSH to Other Machines 6 min Start
  3. 3 Long Sessions with tmux 5 min Start
Unit 21

Security and Troubleshooting

2 lessons · 13 min

  1. 1 Firewall, Updates, and Accounts 7 min Start
  2. 2 When Something Breaks 6 min Start
Unit 22

Project: A Home Server

2 lessons · 14 min

  1. 1 Setting Up the Server 6 min Start
  2. 2 Backups and Health Checks 8 min Start

Course 4 of 4

How Computers Work

The theory underneath: bits and text, logic and the CPU, operating systems, data structures, algorithms, networks, and the limits of computation.

0 of 18 done
Unit 23

Bits and Numbers

3 lessons · 18 min

  1. 1 Binary and Hexadecimal 6 min Start
  2. 2 Text as Numbers 6 min Start
  3. 3 Integers, Overflow, and Floating Point 6 min Start
Unit 24

Logic and Circuits

3 lessons · 21 min

  1. 1 Boolean Logic and Gates 6 min Start
  2. 2 Adding with Gates 7 min Start
  3. 3 Memory from Feedback 8 min Start
Unit 25

Inside the CPU

3 lessons · 17 min

  1. 1 Instructions and the Fetch-Execute Cycle 6 min Start
  2. 2 The Clock, Pipelines, and Cores 5 min Start
  3. 3 The Memory Hierarchy 6 min Start
Unit 26

The Operating System

3 lessons · 36 min

  1. 1 Processes and Scheduling 14 min Start
  2. 2 Virtual Memory 10 min Start
  3. 3 System Calls and Files 12 min Start
Unit 27

Data Structures

3 lessons · 33 min

  1. 1 Arrays and Linked Lists 11 min Start
  2. 2 Hash Tables 10 min Start
  3. 3 Trees and Graphs 12 min Start
Unit 28

Algorithms

3 lessons · 31 min

  1. 1 Searching and Big-O 10 min Start
  2. 2 Sorting 11 min Start
  3. 3 Measuring Real Programs 10 min Start
Unit 29

Networks

Coming later

  1. Layers and Packets
  2. IP, TCP, and DNS
  3. HTTP and the Web
Unit 30

Limits of Computation

Coming later

  1. Algorithms and Turing Machines
  2. The Halting Problem
  3. Easy and Hard Problems