Building with Black Boxes

20 Feb 2019

Design and Aesthetics

Part of the main appeal of a UI framework like Semantic UI is its ability to package a slew of pre-built components under the same unifying style while still being, to some degree, customizable. This allows developers to build a good looking website without having a seasoned eye for design. More generally, it means that developers don’t have to reinvent the wheel when implementing basic elements in their websites. This, in turn, makes it easier for developers to get a prototype up and running in a timely manner. However, when it comes to creating something more customized, experienced developers may find some UI frameworks lacking in expressiveness. This is why it is still so important to have a solid grasp of HTML and CSS. Put differently, learning how to use a framework is not a substitute for learning HTML and CSS.

Responsiveness, Security, and Browser Compatibility

Developing a website that is browser compatible, secure, and responsive without the aid of a framework is, needless to say, rather difficult. Not only does it require a certain level of experience, but it can also be an unnecessary drain on time and money. Fortunately, frameworks like Semantic UI can help to lower the barrier to entry in web development by providing beginners with the tools they need to create websites that are flexible and secure without having to understand everything that is going on beneath the surface. As an example, consider the problem of responsive design. It is not a trivial task to make a stackable menu in pure HTML and CSS. However, in Semantic UI it really is as simple as inserting the word “stackable” into the class name of a “ui menu”. Even for more experienced developers, there are clear benefits to using a framework. The fact of the matter is that debugging code for multiple browsers takes a long time, and so does adapting a website to a mobile format. UI frameworks help to alleviate this burden by providing developers with code that is reliable and tested across a variety of browsers and devices.

Community

Lastly, there is the community aspect. A good framework tends to have decent documentation as well as its own thriving community. This means that when developers inevitably do encounter problems, there is a good chance of finding help from other developers who have likewise encountered the problem on their own. Thus developers can draw from the experience of multiple individuals to solve problems.

Conclusion

In conclusion, UI frameworks can reduce the cost of developing a website, make web development more accessible, and foster a supportive community. Although UI frameworks are inherently limited in expressiveness, they are still an incredibly useful tool for software developers.