kasku.net/blog/2022/11/29

cubing, gatekeeping

Cube Software

This eocross solver is a good example of how you can cut corners when you only implement a solution to a subset of a problem. Compare this code to the full problem in Herbert Kociemba's optiqtm. (If you get compile errors, add -fcommon to the makefile.)

Speaking of cube software, in 2018, Chris Tran announced that he was working on a deep-learning powered computer vision system called argentum for scraping speedsolving videos, proclaiming that "we are entering the end of secrets" and saying his system would "improve everyone and spread the propogation of information to all". As for a release date, he said that it should be completed by about 2019, but that that was tentative. I haven't heard anything about this since, but my hopes aren't high since he's famously someone who hypes things up which end up falling flat. ZZ-CT is the obvious example of something he announced that didn't live up to expectations.

(However he did revolutionise pringles cans, and has made various more serious contributions as well.)

This kind of thing would be cool though, being able to reconstruct solves from videos, with metadata like timestamps for turns, would definitely be useful. Right now there's not really a good way to get those kinds of statistics, so there's probably interesting data analysis that we're missing out on.

People have algsheets on google drive or whatever, that load images from a site's API which generates the images each time you load the page, which is really slow and brittle and doesn't work a lot of the time. It would be nice if you could just input a list of algorithms and generate an html page with them all in. Another annoying thing is that they all use the same svg template with gaps in it...

so I made this, certified gap-free. The algorithm to solve this is F (R U R' U') (R U R' U') (R U R' U') F'.

If you want to replace flaky remote images with files, or want the images for any other purpose, puzzlegen will generate images from algorithms. For example if you put the above algorithm into the "alg" box and use the CUBE_TOP template then you'll get a similar image to my one. Even though I know this exists now, it probably still makes sense to finish my algsheet generator. It would be a bit less annoying than manually dealing with individual images, and I'd end up writing a cube implementation as a side effect, which I could use for other things.

Gatekeeping

While I'm on the subject, Jayden McNeill's Why the collin burns OLL sucks video is interesting to me. Specifically, he says

If you are uninitiated with OLLCP, or you don't know how to recognise CP because you've never learned CLL on 2×2, COLL on 3×3, CMLL for roux, anything like that, if you don't know any of those algsets and have never learned them, this video's gonna be entirely useless.

which is wrong, since this video is actually a good introduction to the topic, and provides a self-contained way to take advantage of it. You can absolutely watch this video with zero background in this and learn to do the "trick" he's demonstrating. It's a weird thing to say, I think maybe it's because it's a practical thing that's positioned like it's based on some kind of theory, but you don't actually need to know that theory to do the practical thing.

Just because something works because of a particular concept, it doesn't mean that you have to learn that concept first. It's a less "block-based" way to learn, if you learn things without obsessing over necessary prerequisites, and make connections between concepts over time.

After seeing this trick, I learnt that CP existed, which made me start noticing it and paying conscious attention to it, which made me better at recognising it to the point where it "clicked" — i.e. I made connections between what I had watched and the things I was doing on my own. This video was useful to me the first time I saw it, and once I understood CP better I understood the content of the video better too, but to say the video is entirely useless to anyone who doesn't have some arbitrary requisite experience is simply incorrect.

If I'd believed him, I would be worse off for it. Anyway, it's a cool trick, watch the video.