Divmod and Twisted have instituted a fairly
rigorous development process over the last few months. I'm very happy
with the results, but there have been several objections to the strict
enforcement of apparently useless or trivial parts of the policy, especially
as related to small or mechanical changes.
When I was a wee lad, I took violin lessons according to the Suzuki Method.
In the Suzuki Method, the first thing you do in your violin lessons (if you
are a 4-year-old, anyway) is make a "violin" out of a cracker jack box and a
ruler. For months, I did nothing but sit, then stand, hold the
cracker jack box, extend it outward, and place it under my chin, hold it
there, remove it, tuck it under my arm, and sit back down. I had to draw a
diagram, on a poster, which showed where my feet were supposed to go while
performing these steps. Then I stood on that diagram, placing my feet in the
appropriate positions.
You are not allowed to use a real violin until you can get every step of
this exactly correct. As a kid, that was pretty cool. When you have
progressed to the point where you are allowed a real violin, you get to open
the box and eat the cracker jacks. Parents, however, were often unhappy with
this particular trajectory of violin training. Their 4-year-olds were eating
cracker jacks six months after starting violin lessons, and students in
other methods (read: their hypercompetitive
co-workers' children) were playing Twinkle Twinkle Little Star on their
shiny new violins at Christmas and Thanksgiving, much to the approval of the
assembled family.
Of course it looks ridiculous to results-obsessed American parents to be
messing around with crude drawings of your feet and tiny cardboard boxes
when what you're ostensibly doing is learning to play an instrument. Why not
move on to the instrument directly and focus on the important parts
of playing, like fingering and tone and harmonics and sight-reading and
so-forth?
The Suzuki Method was invented by a japanese fellow, and it follows the
japanese sensibility that requires even trivial tasks to be performed
according to extremely rigid rules. Have you ever watched a sushi chef
prepare a meal? The next time you do, observe what they do when they wash
their hands. They will always position a bowl of water in exactly the same
position. They will always dip their hands in the water the same number of
times. The knife will always be placed in the same position, picked up and
put down at the same exact moments before and after slicing the fish. I
don't know how to prepare sushi myself, but I've observed the pattern at
every sushi bar I've sat in, from San Jose to Austin to Florida.
There is a reason why we focus on the small details of the development
process. If there is an obviously correct way to do something, it should be
done that way. Why expend effort on every method trying to decide whether it
"should" be documented? Document everything. Why create elaborate rules for
what "should" be tested? Test everything.
Those kids who were playing "twinkle twinkle" six months before I was? Well,
I got to play with them later, in school and community orchestras. Some of
them even became quite good violinists. However, there were certain
differences you can easily pick up on. You can spot a Suzuki student because
they sit straight; they hold the bow properly and lift the violin with their
chin, not with their arm. A less methodical violinist will slouch, hold the
violin wrong, hold the bow at an angle, and generally require more effort to
play even simple songs. In fact, they will especially require more
effort on simple songs, because the Suzuki student has every automatic
aspect of playing completely ingrained in their muscle memory. No conscious
thought is expended on the things that don't require it.
Not all the first-chair violinists I've played with learned on the Suzuki
method, but they all know how to hold the instrument correctly without
thinking about it.