Live data from Hacker News

The Collapse of the Unix Philosophy

kukuruku.co

431–440 of 616 posts

Re: The Collapse of the Unix Philosophy

#431

Earlier quoted context omitted.

Bam-bam-bam-bam. Sorry can hear you over all the whitespace I have to type.

Yeah, indenting with spaces wastes so many punch cards! Oh, wait.

Actually, a punch card used to represent a single line.

But you'd be wasting holes.

Re: The Collapse of the Unix Philosophy

#432

That was a sad thing to read, the author is so clueless they don't even know when the reasons they imagine something might have been broken are wrong. Back when UNIX was born the character was a first class citizen in every computer on the planet, and many languages used it as part of their syntax. Static binaries were invented when Sun and Berkeley co-developed shared libraries and there needed to be binaries that y…

> It always amazed me when someone looks at computer systems of the 70's through the lens of "today's" technology and then projects a failure of imagination on the part of those engineers back in the 70's True enough, but as a younger programmer, I find it pretty reasonable to look back at computer systems of the 70s and wonder if we can do better today . I feel a little bit gross every time I have to write a bash sh…

Bash is not bad at all; it's unrestrained and arcane at times, agreed, but it does have the nature of a true programming language, just like powershell does. Now .bat scripts, that's truly inelegant and unsafe.

Re: The Collapse of the Unix Philosophy

#433
post #141

"Taking into account the numerous mistakes of UNIX. However, no one raises Plan 9 on a pedestal." Suckless and cat-v.org would disagree. I'd also disagree since I'm a huge fan of plan9port.

The Plan 9 FS network protocol, P9, is extremely well regarded and the basis for a number of security projects.

the procotol is actually called 9P (or 9p): https://en.wikipedia.org/wiki/9P_(protocol)

Re: The Collapse of the Unix Philosophy

#434

Earlier quoted context omitted.

Not everything is a tree, and neither XML nor JSON nor sexp are particularly efficient or "beautiful". And there is no canonic representation. You could strip all whitespace or indent all childs, but... And YAML for example has no nice way to put lists of single words on one line.

I'm yet to see a practical data set that could not be encoded as a tree. Maybe if you have a cyclical data structure and you want to save that directly, but then it's a simple meta-level extension. For example, Lisp reader does that when reading S-expressions. If you want to create a list like this: 1 ---> 2 ---> 3-| ^_______________| you write: #1=(1 2 3 #1#), where #n=OBJECT means "this is the object N", and #n# me…

Yes, you can encode everything "as a tree". You can also encode everything "as binary", "as a big integer", whatever. That doesn't mean it's a good idea.

Re: The Collapse of the Unix Philosophy

#435
post #7

Earlier quoted context omitted.

Exactly. Waayyy TMII (irrelevant). If the bottom-up compositional model for computing that largely originated with Unix is fading, this article doesn't go there, or suggest cause. Now, that's an article I'd like to read...

I wonder why the original comment you responded to got flagged. I read it and it was one of the best comments?

Wow, now I see it is flagged. Lol, I really do not know why, probably people do not know what I was talking about, and I even put the quote marks. Maybe I had to sign who said that? lol But I found it was perfect for these kinds of posts.

Re: The Collapse of the Unix Philosophy

#436
post #403

Earlier quoted context omitted.

> Besides, who is to tell that the newer design will be better? As much as it's popular to think otherwise, this isn't true. Taken as a whole, newer things are more often than not better than older things. For example, cryptography has been on a huge march upward since the days of Unix crypt().

In finance we call the driver of this "survivorship bias." IOW, your contention is true/truthy if you ignore the fact that there is a large selective pressure weeding out the "not better" new things.

In computing industry, there's little pressure for weeding out "not better" new things. Unix is a great proof of that. Solutions survive on basis of popularity, not technical soundness, and many things get continuously forgotten and reinvented a decade later.

