Have you ever tried to cook? I mean actually start from scratch with raw ingredients; it’s fun to experience this and can turn out some quality food, but after a while it becomes cumbersome. Just like building a style for a website only using cascading style sheet. Starting with a blank page, working on each individual element’s color, size, padding, margins, and so forth. I wish there was an easier way, something that would make the process faster, while still producing a beautiful site. Thankfully in the cooking realm we have companies that understand this need and produce premade ingredients to cut the time it takes to cook a delicious meal down.
When I think about utilizing premade ingredients I can’t help but remember my time studying abroad in Japan, where I would make curry almost every other week. Instead of buying and preparing all the spices a curry base requires a person that wants to make curry can pick a box of curry base. One simple needs to cook the vegetables and meat then chuck the curry blocks in and presto great tasting Japanese curry. This is so popular in japan that supermarkets have a whole section dedicated to several types of premade curry mixes.
Building a website with a CSS framework is like cooking with premade ingredients; it’s faster and will produce a high-quality product. The framework I have been working closely with recently is Semantic UI. I have seen twitter bootstrap before and my first impression was that the class names were ambiguous for example ‘btn-lrg’. Whereas Semantic UI moves away from this by using natural language in its classes like ‘large button’. I appreciate how CSS framework take most of the work out of styling, but I believe it is just a starting point.
During my first week of working with Semantic UI, I can’t help but feel restricted the same I felt when I first used coding standards. The frameworks give a great foundation for a website, but require just a little bit more elbow grease to make it stick out above the rest. Thankfully Semantic UI does make it possible to override default values. And thus the cycle of learning begins again.