Project Overview
CSP
StudyBuddy
StudyBuddy is an interactive website that makes use of user feedback to provide invaluable advice when studying for school. It was developed with Alex, Alex R, Travis C, and Marti J.
Overview of functions in the project
Web Development Fundamentals
Frontend Frameworks & Libraries
- Exposure to modular JavaScript (using
type="module"and imports) - Working with dynamic DOM manipulation and event handling
API Integration
- Fetching data from REST APIs (GET, POST, DELETE, PUT)
- Handling asynchronous operations with
fetchandasync/await
Data Management
- Managing user data (profiles, tasks, posts) and local storage
- CRUD operations (Create, Read, Update, Delete) for user-generated content
Problem Solving & Debugging
- Reading, understanding, and troubleshooting code
- Improving features and fixing bugs
Project Organization
- Navigating and contributing to a multi-file, multi-feature project
Tower Defense - Open Coding Society
- Abstraction: Uses classes and functions to organize code and manage game logic.
- Algorithms: Implements logic for enemy movement, tower targeting, and upgrades.
- Data Management: Stores game state (enemies, towers, coins, health) in variables and arrays.
- Event Handling: Responds to user actions like dragging, dropping, and clicking.
- Iteration & Conditionals: Uses loops and if-statements to control game flow and rules.
- User Interface: Dynamically updates the display using DOM manipulation.
- Procedural Abstraction: Breaks tasks into reusable functions and methods.
As the Balance Change Expert, I worked on fixing any bugs in the game through constant testing of troops and rerunnning the game in various different situations. By using debugging as an essential tool, I fixed errors in class types, implemened projectiles for troops, and worked on tower logic when attacking each troop. I also implemented a drag and rop system for the towers to be placed and included set radii for each tower upon placing.
Final Reflection
All in all, I was able to learn valuable hard skills and soft skills. With the knowledge that I have gained from this class, It is easier for me to look for an internship and then apply these concepts in a real life setting.