Saturday, September 29, 2012

Good judo clubs in Ontario

The list of athletes on the Ontario judo team makes for interesting reading. Some clubs are very well represented; others, not so much. If you are looking for a high-quality judo club in your town, you would do well to find one that produces top judokas, and the list makes it very clear where they are coming from.

Both of the clubs in Kitchener, Asahi and Kaizen, are well represented with 11 and 14 athletes, respectively.

Saturday, September 22, 2012

Camp Budokan

This looks interesting.

Camp Budokan is a week-long all-ages day camp focused on judo instruction, with an impressive roster of coaches. The website itself doesn't give dates, but according to the Judo Ontario website, Camp Budokan was run Sunday July 29 to Saturday August 4 in 2012.


Looks like a good bet for next summer.

Tuesday, September 18, 2012

Judo going well

After a lot of to and fro about getting back into martial arts, I finally got my act together after Labour Day. On the 4th of September, I began training at Kaizen Judo Club in Kitchener. Today, I had my fifth lesson.  



Things are going well. I'm studying with with a good group of other beginners who started around the same time, and we are learning a lot together. The early classes spend a lot of time on breakfalls, with a few basic techniques (foot-sweeps, hold-downs) occasionally included. It's a fairly slow ramp up, but I appreciate it. If they threw us right in among the more advanced students, we'd just get frustrated (not to mention exhausted), and we could well get hurt if we didn't know how to fall properly when thrown.

If everything keeps going well, I should earn my yellow belt before the end of the year.

Onward!

Chasing Mavericks

Chasing Mavericks is a film about one of the world's greatest surfing spots, back when it was still obscure, almost a myth. Jay Moriarty (Jonny Weston) is a young kid who's desperate to ride it, and Frosty Hesson (Gerard Butler) is the gray-haired voice of experience who discourages him on account of the dangers, but finally agrees to train the kid to ride the biggest of big waves. The trailer's a real treat and hints at some dramatic depth on the home front.


 The film opens October 26th.

Saturday, September 15, 2012

Judo results are well distributed

In the 2012 Olympics, there were 14 judo events -- seven weight classes for men, and seven for women -- for a total of 42 medals being awarded. Yet no country won more than seven of them, including Japan, the country where the sport was invented. France, hardly thought of as a judo superpower, did just as well. And eighteen countries managed to win something. That impresses me; judo is a very international sport.

Canda, for what it's worth, picked up one medal. Antoine Valois-Fortier won bronze in the men's 81kg class.

Sunday, September 9, 2012

Hansel and Gretel: Witch Hunters

Looks like someone in Hollywood found another 60 megabucks between the couch cushions, and used it to remake a fairy tale as an action movie: Hansel and Gretel: Witch Hunters is due out in January. If Van Helsing was your thing, this one's for you.

Saturday, September 1, 2012

A checklist for code reviews

A few years back, Atul Gavande, an American surgeon, got a lot of press from a study that showed dramatic reductions in deaths and complications from surgery when surgical teams instituted simple checklists. Death rates dropped from 1.5% to 0.8% and serious complications fell from 11% to 7%.

Checklists are not about creativity; they don't help you make dramatic insights. Instead, they're about consistency; they make sure you don't forget the simple, boring stuff. And some of the simple boring stuff is really important.

We in the software industry can use checklists as part of code reviews and inspections. This list covers the major concerns:
  1. (reuse) Is there already code that does something similar? Why is this code not reusing the existing work, perhaps with modifications? 
  2. (correctness) What has been done to verify that this code produces correct results? In particular, what parts of it are verified by automatic tests? 
  3. (clarity) If the purpose of this code or its implementation is obscure, where is it explained?
  4. (documentation) How widely is this code used? Is its documentation appropriate to the breadth of use? 
  5. (data volume) How large a volume of input is this code expected to process? Are the algorithms and data structures appropriate to the task? 
  6. (memory use) Does the code allocate memory? Who takes ownership of it, and how will it eventually be freed? 
  7. (error handling) How does the code report errors or unexpected conditions? Does it propagate error reports upward from code it calls? 
  8. (concurrency) Does this code execute concurrently? What has been done to avoid memory corruption and unnecessary exclusion? 
  9. (execution efficiency) Does this code need to execute quickly? What has been done to ensure it does so? 
  10. (storage efficiency) Does this code need to use storage parsimoniously? What has been done to ensure it does so? 
  11. (security) Does this code access or produce sensitive information? What has been done to keep this information secure? 
  12. (dead code) If this code replaces other code, has the older code been removed?
Checklists are by no means new in the context of software development. Their use is a standard part of formal software inspections as described in Software Inspection by Gilb and Graham. But in my experience, they are rarely (as in, practically never) used in industry. They're a good idea that should be used more widely.