Week 4:Project Review and Version Control

Group Project Review

I think all the web extensions made by each group are great. The projects include Website Time Tracker, Tab-Organizer, Quick Notes, Currency-Unit-Converter, and GitHelper. For more fun projects, we have Virtual Pet, I Did That, Browser Scroller, Meowtivation, and Colorize.
Website Time Tracker is the project has the coolest code of conduct ever. I like their code of conduct, which is No Code of Conduct. While it’s a bit humorous in name, it works well as a simple and clear code of conduct. Although in class, it’s better if we create our own code of conduct to better understand its structure and functionality, this one is effective in its simplicity and could definitely improve efficiency. Finding a code of conduct is indeed a part of this course, isn’t it?

Another group also has an interesting project called Meowtivation. It uses an API from a website called Giphy, which can provide a GIF database. Although I didn’t know much about how to use API keys, they wrote a detailed README file to help users successfully set up the API and load the extension. Similarly, Quick Notes is also a project with a very detailed README file. They included some vivid GIFs to demonstrate how to use the extension. Additionally, they provided a sheet explaining how the variables are used in the extension. I think it’s very thoughtful, which might not be necessary for official extensions, but it’s great. Personally, I think it could be worth considering creating a separate file for the instructions to keep the README file simpler, but that’s just a suggestion.

I won’t go into detail about the other projects, even though they are all excellent. The ones not mentioned here are not overlooked or less impressive in any way.

Git Activity

In the class, we did some pratices on how to manage our project using Git, which is essential for open source project, since they rely on collaboration and networking. After the class, we were recommended to read the first two chapter of Pro Git.

The first chapter provides a history of Git, explaining how it was created and why it’s needed. Reading it deepened my understanding of version control. For example, I started thinking Git as both a camera(capturing snapshots of a project) and a platform for sharing those snapshots.

The second chaper explains more about how Git works mechanically. I used to rely on Github Desktop, which is an all-in-one app. I knew how to use Github Desktop, but I didn’t fully grasp how Git itself operates. After reading the second chapter, I gained a clearer undertstanding of how Git stores data and switches between different versions. This chapter also introduced some new features that Github Desktop might not support-for example, using the terminal to revert a single file’s changes.(Though maybe Github Desktop has this feature too-I’m still not an expert.) What’s more, the book touched on terminal commands for managing branches and versions more precisely.

Aditionally, I’ve always wondered why there aren’t many other tools like Git, and this book helped answer that. Git’s local setup allows it to function without an internet connection, and its snapshot-based model enables fast branch switching.

Written before or on February 16, 2025