← Back
August 10, 2021

In defense of bloated frameworks

Sometimes I hear developers complaining about bloated frameworks, such as Spring, Django or Ruby on Rails. In this article, I want to explain why I think the arguments to support this thesis are (mostly) unjustified.

The arguments

The arguments are usually along the lines of:

It is very tempting to just take e.g. a micro framework and get started quickly. Just add one library and write 3 lines of code - et voilà - you have a working HTTP endpoint.

The counter-arguments

I learned the following during my time working with established as well as micro frameworks:

Takeaways

The key takeaways to sum up my opinion on the matter:

  1. Focus on whatever is your core business. Do not waste your time on problems that are not strongly beneficial for your core business.
  2. Do not re-invent the wheel. People have been solving a lot of problems already - make use of it.
  3. Follow best practices. There are reasons why popular frameworks are structured like they are.

Summary

I will always try to go for established frameworks first, for the reasons stated above.

But, as usual, there are of course exceptions to this: There are edge cases where you need exceptional performance (e.g. raw HTTP throughput in high-traffic, low-latency scenarios) or when you need extremely dense build sizes (e.g. to distribute to IOT devices?). One should always consider carefully and use the right tool for the job.