Hacker News new | past | comments | ask | show | jobs | submit login
Hacker Laws (github.com/dwmkerr)
270 points by maltalex on Jan 1, 2022 | hide | past | favorite | 44 comments



I've always found the 90-9-1 rule fascinating. Especially when considering anonymous or semi-anonymous forums such as Hacker News or Reddit. These sites have large audiences and don't require users to log in. Therefore, they have an incredible amount of "lurkers" who do not comment, post, or vote. I think voting is an important aspect of content curation. So if a type of individual is more likely to vote, then that type of content will be more prevalent even if it is not necessarily the content the 90% want to see. But they're not voting so they're irrelevant.

In turn, the users who do actively post and comment have an amplified affect on what the 90% actually see. I find this to be particularly interesting when the culture of a userbase changes. I've been a long time user of Reddit, however rarely am I ever logged in. Overtime, I've felt that the culture of Reddit has changed to be much more liberal with posting low-effort comments. Many new users post on every post they see, while a previous generation of users may have dismissed that kind of behavior as being "Facebook-like" behavior. I think it may be another factor in the age old rule that the larger a site grows, the more the quality of discussion drops.


Of course this will be marked/flagged/censored, but I will try at least to say what I think even if this is kind of hopeless nowadays...

> But they're not voting so they're irrelevant.

Thank you for this patronizing attitude. TBH I don't vote (and most of the times comment) anymore because I have accepted that my opinion differs too much from most opinions out there so people who run platforms do not want to read it. Even if I do not curse or insult somebody my words will be downvoted, censored etc. so it is just no use to waste my time sharing my opinions and knowledge (yes I have that, too - not just opinions you do not like).

You probably come from US or live inside the same bubble the active HN users do.

Just created this account some weeks ago to be able to answer again, don't know if my comment will even show up here (I think new accounts are not allowed to post).

I prefer Reddit because the users come from different places of the world and have different opinions. It's not a hive like a Borg cube or HN which will try to assimilate you and punish those who think differently.

Of course there is toxic communities, too but at least you can go somewhere else and have a normal conversation or exchange knowledge.

HN is a stub for the opinion of US patriots, average age 40+ with high salary and very specialized IT know how. Just look at the kind of problems people here discuss about and you see what I mean. Reddit is a public forum where different people talk about things they are interested in. Yes, Reddit is also not a mirror of society and in some cases biased but at least you can speak more freely there. Maybe this is what you expressed with "Facebook-like" behavior but I like that you can use it without needing a PhD to be accepted (so dumb people like me can have and share opinions, too).


They're irrelevant because they aren't, to my knowledge, considered in the algorithm of how comments and posts are ranked on Hacker News. It's not an assessment of their value by any means. I'm hoping to emphasize the contrary, that participation is important to the site.

I think politics is similar. Many people don't vote and this makes them irrelevant to politicians. They are irrelevant in terms of winning an election. In a place with low voter turnout, the interests of those who do vote is amplified.

HN is CS/Tech/Entrepreneurship focused so I don't see a problem with it being a bubble of people who are skilled and participate in these activities. All people are welcome to the site which I think is fantastic but the site has a certain culture. If you don't enjoy hacker news than go to a site whose culture you enjoy more. I frequent here because I enjoy the content more than other forum sites such as poetsandquants or bogleheads or the infinite set of subreddits.


Genuinely curious — how do you know these stats about the HN demographic?


> I've been a long time user of Reddit, however rarely am I ever logged in

How? Why? This seems crazy to me. As a long time Reddit user, I've cultivated a nice list of subreddits specific to my interests; without all the noise. Reddit's default frontpage has become pretty terrible and useless.


Sure, I'll elaborate. I'm not logged in but also have a list of specific subreddits I frequent. I visit the same subreddits so frequently that on my safari mobile app they pop up as recommended. I press on that instead of logging in. I like the mixing feature of the home page for similar topics but prefer browsing a single subreddit at a time so there isn't much need to log in.


Coming back to Reddit after an eight year break from the Internet, I do not use the front page at all, whereas I would always browse it every morning before.

BUT, there has been an explosion of subreddits, some of which are unbelievably high quality with thousands of users even in the most niche interests. This leads to large amounts of content of value being created.

I'm very, very happy with where Reddit has gone. Also, porn.


“I’m very, very happy with where Reddit has gone.”

Said no-one, ever.


For better or worse, Reddit has replaced forums, and in a big way. Now even the most niche topic has a subreddit jam packed with a wealth of information. Its like a wikipedia of people knowledge.


