Categories
CS 462

The Project So Far

It’s almost the end of Winter term and our Furever Matchup application is finally coming together. In light of all the progress that’s been made so far, I’ll be answering some questions about the project and my role in it.

Why did you choose your project, and has it met your expectations thus far?

I liked the idea of combining technology with animal adoption because it makes the process more engaging and accessible. Initially, I expected the project to be more straightforward, but the complexity of handling different user roles and managing user interactions made it more challenging than I thought. Still, seeing the system come together has been rewarding.

What was the most difficult challenge, and how did you solve it?

One of the biggest challenges was implementing user authentication and role-based access control. Since the project involves different user types—adopters, shelters, and admin—each with varying permissions, setting up secure and intuitive access was tricky. I used Flask’s built-in authentication features along with role-based logic to ensure the right people had the correct access. I had to learn a lot about balancing security with ease of usability.

What would you do differently on your project and why?

I would set up clearer milestones and deadlines earlier. While we managed to get the core features working, some tasks took longer than expected, which led to a bit of scrambling near the end. Better-defined expectations from the start would have helped keep things on track.

Do you feel your project was managed well or poorly, and how would you change things?

Overall, it was managed pretty well considering our group had different tasks and schedules to work around. Aligning everyone’s progress was sometimes difficult, but we managed to get new releases out in time. Regular check-ins helped, but I think being able to work in-person could have made things smoother.

Did you initially have doubts about your ability to complete the project? How do you feel now?

I initially had doubts, especially since I didn’t have much experience working on a full web app from scratch. There were times when debugging authentication issues or handling database queries made me wonder if I’d get everything working in time. But now, I feel much more confident in my ability to break down problems and find solutions.

Who will use your project? Will it benefit them?

Since we’re not working with a project partner, this was more of a proof-of-concept project rather than something that will be actively used. However, if it were fully implemented, the primary users would be animal adopters and shelters. Shelters could list pets, while adopters could browse, favorite animals, and get updates. The goal is to make the adoption process more engaging and personalized, helping both sides find better matches.

How have you handled getting ‘stuck’ on the project?

I’d take a break, then approach the problem from a different angle—sometimes looking at documentation, asking for help, or debugging step by step. Also, explaining the issue to a teammate often helped me realize what I was missing. As a last resort, I would lay on the ground staring at my ceiling until I could work through the problem.

What are 5 things you learned from working on your project?

  1. User authentication is harder than it looks – Handling login, password resets, and access control took more planning than I expected.
  2. MongoDB requires a different mindset than SQL – Working with a NoSQL database changed how I thought about storing and retrieving data.
  3. Front-end planning matters – Mockups in Figma helped, but I underestimated how much UI/UX design affects usability. I would spend more time on the CSS styling than the actual code itself.
  4. Good documentation is essential – When switching between tasks, having clear documentation made debugging and collaboration easier.
  5. There are always bugs – No matter how much I tested something, I’ll see a bug that I missed in the presentation videos. Even when there are no bugs on my end, someone else running the application will find one I can’t reproduce, which makes debugging especially tricky.

Categories
CS 461

The Project

Hello! It’s been a minute since I’ve written anything. These past few weeks have been quite hectic, but I’m excited to share that I’ve finally found out what project I’ll be working on: a “dating” website where adopters can browse through animals waiting to find their forever homes. My team has decided to call it Furever Matchup.

So far, my team and I have completed a few assignments, including our initial design document, which outlines our goals and plans. I’ll be handling user accounts, which is a new challenge for me since I’ve never created an application with login or account management features. Our first prototype is due by the end of the week, so from this moment on, our lives will be consumed by project iterations and progress reports.

In my last post, I didn’t mention that I’m also taking a course called J.D. Next, an 8-week program designed as an alternative to the LSAT, to help prepare for law school. Fortunately, the assignments don’t have strict due dates, which is good because with everything going on, I haven’t managed to start on any of them yet! Thankfully, I have until February 5th to submit them all. I seem to live by the motto, “if it’s not the due date, it’s not the do date.”

I’m a firm believer that everything works out in the end, so before I know it, this term will be over, and I’ll have tackled all those J.D. Next assignments.

Until then, see you next time!