February 2nd, 2018
(written by lawrence krubner, however indented passages are often quotes). You can contact lawrence at: firstname.lastname@example.org
“I see the value in learning by building yourself, but from a software engineering point of view, using a tried and tested framework is likely to give you higher quality product in less time.”
Well, the framework I was to use last (Qt) had bugs that simply can’t be fixed by users (memory leaks, double free leading to segfault when exiting after reloading QML engine) and immature modules (for example translation) and forces complicated types to the user and forces bad architectural decisions to the user and significantly increases compile times.
“using a tried and tested framework is likely to give you higher quality product in less time.”
This is a common sentiment, but note that a framework has huge handicaps
- not knowing your business requirements and concepts
- must be suitable for many software projects that need features you’ll never need.
- there is a clear maintenance boundary (framework vs your own code), which requires a complex interface with maintenance overhead and typically forces you to use concepts that don’t really match your requirements
If you’re experienced in the relevant domain it’s almost always simpler to do it yourself / reuse your own work.
It’s interesting that Jens Stimpfle has his own anti-Object-Oriented-Programming essay, which hits some of the same notes as mine. I suppose it is a similar aesthetic, a rejection of unneeded complexity.Source