Skip to main content

Posts

Showing posts from March, 2026

CST438: The Importance of Code Reviews at Google

 The most interesting thing I learned from Software Engineering at Google is how important code reviews are for both code quality and team collaboration. I used to think code reviews were mainly for finding bugs, but I learned that they also focus on readability, maintainability, and sharing knowledge across the team . I also found it interesting that Google keeps reviews small and frequent , which makes them more effective and less overwhelming. Another important idea is that different roles in a review (like the code owner and readability approver) each focus on different aspects of the code. Overall, this showed me that writing good code is not just about making it work, but also making sure others can understand and maintain it in the future.

CST438: Using Git for Source Code Management

 Git is very helpful for managing source code. It saves all changes, so we can see history and go back if something is wrong. It also helps many developers work together using branches. Each person can work on their own part without breaking the main code. GitHub also makes it easy to share code and review changes. However, Git merge cannot solve everything. Even if there is no conflict, the code can still have errors. For example, two developers may change different lines, but the final code may not work together. Git cannot understand logic, so developers still need to test and check the code after merging. Communication between developers is still important. 

CST438: React Learning Reflection and Insights

 This week I learned the basics of React, including what a component is and how it works. A React component is a function that returns UI elements. I also learned about hooks like useState for managing state and useEffect for running code when the page loads, such as fetching data. One important thing I learned is that using useEffect((_ => {}, []) runs only once when the component first renders. In my opinion, React has many strengths. It makes it easier to build interactive user interfaces using reusable components. It also helps organize code better and makes updates efficient because of its state management. However, React also has some weaknesses. It can be confusing at first, especially with hooks and state updates. There are also many concepts to learn, and sometimes it feels complex for small projects. Overall, React is powerful but has a learning curve, especially for beginners like me.

CST438: Understanding Software Engineering Beyond Coding

Before taking this course, I expected Software Engineering to focus mostly on coding and learning how to connect multiple software systems while applying algorithms through programming. I also hoped to learn about different tools and software that could be useful for future projects and my career as a developer. After completing week 1, my opinion changed a little. I realized that Software Engineering is not only about writing code, but also about designing systems that are maintainable and sustainable over time. The course also focuses on planning, testing strategies, version control, and collaboration in larger teams. It helped me understand that building software involves many engineering decisions, trade-offs, and long-term thinking, not just programming. x