I Learned More than Just Website Development

14 May 2020

Project Management

Through my experience in this course, I have gained knowledge of various things, not limited to just webpage application development. I’ve become acquainted with a specific software development method called the Issue Driven Project Management, which is an Agile Project Management process where we create issues as they arise. As an amateur programmer, I have never worked on a project in a group any larger than two, so this was a great learning opportunity for me to see how programmers collaborate. What I found is that this method is useful for small groups, and it is what we have used while tackling the final project for this course. It was a good idea for us to familiarize ourselves with each other to know what would work with the project and what didn’t, given the timeframe that we had, and this was done through team bonding exercises. We divided the work amongst ourselves through tasks, and each task was to last no more than 3-5 days. Our project board had three major milestones, and these milestones enabled us to see the progress of our work as deadlines approached. This Issue-Driven approach was effective in our small group because we regularly stayed in touch through the Discord app and pinged each other immediately when problems arose. I could see myself using this method in developing other software not restricted to web development, e.g., indie games, mobile apps, and other applications, but only with groups consisting of 4-5 people. That being said, it may not be as effective in larger projects or companies with more than 4-5 people. Here is a look of our project board at completion.

User Interface Frameworks

Frameworks were a time-saver in creating a more simple and modern touch to our web pages. One of them we used throughout the semester was Semantic UI, and it helped us immensely in a majority of the interactive features, as some of these are things we may not even try to attempt with HTML or CSS. With our sidekick, Semantic, our group website, Ono-OTW was able to have a functional nav bar that could toggle between a deliverer and a customer, modernized buttons, and modals that would appear upon clicking a card. One aspect that our group faced was creating a template with a theme that would attract viewers and look appealing to the eyes. Web design is a sophisticated matter in itself; we could have as many fancy features and animations we want, but if all these special gadgets don’t piece together in the end, they serve no purpose. Even with these frameworks, we needed to learn how to utilize them effectively on our website so that it could still flow. As a preliminary step, our group used Figma, a collaborative tool used to design interfaces. Understanding this, Semantic UI will make things much easier when we have a layout for our project, and it doesn’t just have to be Semantic UI. There are many other frameworks to help achieve a purpose.

Functional Programming

A cool thing about Javascript is that you could pass in functions as parameters within a function itself. A useful feature we picked up in Javascript was the Underscore library. The functions in this library simplify our 4-5 lines of code of writing a for-loop to a single line of code. This underscore library is especially useful when dealing with big data sets like retrieving the total number of Computer Science majors across all UH campuses or finding the number of programs that UH offers. There are various ways of approaching these problems with underscore functions, and it takes practice to know the right one when dealing with data. Underscore was in no doubt, very valuable in our group project when we had to filter different collections of data to display the targeted items on a page, and this was needed for the search bar on our group’s Restaurant and Menu pages. There is no end to what you could do with the Underscore library, and there is no reason not to use them as they are key to simplifying chunks of code.