AI & Linux Fundamentals
Module Overview
This foundational module establishes two critical pillars for your journey: AI literacy and Linux proficiency. You'll learn to leverage AI as a powerful learning accelerator while building essential command-line skills that every modern engineer needs. Master the fundamentals of generative AI, set up your development environment, and develop automation skills through shell scripting.
Understanding AI & Large Language Models
Overview
Master the fundamentals of Large Language Models (LLMs) and their practical applications in software development. Learn how to leverage AI tools effectively while understanding their capabilities and limitations. This topic establishes a universal baseline of generative AI literacy and prompt engineering skills.
Learning Resources
| Course Title | Provider | Description | Level | Mandatory | Action |
|---|---|---|---|---|---|
|
Introduction to Generative AI
|
Google
|
A comprehensive introduction to generative AI concepts, focusing on transformer architecture and practical applications.
|
Beginner | Required | Start Learning |
|
ChatGPT Prompt Engineering for Developers
|
DeepLearning.AI
|
Learn systematic approaches to writing effective prompts for technical tasks, with hands-on exercises focused on software development.
|
Beginner | Required | Start Learning |
|
Microsoft Azure AI Fundamentals: Generative AI
|
Microsoft
|
Understand GenAI from a developer's perspective within a major cloud ecosystem, covering LLMs and transformers.
|
Intermediate | Optional | Start Learning |
|
Building with Claude: Developer Course
|
Anthropic
|
Learn advanced prompting techniques for building safer, more predictable applications with structured prompts.
|
Advanced | Optional | Start Learning |
Practical Exercise
AI Mastery Challenge
- Set up accounts on ChatGPT, Claude, and Gemini
- Complete both required courses and take detailed notes
- Create a structured prompt template library for development tasks
- Test prompts with different AI models and document variations
- Build a comparison matrix of AI model strengths and limitations
Linux Environment Setup
Overview
Set up a foundational Linux development environment using either virtual machines or Windows Subsystem for Linux (WSL). Learn to configure your system for optimal development workflow and establish the essential tools needed for the program.
Learning Resources
| Course Title | Provider | Description | Level | Mandatory | Action |
|---|---|---|---|---|---|
|
Install Ubuntu on WSL
|
YouTube
|
Step-by-step guide to installing WSL and Linux distributions like Ubuntu from the command line.
|
Beginner | Required | Start Learning |
|
WSL Setup & Troubleshooting
|
YouTube
|
Essential troubleshooting guide for WSL installation issues by enabling required Windows features.
|
Beginner | Required | Start Learning |
|
Basic Ubuntu Installation
|
Ubuntu Official
|
Authoritative guide for installing Ubuntu Server on a dedicated machine or VM with system requirements.
|
Intermediate | Optional | Start Learning |
Environment Setup Challenge
Complete Development Environment
- Install and configure WSL with Ubuntu distribution
- Verify Linux installation and basic command access
- Install essential development tools (git, curl, wget)
- Configure terminal preferences and shell environment
- Document your setup process for future reference
Command Line Mastery
Overview
Master essential commands for navigating the filesystem, managing files, processes, and performing common administrative tasks. Build proficiency with the tools that form the foundation of modern software development workflows.
Learning Resources
| Course Title | Provider | Description | Level | Mandatory | Action |
|---|---|---|---|---|---|
|
Command line for beginners
|
Ubuntu Official
|
Official tutorial covering basic file manipulation, navigation, and safe usage of administrator powers with sudo.
|
Beginner | Required | Start Learning |
|
Linux Journey
|
Interactive Website
|
Interactive website providing structured, self-paced learning from Grasshopper (basics) to advanced topics.
|
Beginner | Required | Start Learning |
|
The Linux Command Line (Book)
|
William Shotts
|
Comprehensive 594-page guide covering shell usage, scripting, and advanced topics. Available as free PDF.
|
Intermediate | Optional | Start Learning |
|
Linux Commands Cheat Sheet
|
GeeksForGeeks
|
Well-organized quick reference with commands grouped by function and practical examples.
|
All Levels | Reference | Start Learning |
Command Mastery Challenge
Essential Linux Commands Mastery
- File System Navigation (cd, ls, pwd, find)
- File Operations (cp, mv, rm, mkdir, rmdir)
- Text Processing (grep, sed, awk, sort, uniq)
- Permissions & Ownership (chmod, chown, chgrp)
- Process Management (ps, top, htop, kill, jobs)
- Network and System Info (netstat, df, du, free)
Shell Scripting & Automation
Overview
Learn to automate tasks and enhance productivity through shell scripting. Master Bash scripting fundamentals, control structures, and create practical automation tools. This topic also covers using AI as a learning accelerator and troubleshooting partner.
Learning Resources
| Course Title | Provider | Description | Level | Mandatory | Action |
|---|---|---|---|---|---|
|
Shell Scripting Tutorial for Beginners
|
YouTube
|
Comprehensive 45-lesson video course covering variables, control structures, and case statements.
|
Beginner | Required | Start Learning |
|
Bash Guide Best Practices
|
Wooledge.org
|
Essential guide for writing high-quality, reliable shell scripts and avoiding common pitfalls.
|
Intermediate | Required | Start Learning |
|
explainshell.com
|
Interactive Tool
|
Interactive web tool that breaks down any shell command and matches each part to its help text.
|
All Levels | Tool | Start Learning |
|
Bash Best Practices (Clean Code)
|
bertvv.github.io
|
Developer-focused guide emphasizing Clean Code principles, variable scoping, and safety practices.
|
Advanced | Optional | Start Learning |
Automation Project
Development Environment Automation Suite
- Project scaffolding script (create directory structure, initialize git)
- Development environment setup automation (install dependencies)
- Git hooks for code quality (pre-commit formatting, linting)
- Log rotation and cleanup scripts (manage system logs)
- Backup and restore utilities (automated project backups)
- AI-assisted debugging: Use ChatGPT/Claude for script troubleshooting