Context: I work for Forward Partners which is a catalyst for ecommerce startups. We provide a unique combination of funding and help from our hands-on experts – product, design, marketing, front and back-end development, talent and fundraising. I work predominantly with idea-stage businesses until they have achieved enough growth to start hiring their own team.
Start-ups often use ready-made frameworks and tools in order to get an idea from concept to production in the quickest and most efficient way they can, such as Ruby on Rails, jQuery and Bootstrap. I’ll be explaining why I choose not to use Bootstrap when creating websites for our early/idea-stage businesses.
When I would use Bootstrap
There are a few occasions that Bootstrap can be very useful. If you need to get a prototype built quickly, admin screens or internal apps then Bootstrap is fantastic at creating a professional look and feel straight out of the box. Or you might not have a lot of expertise in creating the front-end of a website, considering browser deficiencies and the myriad of device sizes, Bootstrap has you covered – up to a point.
Idea-stage business and new hires
To use Bootstrap efficiently and understand it well you need to dedicate time to reading through the documentation, digging into the source code and figuring out how to customise it for your requirements. Bootstrap is an excellent tool when you’ve mastered it and can be used to build highly customised and maintainable sites, however it just takes too much time to reach that level. This is a luxury that our businesses do not have.
Ordinarily an idea-stage business will be a founder (maybe with co-founder) who we work with to achieve product market fit. Working with our developers we must produce a code base that is easy to update, is maintainable and most importantly can be picked up by their own developers once the business starts to achieve growth. I can’t make the assumption that the new hires will be able to or want to use Bootstrap effectively.
My issues with Bootstrap
Other people have written at length about why they don’t use Bootstrap, so I have cherry-picked quotes that match my feelings on the subject. This explains how you should think about the framework before deciding to use it in your project:
When it comes to custom interfaces, Bootstrap isn’t a box of bricks, panels, walls and doors with which you can build anything you want. Bootstrap is more like a mortgage. Mortgages can be good things. You didn’t have the time to save up and buy your house in cash. You needed a mortgage to get a roof over your head. That’s similar to using bootstrap to get some UI in place when you don’t have the resources to build UI from scratch.
Bootstrap doesn’t follow best practices or good semantics and there is too much code bloat, excess class names and markup:
I hate having excess classes, and non-semantic classes littering my markup. I want my site to be clean, easy to read, and have as little interference as possible when I am creating markup.
You don’t need Bootstrap
Our designers strive to create layouts that best fit the business and shouldn’t be limited by what framework we choose to use on the front-end. Bootstrap uses a 12 column layout with 4 predefined breakpoints and working outside of this scope is not straightforward. It is quicker for me, as a front-end specialist to create these custom designs with custom breakpoints implemented to fit the content than it is to override class after class of framework code.
This next quote is applicable to those developers without much front-end experience:
While Twitter Bootstrap is fast and easy to implement, creativity is often compromised as a result. Innovative designs which defy conventions can be difficult to implement in Bootstrap’s structured environment while you have a tight time constraint.
5 reasons not to use Bootstrap
Vanilla Bootstrap has been thoroughly browser and device tested and there is plenty of documentation about what is and isn’t supported. However, if you create a custom design on top of it you are opening yourself up to all the browser quirks and bugs that Bootstrap was there to smooth over. You have to know how to prevent or work around them and a front-end specialist will be able to create custom implementations that are almost completely cross-browser compatible from the start.
This wasn’t supposed to help you decide whether or not to use Bootstrap on your project but an explanation of why I don’t use it at Forward Partners. In summary, I would use it in a handful of circumstances but not for a customised production-ready site.