
User Interface (UI) frameworks are often criticized for being bulky, particular, and sometimes nearly as complex as learning a new programming language. At first glance, it seems reasonable to ask: why not just use raw HTML and CSS? After all, the web was built on these technologies. However, frameworks such as Bootstrap and Semantic UI exist for important software engineering reasons. While they do require an upfront investment of time and patience, they offer substantial long-term benefits in productivity, consistency, maintainability, and collaboration.
There is undeniable value in understanding and using raw HTML and CSS. Writing styles from scratch provides full control over layout, design, and performance. Developers gain a deep understanding of the box model, flexbox, grid systems, and responsive design principles. For small projects or highly custom designs, raw CSS can sometimes be the cleanest and most lightweight solution. However, as projects grow in complexity, the challenges multiply. Ensuring consistent spacing, responsive breakpoints, cross-browser compatibility, and accessible components requires careful planning and repetitive effort. What begins as a simple stylesheet can quickly evolve into hundreds or thousands of lines of CSS that must be maintained over time.
Bootstrap provides a structured, pre-designed system for building responsive web interfaces. One of its greatest strengths is its grid system. Instead of manually writing media queries and calculating breakpoints, developers can rely on a flexible, mobile-first grid that works out of the box. Another major advantage is its collection of prebuilt components—navbars, modals, buttons, cards, forms, alerts, and more. These components are not only styled but also behaviorally enhanced with JavaScript. This eliminates the need to reinvent common UI patterns.
My Software Engineering class, ICS 314, has been learning html and Bootstrap 5 the last few weeks through the daily WODs and assignments. Though the learning curve was relatively steep, I caught on quickly and have been enjoying it. Bootstrap feels like a very relevant and important framework for working on webpages in the modern programming world. I hope to use these skills in my future programming career, as I have enjoyed developing webpages like the one pictured. Designing websites is important and by nature will stay a relevant skill for years to come.