Building a House, Would You Rather

01 Oct 2017

When an architect decides to create a house, they leverage their experience and make a framework based on typical designs created in the past. They use features from other designs which make up a basis of their newer designs. Similarly to my last essay about reinventing the wheel, it is not necessary for an architect to redesign every house from the bottom up.

Similarly to a individual contributor in a programming project, there is little need to create things from scratch every iteration. It would take a much longer time to design web applications using raw HTML and CSS. Engineers at other companies have realized this too which is why frameworks such as Twitter Bootstrap and Semantic UI have cemented itself. They allow programmers to design responsive websites without redesigning responsive components. It provides the programmer with the tools to quickly see results in development.

As part of the ICS314 course, I have had the pleasure with working in Semantic UI. With my previous experience with Twitter Bootstrap, I struggled to see the benefit of working with a framework. However, my idea of frameworks changed when working with the easy-to-understand nature of Semantic. There is a very small ramp up time, and the result can be amazing.

The one downfall of Semantic and frameworks in general is that it can be very hard to modify the components to fit the exact dimensions that a designer might be looking for. Since all the components are configured with specific margins and padding, if a programmer decides that he wants to change them it may take a lot of research to override the CSS. With more experience this may be over come, but for a beginner in web development it can hinder a beginner developer.

Although there are some drawbacks, there are ultimately good things to be said about frameworks. Bringing up websites in a hours and have it responsive and mobile-friendly is a huge benefit to programmers who want to develop modern-age apps. Also with the advent of the web application age, responsive CSS elements cements its importance in web development.