My solution to this is to keep my programming as a "hobby", to only do it for love without regard for money - and have an unrelated day job to fund my living expenses. This is also what Derek Sivers recommends https://sivers.org/balance
Part of the reason may related to the Dunning-Kruger effect - the people who have less skill and experience in a field literally lack the skills to be aware of their level of competence. "Why can't you just ...?" is probably something the competent have already considered, but to the neophyte it seems like a new inspiration (and they don't have the depth of understanding to see the limitations).
Questions like: Why don't you make it cheaper for people to live by enforcing rent controls? Why don't you motivate people by giving monetary rewards/punishments? are often asked by people who don't understand the flow-on effects ("unintended consequences") that their proposed easy solutions to complex problems might have.
See also: https://en.wikipedia.org/wiki/G._K._Chesterton#Chesterton's_...
The pharmaceutical industry is usually given as the prime example of an industry where patent protection is necessary; however, this is far from obvious. See Robin Feldman's book Drug Wars (there is an interview with her about it here: http//www.econtalk.org/robin-feldman-on-drug-patents-generics-and-drug-wars/)
When I was a student, my free time was spent in dusty corners of university libraries digging up old, forgotten books. I found many gems this way (including the venerable TAOCP. I only realized how famous it is after reading the Wikipedia page).
Although he seems to be most famous for the "Pattern Language" book, my introduction to his work was during my visit to the university's architecture library, from a slim volume entitled "Notes on the synthesis of form". It really highlights the magnitude of the task facing the modern architect/designer/developer. The first half of the book details how for most of history, design has not been a conscious process but rather an emergent property arising through a selection process (basically evolution). The alternative, discussed in the second half of the book, is for a human to sit down and think through the requirements and design almost de novo - this is extremely challenging due to the number of interacting variables.
Reading this book gave me a much better appreciation and respect for evolved techniques (eg. traditional methods of building, farming, etc; even social norms and traditions), and gave me valuable thoughts on when an evolutionary approach would work better vs a design approach (similar to Linux's explicit evolution vs OpenBSD's considered design).
Stewart Brand's How Buildings Learn: What Happens After They’re Built is another good book about designing for evolution. The book was also adapted into a 1997 BBC TV series (available Stewart Brand's YouTube channel).