I prefer a bare:
if ($canDo) {
}
instead of something like:
if ($canDo == true) {
}
Where a conditional is at all tricky, I comment it either explicitly with a comment, or implicitly with a good variable name. I also try to be very explicit when setting a boolean variable, preferring:
my($canDo) = !0;
to
my($canDo) = 1;
The latter is confusing; why assign a discrete value to a boolean?
Given Perl's many meanings to "evaluates to true", though, I can see why being more explicit is more practical in the long run. Still, one of the things I most like about Perl is its natural linguistic fluidity, and I prefer in my code to stick to that (leaving the comments and variable names to further clarify things, if needed).