The Way Forward

I first popped my head into Academie Duello a little over a week ago. I was looking for used fencing masks to buy on the cheap, as I’m tired of using loaners for Dog Brothers and Krabi Krabong training. They didn’t have used masks for sale (though they sell new ones at a very reasonable price), but naturally we got to talking, and before I knew it I had been offered a complimentary month of training in order to get a feel for the place. Today was my first lesson, and my head is buzzing with new knowledge and ideas.

The obvious question is … do I really need another martial art to study? Well, here’s my path so far …

I started with Chito Ryu Karate, and went as far as brown belt, then played around with a variety of stuff at university, eventually staying with Jiu-jitsu. After university I tried Aikikai Aikido for a little while, then discovered Uechi-ryu, which I stayed with to 2nd dan (and still practice to a limited degree today). I would still be fully committed to Uechi-ryu if I lived in Halifax – maybe that would have been enough to take me to the end of my days. Instead, I moved to Vancouver for career reasons, and at the same time began training with Maelstrom.

Maelstrom is a very different animal from what I was familiar with up to that point. At a given time, they are training at least three very different martial arts. Until my beginning with them, I had only training a single martial art at a time. They have a heavy (though not complete) focus on sticks, swords and knives. It has been my first taste of serious weapons fighting, and I am still surprised sometimes by how different it is from empty-hand. The hard-won gems from previous training (structure, body kinetics and flow, and fast powerful hand technique) are still useful, but with weapons you cannot get away with weak footwork. Weapons change the range game in both the large (hey, they can reach further than I thought …) and the small (that block that so nicely cuts the line of attack does not cut it enough when there is a knife in play). Weapons take away many of the strengths of good structure (an opponent with weak position or structure can still badly hurt you).

And so here I am today. Maelstrom occupies me for about 9 hours a week right now as I try to expand my foundations to meet these new challenges. Academie Duello will require another 2 – 3 hours per week on top of that. My goals are as follows:

1) Develop mental agility. With Uechi-ryu, I had achieved a decent balance of mind/body/spirit. My kata was fast and powerful (though kind of messy), and I could perform with enough presence of mind to process corrections internal and external, and update my technique on the fly. I reached this point because Uechi-Ryu is a small martial art, consisting of 8 kata, plus a handful of bunkai and kumite. I worked it through rote-learning until I nailed it. Once I had it, there was a good mental structure to hang any further exploration and learning on. I need to develop a similar mental structure for fighting, and I’m still trying to figure out what it’s even going to look like. One thing is for sure: it won’t involve any specifics of a martial arts style.

2) Build a strong foundation for footwork. This is a really tough one, because I am not built for agile footwork. My legs are too long, and my feet are too big. Damned if that’ll stop me though. Ironically enough, my current approach here is to play with weaker/lighter postures. Once I get used to floating around, I’ll put the gravity back on and (hopefully) find a new, better middle ground.

3) Develop a deep understanding of position and range. I used to think of this in simple terms: out of range, kicking, punching, elbows / clinch, ground. It is fantastically deeper and more subtle than that, and then weapons get thrown into the mix.

So, do I need another martial art? In the end, the quest is deeper than any specific martial art, but I need experience painted with the broadest strokes possible to get a sense of the new picture that is emerging, and European weapons fighting will provide a new and hopefully useful perspective on it.

Beware! (Or, why I finally started paranthesizing method arguments in Ruby)

I was tripped up by a seemingly innocuous piece of code today. Here was the form of it:

foo = {}
puts foo['bar'] or 'bar'

=> nil #!

I expected to see ‘bar’, but instead I got nothing. After some head scratching, I tried:

foo = {}
puts foo['bar'] || 'bar'

=> foo # that's more like it

Long story short, these two forms of the ‘or’ operator behave differently here because they differ greatly in precedence. Due to the difference in precedence, they bind differently:

puts(foo['bar']) or 'bar'

puts(foo['bar'] || 'bar')

That’s the last straw for me. I’ve always preferred leaving out parantheses whenever possible, and up until now, have considered the comfortable readability to be a win over any possible ambiguity. Precendence wierdness like this is too subtle though.

Review: Practical Ruby Gems

Disclosure: I received a review copy of this book.

Practical Ruby Gems, by David Berube (APress) digs into Rubygems – the Ruby package management system. David presents a quick overview of Rubygems and its usage, then offers an overview of 29 popular gems, and finally shows you how to roll your own.

Overall, this is a solid book. The writing is almost alarmingly to the point – think O’Reilly Pocket Reference style, but it does cover the material reasonably well. There is a pleasant variety in the gems presented, and I saw a few that I wasn’t aware of (like FastCSV) which will definitely be useful to me. Each gem is presented with a short application that carefully balances meatiness against ease of comprehension. I’m happy to report that Practical Ruby Gems is fairly well indexed.

Some of the more complex gems (like ActiveRecord, FxRuby and Ruby on Rails) are given a very thin treatment, and I think that’s fair enough, given the format of the book. ActiveRecord, let alone Rails, is large enough to have its own book. Other than that, my only complaint lies in the amateurish page layout. The transition from prose to sample code is delimited with only a change of font, and sample output is separated from code with a simple horizontal rule. This means that my eye must hunt and peck through the page when I’m skipping around, looking for that particular line of sample code that I need.

I would recommend this book to anyone looking for a high level overview of what’s out there in the way of free Ruby libraries. I will also probably refer to the book if and when I roll my own gems.