I agree with this. In the same way internet is synonymous with Facebook in some countries, I think any kind of niche community defaults to congregating in a subreddit. Sometimes I'd even describe HN as a subreddit focused on tech and entrepreneurship to describe it to people who don't know much about it.

Subreddits are almost different websites with different moderators and different cultures. HN is now one of the only forums I consistently visit. Otherwise subreddits dominate this method of topic-focused discussion.


Lots of censorship going on however. There are sites that show the deleted comments and you can learn a lot about the agenda of reddit from those. It's interesting in its own right.


On reddit, when comments say [deleted] its because the user deleted it themselves. But, yeah, there is censorship on reddit. It's almost always by subreddit mods and not reddit admins.


One thing I’ve noticed after a hiatus from Reddit is that now 1/3 subs that hit the front page are stock or crypto focused. Not only that but they all have the 4chan culture of Wall Street bets that I am not a fan of.


I wish more communities these days had "preserving the signal-to-noise ratio" as a cultural value.


I wish there were vastly more online resources and papers dedicated to this topic. Almost every community of value on the Internet degrades into a cesspool. HN is one of the lucky exceptions, although early users might not see it that way.

How can an online community avoid this? What techniques can be used? What technology can be used? What skills are needed? How should communities be organized and staffed?

I've run online communities with hundreds of thousands of active users. The problem as an owner was that as soon as I wasn't able to moderate it myself I had to hire volunteer moderators from within the userbase. I would slowly step back as this staff took over my workload, but as I created a hierarchy and promoted staff they would all become increasingly power-hungry and dictatorial, without exception. I would end up in a constant churn of having to ban the most senior staff (who would then turn into demons of revenge trying to burn down everything) and again promoting less staff who swore they would not become what they had despised.

Surely there must be books on this shit?


HN is heavily moderated (unsubstantial comments are flagged or removed) and it only allows people who participate to downvote. A problem with Reddit is that everyone can downvote and it’s gamified so that you want to dogpile on certain posts (it’s easy to just downvote a heavily downvoted post without reading it.) HN on the other hand hides vote count and only starts to fade heavily downvoted posts.


I find HN’s method pretty effective, and the fading-comment UI implementation delightfully clever.


I agree, most content on the internet is either made or moderated by a very small fraction of internet users. This results in a serious selection bias and content that is mostly in line with the creatures' beliefs.


Feels like I learned most of these from the fortune line in my .login file in the 90s, and now they form the landmarks of how I reason about problems. As a teenager, these quips were profound wisdom, and in fact some of them were.

Simple mental reference tools like the six reliability curves and mean time between failure, pareto distribution, network and cascading effects, shortest paths and solvability, recursion, mutability locking and versioning, complexity classes, logical contrapositives, dependent and independent probability, are all things the fortune file seemed to have quips about and if you had a sense of humor, you could map them to everyday situations. Hackers are an old trope now, but when you read these together again, it was a very rich and distinct culture and way of thinking. I appreciate seeing these put together.



Surprising amount of hitler-related quotes in the last version, some of them are pretty funny, but considering there seem to be about 12365 quotes, they probably won't be missed. Diff if interested: https://svnweb.freebsd.org/base/head/usr.bin/fortune/datfile...


Actually, that’s just the truncated version.

Full text here: https://svnweb.freebsd.org/base/head/usr.bin/fortune/datfile...


And the actual FreeBSD-tips file which I think is what you meant to link to:

https://svnweb.freebsd.org/base/head/usr.bin/fortune/datfile...


Good collection of wisdoms for development.

With “Hacker” in the title, I was expecting more unwritten rules like “When you find yourself in a place you’re not suppose to be in, like admin access, make no changes that cause harm”


See hacker ethic

https://en.wikipedia.org/wiki/Hacker_ethic

Interestingly I only knew the German version by the Chaos Computer Club.


Some of these are actual science, such as Fitt’s law. Some are humorous simplifications that point to observed phenomena that are good to know. And then there’s bullshit like “Dilbert’s law”: information-free inside jokes technical people come up with to disparage other disciplines.


I'm surprised the Gervais principle[0] isn't there, as it supercedes the Peter Principle and Dilbert's law as far as I'm concerned:

All organizations are perfectly pathological, their hierarchy being divided up between sociopaths (management), clueless (middle-management) and losers (everyone else). Sociopaths, in their own best interests, knowingly promote over-performing losers into middle-management, groom under-performing losers into sociopaths, and leave the average bare-minimum-effort losers to fend for themselves.

[0]https://www.ribbonfarm.com/2009/10/07/the-gervais-principle-...


I genuinely feel bad for folks who actually believe stuff like this, because it must make the world a dark and sad place to be in.


