On 10 August 2017 at 13:39, David Collier-Brown <davecb...@gmail.com> wrote: > On 10/08/17 02:47 AM, Henrik Johansson wrote: >> >> I beg to differ. Most Java apps I have seen over many years almost >> unanimously suffer from over-modeling. > > > A former customer did a deep, thoughtful, *thorough* model of bracket > tournaments, without any attempt to abstract the salient features. Java > represented it beautifully, in complete detail... > > So it's now impossible for a single person to keep it in their brain, and > every attempt to change it introduces new, surprising "features". > > In effect, the ability to represent anything easily led to our error: we > represented _everything_.
I remember something similar happening with some Haskell I wrote. Because the type system was so powerful, it felt wrong not use it to represent everything, which ended up problematic. Frivolous thought: I wonder if there's an (far-fetched) analogy to be made between this and dropout techniques in neural networks - if our type system is really powerful, it's easy for our type structures to "overfit" to the current problem being solved, making it less adaptable and maintainable when the problem changes. -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.