"Framework"

You keep using that word. I do not think it means what you think it means.
— Inigo Montoya
Photo by  Jon Butterworth  on  Unsplash

That little piggy went to market... This little piggy went to sleep. That's because he's overworked and bloated. His name is "Framework".

You see, there are developers out there who think that they can solve all of the software problems of any business with one solution. "It's simple! Just start with {insert framework name here} and then you only have to write your own business logic on top. EASY!"

The problem with this approach is that you often end up with massively bloated code that does VERY LITTLE of what your business needs. Right out the gate. Before you've implemented anything truly useful.

Why do developers gravitate towards frameworks? We don't like solving problems over and over again, and that's totally understandable. So when we start working on a project where we know we need to handle roles, sessions, authentication, and basic encryption of certain data fields, we think to ourselves, "Gosh, I've done this a thousand times in my career. Isn't there a way to adapt something I've already done before rather than reinvent the (login) wheel?"

While there absolutely may be some nuggets from a previous project or bit of code that would help get you on your way, no two businesses are really alike, and thus no one software package can really solve the actual problems of an actual business. We applaud looking at your past projects, learning from them and applying that knowledge to the latest client (and frequently do ourselves). However, thinking that you can start with a framework (Yii, AngularJS, CakePHP, to name very few of a huge pool) to "save time" will in fact start you with tens of thousands of files, hundreds of thousands of lines of code, and very little that's actually of use to your own business or your particular application.

We believe that architecture and problem solving can benefit from our past experiences, but that no one solution can or will fit every need. Our experience tells us that, while a framework claims to make our job easier, it in fact usually means we are learning a proprietary way of writing code or standing up a server or doing MVC routing every single time.

So let that bloated, overfed, under-specialized piggy rest. Use your brain (and that expensive degree) instead!