Another Chapter in my Book

14 May 2021

As the semester comes to a close and I look back on the ups and downs of the class, I see how far I have come as a programmer. Over the past couple of months, I have learned multiple skills and techniques to improve my programming skills and understanding. I have also learned how to develop websites at a beginner level using HTML, JavaScript, and CSS.

Configuration Management

I learned about configuration management through GitHub. Configuration management is like working on a project with a group through Google Slides or Google Docs. Through GitHub a group member can take the main code and edit the code as much as they want and post it as a branch so that it does not directly change the main code also known as the master branch. All the group members can do the same thing and when everyone has done their part of the code, the group can then decide whether or not to merge the branches into the master branch. This is to make sure that the new code that are developed by everyone does not break the master code and if it does, it is restricted to the branch that it is developed in and we can fix it through there.

My group members and I used GitHub to develop our website Meow Mapper. We were able to develop pages and make changes to the code without worrying about breaking anything. Even when something did break, it was contained within its separate branch and we were able to go in there and fix the problems. Eventually, we were able to complete our website to the best of our abilities using the knowledge we have learned throughout the semester.

Agile Project Management

Another big concept we learned was agile project management. Agile project management is basically like eating three meals a day. Instead of doing the whole project at once, we would split it up into digestible parts as a way to meet deadlines and make it easier on ourselves. When the project was assigned to us, I thought the project was way to big and I had no idea how we were ever going to finish it. Then, the professor introduced to us the concept of agile project management. The project was then divided up into three milestone. For each milestone, each person would be assigned issues that were split up into 72 hour increments. Each milestone were due in about a week which let us progress in a manageable timeline. With the project all split up, my group members and I were able to complete our own issues and merge them into the final website that we have right now.

Reflection

Throughout the semesters, I have learned many skills and techniques taught by Professor Johnson. We did a lot of WODs(Workout of the day) as a way to prepare for future interviews and technical questions. The WODs were timed so we only had a small amout of time to solve the problem that were required of us. The WODs required you to do some preparation beforehand whether it was doing the homework or reading and watching the material that the professor has posted on the topic. For the first few WODs, I made the mistake of not preparing adequately for them and got them wrong. Eventually, I took them more seriously and was able to complete most of the WODs. Overall, I thoroughly enjoyed the class and the professor as well as the teaching assistant did an excellent job teaching us the contents of the class