A very long debate about when to use a library and when to write your own code

(written by lawrence krubner, however indented passages are often quotes). You can contact lawrence at: lawrence@krubner.com

The whole thing is interesting, but Jens Stimpfle’s comment comes close to representing my view:

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