https://github.com/jezreal-dev/piscine-go-portfolio
Foundational projects completed during the Learn2Earn NG Piscine-Go (Nov–Dec 2025), focusing on Go, algorithms, and problem-solving.
https://github.com/jezreal-dev/piscine-go-portfolio
Last synced: 11 days ago
JSON representation
Foundational projects completed during the Learn2Earn NG Piscine-Go (Nov–Dec 2025), focusing on Go, algorithms, and problem-solving.
- Host: GitHub
- URL: https://github.com/jezreal-dev/piscine-go-portfolio
- Owner: jezreal-dev
- License: mit
- Created: 2026-05-05T09:42:50.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-05-07T16:21:31.000Z (about 1 month ago)
- Last Synced: 2026-06-06T03:22:28.481Z (13 days ago)
- Language: Go
- Size: 1.54 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
---
# piscine-go-portfolio



A comprehensive portfolio of **foundational programming projects** completed during the **Learn2Earn NG Piscine-Go bootcamp** (November–December 2025). This repository demonstrates proficiency in Go, algorithms, problem‑solving, and software craftsmanship through progressively challenging exercises.
---
## 🎯 Overview
The **Piscine-Go** program is an intensive, project‑based bootcamp emphasizing:
- **Iterative problem‑solving** — tackling complex challenges through refinement and testing
- **Collaborative learning** — peer review, pair programming, and knowledge sharing
- **Professional practices** — clean code, documentation, version control, and code reviews
- **Algorithm mastery** — from basic loops to recursive backtracking and data structures
This repository documents **all exercises and projects** completed during the bootcamp, organized by difficulty level (**Quests**) and domain (**Raid**).
---
## 📂 Repository Structure
```
learn2earn-piscine-go/
├── README.md # Root portfolio overview
├── LICENSE # MIT License
├── quests/ # Main learning path (quests 01–12)
│ ├── quest01/ # Foundations: Git, shell, communication
│ ├── quest02/ # Output formatting & numeric logic
│ ├── quest03/ # String manipulation & parsing
│ ├── quest04/ # Conditionals & algorithms (GCD, prime check)
│ ├── quest05/ # Loops & iteration
│ ├── quest06/ # Pointers & memory concepts
│ ├── quest07/ # Structs & custom types
│ ├── quest08/ # Interfaces & type assertions
│ ├── quest09/ # Goroutines & concurrency (intro)
│ ├── quest10/ # Hackathon: advanced problem-solving
│ │ ├── join/
│ │ ├── enigma/
│ │ ├── descendappendrange/
│ │ ├── shoppinglistsort/
│ │ ├── comcheck/
│ │ ├── reversemenuindex/
│ │ ├── podiumposition/
│ │ ├── activebits/
│ │ ├── pilot/
│ │ ├── fixthemain/
│ │ ├── max/
│ │ ├── rockandroll/
│ │ └── loafofbread/
│ ├── quest11/ # Linked lists & node structures
│ ├── quest12/ # Binary trees & tree traversal
│ └── README.md # Quest index & progression guide
├── raid/ # Capstone projects (problem-solving challenges)
│ ├── sudoku/ # Sudoku solver (backtracking algorithm)
│ ├── quad/ # ASCII art generator (5 patterns)
│ ├── quadchecker/ # Input validator & checker
│ └── README.md # Raid overview
└── checkpoints/ # Checkpoint challenges (archived)
```
---
## 🚀 Quick Start
### Prerequisites
- **Go 1.20+** ([download](https://golang.org/dl))
- **Bash/sh** for shell exercises
- **Git** for version control
### Running Exercises
**Go Exercises (Quests):**
```bash
cd quests/quest02/printalphabet
go run .
```
**Raid Projects:**
```bash
cd raid/sudoku
go run . ".96.4...1" "1...6...4" "5.481.39." "..795..43" ".3..8...." "4.5.23.18" ".1.63..59" ".59.7.83." "..359...7"
```
**Shell Scripts (Quest01):**
```bash
cd quests/quest01/cl-camp1
./mastertheLS
```
---
## 📚 Learning Path
### Quest01 — Foundations & Onboarding
**Focus:** Git basics, shell scripting, communication, environment setup
**Key Exercises:** Git workflow, command‑line tools, communication templates
### Quests02–07 — Core Go & Algorithms
**Focus:** Output, strings, conditionals, loops, pointers
**Key Skills:** Rune handling, numeric conversion, recursive logic
### Quest08–12 — Advanced Go
**Focus:** Interfaces, concurrency, data structures (lists, trees)
**Key Skills:** Type systems, goroutines, linked lists, binary trees
### Quest10 — Hackathon Challenges
**Focus:** Advanced problem‑solving under constraints
**Key Exercises:**
- String concatenation (`join`)
- Pointer manipulation (`enigma`)
- Slice building (`descendappendrange`)
- Custom sorting (`shoppinglistsort`)
- Command‑line tools (`comcheck`)
- Slice reversal (`reversemenuindex`)
- Nested slices (`podiumposition`)
- Bitwise operations (`activebits`)
- Structs (`pilot`)
- Debugging broken code (`fixthemain`)
- Maximum value search (`max`)
- Conditional logic (`rockandroll`)
- String grouping (`loafofbread`)
### Raid Exercises — Capstone Challenges
**Focus:** Real‑world problem‑solving under time pressure
- **Sudoku Solver** — Recursive backtracking with constraint validation
- **Quad Functions** — ASCII art generation with pattern logic
- **Quadchecker** — Input validation and file processing
---
## 📋 Project Highlights
### ⭐ Sudoku Solver (`raid/sudoku/`)
A professional Go implementation of a constraint‑satisfying backtracking solver.
- Validates input format and puzzle legality
- Solves 9×9 Sudoku puzzles efficiently
- Handles edge cases (invalid input, unsolvable puzzles)
- Full test suite included
**Skills Demonstrated:**
Algorithm design (backtracking), input validation, recursive problem‑solving, error handling in Go
---
### ⭐ Quad Functions (`raid/quad/`)
Five ASCII art pattern generators demonstrating loop control and formatted output.
- Patterns: corners, edges, and interior logic
- Handles edge cases (size ≤ 0, large dimensions)
- Clean separation of concerns (each quad in its own function)
**Skills Demonstrated:**
Loop nesting, string/rune handling, pattern recognition, code organization
---
## 🛠️ Tech Stack
| Component | Technology | Usage |
|-----------|------------|-------|
| **Language** | Go 1.20+ | Primary implementation language |
| **Build** | `go build` / `go run` | Compilation and execution |
| **Testing** | Go's built‑in `testing` | Unit tests for exercises |
| **Version Control** | Git | Code management and history |
| **Shell** | Bash/sh | Quest01 exercises, utilities |
---
## ✅ Skills Acquired
### Go Fundamentals
✓ Package structure and modules (`go.mod`)
✓ Control flow (if, for, switch)
✓ Functions and return values
✓ String/rune handling
✓ Slices, arrays, maps, custom types
✓ Interfaces and type assertions
✓ Error handling and custom errors
✓ Goroutines and basic concurrency
### Algorithms & Data Structures
✓ Recursive problem‑solving (backtracking)
✓ Nested loops and optimization
✓ Constraint satisfaction
✓ Linked lists and node structures
✓ Binary trees and traversal
✓ Searching and sorting algorithms
### Software Practices
✓ Git workflow (commits, branching, merging)
✓ Code documentation and READMEs
✓ Test‑driven development
✓ Peer review and iteration
✓ Command‑line tool development
✓ Input validation and error handling
### Soft Skills
✓ Problem decomposition
✓ Time management under pressure
✓ Self‑directed learning
✓ Debugging and troubleshooting
✓ Communication and documentation
---
## 📖 How to Navigate
1. **Recruiters/Evaluators:** Start with `[Looks like the result wasn't safe to show. Let's switch things up and try something else!]` — polished, production‑ready capstones.
2. **Learners:** Follow `[Looks like the result wasn't safe to show. Let's switch things up and try something else!]` sequentially (quest01 → quest12) to build skills progressively.
3. **Details:** Each exercise directory contains its own `README.md` with problem description, implementation hints, and usage examples.
---
## 📝 License
Licensed under the **MIT License**. See `[Looks like the result wasn't safe to show. Let's switch things up and try something else!]` for details.
---
## 🙋 Questions & Feedback
For questions about specific exercises, refer to the individual `README.md` files in each directory.
## 📬 Contact & Feedback
I welcome feedback, collaboration, or opportunities to apply these skills in real-world projects.
If you have questions about specific exercises, suggestions for improvement, or would like to connect:
[](mailto:jezreelmomoh1234@gmail.com)
---
**Last Updated:** May 6, 2026
**Bootcamp Period:** November–December 2025
**Status:** Complete and Production‑Ready
---