DEV Community

Discussion on: Case against premade CSS frameworks (and Design systems)

gary_woodfine profile image
Gary Woodfine

This post and the comments that have ensued indicate that this is obviously quite a highly emotive subject and quite easily misunderstood.

One of the dangers that this points highlights, is that your organisation runs into the risk of creating "yet another framework" (YAF), and the trouble with YAF's are that they are things developers do to avoid doing any real work.

One can easily agree and disagree with each of the points raised and discussed. Yet at the end of the day, we all have very little say over what the most important point, is "What does the customer want".

I somewhat agree that UI may need to be distinctive from a "branding" perspective, but really true branding is in the usability of the product. There are some very simple slight nuances you can add to a UI that can have some really high impacts to user adoption.

Your product "Uniqueness" may never actually stem from the UI, but actually in how it helps your users solve a problem. How quickly they were able to learn your product to solve a problem. In most cases, they may not spend too many brainwaves on thinking "ooh this is nice".

From a start up perspective, of which I have considerable experience, the primary objective is always User Adoption. We don't measure how many liked the UI, we only measure how many adopt and start paying.

You will always have re-engineering of the Front-end, as you become more familiar with what your customer wants, and as your "solution" to "problem" evolves.

Using a pre-rolled UI framework i.e. Bootstrap, Material etc. Helps you to leverage what others have learned and provides your customers with an instant familiarity with your product, even though they may be coming in cold.

Personally I don't think there is a right or wrong answer.

You've raised a good points but really the answer lies in the consultant get out clause of "It Depends"

vlasterx profile image
Vladimir Jovanović Author • Edited on

I agree and I have to add something - it is my mistake that I haven't explained it thoroughly, but would it made any difference considering how difficult is to reconcile designers and developers?

For some reason, most people here assumed that new design system and unique frameworks that support it are something bad that goes against all good principles of design, UX and development. This is typical dev perspective of looking at things and resistance to change.

How did you react first time you saw Bootstrap or Material?

Did you like it?

If you did, would you like to repeat that experience with something new? If it is so, then why so much resistance and negativity?

gary_woodfine profile image
Gary Woodfine

I don't think there is resistance to change. That is just not the developer mindset, developers are all about change, they're used to dealing with it, but they are also pragmatic about change.

I do get where you're coming from, in regards to innovation. But we also need to counter with we shouldn't just innovate for the sake of innovation, we have to focus innovating for the need.

If a new CSS is framework is only due to that it may aesthetically look pleasing and not actually provide anything more, then I would argue what is the point ?

I love the supposedly Henry Ford quote :

"If I asked the customers what they wanted, they would've asked for faster horses"

So the innovation here was to think out of the box. There is a world of difference between faster horses and motor vehicles.

is there really a need for new CSS framework ? or is there an opportunity to completely re-think or re-imagine the UI ?

Thread Thread
vlasterx profile image
Vladimir Jovanović Author • Edited on

Framework is technical representation of a design system. When we re-imagine design systems and how UI works, then we need to create new modular framework that will support it. Since CSS has advanced quite a bit, especially with CSS Grid, creation of unique frameworks for each new project is no longer an issue. Instead of focusing on learning how frameworks work, why not learn modern CSS?

There is a lot of overhead in code when you just re-style existing frameworks. It affects performance and code base becomes dirty and unreadable after some point.