Skip to content

sinhard/dev-notebook

Repository files navigation

Dev Notebook

A comprehensive portfolio showcasing both coursework from my Computer Science degree and practical development projects. This repository demonstrates my progression from foundational programming concepts to full-stack web applications, geographic information systems, and modern web technologies.

πŸ“š Portfolio Domains

This repository is organized by development domain and specialty area:

πŸŽ“ CS Coursework & Fundamentals

C Programming

C is the foundational language taught at the beginning of most Computer Science programs. This folder contains structured university coursework covering fundamental computer science concepts and programming principles.

Location: cs-coursework-fundamentals/c/

Coursework Topics Covered

The exercises cover essential C programming concepts:

  1. Introduction to the Language
  2. Program Structure & Basic Syntax
  3. Data Types & Variables
  4. Constants & Storage Classes
  5. Operators & Decision Making
  6. Loops & Functions
  7. Scope Rules & Arrays
  8. Pointers & Strings
  9. Structures, Unions & Bit Fields
  10. TypeDef & Input/Output
  11. File I/O & Preprocessors
  12. Header Files & Type Casting
  13. Error Handling & Recursion
  14. Variable Arguments & Memory Management
  15. Command Line Arguments

Exercises

File Description
Ex1.c Volume of Sphere Calculator (fixed radius) - Computes the volume of a sphere with a 10-meter radius using the formula v = 4/3Ο€rΒ³
Ex2.c Volume of Sphere Calculator (user input) - Accepts radius value from user and calculates volume
Ex3.c Dollar-and-Cents Calculator - Asks user to enter a dollars-and-cents amount and displays the amount with 5% tax added
Ex4.c Polynomial Function Evaluator - Substitutes user input x value into the equation 3x⁡ - 2x⁴ - 5x³ - x² + 7x - 6
Ex5.c US Dollar Bill Denominator - Breaks down a dollar amount (0-20) using the smallest number of $20, $10, $5, and $1 bills
Ex6.c Date Formatter - Accepts a date from user and formats it as yyyymmdd
Ex7.c Tabbed View Exercise - Demonstrates text formatting with tabs
Ex8.c Additional Exercise - Further practice with C concepts

Main Program

File Description
Game.c Interactive menu program that runs all exercises above - Provides a unified interface to execute any exercise

Getting Started with C

Prerequisites:

  • GCC compiler or any C compiler (e.g., gcc, clang)
  • Terminal/Command prompt

Compiling and Running:

To compile a single exercise:

gcc -o Ex1 cs-coursework-fundamentals/c/Ex1.c
./Ex1

Or on Windows:

gcc -o Ex1 cs-coursework-fundamentals\c\Ex1.c
Ex1.exe

To compile and run the menu-based Game program:

gcc -o Game cs-coursework-fundamentals/c/Game.c
./Game

Learning Resources:


πŸ’» Web Development

This domain encompasses full-stack web applications, interactive user interfaces, and web frameworks. Projects demonstrate responsive design, form handling, and modern web technologies.

Location: web-development/

Frontend Development

Interactive Applications

Project Location Technologies Description
Tips Calculator web-development/frontend-dev/tips-calculator/ JavaScript, CSS Interactive tip calculation tool with real-time computation
To-Do List web-development/frontend-dev/to-do-List/ JavaScript, CSS Task management application with add/complete/delete functionality

UI Components & Design Systems

Responsive Forms & Components

Project Location Technologies Description
Checkout Form web-development/ui-components-design-systems/checkout-form/ HTML, CSS Responsive checkout form with validation and styling
Master Signup Form web-development/ui-components-design-systems/master-signup-form/ HTML, CSS Comprehensive user authentication forms (signup, login, password recovery)
Mini CSS Library web-development/ui-components-design-systems/mini-css-library/ HTML, CSS Custom CSS utilities and reusable component library
Navigation Bars web-development/ui-components-design-systems/navbar/ HTML, CSS Multiple navbar implementations showcasing responsive design patterns
Navbar with Dropdown web-development/ui-components-design-systems/navbar-with-drop-down/ HTML, CSS Advanced navigation with dropdown menu functionality

Backend & Frameworks

Python Web Framework

