diff options
Diffstat (limited to 'posts/2015-04-02-juggling-skill-tree.org')
-rw-r--r-- | posts/2015-04-02-juggling-skill-tree.org | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/posts/2015-04-02-juggling-skill-tree.org b/posts/2015-04-02-juggling-skill-tree.org new file mode 100644 index 0000000..79b35ad --- /dev/null +++ b/posts/2015-04-02-juggling-skill-tree.org @@ -0,0 +1,28 @@ +#+title: jst + +#+date: <2015-04-02> + +jst = juggling skill tree + +If you have ever played a computer role playing game, you may have +noticed the protagonist sometimes has a skill "tree" (most of the time +it is actually a directed acyclic graph), where certain skills leads to +others. For example, +[[http://hydra-media.cursecdn.com/diablo.gamepedia.com/3/37/Sorceress_Skill_Trees_%28Diablo_II%29.png?version=b74b3d4097ef7ad4e26ebee0dcf33d01][here]] +is the skill tree of sorceress in +[[https://en.wikipedia.org/wiki/Diablo_II][Diablo II]]. + +Now suppose our hero embarks on a quest for learning all the possible +juggling patterns. Everyone would agree she should start with cascade, +the simplest nontrivial 3-ball pattern, but what afterwards? A few other +accessible patterns for beginners are juggler's tennis, two in one and +even reverse cascade, but what to learn after that? The encyclopeadic +[[http://libraryofjuggling.com/][Library of Juggling]] serves as a good +guide, as it records more than 160 patterns, some of which very +aesthetically appealing. On this website almost all the patterns have a +"prerequisite" section, indicating what one should learn beforehand. I +have therefore written a script using [[http://python.org][Python]], +[[http://www.crummy.com/software/BeautifulSoup/][BeautifulSoup]] and +[[http://pygraphviz.github.io/][pygraphviz]] to generate a jst (graded +by difficulties, which is the leftmost column) from the Library of +Juggling (click the image for the full size): |