Bogus.<p>Scratch is good at what it is; I know people who swear by LabView, Alteryx and similar tools rather than swearing at them.<p>One could make the case that current software development tools really aren't good enough and that one fundamental problem is dealing with naming and polysemy.<p>The trouble fundamentally is that there is no system that is going to produce ergonomic names for everything. There are systems that can name everything but the names look like<p>84746261718<p>or<p>178bcd0d-70ce-413b-9497-5364a5f56972<p>which people can't remember or easily discover. Part of the appeal of GUIs is that you can pick something out of a palette, list, or menu although the gain you get there is limited. Ever see a 1000+ page book on Microsoft Word or (worse) try to explain to somebody how to use mobile apps for the first time (eg. "click on the hamburger icon; huh?", "swipe down; ... doesn't work ...; maybe when you swipe down you have to start above the edge of the screen...") and you realize that there are limits to how many things you can present on a screen and how well people can find things.<p>When you are talking to people you can use a word which is ambiguous and people figure it out most of the time and if they don't figure it out you can have a conversation with them about it as opposed to a programming language compiler which typically give messages like:<p>Could not find or construct Composite[CustomDataType].
[error]
[error] If CustomDataType is a simple type (or option thereof) that maps to a single column, you're
[error] probably missing a Meta instance. If CustomDataType is a product type (typically a case class,
[error] tuple, or HList) then probably one of its component types is missing a Composite instance. You can
[error] usually diagnose this by evaluating Composite[Foo] for each element Foo of the product type in
[error] question. See the FAQ in the Book of Doobie for more hints.<p>Until we accept that we can do fundamentally better and that we must we are going to be stuck having the same stupid conversations.