TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Minimal Viable Programs (2014)

61 pointsby exuperoover 9 years ago

4 comments

lotyrinover 9 years ago
Products should be made of programs. Programs should be able to be simple enough to be &quot;complete&quot; while how they get built, replaced, planned, and orchestrated however, is free to be as fluid as the problem to be solved.<p>Many systems tried to be this, but people too frequently side-step these solutions for decomposition because they aren&#x27;t complete enough. Unix wasn&#x27;t enough, now we have Docker, etc.<p>OOP tries to achieve this from a different level on the inside of complex systems, but still falls short. (e.g. you have to do IPC or have a message-passing VM where objects~=processes to be able to do live code replacement and allow multiple independently-developed implementations of the same concept to run simultaneously and collect behavior on which does a better job, so this type of thing is not common.)<p>It&#x27;d be nice if the progress towards building smaller systems that avoid complexity begins to outpace the progress toward building larger systems which defend against complexity within my lifetime, but I can&#x27;t say I&#x27;m hopeful.
评论 #10161863 未加载
stabiloover 9 years ago
In reading comments of software authors in mailing lists and forums over the years, I sometimes noticed a particular vitriol for writing what are called &quot;trivial&quot; programs. By the same token, I sometimes noticed a strange attraction to large programs that only the author(s) could ever hope to understand. Not sure if I am the only one to notice this. I recall one author proudly telling a forum of programmers that his creation was so complex it would hurt the eyes of anyone who attempted to read the code.<p>I place the highest value on small programs and the lowest value on large, complex programs. But I suspect this is not the norm, whether among end users, authors, or both.<p>I also recall some comment from Kernighan about how back in the early days of AWK he was amazed at the sizes of the scripts people were writing. He had never expected AWK to be used to write large, complex &quot;programs&quot;.<p>Maybe small programs are boring? Maybe people cannot manage to simplify their problems by subdividing them into smaller tasks? Maybe they do not believe the problems can be simpflied? Maybe adding features is how authors attempt attract or retain users? Who knows?
demandsover 9 years ago
Amusing advice from this article:<p>&gt; If you want a job done find the busiest person you know and give them an extra job. This is because the reason they are busy is that lots of people want them to do things because they are good at doing things and that’s why they are busy.
评论 #10164226 未加载
评论 #10164075 未加载
zvrbaover 9 years ago
&gt; A minimal viable program is the smallest program that solves a particular problem. It is small and beautiful. It has no additional features.<p>A problem is rarely well-defined. Alternately, you can encapsulate small and beautiful programs into classes, and connect objects at runtime to solve more complex problems. OO reinvented.<p>In his case, he prefers to use the shell to do the plumbing instead of another language.
评论 #10164245 未加载