Sefism is free for learners. We are here to help you grow, one step at a time.Join for free
Sefism.

Roadmap · Foundations

Linux, terminal and Git

Free

For students and early-career engineers who want to be at home in a Unix shell, whether they work on Windows with WSL, on a Mac or on Linux. By the end you can set up a machine from scratch, move around and fix things in the terminal, use Git and GitHub the way teams do, automate small jobs with scripts and look after a small server over SSH.

Curated by Tauseef Fayyaz8 stages, 66 topics~5 months at a few hours a week

By the end, you will be able to

  • Set up a working development machine with a Unix shell, a package manager, Git and an editor, and explain every step you took
  • Find, filter and transform files and text with the shell, pipes, grep, find and jq instead of clicking through folders
  • Use Git and GitHub like a team member: small commits, branches, pull requests, conflict resolution and undoing mistakes safely
  • Write a checked Bash script, schedule it with cron and run it on a small Linux server you reach over SSH with keys
  • Debug a broken environment methodically: read the error, check PATH, permissions, processes, ports and logs

The path

8 stages, in the order to learn them. Open one to start.

  1. 1Set up your machineInstall WSL 2 with Ubuntu, make Windows Terminal your home, and keep projects in the Linux file system. The rest of the roadmap runs in that Ubuntu shell, so a clean setup now saves hours of confusing errors later.8 topics · ~2 weeks
  2. 2Shell basicsMove around, create and change files, and connect commands with pipes and redirection. Learn how the shell expands patterns, quotes text and finds programs through PATH.9 topics · ~3 weeks
  3. 3Text toolsSearch, filter and reshape text and files with the classic Unix tools and jq. Logs, config files, CSV exports and API responses all become things you can question from the terminal.8 topics · ~2 weeks
  4. 4Permissions, processes and packagesUnderstand who can do what on a Unix system, what is running and how to stop it, and how to install developer tools and language versions without making a mess.8 topics · ~2 weeks
  5. 5Git fundamentalsLearn how Git actually stores your work, then use it daily: small commits, clear messages, branches, merging and rebasing, resolving conflicts and undoing mistakes without losing anything.8 topics · ~3 weeks
  6. 6GitHub and working with othersConnect local repositories to GitHub with SSH keys, and work the way teams do: branches, pull requests, reviews, keeping forks up to date and the GitHub CLI.8 topics · ~2 weeks
  7. 7Shell scripts and automationTurn repeated commands into small, safe Bash scripts, check them with ShellCheck, schedule them with cron and keep your own configuration in a dotfiles repository.8 topics · ~3 weeks
  8. 8SSH, servers and debuggingLog into remote machines with SSH keys, set up and secure a small Linux server, keep work running with tmux, and debug problems with logs and networking tools.9 topics · ~3 weeks

Picked from the other libraries by shared topics.

Project structures

See all
Work with me

Stuck on something specific?

Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.

  • 1:1 Mentorship
  • Fresh Graduate Mentorship
  • Career Guidance

Brand deals, promos and partnerships: tauseeffayyaz@gmail.com