Re: The Collapse of the Unix Philosophy

#437
post #279
post #125

Earlier quoted context omitted.

As an hobbyist blogger, I can perfectly empathise with why the author wrote that. People love to crap all over a blogger who dares to post his thoughts on a private blog, without first subjecting it to PhD-thesis-level scrutiny. This really gets on my nerves for the same reasons that engineers get pissed off when they decide to open source a pet project and suddenly start getting "URGENT ASAP" feature requests from e…

I stopped posting code from side-projects I was done with, when it started taking on a maintenance life of its own, and getting angry emails. There was a simplicity of the time when you could put a tarball on an FTP server and post the path to the appropriate Usenix group: "Here's a tarball. Have at it. Or don't."

https://www.reddit.com/r/dredmorbius/comments/5x9tws/gresham...

Re: The Collapse of the Unix Philosophy

#438

Earlier quoted context omitted.

Please stop spreading bs. It's not throwing away structure. Piping text doesn't even preclude sexps. It's just that they are seldom needed. Simpler encodings like space-separated are sufficient for many use cases, and better for interoperation. It's misguided and inefficient to encode everything in the same way. Would you prefer to have your JPG or MP4 encoded in sexps? And I say that as someone who is working on a s…

Piping isn't the culprit. It's what you pipe that is, and Unix Philosophy says "pipe whatever the hell you want, and let the users upstream sort it out". It's not about encoding everything in exactly the same way. It's about providing the basic, shared protocol for representing structure. With typical Unix tools, you don't have "simpler encodings", you have no encoding at all . Each tool outputs whatever its particul…

There exists a shared protocol. It's called "explain it". But that's typically not even needed, the user can just look at the data and figure it out.

> With typical Unix tools, you don't have "simpler encodings", you have no encoding at all.

You don't even believe this yourself, do you? That's so obviously wrong.

Name a well-thought out text file format that can't correctly be parsed e.g. by a Python one-liner with basic string operations. And please don't include: JSON, XML, YAML, sexps, because it's not possible, at least not without a library.

Not needing special infrastructure is why these formats (often) win. Very obvious practical reasons. If you have applications where you need one of the above - go ahead and do it.

Instead of trolling with this abstract, vague nonsense, it is better to propose a concrete case where existing practice is bad. Show how it should be done better. (And prepare to get contradicted).

Re: The Collapse of the Unix Philosophy

#439
post #403

Earlier quoted context omitted.

In finance we call the driver of this "survivorship bias." IOW, your contention is true/truthy if you ignore the fact that there is a large selective pressure weeding out the "not better" new things.

In computing industry, there's little pressure for weeding out "not better" new things. Unix is a great proof of that. Solutions survive on basis of popularity, not technical soundness, and many things get continuously forgotten and reinvented a decade later.

Often for good reasons! In my career, I've seen the pendulum swing from storage on every device, to diskless devices sucking from the network, back to storage. Many times. Never mind the philosophy folks quote; its about technology, or rather the relative speed/latency of network versus local storage. Its true in lots of things. Folks 'rediscover' messaging systems for redundancy and failover every 10 years or so.

Re: The Collapse of the Unix Philosophy

#440
post #276

Earlier quoted context omitted.

One of the nice thing about indenting with actual tab characters is that you separate the notion of 'indentation' from the actual indentation. I set my tab stops to 4 which tightens the code, others set it to 8, still others set it to 2. If the code has tab characters it just works, if the code has spaces there is no way to have your most comfortable indentation level be used.

Yes, yes, yes. I'm saddened that tabs have essentially 'lost' - they seem to me in every way superior to spaces, but I would never use them in a new project simply because it would be likely to throw off others, and perhaps tooling. Github, for example, does not play nicely.

They're superior only in C-like languages when you indent in constant-width levels, and then only if you use very short names in your code.

Try using tabs to indent e.g. arguments to function one under another, and weep.

Post reply on HN