Posts

CST489 Week 9

What project milestones did you accomplish this week? This week I successfully completed the AWS Cloud Practitioner course on Amazon as well as the Agile Project Management course . In addition to completing the coursework, I applied the AWS concepts I learned by deploying an older project to the cloud in order to test and reinforce my new skills. The site is currently being hosted at: http://54.177.87.154:3000/ For this project, I built and deployed the application using several AWS services. I created a Docker image of my project and stored it in Amazon ECR (Elastic Container Registry) . My ECS service pulls this image and runs the containerized application. The project’s data is stored in an Amazon RDS MySQL database , which handles the backend data storage. I also configured an S3 bucket to store static assets such as pet photos, CSS files, and JavaScript files. Additionally, I set up security groups to control network traffic and manage access to the different services. The g...

CST438 Week 1

Image
What did you expect a course in Software Engineering would cover? Before starting this course, I had pretty low expectations. I assumed it would mostly focus on basic coding concepts and terminology, similar to what I had already seen in other classes. I did not expect it to go much deeper than that. After completing Week 1, how has your opinion changed? After completing Week 1, my opinion has changed a lot. I am honestly very impressed with both the labs and the upcoming modules. My first week in this course has reignited my passion for coding because it already feels much more hands-on and practical than I expected. One of the things that stood out to me most was Professor David’s lab videos. They helped me better understand the purpose behind what we were doing instead of just following instructions. I especially liked how he demonstrated using Postman’s UI to test API endpoints first. Seeing the requests and responses in Postman made it easier to visualize how the API was work...

CST462S Reflection

What went well? What would you improve? What was the most impactful part? What challenges did you face? Overall I felt like the service project idea is good for exposure. What I would personally improve is to try to match students with a site supervisor with the experience that they are signing up to do as my site supervisor wasn't technically a developer and more of a community outreach who I felt could of connected me with one of the developer at their company to provide better mentorship. I faced many challenges for this specific service, the first being my main resource is the wiki and for any variances that I experience, I would have to contact someone in the IRC channel and hope someone provides assistance. What advice do you have for future SL students? For this specific site location, I specifically selected it because I thought I could leverage my C++ abilities and do some dev work. But the entire service was spent on mostly onboarding and reading documentations. I tried t...

CST370 Week 7

This week, I focused on non-comparison sorting methods like counting sort and radix sort, and I saw how they achieve linear time under certain conditions. I then explored dynamic programming through the coin-collecting and coin-row problems, which helped me understand how optimal substructure and overlapping subproblems work. Next, I learned about graph-algorithms for transitive closure and all-pairs shortest paths (, ), and finally the greedy paradigm through minimum spanning trees and . Working through the example exercises clarified how each technique fits different problem types.

CST370 Week 6

This week I explored AVL trees , learning how they keep balance via rotations when insertions or deletions cause imbalance. I practiced determining valid AVL trees and performing rotations (left, right, left-right, right-left). Then we looked at 2-3 trees , which allow nodes to have 2 or 3 children and help maintain balanced search structure. After that, we studied heaps and heapsort (building max heaps, removing the max, bottom-up heap construction) and their time complexity. Finally, we covered hashing , including collision handling, load factor, and rehashing strategies. Working through the exercises and visual tools really helped solidify these more advanced data structure concepts.

CST370 Week 5

This week I dove into Quick Sort, learning how partitioning around a pivot can yield efficient sorting on average. I also studied binary tree traversals (inorder, preorder, postorder) and how to compute the tree’s height. The concept of decrease-and-conquer came next, applying it to binary search. We also learned about directed acyclic graphs (DAGs) and topological sorting, including Kahn’s algorithm. Finally, transform-and-conquer via pre-sorting taught me how sometimes sorting first can simplify later steps. These topics helped me see a broad set of algorithmic patterns and trade-offs.

CST 370 Week 4

 This week I focused on learning merge sort and its divide-and-conquer approach. I practiced breaking down arrays into subproblems, merging sorted halves, and analyzing its time efficiency. We also had a review session for the midterm, which helped clarify key topics from previous weeks such as asymptotic notation, brute force, and search algorithms. Preparing for the midterm encouraged me to revisit exercises and puzzles, reinforcing my understanding and giving me more confidence in applying these techniques.