Posts

CST 489 Week 12

  WELCOME TO WEEK 12 Learning Journal -  Project milestones accomplished this week: This week, I added authentication to the project, fixed issues related to RLS (Row Level Security) policies, added database triggers and policies to improve security and data flow, and successfully displayed user information on the settings page. Plan for next week: Next week, I plan to help other team members and start looking into implementing Google SSO. Challenges currently facing: Some challenges have been merging work that didn’t use authentication with newer work that now uses authentication. This has caused some conflicts and extra testing work. We sthink we will figure it out! 

CST 489 Week 11

  WELCOME TO WEEK 11 Learning Journal -  What project milestones did you accomplish this week? This week I helped implement user authentication using Supabase instead of NextAuth. I set up the login and logout flow so users can successfully authenticate, and I created synchronization between the login and signup pages. I also built the new Welcome page that explains what our app does, and added the feature that requires users to select at least one category during signup. All of these contributions were done on the frontend. What is your plan for next week? Next week I plan to improve the visibility and layout of a few pages on the frontend. If I finish early, I will begin helping with the authorization work so that pages become user-specific, and then start assisting with backend integration. What challenges are you currently facing? Do you need instructor assistance? I didn’t face any major challenges this week. Everything is flowing smoothly. The only part that may be ...

CST 489 Week 10

Image
  WELCOME TO WEEK 10 Learning Journal -  What project milestones did you accomplish this week? This week I continued working on the front end and added the remaining components needed for the Home page. The Home page had the most information, so it took the longest. I only need one modal to finish up the Calendar, Home, and Login pages.  What is your plan for next week? My plan for next week is to figure out what features will be accessible inside the modal after we meet with our mentor. They suggested changes, but we are not completely sure which direction to take yet. After resolving this, we will move into integrating the back end with the front end. Once I finish the remaining front-end work, I plan to help with the integration. What challenges, if any, are you currently facing in project development? Do you need instructor assistance? Some challenges this week included making the layout look good on mobile screens and adjusting component dimensions so the UI did...

CST 489 Week 9

Image
  WELCOME TO WEEK 9 Learning Journal -  What project milestones did you accomplish this week? This week, we focused mainly on the backend. We worked on setting up the database, but ran into an issue with Vercel while trying to connect. We are currently working on the routes and the algorithms that will be used in the project. We also set up the repo and started coding the front end by building the initial pages and layouts. What is your plan for next week? Next week, our main goal is to connect the database to the repo and continue building out the front-end structure. We plan to create skeletons for the main pages and begin linking users so the login system works throughout the app. What challenges are you currently facing? Do you need instructor assistance? Our biggest challenge right now is deciding whether to continue using Vercel, since we originally planned to host there for free under our organization account, but we are having connection issues. We will discuss th...

CST 438 Week 8

Image
WELCOME TO WEEK 8 Learning Journal -  This week I reflected on the five most important things I’ve learned in this course and why they stood out to me. The SDLC Phases Understanding the software development life cycle helped me see how projects are structured from start to finish. Breaking work into phases like requirements, design, implementation, and testing makes it easier to stay organized and avoid skipping critical steps. This gave me a better framework for thinking about my own assignments. Agile vs. Plan and Document Learning the differences between Agile and traditional Plan and Document (Waterfall) processes showed me that there is no “one size fits all” approach. Agile focuses on iterations and continuous customer feedback, while Plan and Document emphasizes stability and complete specifications. I chose this because our labs showed how Agile aligns better with frequent testing and changing requirements, which is closer to real-world software. However, it was also...

CST 438 Week 7

Image
  WELCOME TO WEEK 7 Learning Journal - CST 438 Describe some of the differences between using an Agile process and using a  Plan and Document (or Waterfall) process.        This week I reviewed the differences between using an Agile process and a Plan and Document (Waterfall) process. In a Plan and Document approach, requirements are written as a detailed SRS during a dedicated requirements phase, with the expectation that they remain complete and stable for the rest of the project. Changes are handled through a formal change control process, which involves evaluating the impact on cost and schedule before updating documents, code, and tests. Design is completed after requirements and is intended to be stable, while cost estimates are based on person-weeks from past experience. Scheduling uses tools like PERT charts with periodic status meetings, and testing is split between developers writing unit tests and QA handling system and acceptance tests. Howeve...

CST 438 Week 6

WELCOME TO WEEK 6 Learning Journal - CST 438 Write a weekly entry describing important things you learned this week.        This week I read Chapter 25 on Compute as a Service and learned how Google turned running code into an automated system. For example, instead of rebooting machines by hand when they fail, engineers set up policies to kill and recreate a container or virtual machine automatically after a health check fails. I saw why treating servers as cattle not pets matters. When one node goes down, the system simply stamps out a new instance without any human intervention. Using Linux control groups and namespaces made it possible to safely share machines among different workloads. Writing software for this environment means dividing tasks into small units, storing all important state in durable services such as Spanner or Bigtable, and designing retries so they can run more than once without causing errors. Finally I was struck by the description of the Code...