6 ms·
That’s an excuse. Of course demands will increase over time—all the more reason to build a system that scales well! Unix Philosophy doesn’t demand much: just sm
by hhas01 7y ago
That’s an excuse. Of course demands will increase over time—all the more reason to build a system that scales well! Unix Philosophy doesn’t demand much: just small simple composable tools, each of which does one thing well.
So why does `ls` have a recursion flag? Why does `cp` have a recursion flag? Why does `chmod` have a recursion flag? Why does `chown` have a recursion flag? Why isn’t recursion its own command, that takes as argument the command to apply at each level?
Ditto untyped, untagged streams, which mean every tool implements its own custom UI behavior when attached to a terminal, instead of outputting tagged data and letting the consumer run it through system-standard data formatters.
This is not good—or even borderline competent—systems design. This is bullshit. Because the people who slapped it all together are bums, and the people who accepted it didn’t care enough to call them on it.
But noooo, we can’t change anything now; because “backwards compatibility”.
Protip: when you build a system that can’t evolve, that grinds to a halt under its own impossible weight, it’s time to confess “yeah, we totally ballsed that one up” and start over again, lessons learnt. Because maintaining that status quo is a tyranny: dragging everyone else down to the level of its incompetence, and beating them to death with intransigence. No prizes for guessing who that benefits: the bums who built it. And who pays for it: everyone else.
It’s a scam. Perpetrated by and for those who cannot admit they are wrong.
Smash it down. Because whatever comes after it should be so much better, the only question will be “Why the frell did we wait so long?”
--
“Those who make peaceful revolution impossible will make violent revolution inevitable.”—John F Kennedy
- close04 7y ago> So why does Why did ls even need 11 parameters to begin with? Why not exactly 1? Or none? Why did tar need 12? Why did find need 14? The 28 tools in the example (excluding non-existing ones) had an average of ~3 parameters per tool in '79. Should 2017 have brought us 200 extra individual tools to provide the same additional functionality? You want another tool that does recursion for ls to save us from "incompetent bums" and "grinding to a halt"? Everything around you grew in complexity to adapt to your needs because there's value in consolidation. It's why you are now typing from a device that is orders of magnitude more complex and integrated than the one used to write down the Unix philosophy. You ask the question "why" but fail to answer the "why not". Why would a tool that still does exactly what it used to do in the past not be able to also do more especially when it's still within its sphere of relevance? And not the "out of principle" answer, not the handwaivy, tin foil hat answer, not the offensive and insulting answer that you provided above (bums? incompetent? bullshit? scam?). Times change and philosophies adapt to remain relevant. "We must use time as a tool, not as a couch" - JFK.
- pdimitar 7y ago> You want another tool that does recursion for ls to save us from "incompetent bums" and "grinding to a halt"? Yes I absolutely do. Remember UNIX? "Many tools, each small, each doing one thing well". Adding hundreds of flags to older tools does NOT achieve that. Your point here? > Everything around you grew in complexity to adapt to your needs because there's value in consolidation. Please don't cross into abstract philosophy. It adds absolutely nothing to a specific technical discussion. > It's why you are now typing from a device that is orders of magnitude more complex and integrated than the one used to write down the Unix philosophy. I use my computers as the complex messes and a series of train-wrecks that they are, and now hear me out please, because I literally have no other choice. Be it Win10, Linux, Mac, it's honestly almost irrelevant. One example: to this day nobody can make a reliable system-wide sleep mode that is not messed up by extra hardware (like my external HDDs), on neither of those 3 major OSes. In 2020. I can't go back to my Apple IIc. I will lose my job if I do. What's your point here? That such a complexity is inevitable? Is that it? But who argues against that? Of course it's inevitable, we see it in every area of life -- it's one of the aspects of entropy. What's being discussed is: "isn't it time to take a firmer stance and start using newer tools that don't have these problems and protest against the old ones by not using them"? I personally answered "yes" and I am gradually doing more and more of it -- already replaced grep, ls, find/xargs, about 13 in total IIRC. You know what? My productivity on the terminal skyrocketed. I started ditching languages with too much magic and implied behaviour and too weak/random typing (PHP/JS come to mind) and moved to others which, while not covering everything that I'd like to have (like Elixir), are still letting me sleep that much better knowing that `[] == 0` is actually false and I won't have to curse my way through logs in the next morning. > You ask the question "why" but fail to answer the "why not". If you actually frequent HN and aren't just looking for conflict then you'd know that literally every month we have a few rants by people who are now burned out that decry the current state of affairs. But if you really want me to answer then I can likely summarise it to: "Because our tiny brains don't work well with so much complexity in the long run. We can cope for a few years, some even for 20 and more, but eventually we can't. Because having smaller, more-focused, and more (total count of) tools that each do something really well, has been demonstrated to work better everywhere, not only in IT." (But I am aware this has been contended endlessly and it devolves into belief and tribalism and science and historical evidence goes out the window in the first three comments tops. Sad. Shouldn't happen to techies. We should be better than that.) > Why would a tool that still does exactly what it used to do in the past not be able to also do more especially when it's still within its sphere of relevance? Because it's NOT, and your parent commenter gave you an excellent example which you immediately dismissed and THEN proceeded to ask your question again, pretending he never gave an example. Are you aiming at being disrespectful on purpose? Confusing. > And not the "out of principle" answer, not the handwaivy, tin foil hat answer You are aware you are crossing into ad hominem and almost insults, no? > Times change and philosophies adapt to remain relevant. Well that's a perfect example how the same sentence is viewed in two completely different ways. This is EXACTLY the problem, dude: philosophies don't adapt at all in our area, most of the time. I knew a sysadmin that adopted those newer CLI tools (most written in Rust but some in Go, like `fzf`) and he is now doing the job of 3 people -- especially after also adopting Nix/NixOS. And I know people that will defend their 5000+ lines of Makefiles with hacks around niche return values of `ls` with their dying breath. That's exactly the problem. Most people (and philosophies) don't adapt at all. They prefer to fight very hard to mold reality to keep agreeing with their philosophy. I am surprised you are not seeing this because it's literally everywhere -- from your local airport with their laughable security checks to your local cafeteria that likely still uses cash registers that can be hacked with a simple cable and a laptop and running a script and the whole thing will take about 7 seconds before the lady behind the counter even gets back from the toilet. > "We must use time as a tool, not as a couch" - JFK. Again, your point? --- Don't take my comment as an attack. But you very quickly dismissed some pretty good points and proceeded to [attempt to] hijack the discussion to irrelevant -- or too abstract -- examples. Again, I'd change my computer and OS to something more conservative, with one way of doing things and not hanging on to ancient and obviously not-working-that-well-anymore philosophies, tomorrow -- if it existed. But it doesn't. The fact that now we have no choice doesn't prove your point at all.
- dang 7y agoWould you please stop posting in the flamewar style to HN? It's not what this site is for. We've had to ask you about this more than once already. https://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html
- hhas01 7y agoIf mods have a problem with my attitude, please close my account. Because I’d rather be rude and right than polite and wrong, and these regular apologetics really get my goat. This culture and profession is far better at making excuses than systems. That should be utterly unacceptable when these systems impact the lives of BILLIONS. Priorities, people.