85 lines
2.8 KiB
Markdown
85 lines
2.8 KiB
Markdown
# 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
|