How is this article front page HN news??<p>The GUI Link<p>People think of gui elements as seperate objects (scrollbar, list, tree, textbox etc), so why is it a bad thing that the software also reasons about them as objects? Author just seems to want to hate OOP but offers no alternative: <i>&quot;There is more proof to the existence of UFO&#x27;s than to OOP being the best way to do GUI&#x27;s or any other programming topic.&quot;</i> ???<p>Bait-and-Switch<p>Author says here that training examples lure people into this idea of a perfect world that can be modeled easily with separate objects, but in real life projects this is not the case. But how is this any different from any language &#x2F; paradigm we have today? Angular is often berated for example for being easy to get going with, but a PITA once the project becomes too big. It&#x27;s a good thing examples introduce you to the strengths of the language, and then later you try to to fit the problem to those strengths.<p>Land of Confusion<p><i>&quot;It has almost become like Particle Physics, in which only a small elite group appears to understand it properly, and everybody else needs years of meditation and practice.&quot;</i>
This is silly. Everything has a learning curve, but once you understand that everything exists inside an object you are good to go. The rest is just design patterns that are proven to make your life easier!<p>Not Table-Friendly<p><i>&quot;OOP often does not map well to relational databases&quot;</i><p>Entity Framework for C# is used by businesses all over and shows this is possible, and easy to do. There are many other solutions to this as well.<p>Melding Can Be Hazardous<p><i>&quot;How many times do different programming languages and systems have to share data? Very often in the real world. Thus, it is usually safer to keep large data pools separate from methods&quot;</i><p>What?? This makes no sense. If you need to share your data structures, then serialize your data to a text format and document it, for the next program to read. You could even provide an API.<p>IDE support<p>Well I&#x27;ve stopped reading by this point, but the author doesn&#x27;t mention any advantages gained in the IDE. Specifically by using objects, the computer has more understanding of what I am doing, and can provide me: contextual autocomplete of members, and contextual documentation. Both invaluable for quickly getting up to speed with a new API, and making programming <i>fun</i>.