Posted by dreis_sw 4 days ago
I don't understand why the author didn't just look this up in the source code. Lichess is open source and we can see exactly what this field is here, it's the average lag:
https://github.com/lichess-org/lila/blob/45b5f0cfbbf6c045ad7...
send = (t: string, d: any, o: any = {}, noRetry = false): void => {
const msg: Partial<MsgOut> = { t };
if (d !== undefined) {
if (o.withLag) d.l = Math.round(this.averageLag);
if (o.millis >= 0) d.s = Math.round(o.millis * 0.1).toString(36);
msg.d = d;
}
if (o.ackable) {
msg.d = msg.d || {}; // can't ack message without data
this.ackable.register(t, msg.d); // adds d.a, the ack ID we expect to get back
}
const message = JSON.stringify(msg);
...
Which is calculated from how long the server takes to respond to ping messages that the client sends: private schedulePing = (delay: number): void => {
clearTimeout(this.pingSchedule);
this.pingSchedule = setTimeout(this.pingNow, delay);
};
private pingNow = (): void => {
clearTimeout(this.pingSchedule);
clearTimeout(this.connectSchedule);
const pingData =
this.options.isAuth && this.pongCount % 10 == 2
? JSON.stringify({
t: 'p',
l: Math.round(0.1 * this.averageLag),
})
: 'null';
try {
this.ws!.send(pingData);
this.lastPingTime = performance.now();
} catch (e) {
this.debug(e, true);
}
this.scheduleConnect();
};
private computePingDelay = (): number => this.options.pingDelay + (this.options.idle ? 1000 : 0);
private pong = (): void => {
clearTimeout(this.connectSchedule);
this.schedulePing(this.computePingDelay());
const currentLag = Math.min(performance.now() - this.lastPingTime, 10000);
this.pongCount++;
// Average first 4 pings, then switch to decaying average.
const mix = this.pongCount > 4 ? 0.1 : 1 / this.pongCount;
this.averageLag += mix * (currentLag - this.averageLag);
pubsub.emit('socket.lag', this.averageLag);
this.updateStats(currentLag);
};
Yes the instance of chess is finite but the problem of computing moves is inherently in NP.
The key is that just because a problem is in NP it does't mean that its difficult to solve the instances with small parameters.
See the famous coloring, SAT, or any other equal NP problem...
Edit: also includes move count but not repetition.
https://en.wikipedia.org/wiki/Forsyth%E2%80%93Edwards_Notati...
Even though nowadays I hardly have time to play, I'm still happy to support such a delightfully honorable and usable(!) open-source project.
It's a weird trend. Altruism truly does not exist
(I donated btw) (Probably more than you) (But who's counting)
There are many aspects in which they are not the best.
Ad-free, compute intensive, non-CRUD, massively scaled, complex cheat moderation, infinite puzzles/analysis, educational (studies/tactics/openings explorer), etc. All this for free. I'm curious what's the best website in your opinion
What is the point of responding with any legitimate criticism when any potentially negative sentiment however mild, upfront, expressing disagreement, gets downvoted to the point where the mechanics of the website squelches the person and silences them (by purposeful intent).
Can you ever have any legitimate intelligent conversation after a participant has been harmed and effectively silenced in this way?
When you cannot speak freely, there can be no intelligent communications raising the bar objectively. The opposite occurs, and anything provided, even seemingly rational conversation falls after such a threat or action of violence, all conversation then falls into the gutter as a result of the added coercive cost imposed. You may contend that its not violence, but it meets the WHO definition for such which properly accounts for psychological torture and coercion (of which this is a common form).
It should go without saying, but you cannot have any intelligent conversation when those who embrace totalitarian methods prevent you from speaking (and yes these meet the criteria).
At the point this happens, regardless of valid criticism, or pointing out errors in methodology, it all dies on the vine, the communication is clear; you will be punished for disagreeing. That destructive behavior inevitably leads to ruin.
This is fairly basic stuff, in order to think and be intelligent, one must be able to risk being offensive. In order to learn something new, one must risk being offended.
When neither are possible because you or someone else muzzles any conversation expressing disagreement or corrosively add cost, even under such modest terms as here, the fallout is silent, yet devastating.
It might not seem like much, but the light goes out of the world as those with intelligence withdraw their support, and the natural consequences which were held at bay by these people, albeit slow moving, become inevitable.
Best of luck to you. There is only the possibility of harm by continuing any discussion under these circumstances.
I'd suggest remembering this when you start wondering, "where have all the intelligent and competent people gone?".
Silence doesn't indicate agreement. It is indicative of the best and brightest no longer contributing to the same systems that seek to destroy or enslave them.
But I believe it was just that: a negative sentiment. Not exactly a "constructive, intelligent criticism". And when you go there, the reality is that people will vote to reflect their own opinion. If you say "This project is so amazing!" and get a ton of upvotes, it does not mean that your comment is super useful; just that many people agree. Similarly, if you say "Naah, it sucks" and get a ton of downvotes, it means that many people disagree. Not that they want to silent you.
Now try an actual constructive criticism: you may get downvotes (that's how it is because people are emotional beings), but probably upvotes as well if you bring interesting insights.
> There is only the possibility of harm by continuing any discussion under these circumstances.
That's fair. I think one mistake there is that you should have started with a constructive criticism rather than an admittedly polite "naaaah, I think it sucks".
You might suggest such, but this has the effect of just baiting me for a response so it can be marked down more where you are engaging me for the effect to further punish.
You see these people don't do this because of their opinion, they do it because it causes psychological harm, its a totalitarian tactic that is not unknown. Silencing was used somewhat heavily during Hitler's rise to power.
Forcing the only conversation to first agree before moving forward, at any point, causes you to fight your own psychology to remain consistent and the process warps you subtly. Most aren't self-reflective enough to notice but the effect is the same regardless.
Robert Cialdini wrote quite a lot about the various lever of influences that are often used as mental compulsion/coercion, and Joost Meerloo and Robert Lifton both cover these structures and techniques in detail in the context of WW2 torture and moving forward. These behavioral structures run parallel with those of the Nazi's, and other totalitarian regimes.
This is what is happening, and when mild conversation causes this type of behavior, this is the time you should be most greatly concerned because its arbitrary, causes mass delusion, and continues until destruction, albeit slow, overtakes that group.
As far as I'm concerned, the people doing this can ride their train right to their own demise for all I care. They are true evil, and they'll be doing the world a favor when that happens. The rules of society will no longer protect them once they destroy society.
We were taught from children to not be violent. This is violence, there is no excuse for bullying, and people are no better than animals if they can't reason and be civil. What one does in small things, they do first in large things that matter.
If they want to be violent for a mild comment like that, they won't get anything from me, and I'll reciprocate in the only way I can right now, withdrawing and not providing anything of value.
I'll pray I never meet them in person because if you or anyone else tries to harm me, I'll be exacting an equal or greater cost in self-defense.
This destructive behavior is despicable on so many levels, and you say its not so bad but you don't realize just how bad it gets, this behavior promoting menticide, and robotization is what led to the gas chambers in Germany during WW2.
When no one questions rationally, or can express disagreement, evil flourishes. You can't ever argue with evil, you have to kill it, as we had to do during WW2 (at great cost).
Read the notes from the Wannasee Conference, or if you can't be bothered, rent Conspiracy (2001). The history is well documented by experts who studied these things to prevent it from ever happening again, and yet it seems no one has learned their lessons since they repeat it yet again.
They are emotional beings (/s), can you imagine that being a valid defense of Nazism during WW2? For the deaths of all those Jews in the camps? If it's unjustifiable at the extremes, it is unjustifiable anywhere.
These are the same things, the only difference is perspective and the fact that you don't have perfect information upfront at the bottom level, you only ever find out afterwards, and its a goose-step death march ever forward and people don't realize this is how it works. One step at a time, pivoting, with no questions.
This is only the beginning, and when you can't stop it early, then its too late to do anything later to prevent the massive destruction that these people inevitably bring on themselves and everyone else.
This is why it is so damn important to protect and maintain freedom of speech in a civil atmosphere. There can be no rational support for this behavior, not ever.
Please stop making excuses for the truly evil.
Now I would not compare this to Nazism or call it "true evil". Try to pick someone randomly in the street, go talk to them and politely explain why you find them unattractive (e.g. "I just would like to say that anyone finding you attractive would have pretty low standards"). Would you call it Nazism if they asked you to leave them alone?
Isolation does weird things to the mind, one of which distorts reflected appraisal, other parts where reflected appraisal is denied in communications are even more impactful. It induces a involuntary hypnotic states which varies in intensity by exposure.
The tortured takes on mannerisms of the torturer, and when denied communication, or only distorted reflected apprsail long enough their entire being unravels, and you have psychotic break or disassociate completely. The psychotic break is a semi-lucid state where planning is capable. To make an apt comparison, an active shooter might fall into this latter category. Years of investigations into what causes these people to do what they did, and the powers that be can only say with certainty that these people were bullied, but no clear cause can be found.
Coercion is a dangerous thing.
You can corroborate what I've said with the literature in the books I mentioned, or with isolation studies where the studies had to be cancelled early for the safety of the study participants. There is a lot of research out there.
Destroying someone's identity, their personality, what makes them them, is true evil, and these structures are how you do it which is why its so important to recognize the problem, few do.
Your comparison is apples to oranges. It is not asking someone a opinion, its silencing them entirely by force, where they are disadvantaged when they don't answer. There is a very big distinction between the two.
I do understand, and it is unfortunate that moderation gets mixed up with score. If you have a better solution, feel free to explain it! Because not moderating at all is a problem in its own.
You only allow moderators to do the actual moderating. You don't allow upvotes or downvotes because they are used following a sybil attack structure (many sock-puppet accounts to one person) to silence or amplify messages.
You have a flag button (which they already have in place for HN), to report content that should be flagged for violating rules.
Those that report spurious (good) content get warned/punished for abusing the flag features. They may have the feature silently revoked (shadowbanned) for abuses, or banned for other activity suggesting the accounts are sockpuppets (i.e. going directly to an article when normal viewing requires first loading the index, then following a link with the associated metadata including the referrer to get to the page to make a report.
It really is that simple.
This moderates, and it limits bad actors, its still done in most online forums that are still around; because it works.
Redundancy, scalability, decoupling, resilience, best possible handling of errors, cost optimization, etc. may be more important at the scale Netflix operates at.
So much that they built a tool to intentionally make things difficult (read: it arbitrarily stops production system processes/containers/etc.) and help inform what decisions to make in favor of fault tolerance.
> Exposing engineers to failures more frequently incentivizes them to build resilient services.
Okay, I can’t keep this up. I was parodying the position not being serious.