5 ms·
I think about Hans Reiser pretty often, incidentally, because there is a quote from him I read as a teenager that stuck with me. "The utility of an operating s
by sph 3y ago
I think about Hans Reiser pretty often, incidentally, because there is a quote from him I read as a teenager that stuck with me.
"The utility of an operating system is proportional to the number of connections possible between its components, than it is to the number of those components."
— Hans Reiser (from http://web.archive.org/web/20040126210110/http://unununium.org/ http://web.archive.org/web/20040126210110/http://unununium.o...)
It's hard to reconcile good things a person might have said and done, with the bad. That sentence is a guiding principle of software design that I cannot often quote, without entering into a huge discussion on the pain Reiser has caused. This is the only time I feel I am able to share that quote, on a thread that hopefully tries to look past the right and wrong of his actions.
Just as no one is truly good, no one is truly evil either. It is good for one's soul and humanity to acknowledge that a bad person might have done something good in their life.
ReiserFS was pretty cool as well, sad to see it go, but no one uses it anymore. I hope they'll find redemption and peace.
- dekhn 3y agoIsn't that a restating of Metcalfe's law? https://en.wikipedia.org/wiki/Metcalfe%27s_law https://en.wikipedia.org/wiki/Metcalfe%27s_law [EDIT: I have misunderstood Metcalfe's Law for over 20 years, assuming that "connections" meant edges in the following quote. Metcalfe intended to mean that the value of the network grows as the square of the number of nodes because "connections" here aren't edges, they're fully reachable pairs of nodes. Thanks, again, HN, for helping me through that] > The financial value or influence of a telecommunications network is proportional to the square of the number of connected users of the system (n2). Generally speaking, "the value of a graph is proportional to the square of the number of edges" rabbit hole: https://en.wikipedia.org/wiki/Locally_linear_graph https://en.wikipedia.org/wiki/Locally_linear_graph
- sph 3y agoIt did sound something that could be applied to much more than the niche of OS design. The focus is to make the connections between things composable, rather than adding a lot of subsystems. Think UNIX or Lego bricks. Thanks for those links, I did not know Metcalfe's law, but it expresses a similar concept in a much more succinct way.
- atleta 3y ago> Generally speaking, "the value of a graph is proportional to the square of the number of edges" No, what Metcalfe's law assumes is that the value of the graph is proportional to the number of edges (not their square). And from that assumption and the fact that the graph is fully connected follows that it's proportional to the square of the number of nodes. (Because you can have (n-1)*n/2 edges with n nodes in a fully connected graph. And hence, the Reiser quote above is similar but it emphasizes something else: it states what Metcalfe's law (I think) uses as a premise (or implicit claim) that the value is in the connections. Because it's not necessarily a fully connected graph. Edit: originally I've given (n-1)*2/2 as the number of edges instead of (n-1)*n/2.
- dekhn 3y agoSo, the wikipedia first line is wrong, you're saying? "Metcalfe's law states that the financial value or influence of a telecommunications network is proportional to the square of the number of connected users of the system" Later in the article it seems like the original stating is more consistent with what you said, but everything I've ever learned in network theory and practice shows that it scales as a power of number of edges, and the logarithm of the number of nodes.
- gnramires 3y agoThe number of connected users is different from the number of user connections :) The first is the number of nodes, the second edges.
- dekhn 3y agoUhh, are you sure? I believe "connected users" refers to edges. Otherwise it would be stated as "users connected to the network". It could explain my misunderstanding, and also seems consistent with the explanation later in the article, but it's also completely the opposite of what we observe on the internet; for example, the value of the web is definitely not in its in number of pages, but in the value and quality of the connections between the pages.
- tonymet 3y agoYour observations are right but your conclusions are shoddy . We can and should separate ideas from the person . There are plenty of truly evil people though . No indictment of Hans I don’t know his case . But of truly evil people there are countless numbers
- sph 3y agoI disagree, but this is personal philosophy I do not feel comfortable going too deep with on an Internet forum. From my point of view, people that are born with evil streak are vanishingly rare, as much as being born with two heads. What happens later is simply a product of nurture, upbringing, context, and chemical imbalances. Pure black and pure white do not exist in nature.
- tonymet 3y agoA 27-year-old Queens man is in custody for two subway stabbings on Wednesday -- at Columbus Circle and in the Bronx. The suspect was spotted in the Bedford Park station in the Bronx at 7:20 a.m. Thursday, and after a brief chase, was taken into custody. He was in possession of two knives at the time of the arrest. He has multiple prior arrests, including five in the last 12 months for charges ranging from assault to sex crimes. Not evil ?
- mtrower 3y agoI mean clearly he’s a menace. Something needs to be done about him. That can be true, and it can simultaneously be true that he is not 100% “evil” or anything else. A few incidents (or even many incidents) can paint a bleak picture, but they can’t really prove an absolute.
- robertlagrant 3y ago> That sentence is a guiding principle of software design that I cannot often quote, without entering into a huge discussion on the pain Reiser has caused That's a shame. He did something awful, but that's nothing at all to do with the idea in the quotation. Ideas shouldn't be cursed because the wrong person said them; they should stand or fall on their own merits.
- sph 3y agoCertainly, I don't have a problem with the quote. I just don't want to face the inevitable "Hans Reiser? Isn't that the one that..." quagmire that pretty much everybody is going to step into.
- lupusreal 3y agoJust attribute the quote to Voltaire or Franklin.
- DaiPlusPlus 3y ago...there's an Abraham Lincoln quote somewhere about that.
- Pet_Ant 3y agoI have a Bill Cosby quote that I attribute to Dr Huxtable. It is sufficient citation, old heads will know but don't react, and new heads will just nod and not get triggered.
- pdntspa 3y agoCertainly, I have an issue with this idea that everything a person does gets cancelled because the person gets cancelled. Particularly in this era of intense political polarization.... It is throwing the baby out with the bathwater. The world is full of examples of art and science from troubled individuals; much of our foundational understanding of certain areas of science is derived from the learned experiences of inhumane research conducted by nazis or WW2 japan. Yet one guy murders his wife and suddenly we are all rejecting a perfectly cromulent filesystem.
- atleta 3y agoThe word "more" is missing from the first half of the sentence: "more proportional".
- mtlmtlmtlmtl 3y agoFully agreed. We also have to remember that a lot of the historical figures we glorify through their great achievements were terrible people in many respects. And that often goes undiscussed.
- logifail 3y ago> We also have to remember that a lot of the historical figures we glorify through their great achievements were terrible people in many respects. And that often goes undiscussed. ...or we focus on how terrible a person was, and insist on completely disregarding their great achievements.
- beibeibei 3y ago[flagged]
- em-bee 3y ago[flagged]
- add-sub-mul-div 3y ago[flagged]
- zubairq 3y agoGreat quote! Isn’t the number of connections instead of number of components related in some way to metcalfs law?
- killerstorm 3y ago[flagged]
- krisoft 3y ago> That sentence is a guiding principle of software design that I cannot often quote Just rephrase it. It is not like you need to bring him up to discuss the idea, or as if this is the only form the idea can be expressed. In fact I would say the quote as it is is confusingly written.
- andai 3y agoI was impressed by this quote from TFA: > Through force of will, and hard work, he made himself into a programmer of extraordinary skill ...
- HideousKojima 3y ago[flagged]
- jacquesm 3y agoTerry Davis was diagnosed with schizophrenia and never killed anybody.
- HideousKojima 3y ago[flagged]
- pimlottc 3y agoYou accidentally omitted a word, that should read: > The utility of an operating system is more proportional to the number of connections possible between its components than it is to the number of those components.
- narag 3y agoIt's hard to reconcile good things a person might have said and done, with the bad. It's very easy to reconcile that a person that has done very bad things can say insightful things or be competent. Being bad doesn't mean being stupid.
- hosh 3y agoThat principle has been stated and developed in other context. For example, there was an earlier HN post about composition of features (https://lea.verou.me/blog/2023/eigensolutions/?latest https://lea.verou.me/blog/2023/eigensolutions/?latest) Another example is in ecology. Resilient ecology has many possible interactions among members of the ecology (including humans). An "invasive species" isn't necessarily one that is not native to the ecology, but one that is able to exploit a resource while having a minimum interaction with the rest of the ecology. Dr. John Todd's ecovats are essentially self-contained ecologies that self-organized around a pollutant. They are created by taking samples from a number of ecological systems and putting them together into vats, and then running contaminated water through there. It's because the possible interactions are so high, that somewhere in there, was a path to breaking down the contaminant. In such a way, Dr. Todd was able to break DDT down in a matter of days through a system like that, and has worked on cleaning up superfund sites with this method. To go one step further than number of interactions, Christopher Alexander's ideas on pattern languages was more than just about interaction of components, but actually about the _grammar_ of design patterns. Such a grammar can be constructed in a way that all possible combination coming out of the grammar results in a cohesive design. This allows inhabitants of an architecture or an end-user to reconfigure anything (as long as it follows that grammar) to suit their current needs, and it would still come off as a cohesive design. To circle back to addressing the idea of evil and people who do bad things. I think you can find truth anywhere, and Han Reiser certainly touched on an insight (though it was not exclusive to him). I would further suggest this though: wouldn't this also mean that there is value in _relationships_ among people? In, not just the exchange of thoughts and knowledge, but the exchange of shared experience and feeling? I don't know what went through Reiser's head when he killed his wife, and I can believe that there are a kind of madness that can consume someone. I think perhaps, Reiser saw an insight in systems engineering ... but did not see how that same principle was also present in the day to day life as well. (Or maybe he did see it, and was consumed by a madness anyways)
- agumonkey 3y agoalso slightly reminiscent of perlis https://stackoverflow.com/questions/6016271/why-is-it-better-to-have-100-functions-operate-on-one-data-structure-than-10-fun#6160116 https://stackoverflow.com/questions/6016271/why-is-it-better...
- graemep 3y agoLots of people who do good work have done awful things. I love Oscar Wilde's plays, but he was a paedophile sex tourist. Eric Gill created beautiful stuff, including typefaces most of us probably use or read fairly often, and he sexual abused his children and his dog.
- _a_a_a_ 3y ago> Oscar Wilde's ... was a paedophile sex tourist I've never heard of him being into children, have you a link for this, thanks (also, 'sex tourist'?)
- martin8412 3y agoApparently he went to North Africa and Italy. Plus he was what would be called a rapist today. Mind you, I don't know if this is a reliable source. https://thefederalist.com/2018/09/18/time-left-stop-idolizing-oscar-wilde-hes-pervert/ https://thefederalist.com/2018/09/18/time-left-stop-idolizin... I'm not really a fan of applying modern standards in historical contexts. Times change, but even today the age of consent is 16 in the UK. Condemning him for being 30+ and having sex with 15-16 year old boys just doesn't make sense to me. It seems people try to apply American puritanical standards to a historical person from Europe, who lived in the 1800s Victorian era. If we were to apply modern standards, you should be condemning over 1B people around the planet for following the teachings of a 30yo+ guy who married a six year old girl.
- _a_a_a_ 3y agoExtremely informative, thanks. Agree with you about the difficulty of interpreting morality over timespans and cultures.
- graemep 3y agoEven if you accept that, the age difference and the hiring of poor boys as prostitutes makes a difference. Differences of an year or two in age of consent is one thing and some variation is one thing. The article you link to mentions a 14 year old. How far will you take "it was acceptable in their culture". Child brides in modern Yemen or many other places? Romans being into little boys? Legal does not mean socially acceptable either. 16 might keep you on the right side of the law here in the UK, but a 40 year old who is found to have had sex with a 16 year old is likely to be badly regarded. > If we were to apply modern standards, you should be condemning over 1B people around the planet for following the teachings of a 30yo+ guy who married a six year old girl. A lot of them claim he did not have sex with her until she was much older. I would condemnd them if they had sex with six year olds themselves.
- coldtea 3y ago>This is the only time I feel I am able to share that quote, on a thread that hopefully tries to look past the right and wrong of his actions. Well, people would still use the theory of relativity if Einstein was proven to be a serial killer, so intelligent people who don't play it "hollier than thou" should be able to separate between some person's acts and their unrelated achievements or expressions.
- sph 3y agoScientists would, while Twitter and average Joes will be discussing ad nauseam whether to rename the theory and delete the name Einstein from history books. Wasn't there a similar discussion about renaming the James Webb Space Telescope? He was not even a murderer.
- chubot 3y agoFWIW this is highly related to what I think of as the "narrow waist" architectural principle. You may like these articles I wrote: The Internet Was Designed With a Narrow Waist - https://www.oilshell.org/blog/2022/02/diagrams.html https://www.oilshell.org/blog/2022/02/diagrams.html The Internet has huge utility because TCP/IP is a narrow waist. It has architectural connections to Ethernet/wireless/... on one end, and HTTP/BitTorrent/... on the other. For the most functionality, you want fewer code components, and more interoperability. You want O(M + N) pieces of code to give O(M * N) functionality. The narrow waist architecture does that -- it gives O(M * N) connections to O(M + N) amounts of code. You don't want to write O(M * N) code, though many people and systems are stuck there! This generally works the best when the connections are data-oriented and protocol-oriented, not oriented around source code. --- A Sketch of the Biggest Idea in Software Architecture - https://www.oilshell.org/blog/2022/03/backlog-arch.html https://www.oilshell.org/blog/2022/03/backlog-arch.html I mention Metcalfe's law, which is related but distinct. Metcalfe's law is about O(N^2) network node connections ("dynamically"), while the (usually) O(M * N) narrow waist is about system architecture ("statically"). They both produce network effects! If the Internet already exists, then the easiest design to implement is to attach your new network to it (e.g. a network in space), not create a new, incompatible network. --- Incidentally, this seems like what's wrong with the Kubernetes ecosystem -- it has an combinatorial explosion of code due to lack of protocols and interoperability. It's not data-oriented, like Unix is. (An important point is that lots of people complain about Unix-style unstructured byte streams because it's suboptimal LOCALLY, while missing the global interoperability / scale / system economy issues -- they get stuck writing O(M * N) code to avoid parsing and serializing ) --- Newer article from last year - Oils Is Exterior-First (Code, Text, and Structured Data) - https://www.oilshell.org/blog/2023/06/ysh-design.html https://www.oilshell.org/blog/2023/06/ysh-design.html Software modularity within a process is much different than modularity between processes -- it's a bit more like networking. You need an exterior narrow waist. To pick an example, a consequence of that is that encodings like UTF-16 don't make sense in any channels where you don't have metadata, and there are a lot of those e.g. the URL comes BEFORE the Content-Type header in HTTP!
- sph 3y agoYeah, I can see the similarity. Thanks for the links. Also, vaguely related, and a way to achieve this goal of making things composable, is the "everything is an X" pattern: https://lukeplant.me.uk/blog/posts/everything-is-an-x-pattern/ https://lukeplant.me.uk/blog/posts/everything-is-an-x-patter...
- montjoy 3y agoI also remember him saying, (paraphrasing here) “I’m not particularly smart, there are people out there that are much smarter than me. What I am really good at is poking around in the dark with a stick and seeing what happens”