Because being smart does not scale.
Not everyone is smart and nobody can be smart all of the time.
Most frameworks focus on reducing boilerplate, but a consequence of reduced boilerplate is needing to keep implicit context in your head. Understand more bespoke mechanics. To be smarter.
The value proposition of something like a Rails
is that you
get something that "just works," but the real value proposition to
a buisiness is that you can go to the coder store and order 5
Rails
developers off the shelf.
If you are a bootcamp, university, or someone out for a quick buck things
like Rails
, Django
, Spring
, etc.
are a godsend. You can have people in for 10 weeks, get them making a
website, get them hired, and move on to the next batch.
But.
While the ability to write super-awesome-framework init
and
get a website that talks to a database quickly is cool, it has a
negative effect on each developer's understanding of the codebase.
Human beings do very, very, very poorly with "implicit" information.
If you start up a Spring
app and authorization is controlled
by a random line in a config file that is super convenient, but ultimately
harmful if you need any aspects of how that authorization works to be
changed by a flesh and blood human being.
So I wanted to try and make a framework that optimizes for different things.
Who is this for?