I use this stuff and it is really surprisingly effective. I have no idea if it will turn my tonsils into concrete or something down the road, but it does work.
The cost of the standard `actions_linux` is $0.006/minute, so spending $500 to save 6m per invocation, break-even is at ~14k invocations. But, if they're using larger machines and/or parallel jobs the $$$ saving accrues faster. IMO the wall-time saving shortening feedback loop may be a bigger win, but harder to value.
They did such an amazingly bad job on their PR. Their best known products literally exist to keep police from killing people or violating their rights undetected, and instead of meeting the moment and explaining why their products should become mandatory, always-on, permanent replacements for firearms or ADVOKATE-style sworn statements they just kind of... pretended that misuse of their products was WAI and ate the consequences of that.
Those departments buy their products. If they took that angle publicly I bet many departments would suddenly been much less interested in buying/renewing. Accountability seems to be super unpopular (which says A LOT) with their customers.
I get it, but I also just don't understand why they couldn't effectively explain to the police that they were a for-profit company. The police definitely understand that!
Like, when the police were saying "we can't turn on body cameras all the time because it might violate victims rights" the correct response from axon was "we also happen to sell a very expensive victim redaction software on a separate SKU, until you buy that probably just want to let your officers use discretion wink-nod."
(I am maybe unfairly assuming here that their actual intent was to make money rather than protect the public from police abuses. I'd love to hear from folks at Axon if that isn't true!)
They could have just talked out of both sides of their mouths. Tell the public it’s to curb abuse, tell the police in private “we all know what it’s really for” wink-wink-nudge-nudge.
Maybe offer up a few token cases where they caught abuse and the cop got in trouble or something changed as proof.
Nope. You’re right, they ran right into that wall.
Also, you learn to be a better chess player by... playing better players. The widespread availability of chess engines has made flawless opponents available to every player.
If your goals are understanding the game, self improvement, building thinking skills-- this is the best chess has ever been. It's only if your goal is to beat every opponent you can find that chess is in a bad place.
> Playing stockfish is like playing tennis against the wall (for untitled players at least).
It's the same for Magnus Carlsen. Even with Queen odds, Stockfish is literally unbeatable for the best players in the world. It's just too strong at evaluating all kinds of random tangent moves (and ensuing positional advantage) which no human player can possibly pay attention due to the time required.
Stockfish vs any human is like Carlsen vs other players by about 3-5 orders of magnitude[0]. It's that stark.
[0] A wild pun appears.
EDIT: To avoid having to respond to each responder, fair comments about Queen odds. Maybe I was thinking Rook odds? Also, I kinda lumped Stockfish in with all the other engines, but I realize there are other engines with different properties ofc.
Well, that's actually not true at all. Stockfish is not a very good odds player and at queen odds is easily beatable even by bad players like me. It will just trade down into more trivial and easier to win positions that it perceives as "less bad", since everything is super-losing anyway when you start down a queen.
Leela odds networks, on the other hand, are an entirely different beast. I cannot beat Leela queen odds, much less rook or minor piece odds, and even GMs struggle against Leela knight odds.
Without odds though, yeah, Stockfish is just incomprehensibly strong by human standards. All top chess engines are, but Stockfish moreso.
No worries, I know stockfish is unbeatable by humans.
But sometimes, these GMs can flag it, which counts as a win (especially when it's proxied by a cheater). Sometimes they can also explain the idea that cost them the game, so they've learned something maybe.
Whereas us scrubs literally cannot do anything at all for reasons completely beyond our understanding.
> Whereas us scrubs literally cannot do anything at all for reasons completely beyond our understanding
Computer moves are typically much more concrete than human moves: a human will play based on pattern matching ("intuition") and can only make explicit calculation of a small fraction of possibilities, after which decisions are guided by guesswork. The computers are unbeatable in practice because they can calculate concretely in seconds what might take an expert human long intensive study to notice, and they don't make the same kinds of oversights humans can make.
But if you stop and explore a particular position for an extended time, and if you have an intermediate level of chess skill, you too can probably often (usually?) figure out why it's doing something. Sometimes understanding the computer's reasons takes searching multiple branches of a tree several unlikely looking moves deep, but the collection of threats the computer was preemptively thwarting, traps it was setting, etc. are comprehensible to humans with enough effort, especially in games between the computer and a human.
The frustrating thing about playing against the computer is that it notices and thwarts every plan you might come up with, before you make up the plan yourself, and it doesn't make (human-apparent) mistakes, so the game ends up feeling hopeless. Nothing you try works on it, and if your idea is even slightly inaccurate it will be exploited.
You put it better than I could. The lesson of "in this exact position you can kick the pieces for 7 moves to get a fork, so instead you should play a4" is not something that I can implement into my games
I mean, I'm not a great player but I've learned a lot from working through games with stockfish using a git repo and a small script that lets me rewind to different moves and try different approaches. It may not explain its moves but if you're thinking through what's happened you can usually debug your game anyway.
Why is that how the moral issue is defined? Seems to me the moral issue is the stakes, and I have no idea why I would cede that judgement to you. What's your basis for claiming moral authority? If you don't, please show your homework: what strange anticonsequentialism underlies your claims, and why should I agree with it?
Consequentialism in general is a third-world mindset. But in this particular context it leads to the absurd result that someone who breaks the rules more egregiously is rewarded for doing so.
In first world countries, we focus on rules over consequences. If you build a dwelling on my property, the rule doesn't reward you for making a house rather than a tent. The moral analysis is based on the nature of the rule, not the consequences to those who break the rule.
Hogwash. You're trying to slide from claiming moral high ground to pointing at rules, as though the American lexicon didn't have whole classes of words denoting the "virtuous rulebreaker" (maverick, renegade, etc). And, do you think all the rules you live under have moral weight? What if those rules changed, as they did here-- would you still think that?
Not to mention that it's still incorrect even if you're just pointing at the rules themselves-- the entire concept of standing to sue requires that you were harmed (ie, suffered consequences) to engage the courts in the first place. On the other side, results are the difference between attempted homicide and homicide.
There are a lot of slightly different fork-exec-like things in the concept space and it's hard to imagine one approach satisfying them all. IMO it would be interesting to take an approach analogous-ish to sched_ext_ops where you built the rough flow chart of a combined fork-exec, but with hooks built to enable ebpf to change behavior or skip the bits these sophisticated users don't want/need.
Fork/exec is great if you actually want the traditional copy of your process for some reason.
For launching something totally new, like the example in the article of some tool calling git, I think it does make a ton of sense to make something new.
Especially since I suspect that is by far the more common case. I suspect “I want a clone of me“ is relatively rarely used at this point.
Relatively rarely, but in some performance sensitive use cases. Mine happens to be fuzzers, where a very cheap fork-like primitive would be a really big win.
Android and chrome both benefit greatly from fork exec as part of their zygote model iirc. It substantially reduces the memory cost and latency of spawning new apps and tabs.
reply