Interpolating in RGB just uses linear interpolation on each channel, so it ends up passing through grey in a lot of cases, and the colors look very desatured.
Interpolating in OKLCH preserves chroma and instead passes through different hues.
I wrote a 3d rubiks cube slot machine for my old online casino. It scrambled the cube randomly 4 times and gave the player 60 seconds to solve it by twisting up to 3 times. Lots of weird quaternion math to handle the spinning and shift key twisting at the same time. All with simple geometry in Away3D / AS3.
The real hard part of designing that game was creating the payout structure. The game paid an equal amount for each "line" of 3 colors in a row on any face after the player made their third move. There was a progressive take and jackpot for a perfect solution. And I specifically wanted to target a zero house edge for the game, to reward the best problem solvers. So the question was, given 4 random twists off a perfect cube, what are the individual chances of getting 64, 63, 62...1 lines of sequential color given the best 3 spins from the initial random state, and then hiw to allocate the payout structure accordingly.
Probably a billion monte carlo runs and I had a pay table. It was lots of fun. I wish more gambling games rewarded skill that way.
Plus this would seemingly violate compliance with laws protecting disabled people. For instance, someone with mobility issues might know the solution but wouldn't be able to hit the buttons in time.
Sweet, can I mint these as NFTs? I don't know how to multiply 43252003274489856000 by 50 USD but I think it could make me a lot of money, and I like money.
In case someone is curious, NFTs were tradeable tokens popular for a short while in the early 2020s.
> Initially pitched in 2017 as a new class of investment asset, NFT trading increased from US$82 million in 2020 to US$17 billion in 2021. Its market was occasionally compared to an economic bubble or a Ponzi scheme. In 2022, the NFT market collapsed; a May 2022 estimate was that the number of sales was down over 90% compared to 2021. By September 2023 one report claimed that over 95% of NFT collections had zero monetary value.
The reason NFTs "failed" is that the "assets" were jpegs with infinitesimal intrinsic value(pre–ai slop) and even less market appeal.
We have people wasting money on jpegs and people wanting to own things outside of game inventory screens even today. Something akin to NFTs could still become a part of the economy.
My scroll wheel covers about 12 states per inch of travel. Did the stubby pencil work and it would take about 9.5 years to scroll through them all if the wheel surface was moving at the speed of light.
This is a nice visualization.
Are there any keyboard keys to just advance one position along the line? I tried the arrow keys but they jumped quite far.
I don't know how this was generated (BFS and flattening?) it seems adjacent indices aren't just one move apart ... but they could be!
My favorite one is chess games. If you managed to compress each chess game down to just a single atom, the physical size of a disk to save this data would exceed the amount of atoms in the universe. Even the number of theoretic positions (ignoring legality/possibility) is just below the number of atoms in the universe.
Though it must be said that once one starts looking at permutations of things, the number of atoms in the universe seems quite small indeed. 10^80? What's that, like 7 or 8?
Reminds me of that time when, as an undergraduate, my "team" entered a Problem Solving Competition and couldn't choose one of the two problems so we did both in parallel.
One of us wrote a program in BASIC on a Tandy 1000 that the rest of us estimated would take more than a google years to finish, but he wasn't be dissuaded and let it run the whole weekend.
I made an analysis that was mostly correct but was off by a factor of four because I mistook a radius for a diameter.
My kids had a science battle in the basement last summer, which resulted in both their Rubik’s Cubes colliding mid air. They both exploded (the cubes, not the kids) and were reassembled at a “fix this before mom finds us” rush speed.
I think my favourite is this pattern my 9 year old makes on “Greeny” (that’s his pet name for the cube that now has 11 green squares) where all four top corners are red/white/blue.
My kid wanted to jump 3x3x3 and go directly to a 4 cube. I freaked out when we messed it and thought we could never solve it, because you can't disassemble a 4 cube into pieces like a 3 one. In the end it's not so difficult: like a 3 as you move around the two middle pieces of each edge together like one.
When I was a kid (many, many moons ago) I found a solved Rubik's Cube in a house where we were staying. I played with it and soon enough couldn't put it back in its solved state.
So I took it apart and rebuilt it 'properly', which didn't take long and wasn't too hard. I wonder how many people did the same.
On a Rubiks cube, the center tile always remains constant. I was surprised at this when I accidentally broke one apart to find a static 3d cross piece to each cube face (e.g. a non-moving tile). Everything else rotates around it
Anyone else surprised how small the number is?
It looks quite big without commas but if you add them in it looks like the sort of number that is almost conceivable
43,252,003,274,489,856,000
43 quintillion, that's the type of number i've vaguely heard of.
Compared to the number of possibilities for a shuffled deck of cards
80,658,175,170,943,878,571,660,636,856,403,766,975,289,505,440,883,277,804,000,000,000,000
Thats a big number, and weirdly I think those 00s at the end are exact not a rounding error.
It felt pretty big to me, considering Rubik's cubes only have 26 pieces, their valid slots are not all the same, and some of their states are mirrored.
The above makes everything sound very intentionally done towards the end result. He came about making the cube for finding ways to tackle the engineering challenge of building a device which moves in such levels if freedom, ended up scrambling it, and then spent a month figuring out how to treat the scrambled state as a puzzle to be solved. Messing with it gave him insight into just how complex a puzzle it was and the rest goes from there.
There are 43,252,003,274,489,856,000 (~4.3 × 10¹⁹) different positions.
1. If I try every position (1 position/sec) knowing it's unique, it will take me 1.37 trillion years.
2. If the pro tries (let's say 10 positions/sec), it will take 137 billion years.
The universe is younger than that. :-D
Wondering how fast the machine or computer will do that?
Wow, this was really fun to play around with! Amazing execution and launch!
Quick feedback: it’d be great if the page updated when the URL changes, so you can explore different positions without reloading.
Right now, if I change the URL/hash of the cube position (eg: incrementing by 1 https://everycube.alen.is/?view=3d#5319001606686939024
), the app doesn’t update and I have to open the new URL in a separate tab to see the new position. [Chrome 150 on Mac OS X 10.15.7]
OK. So I put the slider into a random middle location. Then I zipped it back all the way left as fast as I could. Still not up to competitive speed cubing level! Shucks, golly, gee.
How did the kid who could solve the Rubik's Cube in under 1 min not become an algorithm designer - some genius backend dev?
I blame guitars.
All these kids got bad ass at playing Wonderwall, PHP was just slightly less cool than playing Wonderwall. So for 2-4 years they were sidetracked.
Playing Wonderwall at parties.
But if they had went straight from solving Rubik's Cube in 1 min to O(1) time complexity in a REST endpoint like peak 2-way communications (WebSocket, GRPC) these fuckers would be optimizing LLM embeddings at this point.
Karpathy? No, I want Steve from the Chess club who could recite any J.R.R. Tolkien writing, who has a Runescape character worth $4 million. Fuck LeCunn. Where's Steve?!
STEVE! I'm sorry I laughed at your Pokemon collection. I'm sorry Steve! I'm fucking sorry! PLEASE COME BACK
With all due respect to Steve, under 1 minute isn't that impressive. You can get there just by doing the beginner's method (a handful of different move-sequences) rapidly. The people who really study Rubik's Cube algorithms in depth can do it in a few seconds.
I had a friend - David - he could do it insanely quick. He's basically who I am thinking of in my post since he was also a genius at guitar, and could play beautifully. And he taught me basic PHP.
We spent a lot of time on your site on random Friday nights (him playing guitar) hahah, good times.
More of a yo-yo guy myself. I could walk the dog, pendulum, what-have-you. Around the world if I'm feeling saucy
Also: Gross, wtf happened to it???? If you can't say publicly, just blink 3 times
I remember a TV program showing someone breaking the one minute record for the first time. I could already do it at that point, I'm sure many others could as well.
>How did the kid who could solve the Rubik's Cube in under 1 min not become an algorithm designer - some genius backend dev?
Somebody else figured out the algs. The speedcubers just rote memorize them and then practice becomes mostly about execution. (Oversimplifying a little, but I have gotten sub-60 myself with the Roux method a few years ago)
Interestingly I've never managed to pick up programming but learned the cube pretty well (as an adult), and my programmer friend can't seem to figure out the cube at all even with me giving him extra help on top of linking materials I learned from. I suspect it's a very different skillset and we're both weak in one area.
Yeah goes to show why Leetcode is such a problem for so many very good developers.
It's a different kind of thinking.
That said, if that "clicked" for you, you may find yourself surprisingly good at backend - algorithmic thinking shines in crypto, search, and LLMs. Get into Python or Node if you haven't for some random idea (ever wanted to make a web contact form or something?) - the LLMs will set you up for success. If you figured out Rubik's Cube, you will 1000% get it because I know you have the patience and learning ability.
----
There is one algorithm I saw recently on Youtube, the bro pops one of the little cubes off and "cheats" by turning it around manually.
I consider this to be "freestyling" with the Rubik's Cube. Wtf is that all about?
It would be really funny, and sociopathic, if every state change registered as a browser history entry so I had to click Back 50,000 times to get back to Hacker News.
Oh wow, you don’t do “Open in New Tab” when reading HN?
Thanks for the idea, I should really try that, maybe it will help with my infinite open tabs problem.
At some point though, how many states is too many?
We have massive housing affordability and employment shortage problems, meanwhile here’s a tech elite flouting 4x10^9 states which he doesn’t pay taxes on and most of them will not even get used. Is that really fair?
Imagine being so well off that you don't even notice being off by ten orders of magnitude. Meanwhile, there are people dealing with negative exponents.
The color interpolation in 2D mode is bad. Instead of interpolating through RGB, you should use OKLCH
Demo: https://jsfiddle.net/t80eLfc2/2/
Interpolating in RGB just uses linear interpolation on each channel, so it ends up passing through grey in a lot of cases, and the colors look very desatured.
Interpolating in OKLCH preserves chroma and instead passes through different hues.
I wrote a 3d rubiks cube slot machine for my old online casino. It scrambled the cube randomly 4 times and gave the player 60 seconds to solve it by twisting up to 3 times. Lots of weird quaternion math to handle the spinning and shift key twisting at the same time. All with simple geometry in Away3D / AS3.
The real hard part of designing that game was creating the payout structure. The game paid an equal amount for each "line" of 3 colors in a row on any face after the player made their third move. There was a progressive take and jackpot for a perfect solution. And I specifically wanted to target a zero house edge for the game, to reward the best problem solvers. So the question was, given 4 random twists off a perfect cube, what are the individual chances of getting 64, 63, 62...1 lines of sequential color given the best 3 spins from the initial random state, and then hiw to allocate the payout structure accordingly.
Probably a billion monte carlo runs and I had a pay table. It was lots of fun. I wish more gambling games rewarded skill that way.
Casino games are rarely zero house edge. Is there a way you signaled this feature to problem solvers? Did the game prove to be successful?
it could be a video game with no real money, and some online casinos have zero edge games where you pay a small fee when you win.
any time there is skill in an online casino game where money is involved, there is cheating too
Just change the parity by swapping two stickers on a corner piece, and no amount of skill can solve it.
Plus this would seemingly violate compliance with laws protecting disabled people. For instance, someone with mobility issues might know the solution but wouldn't be able to hit the buttons in time.
Sweet, can I mint these as NFTs? I don't know how to multiply 43252003274489856000 by 50 USD but I think it could make me a lot of money, and I like money.
Donald, is that you?
Joke's on you, I'm going to do the same thing but only charge $5. Sucker!
That's more money than there is in the universe, I think you're onto a winner here!
You only need to sell one at $50, then market cap does the rest and you are boundlessly rich.
If we can capture even 1% of the market…
In case someone is curious, NFTs were tradeable tokens popular for a short while in the early 2020s.
> Initially pitched in 2017 as a new class of investment asset, NFT trading increased from US$82 million in 2020 to US$17 billion in 2021. Its market was occasionally compared to an economic bubble or a Ponzi scheme. In 2022, the NFT market collapsed; a May 2022 estimate was that the number of sales was down over 90% compared to 2021. By September 2023 one report claimed that over 95% of NFT collections had zero monetary value.
https://en.wikipedia.org/wiki/Non-fungible_token
/s
The reason NFTs "failed" is that the "assets" were jpegs with infinitesimal intrinsic value(pre–ai slop) and even less market appeal.
We have people wasting money on jpegs and people wanting to own things outside of game inventory screens even today. Something akin to NFTs could still become a part of the economy.
Often the actual token would just hold a link to a jpeg. With all the consequences of link rot.
The assets were the expected future value of worthless items in an engineered bubble.
The bubble never inflated, so the nominal value crashed back down to the real value almost immediately.
Fairly sure there was some money laundering happening too.
Cryptopunks are still over $60k. Pricy jpegs.
Define intrinsic value in a measurable way that does not depend on any specific human’s subjective estimation.
How many calories do you get when you eat it or burn it. Everything else is down to taste.
My scroll wheel covers about 12 states per inch of travel. Did the stubby pencil work and it would take about 9.5 years to scroll through them all if the wheel surface was moving at the speed of light.
Auto rotate and auto scrolling would be neat.
Edit: also 2D https://www.github.com/AdamWhiteHat/RubiksCubeControlWpf
This is a nice visualization. Are there any keyboard keys to just advance one position along the line? I tried the arrow keys but they jumped quite far.
I don't know how this was generated (BFS and flattening?) it seems adjacent indices aren't just one move apart ... but they could be!
There is a Hamiltonian circuit for Rubik's cube: https://bruce.cubing.net/ham333/rubikhamiltonexplanation.htm...
Following the circuit would be like Gray codes instead of binary digits. You only flip one bit at a time when going to the next number.
You can change the jump-amount in the top right. (500 was an odd default).
The moves are reversed? i.e., F is F'
https://everycube.alen.is/?view=3d&alg=R%20U%20R%27%20U%27
Should be:
https://alg.cubing.net/?alg=R_U_R-_U-
Reminds me of a book I recently read:
https://en.wikipedia.org/wiki/A_Short_Stay_in_Hell
The numbers produced by permutations are astounding! Especially compared to the (much smaller) numbers in our actual physical universe.
My favorite one is chess games. If you managed to compress each chess game down to just a single atom, the physical size of a disk to save this data would exceed the amount of atoms in the universe. Even the number of theoretic positions (ignoring legality/possibility) is just below the number of atoms in the universe.
Though it must be said that once one starts looking at permutations of things, the number of atoms in the universe seems quite small indeed. 10^80? What's that, like 7 or 8?
The number of permutations of n distinct objects is n!. So, probably a bit more than 8, since 8! < 10⁸, but I don’t think you are terribly off :-)
Edit: 58! < 10⁸⁰ < 59!
Reminds me of that time when, as an undergraduate, my "team" entered a Problem Solving Competition and couldn't choose one of the two problems so we did both in parallel.
One of us wrote a program in BASIC on a Tandy 1000 that the rest of us estimated would take more than a google years to finish, but he wasn't be dissuaded and let it run the whole weekend.
I made an analysis that was mostly correct but was off by a factor of four because I mistook a radius for a diameter.
Ah nice, it has some of my favourites!
I am very curious about your other favorites it does but have.
My kids had a science battle in the basement last summer, which resulted in both their Rubik’s Cubes colliding mid air. They both exploded (the cubes, not the kids) and were reassembled at a “fix this before mom finds us” rush speed.
I think my favourite is this pattern my 9 year old makes on “Greeny” (that’s his pet name for the cube that now has 11 green squares) where all four top corners are red/white/blue.
My kid wanted to jump 3x3x3 and go directly to a 4 cube. I freaked out when we messed it and thought we could never solve it, because you can't disassemble a 4 cube into pieces like a 3 one. In the end it's not so difficult: like a 3 as you move around the two middle pieces of each edge together like one.
When I was a kid (many, many moons ago) I found a solved Rubik's Cube in a house where we were staying. I played with it and soon enough couldn't put it back in its solved state.
So I took it apart and rebuilt it 'properly', which didn't take long and wasn't too hard. I wonder how many people did the same.
This here is the difference between theory and practice. Our minds are to feeble to understand reality.
This is pretty cool. Same concept (and I would assume implementation) as https://everyuuid.com/
Implementation details can be found here: https://eieio.games/blog/writing-down-every-uuid/
Maybe show the minimum number of moves required to solve each state :)
And maybe sort them by "distance to solved".
I used the "FX" option and I think there's a bug. The center tiles on each side always stay in the same position.
On a Rubiks cube, the center tile always remains constant. I was surprised at this when I accidentally broke one apart to find a static 3d cross piece to each cube face (e.g. a non-moving tile). Everything else rotates around it
I think you thought a /s can be sometimes implied in HN comments
The center tiles on a Rubik's cube don't move, they only rotate in place.
Anyone else surprised how small the number is? It looks quite big without commas but if you add them in it looks like the sort of number that is almost conceivable 43,252,003,274,489,856,000 43 quintillion, that's the type of number i've vaguely heard of. Compared to the number of possibilities for a shuffled deck of cards 80,658,175,170,943,878,571,660,636,856,403,766,975,289,505,440,883,277,804,000,000,000,000 Thats a big number, and weirdly I think those 00s at the end are exact not a rounding error.
It felt pretty big to me, considering Rubik's cubes only have 26 pieces, their valid slots are not all the same, and some of their states are mirrored.
It's really 21, since the centers are all one unmovable piece.
https://jhodileongseportfolio.weebly.com/center-faces.html
And yet sorting a deck of cards is much easier than solving the cube.
43,252,003,274,489,856,000 is a fun trivia number, but it tells you nothing about how hard it is to solve the cube.
Current speed cube record appears to be 2.76s.
Has anyone ever sorted a randomly shuffled deck of cards in under 3 seconds?
It took Ernő Rubik four years to develop the cube.
He immediately scrambled it, then spent the next month figuring out if it could be solved.
Luckily no one told him there were 43 quintillion valid combinations.
Solved theoretically? I figure you could at least intuit that reversing all the moves in the scramble in reverse order would solve it.
The above makes everything sound very intentionally done towards the end result. He came about making the cube for finding ways to tackle the engineering challenge of building a device which moves in such levels if freedom, ended up scrambling it, and then spent a month figuring out how to treat the scrambled state as a puzzle to be solved. Messing with it gave him insight into just how complex a puzzle it was and the rest goes from there.
He spent the next month coming up with an algorithm to solve it, not knowing if such an algorithm was even possible.
After he sold the puzzle, he traveled around to various conferences, to prove it could be solved.
There are 43,252,003,274,489,856,000 (~4.3 × 10¹⁹) different positions. 1. If I try every position (1 position/sec) knowing it's unique, it will take me 1.37 trillion years. 2. If the pro tries (let's say 10 positions/sec), it will take 137 billion years. The universe is younger than that. :-D
Wondering how fast the machine or computer will do that?
Here is another way of looking at the same question:
https://news.ycombinator.com/item?id=49252106
Reminds me of https://everyuuid.com/
Application error: a client-side exception has occurred (see the browser console for more information).
iPhone; Safari; Lockdown mode.
> Application error: a client-side exception has occurred (see the browser console for more information).
On ios Firefox and Safari unfortunately, would love to see this site
Wouldn't it be cool to click and then see the quickest solution and it rotates in front of you, or a sequence of moves to solve.
Wow, this was really fun to play around with! Amazing execution and launch!
Quick feedback: it’d be great if the page updated when the URL changes, so you can explore different positions without reloading.
Right now, if I change the URL/hash of the cube position (eg: incrementing by 1 https://everycube.alen.is/?view=3d#5319001606686939024 ), the app doesn’t update and I have to open the new URL in a separate tab to see the new position. [Chrome 150 on Mac OS X 10.15.7]
just shipped a fix, the app now listens for hash/URL changes and updates the view without needing a reload. thanks for catching this!
I love this. Excellent weird internet thing.
What's the correct way to sort a Rubik's Cube state?
OK. So I put the slider into a random middle location. Then I zipped it back all the way left as fast as I could. Still not up to competitive speed cubing level! Shucks, golly, gee.
First thought; this could be turned into a really cool password generator
How did the kid who could solve the Rubik's Cube in under 1 min not become an algorithm designer - some genius backend dev?
I blame guitars.
All these kids got bad ass at playing Wonderwall, PHP was just slightly less cool than playing Wonderwall. So for 2-4 years they were sidetracked.
Playing Wonderwall at parties.
But if they had went straight from solving Rubik's Cube in 1 min to O(1) time complexity in a REST endpoint like peak 2-way communications (WebSocket, GRPC) these fuckers would be optimizing LLM embeddings at this point.
Karpathy? No, I want Steve from the Chess club who could recite any J.R.R. Tolkien writing, who has a Runescape character worth $4 million. Fuck LeCunn. Where's Steve?!
STEVE! I'm sorry I laughed at your Pokemon collection. I'm sorry Steve! I'm fucking sorry! PLEASE COME BACK
With all due respect to Steve, under 1 minute isn't that impressive. You can get there just by doing the beginner's method (a handful of different move-sequences) rapidly. The people who really study Rubik's Cube algorithms in depth can do it in a few seconds.
Hahah what are you doing here???
I had a friend - David - he could do it insanely quick. He's basically who I am thinking of in my post since he was also a genius at guitar, and could play beautifully. And he taught me basic PHP.
We spent a lot of time on your site on random Friday nights (him playing guitar) hahah, good times.
More of a yo-yo guy myself. I could walk the dog, pendulum, what-have-you. Around the world if I'm feeling saucy
Also: Gross, wtf happened to it???? If you can't say publicly, just blink 3 times
I remember a TV program showing someone breaking the one minute record for the first time. I could already do it at that point, I'm sure many others could as well.
I'm starting to realize I'm the only one who couldn't.
I think that's why I failed that Leetcode that one time - it was never in the cards
>How did the kid who could solve the Rubik's Cube in under 1 min not become an algorithm designer - some genius backend dev?
Somebody else figured out the algs. The speedcubers just rote memorize them and then practice becomes mostly about execution. (Oversimplifying a little, but I have gotten sub-60 myself with the Roux method a few years ago)
Interestingly I've never managed to pick up programming but learned the cube pretty well (as an adult), and my programmer friend can't seem to figure out the cube at all even with me giving him extra help on top of linking materials I learned from. I suspect it's a very different skillset and we're both weak in one area.
Yeah goes to show why Leetcode is such a problem for so many very good developers.
It's a different kind of thinking.
That said, if that "clicked" for you, you may find yourself surprisingly good at backend - algorithmic thinking shines in crypto, search, and LLMs. Get into Python or Node if you haven't for some random idea (ever wanted to make a web contact form or something?) - the LLMs will set you up for success. If you figured out Rubik's Cube, you will 1000% get it because I know you have the patience and learning ability.
----
There is one algorithm I saw recently on Youtube, the bro pops one of the little cubes off and "cheats" by turning it around manually.
I consider this to be "freestyling" with the Rubik's Cube. Wtf is that all about?
This is very satisfying to play with, top work!
well that's just like, your coordinate system, man
But, why?
structure emerges from chaos at 23,738,673,083,197,685,761 & 34,677,398,788,068,093,945
Took me a hell of a lot more moves than that (30 septendecillion) for structure to emerge from chaos with paperclips.
https://en.wikipedia.org/wiki/Universal_Paperclips
https://www.decisionproblem.com/paperclips/index2.html
True! How did you spot this though? Did you look at every possible position?!?
I bet they entered the scramble U2 D2 R2 L2 F2 B2 or something to that effect. My 9yo loves this pattern.
literally doom scrolling
haha healthiest possible doom scroll though
nice, now sort the list in some interesting way
Cool!
this does permutations of pieces position and orientation
would be cool permutations of moves instead...the visuals would be especially interesting to have as a raw Rubik's simulator
cool!
It would be really funny, and sociopathic, if every state change registered as a browser history entry so I had to click Back 50,000 times to get back to Hacker News.
Oh wow, you don’t do “Open in New Tab” when reading HN? Thanks for the idea, I should really try that, maybe it will help with my infinite open tabs problem.
I think you missed at least a few, can you re-check through them?
At some point though, how many states is too many?
We have massive housing affordability and employment shortage problems, meanwhile here’s a tech elite flouting 4x10^9 states which he doesn’t pay taxes on and most of them will not even get used. Is that really fair?
It's actually about 4x10^19 (exponent 19, not 9).
Imagine being so well off that you don't even notice being off by ten orders of magnitude. Meanwhile, there are people dealing with negative exponents.
Typo, but this just shows the extreme inequity when one cube amasses so many states.
Non-AI posts be like