Project Location Technologies Description
Bottle Framework Learning web-development/backend-dev-frameworks/learning-bottle-framework/ Python, Bottle Educational project exploring the lightweight Bottle web framework

πŸ—οΈ Data Structures & Algorithms

Core data structure implementations and algorithmic problem-solving exercises.

Location: data-structure-algorithms/


πŸ”Œ Embedded Systems

Low-level programming, microcontroller projects, and hardware-focused development.

Location: embedded-systems/


πŸ—ΊοΈ Geospatial Analysis & Mapping

Geographic Information Systems (GIS) projects showcasing web-based mapping, spatial data visualization, and geospatial analysis. These projects combine web technologies with geographic data.

Location: geospatial-analysis-mapping/

Project Location Description
Freetown Settlements geospatial-analysis-mapping/freetown-settlements/ Mapping and spatial analysis of settlements in Freetown
Health Facilities geospatial-analysis-mapping/health-facilities/ Geographic data visualization of health facilities and locations
PREESD Installations geospatial-analysis-mapping/preesd-installations/ Spatial data visualization of installations and infrastructure
Web Map geospatial-analysis-mapping/web-map/ Interactive web-based mapping application

πŸ€– Automation Scripts

Utility scripts and automation tools for development and data processing tasks.

Location: automation-scripts/

πŸ“– Project Organization

dev-notebook/
β”œβ”€β”€ README.md (this file)
β”œβ”€β”€ dev-notebook.code-workspace
β”œβ”€β”€ cs-coursework-fundamentals/ (CS Coursework & Fundamentals)
β”‚   └── c/
β”‚       β”œβ”€β”€ README.md (detailed exercise documentation)
β”‚       β”œβ”€β”€ Ex1.c through Ex8.c (individual exercises)
β”‚       └── Game.c (menu-driven program)
β”œβ”€β”€ web-development/ (Web Development)
β”‚   β”œβ”€β”€ frontend-dev/
β”‚   β”‚   β”œβ”€β”€ tips-calculator/
β”‚   β”‚   └── to-do-List/
β”‚   β”œβ”€β”€ ui-components-design-systems/
β”‚   β”‚   β”œβ”€β”€ checkout-form/
β”‚   β”‚   β”œβ”€β”€ master-signup-form/
β”‚   β”‚   β”œβ”€β”€ mini-css-library/
β”‚   β”‚   β”œβ”€β”€ navbar/ (v1, v2, v3)
β”‚   β”‚   └── navbar-with-drop-down/
β”‚   └── backend-dev-frameworks/
β”‚       └── learning-bottle-framework/
β”œβ”€β”€ data-structure-algorithms/ (Data Structures & Algorithms)
β”œβ”€β”€ embedded-systems/ (Embedded Systems)
β”œβ”€β”€ geospatial-analysis-mapping/ (Geospatial Analysis & Mapping)
β”‚   β”œβ”€β”€ freetown-settlements/
β”‚   β”œβ”€β”€ health-facilities/
β”‚   β”œβ”€β”€ preesd-installations/
β”‚   └── web-map/
└── automation-scripts/ (Automation Scripts)

πŸ‘¨β€πŸ’» Author

Mohamed S Harding

πŸ“ Notes

  • CS Coursework & Fundamentals: C programming exercises include detailed comments explaining problem statements and solutions, progressing from basic input/output to complex algorithmic thinking
  • Data Structures & Algorithms: Core implementations and algorithm explorations demonstrating computer science principles
  • Embedded Systems: Low-level programming and hardware-focused projects
  • Web Development: Full-stack web applications, interactive tools, and responsive UI components demonstrating modern web development practices across frontend, backend, and UI design
  • Geospatial Analysis: GIS projects showcase advanced web mapping and spatial data visualization capabilities
  • Automation Scripts: Utility and automation tools for various development tasks
  • Each domain builds upon core CS principles while showcasing specialized expertise in different development areas
  • This repository serves as a comprehensive reference for my development journey and technical capabilities across multiple domains

About

A comprehensive portfolio showcasing both coursework from my Computer Science degree and practical development projects. This repository demonstrates my progression from foundational programming concepts to full-stack web applications, geographic information systems, and modern web technologies.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors