In which direction should bone axes be oriented?
In Blender the Bone's local Y-axis always runs along the bone's longitudinal axis (from head to tail). I believe this convention comes from the definition of the bvh format. 

Regarding the orientation of the local x and z axes a typical approach seems to be to to orient all bone's local x axes along the global x axis. However this does only work for bones which have their local Y axis oriented mostly along the global Z-axis. 

So this general rule does no longer work when you have a character that is in T-Pose for example. In that case i found that a common approach is to orient the local z axis along the global z axis. 

I have made my own convenience rule of thumb out of this: 

for mostly vertical bones: orient their local x axis towards the global x axis



for mostly horizontal bones: orient their local z axis towards their global z axis



These rules of thumb worked for me in most cases so far. The only wonky situations are where a bone is half vertical half horizontal. I think i then used the same orientation as the other bones of the limb have.