Octagon is a collaborative learning repository for 8 students of FAST NUCES studying Artificial Intelligence in their 3rd Semester. Named after the eight-sided polygon — one side per member — this is our shared workspace to grow as programmers and GitHub collaborators, together.
"Alone we can do so little; together we can do so much."
What we are building here:
- 💜 Real-world GitHub collaboration habits
- 🧠 Strong C++ and OOP foundations
- 🔍 Preparation for Data Structures & Algorithms
- 🐍 A launchpad for Python and AI (coming soon)
- 📖 A culture of code review and clean commits
📁 Octagon/
│
├── 📄 README.md ← You are here
├── 📄 .gitignore
│
├── 📂 members/ ← Personal intro files (one per member)
│
├── 📂 programming-fundamentals/ ← C++ basics, examples, exercises
│ └── examples/
│
├── 📂 oop/ ← Object Oriented Programming
│ └── examples/
│
├── 📂 dsa/ ← Data Structures & Algorithms (upcoming)
│ └── examples/
│
├── 📂 python/ ← Python (future)
│
├── 📂 resources/ ← Learning links and references
│
└── 📂 docs/ ← GitHub guides and contributor profiles
├── github-guide.md
├── git-cheatsheet.md
└── contributors.md
git clone https://github.com/ik-awais/Octagon.gitThis copies the entire repo to your machine. Only do this once.
cd OctagonThis opens the Octagon folder in your terminal so you can work inside it.
git checkout -b your-name/what-you-are-doingReal examples:
git checkout -b ali/add-intro
git checkout -b easha/hello-world-cpp
git checkout -b arsh/oop-notesA branch is your own private workspace. Changes here will not affect anyone else until you merge.
Open files in VS Code or any editor and make the required changes.
# Stage all your changed files
git add .
# Save them with a descriptive message
git commit -m "docs: add Ali's introduction file"Commit message format:
type: short description of what you did
Allowed types:
feat → added something new
docs → added or updated documentation
fix → fixed a bug
style → formatting only, no logic change
git push origin your-branch-nameExample:
git push origin ali/add-introThis sends your local branch to GitHub so others can see it.
- Go to github.com/ik-awais/Octagon
- Click "Compare & pull request" (appears automatically after your push)
- Write a clear title describing what you did
- Assign any of the 5 members as the reviewer
- Click "Create pull request"
A Pull Request is a formal request to add your work into the main codebase. It lets the team review before anything is merged.
Run this whenever you start new work to get the latest changes from your teammates:
git checkout main
git pull origin mainThis prevents conflicts by making sure your main branch always has everyone's latest work.
Branch Naming — always follow this format:
your-name/feature-description
Examples:
ali/add-intro
easha/hello-world-cpp
arsh/oop-notes
The Golden Rules:
- ✅ Always create a branch before making changes
- ✅ Write clear commit messages
- ✅ Assign
ik-awaisas reviewer on every PR - ✅ Respond to review comments within 48 hours
- ✅ Run
git pull origin mainbefore starting new work - ❌ Never push directly to
main - ❌ Never merge your own PR without approval
2026 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━▶
[NOW] [NEXT] [THEN] [FUTURE]
│ │ │ │
▼ ▼ ▼ ▼
GitHub Basics C++ Projects DSA Basics Python &
+ C++ Hello (Calculator, (Arrays, AI / ML
World Grade Manager, Sorting, Foundations
Number Game) Linked Lists)
This is a safe, respectful, and collaborative learning space.
- ✅ Be kind and constructive in code reviews
- ✅ Ask questions — no question is too basic
- ✅ Help teammates when they are stuck
- ✅ Celebrate each other's wins
- ❌ Never push directly to
main - ❌ Never merge a PR without a review









