[meta] The title of this article sucks, really, it&#x27;s a bait, which is sad because the article is actually interesting. Why do blog post titles about programming have to suck in order to attract readers ?<p>&gt; Lots of rework happens because of miscommunications with the user. Other times, the user doesn’t fully understand their problem (there’s not much we can do about this)<p>Agreed. That&#x27;s where &quot;lean programming&quot; comes into play. If you have the capacity to make the code change as requirements change then I think the issue is pretty much solved. However, not all languages&#x2F;solutions are equal in that matter. Obviously TDD, Agile techniques help.<p>&gt; If we assume that typing code is the way to program, we will never look for better alternatives.<p>Typing code is a medium. The fact is, for an engineers it usually the most convenient way to create a program.<p>&gt; But without an end goal, of course you have millions of developers releasing Javascript frameworks every day<p>How many of these are still maintained 1,2,5 years after?<p><a href="https:&#x2F;&#x2F;www.nczonline.net&#x2F;blog&#x2F;2015&#x2F;12&#x2F;why-im-not-using-your-open-source-project&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.nczonline.net&#x2F;blog&#x2F;2015&#x2F;12&#x2F;why-im-not-using-your...</a><p>So I don&#x27;t think that is really a problem, there is an handfull of well maintained frameworks and libraries in the JS world. Most are not. Most are flashy with a nice &quot;flat&quot; page then you never hear about them again.<p>It&#x27;s easy to produce shitloads of code, it&#x27;s harder to maintain it and build a real community around it.<p>&gt; Building software is 90% a human problem<p>Agreed, but like everything humans do.<p>&gt; What would programming be to you in an ideal world?<p>There is no general answer to that question. That&#x27;s why we have all these languages, frameworks and libraries yet we keep on creating languages,frameworks and libraries.<p>What drives me as a &quot;programmer&quot; isn&#x27;t the medium, but the goal, the product.<p>Creating something useful. Languages, frameworks and development methods are the necessary constraints.