2

I work in a small company that is into software intelligence. I am struggling to convince them to bring consistency in their products by having their own front end framework. Some of the key leaders are fine with Material Design considering the budget, resources and time. Some are not. They want to build their own framework but in minimum time, with fewer resources, and making the reusable components.

Which technology should we use if we go with the 2nd option (Creating our own framework). They are afraid of investing more time and which in turn would affect the business. On the other hand, they want to create a visual signature as well.

What another open source framework we can use apart from Material Design? Some people suggested Bootstrap, where you can use your favorite components to design the front end. Isn’t it like building your own library in terms of time, resources. Would it be a reusable component and easy to maintain?

2
  • Is Material Design considered open source itself? I think just the back-end code is considered open source.
    – Davbog
    Mar 15, 2019 at 22:15
  • 2
    Notice that Style Guide is not the same as a front end framework. A style guide is a design document aims to achieve project uniformity. It is a living document that contains all of a company's visual design elements (logo, color, typography, iconography, etc.). I think you mean a front end framework in your question not a Style Guide.
    – Mo'ath
    Mar 19, 2019 at 16:44

8 Answers 8

5

Welcome! To move quickly, efficiently and cost-effectively, one approach might be to use Google Material Design as a guide to answering questions on how components should look and work (example: "Should our primary action button be on the right?") and a framework like Bootstrap or React to create components for a design library. You might well find that you need exceptions to Material guidelines, and that's OK, as long as the reason is well-researched and documented.

A well-documented design system will help resolve questions from developers and can capture branding and other requirements from design. I would recommend researching other design systems and sharing them with your stakeholders to see what they think would be a good fit for your company.

3

It really depends on the business requirements, budget, and resources. You started by saying it is a small company. Building a framework is a lifelong a project itself. You do not build it once and done. It needs to be maintained and updated as technology evolves. On the other hand, using an existing Framework and libraries does not mean you will not have a unique signature as those components can be customized!

Going either way is valid but consider the efficiency, budget, resources and time!

2

I've learned that you can not automatically save time by going one way or the other. There will still be the need to customize layouts and create new elements, and working new elements into an existing design system can take just as long as creating one from scratch. It really depends on your team's experiences [i.e. the designer(s) and developer(s)] and what they are comfortable with.

1

If you work in software intelligence, you should know Palantir's Blueprint. Personally I find it more appealing than Material.

0

Aside from the aspect of efficiency and time that the others have mentioned, another important point is uniformity and user expectation.
Interacting with elements that are provwn to work well and look familiar is much easier and welcoming than having to figure out the "design idea" from a product with a completely new look.

So when making your own framework/styleguide/... consider that it should not be too unique, as to not scare away users.

0

This is not really an answer, more of an experience related to "Dangers of Building your own Custom Framework"

I've been at both ends of the stick, i.e. building a custom framework AND using a solid existing one like uikit, bootstrap and angular material.

Just as a basis for this response, i am naturally pessimistic by nature... so the following may be a bit negative.

I lean towards the "using an existing framework" for the following reasons:

  1. Time.
    • as previous posters have mentioned, it takes a generous amount of time to build a framework even with a lot of resources
    • i think people underestimate how much time goes into bug fixing, maintenance and the ripple effects of these on the larger framework
    • these things take up time whether it be in the form of development or QA regression testing.
    • building a framework, even if you get it perfect the first time, takes up an enormous amount of resources (including time)
  2. On-going
    • You will most likely encounter issues with components built or styling issues once you start tying things together, this is where the on-going maintenance comes into play, and as previously mentioned, QA time
  3. Skillset of Team
    • Architecturally frameworks are quite complex.
    • Even if you have a large team, how competent is the team?
    • Imagine having one senior developer surrounded by juniors and seniors, a large majority of the workload falls to one person picking up the slack of others
  4. Customization of Frameworks
    • Alot of frameworks now allow you to customize the core files by "hooking" into them either in the styles or javascript.
    • With these options, it further asks, why should i build my own one when i can hook into an existing one
    • I think the common misconception is that using an existing framework means that you have to use the framework exactly as is.
    • This is not true, using UIKit as an example, it has hundreds of sass hooks that you can make use of to further style components to your specific requirements
  5. Private or Public
    • Lastly, I think when most companies / teams want to build a framework, they do it to suit their own specific needs.
    • In this case, i can see why they would want to build a custom framework, they're not looking to share their knowledge with the community nor are they looking to make the next best framework
    • In instances like this i can understand why companies choose to use make their own
    • However with that said, alot of the popular frameworks benefit from community input, familiarity, and support
    • Familiarity in the sense that there is a specific methodology to using something, take for instance making a column 50% width in bootstrap, everyone knows that bootstrap uses a 12 grid system, so then col-6 is the class to use.
    • Additionally new starters to your team / company will not have to upskill the same way as they would with a custom framework

This is just my 2 cents, and I wish you to the best in your choice. Do not be afraid to disagree.

0

I would recommend going with a framework that's already built and free to use, I personally use Ant.design as my design system and we have evolved it into a fully fledge design system internally, we didn't had to bare the cost of building one from ground up and we didn't had the capacity to support it.

It all depends on how the organisation operates and how much capacity you have also this is a direct result of how mature the UX culture is within the organisation.

0

Given your time and budget limits, something like Bootstrap would be great. A lot of people are anti using a framework. I really don't know why, I don't come into the office and think I am going to re-invent the wheel and do my own version of HTML etc. It saves on the heavy lifting, with a whole dedicated team spending years on developing it, you know its been robustly tested, on multiple devices. So you can focus on UI and UX. Some say all Bootstrap sites end up looking the same, but that is usually laziness, you can overlay your own style and signature on top of the core framework. Just with UI in general a lot of the reason sites look the same is because there are conventions and best practices. I would say that Bootstrap will save a lot of time, but don't underestimate the time it takes to really learn it, especially if you are not familiar with newer grid CSS, but it will still be quicker than building your own and easier to manage. I am working on an inherited private framework. It works, but they needed to spend so much more time on it, documentation, guidance, clear css conventions, when you are coding you think you will never forget, come back in 6months and so hard to follow. And they did the same thing, wanting their own framework, which in the end works but works no better than one of the public ones, just took ages to do and maintain.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.