Not a (serious) juggler, but I first heard about siteswap in a roundabout way, through this github repo that collects quotes about notations.
It has an excepted quote from Wright that blew my mind:
> So we decided to invent a notation for juggling. Now this didn’t happen overnight—this took some considerable time—and our early attempts were very poor. They were inadequate to describe many of the tricks we thought a notation should be able to describe. And eventually we hit on a scheme that seemed to work. And we used it to write down loads of different juggling tricks that we knew.
> We discovered that if we arranged those tricks in just the right way, they fell into a pattern. There was an underlying, unsuspected structure. As long as you had the courage to leave gaps. And this goes back to things like the Periodic Table, when Mendeley was writing down all the elements—he realized that if you arranged them all according to function, then there were gaps, and that then predicted the existence of chemical elements.
> Well, we were predicting the existence of juggling tricks. And it worked! We actually found juggling tricks that no one had ever done before.
I remember reading somewhere that in practice this failed -- I think there was a programming language where there all possible syntax mapped to a valid program, which meant that true syntax errors were much harder to find.
Canonicalization versus error-correcting codes; ideally, a programming language syntax should be such that the Hamming distance beteen any two valid programs is at least 2, for the same reasons that you want parity bits on RAM, even (especially) if you're trying to encode the data stored in that RAM in a way that makes every bit pattern a valid whatever-you're-encoding.
Edit: basically, communication from the programmer to the compiler is a lossy channel, and needs error-detection, but human brains don't do parity codes well, so syntactic redundancy is the way to go.
It has an excepted quote from Wright that blew my mind:
> So we decided to invent a notation for juggling. Now this didn’t happen overnight—this took some considerable time—and our early attempts were very poor. They were inadequate to describe many of the tricks we thought a notation should be able to describe. And eventually we hit on a scheme that seemed to work. And we used it to write down loads of different juggling tricks that we knew.
> We discovered that if we arranged those tricks in just the right way, they fell into a pattern. There was an underlying, unsuspected structure. As long as you had the courage to leave gaps. And this goes back to things like the Periodic Table, when Mendeley was writing down all the elements—he realized that if you arranged them all according to function, then there were gaps, and that then predicted the existence of chemical elements.
> Well, we were predicting the existence of juggling tricks. And it worked! We actually found juggling tricks that no one had ever done before.
(https://github.com/hypotext/notation)
What's so cool is that you can predict gaps in knowledge by developing a notation to (honestly) describe what you do know.