Posts

Week 78

  Summarize what you learned about React this week.  In your opinion, what the strengths and weaknesses of React.        It has been a while since I've used React, so it was a lot of refreshers on the basics. I learned that React builds websites using reusable components. I also learned about useState for uploading data, React Router for switching pages, and how React can connect to a backend using requests like GET, POST, PUT, and DELETE.     In my opinion, React's strengths are that it keeps code organized and makes interactive pages easier to build. It is helpful because each feature can be separated into its own component. The weakness to me is that React can feel confusing at first because hooks, props, routes, and state are all new concepts to learn; it can be quite overwhelming. Overall, however, React seems very useful, but it certainly takes practice to get comfortable using it.

Week 77

  What did you expect a course in Software Engineering would cover?        Honestly, I never really gave it much thought. Even before starting my Computer Science journey, I always heard the position of "Software Engineer" mentioned so much. It seemed like a dream job back then, and it still is one today. When I hear Software Engineer, I think of someone in a company who is a programmer. Working together with other programmers to create something. So before week 1, I expected to just learn more about programming, whether that be new concepts, frameworks, and/or developer tools.       After completing week 1, I realized it is much more about learning to write code. Software engineering is programming integrated over time, meaning you will learn how to build software that can be maintained, adapted, and scaled over many years. I expect to learn topics such as maintaining software over time, working on teams, scalability, managing tradeoffs, and test...

Week 67

     Overall, my experience working on LibreOffice easy hacks went really well. I was able to contribute to a real open source project, which felt meaningful because my work will actually be used by others. One thing that went well was learning how to navigate such a large codebase and follow contribution guidelines. Over time, I got more comfortable looking at the code and understanding how the codebase is connected.     If I could improve anything, I would try to start earlier and ask more questions sooner. At times, I spent too long trying to solve things on my own when I could have saved time by reaching out to my instructor or peers for help. The most impactful part of this experience was seeing my contributions reviewed and accepted, making the work feel real, and showing me how collaboration works in a professional environment.           One challenge I faced was with my environment setup. I got it working for the most part, ...

Week 59

This week, we discussed new sorting, counting, and radix sorting. Then we went over Dynamic Programming, which is a concept I've heard a lot throughout my CS career, but I've never really known what it meant until now. I'm glad ot be able to use and apply it because of this course. The Warshall and Floyd Algorithms were interesting to learn about. I shared a great visualization of the Algorithm in the class Discord for my group discussion participation. I'm always excited when I'm able to solve the puzzles because these puzzles are difficult and really get my mind going. The one I did solve was the Tall-Short puzzle, which is one of the easier ones, but I'm still happy with it. The quiz and homework were long and hard to do, but I'm glad I was able to wrap them up to prepare for the final.

Week 58

 This week was a little rough because I had so much work. I am still in the process of tackling it, but I figured I'd get this out of the way. I even got called in on my day off, but we push. AVL, 2-3, and max heap trees are all new to me. But it was nice to see something pop up from my Data Structures & Algorithms course from back in the day. Hashing, it's probably my favorite data structure. I think it's super neat and unique. Handling collisions is also fun. I was so stumped on the puzzle this week, but then again,n I always am. After this class engagement, it's straight to the programming assignment for me.

Week 57

 Week 5 begins just after the Midterm, and I did pretty well, so I'm happy with my performance. I also appreciate the midterm starting at 10am; the last class had us starting at 9am, and it was too early for me to think. This week was heavy lecture-wise, but I managed to get through it during the week. Homework 4.2 wasn't bad, but 4.1 was rough. I knew it would be bad when it said to use ChatGPT to debug. It was alot but I got through it. For my class participation, I will share a resource in the class Discord.

Week 56

 This week, we didn't have any quizzes or homework. Our whole goal this week is to study for the Midterm on Monday. Content-wise, we went over merge sort very briefly, but this week I'm spending all my time studying and brushing up on past concepts that I wasn't too good at before. I need to go over algorithms, GCD, algorithmic problem solving process, data structures such as arrays, linked lists, stacks, trees, graphs, and sets. I also need to review graph traversal and dynamic programming. I plan to review by going over quizzes, puzzles, and old lectures.