Inversion of Control Framework has slots for your codeabstractions should provide escape hatches to work around restrictions for minimizing frustrationCoding FrameworksLow Level FrameworkHigh level FrameworkNo Code The cost of convenience — surma.devIt is tempting to build abstractions so developers have to do less and build more. However, this can easily end up causing frustrations with developers if not done right.https://surma.dev/things/cost-of-convenience/