The world can be a dark and sad place to be in, and stuff like this is accurate more often than not, even if this is slightly satirical.

But realizing that and accepting it for what it is can be liberating.


You have complete control over whether or not it is dark and sad in this particular way, which is why I feel bad for people who think otherwise.


https://en.wikipedia.org/wiki/Jamie_Zawinski#Notable_quotes

Zawinski's Law of Software Envelopment, also known as Zawinski's Law:

"Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can."

Some have interpreted this as commenting on the phenomenon of software bloating with popular features:

Zawinski himself has stated:

"My point was not about copycats, it was about platformization. Apps that you "live in" all day have pressure to become everything and do everything. An app for editing text becomes an IDE, then an OS. An app for displaying hypertext documents becomes a mail reader, then an OS."


https://www.urbandictionary.com/define.php?term=Popehat%27s%...

Popehat's Law of Goats

"He who fucks goats, either as part of a performance or to troll those he deems has overly delicate sensibilities is simply, a goatfucker."

He claimed he was just pretending to be racist to trigger the social justice warriors, but even if he is telling the truth, Popehat's Law of Goats still applies.


Other laws that I liked:

"If you're not 5 minutes early, you're 10 minutes late."

"The expectation that more programmers on the team leads to faster shipment times is like expecting two women to give life to a baby in 4.5 months."

"Only 50% of programming is writing code. The other 90% is debugging."

Hofstadter's law: “It always takes longer than you expect, even when you take into account Hofstadter's Law."


These types of lists are nice and I appreciate the time and effort put into making them. I do wonder how much utility they provide though? I personally find it a bit overwhelming. Like is idea that I sit down and memorize all this stuff?

In the past when lists like this come up I read a bit, then bookmark for later. Later never comes and now I just have this bookmark lying around amongst the thousands of others I have made over the years.

Maybe a more useful way to present this stuff is figure out a better way to give you the law relevant to the context in which you are in? For the sake of argument I could see something like this being useful:

INPUT

I am a `_developer_` working at a `_start up_` who `_needs to give_` `_an estimate_`

OUTPUT

- see Hofstadter's Law

Probably a non trivial task and I'm sure there's a law in that list that describes this phenomenon!


I think it might be more useful to think of this as a list that could help you expose "unknown unknowns". These aren't ironclad rules, but they are each a piece of gathered advice that hold some truth in some context. So if you encounter one that makes no sense, then great, that's a potential blind spot that you've transformed from an "unknown unknown" to a "known unknown".

So let's take your example of Hofstadter's Law

> It always takes longer than you expect, even when you take into account Hofstadter's Law.

So your reaction to this might be one of:

- Yes, that's a funny way to put it. I've spent many years estimating projects and matching up the final time taken, and even though i've gotten better at it, i still underestimate a little on each project. Here are different patterns i've seen for how my estimates end up going wrong. Here are different approaches i use now to try to mitigate how wrong my estimates end up being.

- Huh, that's interesting. I've just started being a manager, and i've been wondering why everything seems to take longer than i expect. Am i just the only one who is bad at estimating? Or is this some kind of problem that everyone encounters. Maybe i should look up techniques or ask advice on this subject.

- I don't know what this means. Why would anyone's estimates be wrong? Writing a website is like making a ham sandwich right? Once you do it once or twice, you must be able to estimate it perfectly every time.


>These aren't ironclad rules, but they are each a piece of gathered advice that hold some truth in some context.

This is spot on. There is a time and a place for these "laws" which is sometimes forgotten. Don't be dogmatic about following them. They will be detrimental to a team following them blindly.


I tend to agree with you about generic awesome lists, but this one seems useful as a reference. Bookmarking for the next time I can't remember what the Lindy Effect is called.

..wait, it doesn't include the Lindy Effect :D


It's good to give it a read so you're familiar with the concepts, but then remember where the list is, or archive it so you can return to it.

Later down the line, you're going to encounter a problem and one of the ideas in the list will be helpful in framing the context of your problem. It may or may not help in finding a solution, but it can help articulate the problem to other people.


Amelius' law: Management will always refer to Hofstadter's law as a myth or an excuse.


Heh. I have been at the butt end of that one a few times. Another favorite of mine is when they push back with Parkinson's law: work expands to meet time available for its completion.


I think in the future I'll just use error bars, which they may ignore at their own peril.


And will use the Pareto principle to cut corners


https://github.com/globalcitizen/taoup provides much of the same content but in fortune format.


https://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule

Greenspun's tenth rule of programming is an aphorism in computer programming and especially programming language circles that states:

"Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp."




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: