Rendered at 09:30:20 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
jerf 20 hours ago [-]
This is a really important concept for developers.
One aspect for developers that I see quite often is the assertion that "We can't have X without giving up more Y", most commonly "we can't have more security without giving up on user experience". With the Pareto idea in mind, we can see that that statement is true, if and only if you are in fact on the Pareto frontier of security and user experience already.
However, many times these confident pronouncements are being made when the system under question is quite evidently not on the Pareto frontier in the first place and indeed you can get more of one without giving up the other.
Making it more tricky is that in business, you can never discard "money" as a dimension, so unless you're taking "money" as one of the dimensions in the original comparison you want to do, it sneaks its way in. Or, a composite time/money, or "cost to business", or some other similar concept, time & money aren't orthogonal and don't need to be treated as two separate dimensions in general, though you can if you want. Which puts you into the 3D case, and as the page says, that grows the frontier quite a lot, which is good in some ways and bad in others. Nevertheless, in my opinion it is still often the case that even in that space we are often making "tradeoffs" without checking that we're on the Pareto frontier in the first place.
munchbunny 17 hours ago [-]
Agreed with what you said, when you're only considering security and usability you're often not at a Pareto optimal state, but once you add cost into the picture you see a lot more cases of being on the Pareto optimal boundary, or at least in case where the next improvement only comes with significant effort (by re-platforming, for example).
efavdb 16 hours ago [-]
I guess that makes sense. as you get to higher dimensions, most points sit very close to the surface. So if we're trading off N things and N >> 1, expect to basically always be at the pareto boundary.
miki123211 10 hours ago [-]
On the other hand, we should recognize that, to put it plainly, not all dimensions on the frontier have the same level of importance.
Any technological and societal progress is going to have negative consequences. To give just one example, completely curing cancer will put many doctors (and other healthcare professionals who aren't paid as well as doctors are) out of a job. It will definitely cause at least a few children to go hungry. It will probably cause a few suicides when some oncologists start to "feel useless." This does not mean we shouldn't cure cancer if the opportunity arises.
Our society, driven by clickbait, rage and social media hot takes, tends to overweight the dimensions at which new technology makes things worse. There are many news stories about social-media-fueled teen suicides or AI datacenter water use, very few about how talking to family abroad no longer requires astronomical long-distance bills.
adrianN 4 hours ago [-]
The article does talk about putting weights on the dimensions to account for different dimensions having different importance.
TeMPOraL 57 minutes ago [-]
For one we need to start talking about taking off the weights from security dimension, because it's becoming ridiculously overemphasized for things where it frankly doesn't matter much for. All at the cost of "usability", which is a fancy word for saying people's time and effort, which is literally the only truly non-renewable, priceless resource we have.
jerf 17 hours ago [-]
Yes, I don't mean to imply that this is some sort of clear majority situation or anything. I just mean that I've definitely both seen on HN and participated in real life in some conversations in which it was taken as given that we must give up one thing to get another when nobody had in fact established that we were on the Pareto frontier. Or, considered from a local point of view, whether the tradeoff really was inevitable. I have had cases where we could have had both, with no difficulty.
adrianN 4 hours ago [-]
I’m very high dimensional spaces as they occur in real life projects with difficult to measure dimensions (eg how much does implementing something cost and how much does not implementing something cost) it seems very difficult to determine where you are in your space. Most companies run their product mostly on feels because anything else would quickly lead to analysis paralysis.
whateveracct 15 hours ago [-]
"making tradeoffs" is an excuse for management to cut corners to get their feature faster at the cost of future developer pain and suffering
you know how japanese oni would roll human souls into soba noodles? [1]
that's what modern corporate software company management does :)
[1] i learned about this from the very funny gintama funeral episode
circusss 12 hours ago [-]
developer pain inversely proportional to the amount of tech debt that exists!
voidhorse 20 hours ago [-]
Yes, the difference between coding (writing software) and engineering (making informed trade offs about system design) is effectively bound up in analyses like those supported by concepts like pareto efficiency.
One should keep in mind though that not all problems have a neat solution. Many spaces have multiple efficient points that still need to be chosen from, and many pareto optimization problems actually become NP hard computationally when the problem is large enough.
ksclk 3 hours ago [-]
Say someone wanted to transition from coding to engineering. What path would you have them take? What should they learn?
dzonga 18 hours ago [-]
there's something equivalent in the business world - mostly used by businesses not run by psychopaths - where you optimize inside 2 triangles with the points on the triangle being cost, profit, & user utility/happiness.
I did similar analysis a couple years ago for optimizing item builds in WoW classic. The tricky part in WoW is that there are 15ish item slots with hundreds of item choices for each slot, so the total number of builds is well over 100^15.
I ended up using a divide-and-conquer style approach, where I 1) pruned items that weren't on the Pareto frontier individually for each slot, 2) took the two slots X and Y that had the least items after pruning and grouped them by calculating Z:={x+y|x∈X,y∈Y}, 3) pruned items that weren't on the Pareto frontier in Z, and 4) repeated steps 2-3 until there was only one group remaining, comprised of the full Pareto-optimal item builds.
This ran in a couple of seconds, as opposed to the other solutions I tried that took somewhere between minutes and years. The downside was that including set bonuses into the model took extra work.
r3trohack3r 14 hours ago [-]
Fascinating! Do you still have any of the code or datasets/datasources laying around?
uzerfcwn 13 hours ago [-]
The data came from wow.tools (which has since been replaced by https://wago.tools) and Wowhead. I still have some code but it has so many ad-hoc scripts and sections that I commented in/out while experimenting that I'd feel embarrassed sharing it.
I am the complete opposite of that. My attention wanes when someone fails to get to the point, instead dwelling in irrelevant details which are not intrinsically interesting. Have to muster the motivation to concentrate in such circumstances, and doing so is not enjoyable.
pavel_lishin 17 hours ago [-]
What's the Pareto front of "get to the point" vs. "attempt to tell a compelling story"?
woodrowbarlow 19 hours ago [-]
is this also true when the irrelevant details are (by coincidence) interesting (to you)? it sounds to me like GP is interested in mario kart and you simply aren't, so this is a perfectly natural result.
kelvinjps10 18 hours ago [-]
I’m not interested on Mario kart at all and still found the article to be interesting.
dxdm 15 hours ago [-]
But Wikipedia tells you in the first paragraph what it's all about.
A "Pareto front represents the set of solutions where no solution outperforms any other solution in the set at every objective, and every solution not in the set is outperformed by at least one solution in the Pareto front in every objective"
Maxatar 15 hours ago [-]
Knowing a definition is not the same as understanding. I know this first hand from interviewing people who at the beginning of the interview can confidently tell me the definition of certain principles in statistics that I ask them about, and then later on in the very same interview when I present to them a real world scenario to analyze, they are completely oblivious that the very concept they explained to me so articulately when we started the interview is the very same concept needed to solve the real world scenario being presented to them.
In general Wikipedia isn't a great way to learn new concepts; it's a good reference when you're already familiar with something and need to brush up on it.
dxdm 4 hours ago [-]
I agree. What I meant to say is that the Wikipedia article tells you upfront where it is going. In TFA, you need to push many little paragraph cards across the screen before you get an idea what you are going to learn.
caxco93 20 hours ago [-]
I can only imagine the guy that made Mario Meets Pareto waiting for some Pareto related post to hit the front page before sharing his
wiki is usually not great at teaching new concepts, better as a reference for someone who already learned something.
applfanboysbgon 20 hours ago [-]
It turns out a lot of things are extremely accessible to a lot more people when you teach them as concrete, relatable scenarios in simple language with useful visualizations instead of abstract X, Y foos and bars described with an unfamiliar jargon term every 3rd word. We really need to do better when it comes to pedagogy.
__s 20 hours ago [-]
> You probably won't pick a driver sitting on the edge of the frontier because you want some balance between speed and acceleration
That seemed to hold up for Mario Kart 8 too going with Bowser at the edge of their pareto frontier, https://www.speedrun.com/mk8
needing acceleration is a skill issue
nightpool 16 hours ago [-]
This used to be true on older patches but it's not at all how top players play these days. See e.g. https://www.youtube.com/watch?v=ejt52UgnhAo for an example of the meta that prevailed for top-level versus play around the end of MK8's lifespan (Yoshi Biddybuggy Roller or Yoshi Teddybuggy Roller depending on your preferred drift style) or https://www.youtube.com/watch?v=vvrCP50Gfj4 for a breakdown of some of the latest time trial world records. At the beginning of the game's lifecycle top speed was the most important stat, but as more tricks were developed and the game's balance was adjusted, having faster and more consistent miniturbo boosts became much more important.
(Mario Kart World, which isn't covered in this article, has a more standard speed vs acceleration trade off but in that game high-max-speed (heavy) combos have even worse problems due to the way the rail grind mechanic was implemented and what seems to be an unforeseen interaction with the coin curve see e.g. https://www.youtube.com/shorts/sPyur6BkiOs)
rtkwe 18 hours ago [-]
It's optimizing for different environments and opponents, the speed runs only have to deal with the AI not human players and take such crazy paths the AI isn't around to really mess with them so they don't have to worry about reaccelerating. In versus it's much less likely you'll be able to avoid all the other players so you need to be able to get back up to speed after being hit. A common strategy in the online vs mode is actually back running to collect better items then cashing them in rapidly to win.
frantathefranta 20 hours ago [-]
On the other hand, if you are a casual and want to dominate 99% races you enter at people's homes, pick Toadette (with Mr. Scooty). I don't think I've lost since 2019.
_superposition_ 19 hours ago [-]
Lol skill issue... Right! But that's how you choose your weights. If you're not a great driver you need to give more consideration to acceleration.
kommunicate 16 hours ago [-]
no, even in time trials it depends on the track. If top speed were the most important metric you would see the same meta build for every world record time trial, but that's not the case.
Also, miniturbo is the single most important stat in the game, not top speed
paytonjjones 20 hours ago [-]
Speedruns are for playing the track solo, right?
If you're playing normally (with other people and items), even the most skilled player can't avoid getting hit by some universal items and will benefit from acceleration.
Hence, as the author notes, the balanced build with Peach being favored among competitive players.
TheAceOfHearts 2 hours ago [-]
Even with items enabled across both categories, you're optimizing for different things. In the speedrun case you're optimizing for the fastest possible peak time, while with regular racing you're optimizing for the most consistent performance and winning.
The speedrun category build can be worse on average but make up for it by providing higher peaks when you get lucky.
drdexebtjl 16 hours ago [-]
Acceleration is not very important at a high enough level because you can mini-turbo up to top speed when you get hit.
crtasm 19 hours ago [-]
GP first link is to a speedrun in the all cups category, played with items and computer opponents. There's a video included.
People do speedrun the individual tracks solo in other categories.
bspammer 18 hours ago [-]
For a speedrun you don't care about 100 failed runs as long as you get the world record once. You're basically hoping to get lucky that the computer opponent won't hit you. Obviously you're going to pick the greediest (i.e highest speed) choice in that setting, that doesn't make it good in normal gameplay.
16 hours ago [-]
__s 18 hours ago [-]
It's a fair point that such an environment will be different than playing against other humans
dmonitor 18 hours ago [-]
Acceleration is pointless because of the hidden Mini Turbo stat
ChrisGreenHeur 20 hours ago [-]
Adding skill is just another dimension to the calculation.
13 hours ago [-]
moomin 18 hours ago [-]
Of course I, and most of the dads I know, optimise for something else: what’s the car that will keep me competitive, but probably losing, to the kids?
jedberg 18 hours ago [-]
I don't. I need to keep winning until I can't to keep the boy in his place. He is getting closer every time. I know my day is soon to end, and a new house champion will reign.
hamburglar 17 hours ago [-]
I’m still trying to beat my dad at ping pong. He’s 75.
jedberg 15 hours ago [-]
Keep at it tiger, you'll get him one day!
SaltyBackendGuy 17 hours ago [-]
Ha exactly. Can't let the kids win for free.
aselimov3 17 hours ago [-]
This was going to be my reply. Can't let them get ahead of you too quick.
8n4vidtmkvmk 17 hours ago [-]
Better get the trophy ready
kridsdale1 17 hours ago [-]
My trick is to just never power slide when I need to be handicapped to not ruin the kids Christmas. Or tap the accel A button in a PWM pattern.
sudobash1 17 hours ago [-]
I often use the wii wheel as my handicap for family, but my wife (new to games) is now good enough that I might need to switch that soon.
When my oldest was first trying Mario Kart, his uncle came over and played against him blindfolded (and still won). It was very entertaining to watch.
cortesoft 16 hours ago [-]
There are a few things that are assumed to be true when talking about the Pareto frontier here, but aren’t always true.
One, that more of something is always better, e.g. it is always better to have more speed.
Maybe, but what if having too much speed causes you to run off the track and perform worse? It could be that there is actually a peak in the utility of speed that declines as it increases.
There could also be important relations between attributes that make determining a Pareto frontier impossible or at least more difficult. For example, some pairs of attributes work best when they are a specific ratio, and increasing one or the other will actually decrease utility unless the other is increased at the same time.
cfiggers 9 hours ago [-]
One way of defining Wisdom is the ability to look at a set of metrics and discern when an adjustment or adaptation to them is needed in order to better approach the true objective we are optimizing toward—since the true objective is almost never perfectly described by any of the metrics that we can find to approximate it.
Eventually, almost every attribute we can practically and objectively measure is at best a proxy measure for the thing we actually want to know, which is, in this case, "Most likely to win races." The thing we actually want to measure is often hard, impossible, or impractical to objectively measure, which is why we resort to proxies in the first place. By "proxy measure" we mean, not a perfect 1:1 to the thing we want to measure, but containing some amount of signal about it.
So yes, sometimes there's a peak in the utility of speed. But perhaps that trade-off can be modeled by another attribute called "Proneness to fly off the track" which increases as speed does, and is weighted such that the peak and then taper-off of benefit in speed is captured between the combination of the two of them.
But then, any vehicle that has the same speed but lower "Proneness to fly off the track" would be objectively preferable to any equally-fast vehicle with greater "Proneness to fly off the track." And so it continues.
Barbing 16 hours ago [-]
> [is it really] always better to have more speed[?]
I'm reminded of two things that in a way support your premise with the second example being more relevant. Both are outside what’s being discussed exactly, more about knock-on effects maybe, anyway:
The first is that Angry Birds found the speed of launching birds into structures was important for engagement: it cannot be too fast.
The second is from a commenter somewhere who said they had or worked on software that took ten minutes to boot in the morning, which is when employees made coffee and talked and brainstormed. Everyone was disappointed when after refactoring, the software booted immediately.
Wouldn't that just change the shape of the pareto frontier? It stops at some point (when marginal utility becomes negative) - but this is not special, they typically stop at 0 as well.
CobrastanJorji 16 hours ago [-]
I love when people do an amazing job carefully explaining something complicated in a way that makes it seem very intuitive. Excellent job. Way to show off those technical communication chops!
I would really love to be able to explore this data, e.g. what is the "worst" driver? Is there an inverse Pareto front?
chriswarbo 17 hours ago [-]
> Is there an inverse Pareto front?
Yes, trivially. Just look at the opposite end of each metric. Pareto optimality doesn't know/care what each metrics means, since it keeps them all separate.
hspeiser 17 hours ago [-]
Ive been played. Me and my brother used to play this all the time. He would always beat me and whenever I would win it would be a momentous occasion. Turns out his build was directly on the pareto frontier and mine was not even close. Damn you brother. Hes totally screwed next time we play
Velocifyer 13 hours ago [-]
This doesn't account for vehicle size (important for red shell wall breaking[0]) and drifting style[1].
[0] A redshell wall break is when you point your vehicle near a wall to break a redshell without using a defense item.
[1] Drifting style is either inward or outward. Inward drift has more intuitive controlls and is way better for intermidiate players, but pro players dislike it because is removes various difficult tricks.
I recommend yoshi on the yoshi bike with azure rollers and the paper glider.
Agentlien 18 hours ago [-]
On a tangent, I was a bit confused by the everyday examples given in this article.
"We're often faced with similar trade-offs. You want a meal that's both cheap and delicious? A job that's both well-paid, easy, and fulfilling?"
I really don't feel like "easy" is a dimension I wish to optimize for in a job. It almost feels opposite to what I've actually optimized for - since for me a fulfilling job usually means full of deep technical challenges. I want a job without unnecessary friction, without interpersonal drama, even one that's low stress. But definitely not easy.
wiether 17 hours ago [-]
> I want a job without unnecessary friction, without interpersonal drama, even one that's low stress.
That's part of how I see an "easy" job. Where I can focus on working on the actual tasks at hand.
Doesn't matter if the actual job is filling glasses of water or building rockets; as long as I can focus on it for 100% of my working hours, I'd see it as an "easy" job.
blanched 18 hours ago [-]
I get what you’re saying, but I wouldn’t say easy is the opposite of challenging. As a quick example, I would surely find a day job of manual labor harder and significantly less enjoyable than a day job of software engineering challenges.
(And please note that I do not mean to imply that there are no challenges in manual labor or that software engineering is more important.)
jimbokun 17 hours ago [-]
They’re just hypothetical examples, not meant to apply to everyone.
StilesCrisis 18 hours ago [-]
It sounds like you're saying "easy" and "fulfilling" cannot coexist, and obviously they are in tension, but a Pareto frontier still exists there.
ytpete 17 hours ago [-]
Maybe instead of "easy" what they really meant that axis to convey is something more like "low stress" or "not frustrating"
Georgelemental 18 hours ago [-]
Well then, you would prioritize "fulfilling" in your utility function. Others might make a different choice; e.g. a single parent who needs to save time and energy for family might prefer "easy" at the cost of boring drudgery
Agentlien 17 hours ago [-]
I think what I am saying is more that "easy" is too broad a vector to optimize along because it combines too much - both good and bad. I don't want a job without challenges of any kind.
But I definitely want a job without stress, danger, or physical strain on my body. Perhaps I am just looking for a similar word which doesn't imply anything about the complexity of the task at hand.
elwell 17 hours ago [-]
Felt like covert advertisements.
jpfromlondon 17 hours ago [-]
what you choose for the dimensions is arbitrary, they only chosen thusly to prove the point.
I don't think I've ever seen an example of pareto that wasn't pseudo scientific drivel.
If you liked the playing card interaction at the start (I did), I run a random side project where you (or your coding agent) can build similar 3d cards:
I used to play Diddy Kong Racing for the Nintento 64 a lot and what I learned is that the smaller carts with fast acceleration were good for learning how to navigate around the course and for battle royal, but the heavier drivers like Banjo had the highest top speed, and I developed better steering capabilities to time each curve, eventually making it sometimes the only way to win the race.
yathern 18 hours ago [-]
Apologies for the self-promotion, but I learned about the Pareto Front from this site a while back - and applied it to Mini PCs with https://minipcs.zip which plots Mini PCs based on Compute vs Price (and other metrics) - highlighting the pareto front to find the optimal unit.
xp84 17 hours ago [-]
Thanks for posting this! It's an awesome tool. Makes me want to buy more tiny PCs. My only feedback is many of the ebay listings it points to are sold out, but I assume there's a limit to the freshness you can get. Still though, I found pretty good rates of success just pasting the important parts of the name of the sold-out listing into search.
SaltyBackendGuy 16 hours ago [-]
I love how the data from top players shows that they're using a build on the Pareto Front, i.e. that the wisdom of crowds settles on a meta that is optimum. I wonder if we analyzed other games, if the meta were all consistently on the Pareto Front (WoW, Diablo, w/e). Likely so.
valiant55 16 hours ago [-]
Probably but they could be arrived at via different means. In WoW for instance top players run simulated combat using third party tools to compare different gearing setup, often to determine if a new piece of gear is better than their current piece. This often isn't immediately obvious if the stats are completely different and "simming" is the easiest way to evaluate a piece of gear.
drdexebtjl 16 hours ago [-]
Competitive players (from Mario Kart in particular) are doing this type of data mining and analysis ever since the game releases, and sharing them in tightly knit communities.
The analysis comes before the meta settles, so of course it’s consistent :)
Can anyone explain why Rosalina is not Pareto optimal here? It kind of looks like she should be.
bspammer 19 hours ago [-]
Because Donkey Kong gives more speed for exactly the same acceleration. I.e. you sacrifice nothing and gain something by switching away.
EDIT: If you mean that Rosalina looks slightly higher on the graph, I believe that's just a visual effect to allow multiple characters to occupy the same square - the stats are all integers.
kevinwang 18 hours ago [-]
> If you mean that Rosalina looks slightly higher on the graph, I believe that's just a visual effect to allow multiple characters to occupy the same square - the stats are all integers.
Ah, yeah. That is what I meant. Thanks!
19 hours ago [-]
redbell 15 hours ago [-]
> You can identify all efficient drivers that, unlike Koopa, are never dominated on both speed and acceleration. Together, they form what is called the Pareto front (or frontier).
I did not know the term but I'm thinking that the old project management triangle (cheap, good, fast) is a specialisation of that concept.
cantalopes 12 hours ago [-]
I always thought in these games; picking acceleration is a way for you to recover from your mistakes. If you made no mistakes the speed would win. So, it is always better to pick the harder option and have a room to improve
tkclough 10 hours ago [-]
That's not the full picture though, because other players can hit you with items, and it's sometimes unavoidable.
If you get hit by a blue shell with a build fully optimized for speed at the cost of acceleration, it's likely to cost you the race.
andai 20 hours ago [-]
Excellent. This is some kind of 3D PowerPoint. How did he do that?
It’s called scrollytelling. For this particular project, I borrowed a lot from https://mlu-explain.github.io/. For the 3D elements, I used Threejs and a custom vertex shader for the 3D plot.
dxdm 17 hours ago [-]
Is there a version I can just read as text without having to push every paragraph out of the way with my fingers across an unevenly colored background that shines through?
I get that this form of presentation may be great for many people, but for my brain, it makes it extremely hard to engage with the content.
I appreciate your work to make this topic accessible in an interactive format. Somehow, in this case, it's too much for me.
I think the ratio of information to interactivity is too low. It's like I have to push around a tiny keyhole to slowly access information. The graphs look fun, but their fancifulness is distracting me.
I don't usually mind interactivity, but I think usually it is embedded in the text, instead of gating it, if that makes sense.
beklein 20 hours ago [-]
I guess the author used a different framework but I like this one: https://animejs.com/
Retr0id 20 hours ago [-]
Looks like html+css+js+webgl
cocodill 6 hours ago [-]
Finally, this page has some information that's actually useful in real life.
15 hours ago [-]
kasts 16 hours ago [-]
What I've found is that my favorite person is not optimal... I have decided that I'm going to believe that the driver is worth more than the sum of their choices. And when I lose I'll just accept it as my own failing of skill.
#rosalina
This article isn’t quite accurate; acceleration is surprisingly unimportant in Mario Kart and not really considered a major factor when choosing a optimal combo.
The optimal combo is solely decided on the basis of speed and mini-turbo. Otherwise good analysis.
nwsm 19 hours ago [-]
Nice article, I'm sad to learn that I shouldn't be using Koopa. How are Peach and Mario not dominated on acceleration by Tanooki Mario and Luigi respectively?
Also, wonderful visualizations, but the change between blue and white backgrounds is really jarring to me.
SubiculumCode 19 hours ago [-]
Koopa came out in offroad vs weight..without being that familiar with the game, I don't know whether that would ever be important enough to care about
Holy! This is one of the best articles i ever read here. Really, really cool.
18 hours ago [-]
swrrt 8 hours ago [-]
Nice figuratively demonstrating, I think it can be a impressive lecture material if my teacher/prof use this kind of demonstration.
sendes 18 hours ago [-]
Finally an important and realistic application of economic theory to real life!
phoghed 19 hours ago [-]
To think I gimped myself so much by using baby Rosalina on a scooter with rollers
reconnecting 20 hours ago [-]
Thanks! Very useful information. I will never play for Bowser again.
Jepacor 20 hours ago [-]
Once at a Mario Kart 8 tournament I was helping run there was a kid who had picked Bowser and max speed and he was struggling to make every turn.
I switched him to the meta build and suddenly boom, he went from like 10th to 2nd against the AIs.
It's kinda weird that you can shoot yourself in the foot so much when picking your kart in this game.
latexr 20 hours ago [-]
> It's kinda weird that you can shoot yourself in the foot so much when picking your kart in this game.
Nintendo optimises for fun, not competitive play. Infamously, to curb the competitiveness of Super Smash Bros (SSB) Melee, they introduce a random tripping mechanic in the following SSB (Brawl). Everyone hated it so they removed it in the one after that.
elwell 17 hours ago [-]
> I will never play for Bowser again.
What do you mean "play for Bowser"?
latexr 20 hours ago [-]
It might still be the best option, depending on your play group. For example, if you’re in a play group with a bunch of novices and you’re destroying them, like finishing a full lap before the second place, choosing Bowser gives you a handicap. Lowers your chances of winning but increases fun for the group as a whole.
rakamotog 20 hours ago [-]
This was fun, thank you
danilocesar 15 hours ago [-]
Shame it isn't Luis Pareto.
suzukivenom 20 hours ago [-]
beautiful site
Aeroi 20 hours ago [-]
wow that took alot of work. nice job
hn22fazjsv 18 hours ago [-]
Solid advice, saving it
declan_roberts 17 hours ago [-]
Fun but still didn't tell me who the "best" player is.
bleuarff 16 hours ago [-]
There's no ultimate best player/build. When you factor in that each cart has different stats depending on the terrain, there's a "best" build for each track.
johnisom2001 16 hours ago [-]
Dependent on your play style and which of the 3 main attributes you care about.
Did you even read the post?
hnmu4c5zar 19 hours ago [-]
This resonates hard
paulnpace 19 hours ago [-]
Mario was an elite?
bix6 19 hours ago [-]
Lakitu ftw
alana314 11 hours ago [-]
Peach was goated in Super Mario Bros 2 as well. I always pick her.
amilovepdf 17 hours ago [-]
[flagged]
ShinyLeftPad 21 hours ago [-]
The site is really broken on mobile.
voidnullvalue 20 hours ago [-]
I cannot be the only one who atrongly dislikes this bloated web design. I hit back after scrolling a bit
andai 20 hours ago [-]
Until recently I thought I hated sites that messed with the scroll out of principle, but then I found a handful of them that do a good job of it. This is one of them.
recursive 16 hours ago [-]
This is a good job? It takes me a half dozen scroll actions to get each sentence of text. I'm not risking a carpal tunnel flare-up just to get through effectively one paragraph of content.
kfarr 20 hours ago [-]
The key here is to have a foreground layer that always responds to scroll and informs the background layer based on its position
ShinyLeftPad 10 hours ago [-]
I did the same but not because i dislike it, because it is just broken, layout constantly shifting and so on.
duskdozer 19 hours ago [-]
No, you're not. A lot of the web is becoming increasingly unusable for me because of things like this.
rtrigoso 20 hours ago [-]
Also on Firefox android and working great. What's your browser/os?
superMayo 19 hours ago [-]
Can you tell me what’s going on?
I tried my best to make it work on every device, but handling mobile is hard, and especially when you’re messing with interactivity and 3D.
fnordian_slip 20 hours ago [-]
Works for me with Firefox on android and ublock origin.
phoghed 20 hours ago [-]
Works wonderfully on iPhone
ShinyLeftPad 10 hours ago [-]
I'm on latest one and nope it's glitchy af.
rokkamokka 20 hours ago [-]
Works for me in Firefox on Android anyway
xkcd1963 16 hours ago [-]
[flagged]
Xirdus 20 hours ago [-]
In Firefox reader mode, there's like 5 paragraphs of text. I am unable to digest the content on the website itself. Can someone confirm if the 5 paragraphs is the whole content or if I have large parts of it missing?
Levitz 20 hours ago [-]
The article includes interactive graphs and scrolling animations that explain them, as well as data.
rtkwe 18 hours ago [-]
Turn off reader there are graphics along with the paragraphs. Reminds me of the complaints that used to be super common from people religiously refusing to enable javascript and complaining when breaking the site breaks the site.
duskdozer 18 hours ago [-]
Why do you think people refused to enable javascript?
rtkwe 17 hours ago [-]
I saw a lot of people saying various things along the lines of "not running strangers code on my machine" and some "you should serve me the site working even if JS is disabled". The exact reason doesn't really matter it's more that if you're intentionally gimping the website you don't really get to complain about the site not loading.
Xirdus 17 hours ago [-]
I don't refuse to enable JS. I do, however, refuse to use website with broken scrolling. It makes me physically sick.
rtkwe 16 hours ago [-]
Does this site do that to you?
Xirdus 16 hours ago [-]
Very much so. It's one of the worst cases (but not the worst, not even the worst this week) I've seen around here.
rtkwe 15 hours ago [-]
What's broken about the scroll? For me it acts like basically any other scrolling presentation design used on hundreds of different websites.
duskdozer 15 minutes ago [-]
And hundreds of different websites are unusable or borderline so. This is one of the negative effects of JS, but at this point the JS of those times isn't even the worst, because you'd be able to block and modify parts of it to some degree. The latest trends are going further and further in not just running user-hostile code on my machine but in a way that can't even be modified.
Xirdus 14 hours ago [-]
I guess the whole idea of "scrolling presentation design" is broken? I certainly wouldn't mind if it stopped being a thing. It feels like 90% of websites that I find annoying as of late are of this type.
This page has some elements that scroll and some elements that don't scroll. And some elements that switch between scrolling and not scrolling. And some animations are controlled by scroll position, meaning they bounce back and forth while I try to find my bearings on the scroll wheel. Everything is fighting for my attention all at once, which prevents me from focusing on anything in particular. Most of all, it prevents me from focusing on the scrolling itself - and scrolling requires extreme focus here considering you never know what will happen and how much you need to scroll for it to happen. Is text going to slide in? Is a picture going to suddenly pop up? Is an existing picture going to transform to something else? Will it transform gradually as I scroll, or is it going to do it all suddenly in one step?
In short - it breaks the UI metaphor of scrolling an infinite roll of paper, and that in turn breaks my brain. I just can't follow what's happening, there's too much non-scrolling action happening when I scroll. There's also too much empty space between paragraphs.
duskdozer 19 hours ago [-]
It looks like it. There are four images that pop up and start animating numbers, and those aren't visible in the built in reader. I use Tranquility Reader which ime tends to do a bit better, but it still wasn't readable. Looking at the source, that content seems to be created only on scroll with javascript, so it won't be able to be read accessibly. I had to close it so I can't say what else is missing.
One aspect for developers that I see quite often is the assertion that "We can't have X without giving up more Y", most commonly "we can't have more security without giving up on user experience". With the Pareto idea in mind, we can see that that statement is true, if and only if you are in fact on the Pareto frontier of security and user experience already.
However, many times these confident pronouncements are being made when the system under question is quite evidently not on the Pareto frontier in the first place and indeed you can get more of one without giving up the other.
Making it more tricky is that in business, you can never discard "money" as a dimension, so unless you're taking "money" as one of the dimensions in the original comparison you want to do, it sneaks its way in. Or, a composite time/money, or "cost to business", or some other similar concept, time & money aren't orthogonal and don't need to be treated as two separate dimensions in general, though you can if you want. Which puts you into the 3D case, and as the page says, that grows the frontier quite a lot, which is good in some ways and bad in others. Nevertheless, in my opinion it is still often the case that even in that space we are often making "tradeoffs" without checking that we're on the Pareto frontier in the first place.
Any technological and societal progress is going to have negative consequences. To give just one example, completely curing cancer will put many doctors (and other healthcare professionals who aren't paid as well as doctors are) out of a job. It will definitely cause at least a few children to go hungry. It will probably cause a few suicides when some oncologists start to "feel useless." This does not mean we shouldn't cure cancer if the opportunity arises.
Our society, driven by clickbait, rage and social media hot takes, tends to overweight the dimensions at which new technology makes things worse. There are many news stories about social-media-fueled teen suicides or AI datacenter water use, very few about how talking to family abroad no longer requires astronomical long-distance bills.
you know how japanese oni would roll human souls into soba noodles? [1]
that's what modern corporate software company management does :)
[1] i learned about this from the very funny gintama funeral episode
One should keep in mind though that not all problems have a neat solution. Many spaces have multiple efficient points that still need to be chosen from, and many pareto optimization problems actually become NP hard computationally when the problem is large enough.
https://imgur.com/a/wy2fLEw
I ended up using a divide-and-conquer style approach, where I 1) pruned items that weren't on the Pareto frontier individually for each slot, 2) took the two slots X and Y that had the least items after pruning and grouped them by calculating Z:={x+y|x∈X,y∈Y}, 3) pruned items that weren't on the Pareto frontier in Z, and 4) repeated steps 2-3 until there was only one group remaining, comprised of the full Pareto-optimal item builds.
This ran in a couple of seconds, as opposed to the other solutions I tried that took somewhere between minutes and years. The downside was that including set bonuses into the model took extra work.
A "Pareto front represents the set of solutions where no solution outperforms any other solution in the set at every objective, and every solution not in the set is outperformed by at least one solution in the Pareto front in every objective"
In general Wikipedia isn't a great way to learn new concepts; it's a good reference when you're already familiar with something and need to brush up on it.
for super mario kart speedruns go with bowser/dk: https://www.speedrun.com/smk/runs/zp68nr8m
That seemed to hold up for Mario Kart 8 too going with Bowser at the edge of their pareto frontier, https://www.speedrun.com/mk8
needing acceleration is a skill issue
(Mario Kart World, which isn't covered in this article, has a more standard speed vs acceleration trade off but in that game high-max-speed (heavy) combos have even worse problems due to the way the rail grind mechanic was implemented and what seems to be an unforeseen interaction with the coin curve see e.g. https://www.youtube.com/shorts/sPyur6BkiOs)
Also, miniturbo is the single most important stat in the game, not top speed
If you're playing normally (with other people and items), even the most skilled player can't avoid getting hit by some universal items and will benefit from acceleration.
Hence, as the author notes, the balanced build with Peach being favored among competitive players.
The speedrun category build can be worse on average but make up for it by providing higher peaks when you get lucky.
People do speedrun the individual tracks solo in other categories.
When my oldest was first trying Mario Kart, his uncle came over and played against him blindfolded (and still won). It was very entertaining to watch.
One, that more of something is always better, e.g. it is always better to have more speed.
Maybe, but what if having too much speed causes you to run off the track and perform worse? It could be that there is actually a peak in the utility of speed that declines as it increases.
There could also be important relations between attributes that make determining a Pareto frontier impossible or at least more difficult. For example, some pairs of attributes work best when they are a specific ratio, and increasing one or the other will actually decrease utility unless the other is increased at the same time.
Eventually, almost every attribute we can practically and objectively measure is at best a proxy measure for the thing we actually want to know, which is, in this case, "Most likely to win races." The thing we actually want to measure is often hard, impossible, or impractical to objectively measure, which is why we resort to proxies in the first place. By "proxy measure" we mean, not a perfect 1:1 to the thing we want to measure, but containing some amount of signal about it.
So yes, sometimes there's a peak in the utility of speed. But perhaps that trade-off can be modeled by another attribute called "Proneness to fly off the track" which increases as speed does, and is weighted such that the peak and then taper-off of benefit in speed is captured between the combination of the two of them.
But then, any vehicle that has the same speed but lower "Proneness to fly off the track" would be objectively preferable to any equally-fast vehicle with greater "Proneness to fly off the track." And so it continues.
I'm reminded of two things that in a way support your premise with the second example being more relevant. Both are outside what’s being discussed exactly, more about knock-on effects maybe, anyway:
The first is that Angry Birds found the speed of launching birds into structures was important for engagement: it cannot be too fast.
The second is from a commenter somewhere who said they had or worked on software that took ten minutes to boot in the morning, which is when employees made coffee and talked and brainstormed. Everyone was disappointed when after refactoring, the software booted immediately.
https://xkcd.com/1172/
Yes, trivially. Just look at the opposite end of each metric. Pareto optimality doesn't know/care what each metrics means, since it keeps them all separate.
[0] A redshell wall break is when you point your vehicle near a wall to break a redshell without using a defense item. [1] Drifting style is either inward or outward. Inward drift has more intuitive controlls and is way better for intermidiate players, but pro players dislike it because is removes various difficult tricks.
I recommend yoshi on the yoshi bike with azure rollers and the paper glider.
"We're often faced with similar trade-offs. You want a meal that's both cheap and delicious? A job that's both well-paid, easy, and fulfilling?"
I really don't feel like "easy" is a dimension I wish to optimize for in a job. It almost feels opposite to what I've actually optimized for - since for me a fulfilling job usually means full of deep technical challenges. I want a job without unnecessary friction, without interpersonal drama, even one that's low stress. But definitely not easy.
Doesn't matter if the actual job is filling glasses of water or building rockets; as long as I can focus on it for 100% of my working hours, I'd see it as an "easy" job.
(And please note that I do not mean to imply that there are no challenges in manual labor or that software engineering is more important.)
But I definitely want a job without stress, danger, or physical strain on my body. Perhaps I am just looking for a similar word which doesn't imply anything about the complexity of the task at hand.
I don't think I've ever seen an example of pareto that wasn't pseudo scientific drivel.
https://requirement5.com
build a card here: https://requirement5.com/create (and the CLI instructions are there too)
https://github.com/vilt9/requirement5
The analysis comes before the meta settles, so of course it’s consistent :)
OG credit to: Henry Hinnefeld 2015: https://hinnefe2.github.io/python/tools/2015/09/21/mario-kar...
EDIT: If you mean that Rosalina looks slightly higher on the graph, I believe that's just a visual effect to allow multiple characters to occupy the same square - the stats are all integers.
Ah, yeah. That is what I meant. Thanks!
Coincidently, this Pareto Front concept is currently on the front page on HN at #10 (https://news.ycombinator.com/item?id=49096439) and apparently, it was posted before this post.
If you get hit by a blue shell with a build fully optimized for speed at the cost of acceleration, it's likely to cost you the race.
It’s called scrollytelling. For this particular project, I borrowed a lot from https://mlu-explain.github.io/. For the 3D elements, I used Threejs and a custom vertex shader for the 3D plot.
I get that this form of presentation may be great for many people, but for my brain, it makes it extremely hard to engage with the content.
I appreciate your work to make this topic accessible in an interactive format. Somehow, in this case, it's too much for me.
I think the ratio of information to interactivity is too low. It's like I have to push around a tiny keyhole to slowly access information. The graphs look fun, but their fancifulness is distracting me.
I don't usually mind interactivity, but I think usually it is embedded in the text, instead of gating it, if that makes sense.
Also, wonderful visualizations, but the change between blue and white backgrounds is really jarring to me.
I switched him to the meta build and suddenly boom, he went from like 10th to 2nd against the AIs.
It's kinda weird that you can shoot yourself in the foot so much when picking your kart in this game.
Nintendo optimises for fun, not competitive play. Infamously, to curb the competitiveness of Super Smash Bros (SSB) Melee, they introduce a random tripping mechanic in the following SSB (Brawl). Everyone hated it so they removed it in the one after that.
What do you mean "play for Bowser"?
Did you even read the post?
This page has some elements that scroll and some elements that don't scroll. And some elements that switch between scrolling and not scrolling. And some animations are controlled by scroll position, meaning they bounce back and forth while I try to find my bearings on the scroll wheel. Everything is fighting for my attention all at once, which prevents me from focusing on anything in particular. Most of all, it prevents me from focusing on the scrolling itself - and scrolling requires extreme focus here considering you never know what will happen and how much you need to scroll for it to happen. Is text going to slide in? Is a picture going to suddenly pop up? Is an existing picture going to transform to something else? Will it transform gradually as I scroll, or is it going to do it all suddenly in one step?
In short - it breaks the UI metaphor of scrolling an infinite roll of paper, and that in turn breaks my brain. I just can't follow what's happening, there's too much non-scrolling action happening when I scroll. There's also too much empty space between paragraphs.