KidsWhoCode Website
A responsive concept website for a fictional charity providing coding education to children. It includes downloadable learning resources, volunteer and donation pages, a contact page and mobile navigation.
Project archive
These projects mark the beginning of my portfolio. Each one helped me turn theory into something practical and identify what I still needed to learn.
Coursework prepared as honest case studies, with source code and demonstrations included where they help explain the result.
A responsive concept website for a fictional charity providing coding education to children. It includes downloadable learning resources, volunteer and donation pages, a contact page and mobile navigation.
A PHP and MySQL administration system created as a continuation of the KidsWhoCode website. It manages customers, volunteers, supporters, schools, sessions, attendance and donations through a central dashboard.
The individual operations were manageable, but applying consistent CRUD functionality across a large number of related files was the main challenge. Seeing every part work together as a complete system made the volume of work worthwhile.
A Python control program for a Formula AllCode robot. It reads the left and right line sensors continuously, moves forward while centred and makes small corrective turns when either sensor detects the edge of the route.
A front infrared reading acts as the stopping condition and triggers an audible note. The main challenge was turning sensor values into reliable movement through repeated testing and small adjustments to the thresholds and turn angles.
A Cisco Packet Tracer LAN connecting three clients and a server through a switch. The server was configured to provide DHCP, HTTP, FTP and email services across the network.
Simulation mode and PDU inspection were used to follow the DHCP DORA process, HTTP requests and responses, FTP authentication and data transfer, and email delivery through SMTP and POP3. This made the relationship between the visible service and the underlying protocol layers much clearer.
A command-line Python application for creating, viewing, updating and deleting equipment records. It validates asset tags, room codes, equipment states and dates, then saves or loads records using CSV files.
This was the project where I understood how important functions become as programs grow. Separating validation, record operations, file handling and the menu loop made a sizeable program easier to update, test and maintain without duplicating logic.