# Week 1 Progress Map — Updated to Day 4 ## Student Profile * Experience: Fullstack Web Developer (JavaScript, PHP, SQL, HTML, CSS, Python) * Goals: System administration (Windows, Linux, macOS), hacking, algorithms, low-level programming * Languages: C, Powershell, C#, Bash, SQL, C++, Python * Current Focus: CompTIA A+ → CCNA → Security+ --- ## Week 1 Overview * **Concept:** Variables, Conditionals, Loops, Functions, Scope * **Goal:** Build foundation in core programming concepts, algorithmic thinking, input validation, and cross-language syntax comparison ### Day 1 — C * Read user input * Count characters in strings * Enforce max length * Validate first character via ASCII ranges * Username validation: letters only, max length, starting letter ### Day 2 — Python * Conditional logic: Even/Odd number check * Count letters in a string * Username validation implemented in Python * Multiple username validation * Runtime analysis (`T(n)` and `T(m, n)`) and time complexity ### Day 3 — SQL (PostgreSQL) * Filter rows based on string length * Select letters-only usernames using regex * `CASE WHEN` to classify usernames as Accepted/Refused * Aggregate valid usernames count * Runtime analysis in SQL (`T(n, m) = n x m`) and scaling discussion ### Day 4 — PowerShell * Conditional logic: `if / elseif / else` * Loops: `foreach` over strings and arrays * Input validation: letters only, max 20 characters, starts with letter, no spaces or digits * Username validator script for single and multiple usernames * Algorithm analysis: runtime `T(n, m) = n x m`, doubling users doubles execution * Security perspective: safe and defensive scripting in PowerShell, Windows admin context --- ## Completed Exercises Summary * **Exercise 1:** Even/Odd number check (Python → PowerShell) * **Exercise 2:** Count letters in string * **Exercise 3:** Single username validation * **Exercise 4:** Multiple usernames validation * **Exercise 5:** Algorithm scaling explanation --- ## Next Objectives (Week 1 Day 5) * Learn **Bash scripting** for Linux sysadmin workflows * Apply conditionals, loops, and input validation in Linux environment * Translate Day 1–4 algorithms into Bash scripts * Emphasize security and defensive programming --- ## Recommendations * Review regex patterns across languages (C, Python, SQL, PowerShell) * Practice linear runtime analysis (`T(n, m)`) in each context * Keep all scripts secure, avoid unsafe input handling * Document differences in syntax and idioms between languages --- ## Notes * Student has strong programming background; focus can be on **systems, security, and algorithmic thinking** * Real-world project orientation encouraged (username validation → real-world user input handling, audits, or security scripts) * Progress map will continue tracking daily exercises, language-specific skills, and algorithmic awareness