Making beautiful pieces of wood was once reserved to very skillful craftsman. In the day of no power tools they used a wide variety of hand tools such as chisels, hammers, planes, and saws. These craftsman would spend many hours on each piece. No two pieces would be exactly the same. Over time these hand tools would begin to have modern counterparts. Saws that cut perfect lines. Planers to make even surfaces. Speciality tools that replaced chisels in many forms. With these modern tools the process of creating good pieces of wood has become a lot easier.
In my observation building perfect sites with raw HTML takes skill just as building beautiful pieces of wood. That is were ui frameworks come in, HTMLs power tool. Ui frameworks builds upon the foundations that HTML started. There are a handful of different ui frameworks similar to brands of power tools. Each of these brands has many tools used to make building a site that looks amazing with more ease. The way the ui framework works is by using raw HTML wrapped into a class that can be used over and over again. These classes represent the power tools of ui frameworks. This has made it possible for people with different skills to still create amazing websites.
Using ui frameworks is more of a investment. Learning all of the classes is still a process, and can be just a taunting as learning a new language. If you make the commitment to learn one of the ui frameworks, it will save you many lines of code and the headache of formatting. The one I worked with first was semantic ui. I noticed right away how using a framework made creating a web site more streamlined. Some classes that make things easier include menus, dropdowns, and search bars. They are all pre formatted the only thing you really need to do is put your unique information in. To make it a little easier all of these classes are provided in what I call a “code dictionary”. A website with all the information on how to use each class. Using a framework also provides consistency, making it easier for new team members on a project to come in a use the same classes in the dictionary. Each time a class is used it provides the same look because of the raw HTML formatting inside each class. When only using raw HTML, creating consistent formatting especially in a large project becomes very difficult.
There are a few wrinkles though. These tools that have been made for you dont always fit just right. Sometimes you do need to go back to the foundation, using that original raw HTML to go in and make things perfect. Even with all the great benefits of newer tools the master craftsman will be skilled in not only the new tools but also the original tools of the trade. There is just always something missing with out a little extra touch from the tools that started it all.