Roman Suzi
1 min readAug 14, 2021

--

While this article concentrates on the technology, I would say for any sizeable project what one must really master is the UI design in general, and not only visible side, but also how to organize building blocks. Reusing building blocks goes hand in hand with having nice UX, because it's not only that designer needs fewer elements to express the design, but also the user needs to "remember" fewer widgets. In a messy code what happens is developer fixes one place and breaks two more in the process... Regardless of the technology used, it's better to learn to code coherently, in the sense "forming a unified whole" - and the simplest to keep something coherent is for "same things" to be expressed once (DRY principle), which requires one to possess strong abstraction abilities I rarely saw among frontend developers (sigh). So start exercise early: Keeping harmony manually is time-consuming.

For example, I tried to ask this question on frontend-oriented stackexchange, but was forced to move it to computer science side because I suspect 99% of frontend designers were never bothered with the foundations of how layouts are formed! ( https://cs.stackexchange.com/questions/35490/mathematical-model-for-a-webpage-layout/35835#35835 )

This is in contrast to Donald Knuth's work on publishing tool - TeX, which produced beautiful visual output for decades, because it's layout mechanisms captured the beauty and conventions in mathematical way.

Thank you for food for thought!

--

--

No responses yet