As others have said, the best way I have come across so far is to assign migrants as they arrive. Once assigned leave them be. Do that for enough fortresses and you'll get a vague idea how many dorfs you have doing what.
If some emergency happens though (massive military losses, miners crushed under mountain, etc.) I look through the no job guys bottom of the list to the top and examine them for the stats I want for the position. If it's just job replacement I just find some random Urist whose labors are set to something I know I have more than enough of (often mechanics, farmers, or gem workers) and reassign their labors.
Replacing military, I just find the idler with the best combat stats (regardless of profession), make sure they aren't something like master or higher in their job, and then draft them. Afterward if I notice a slacking production from that area, I'll assign some random mechanic or jeweler to the position. The guys I'd be hesitant to draft are good weapon or armorsmiths, but even they can't avoid Uncle Sam's call if their stats are good enough. They just have a chance of being released from service next migrant wave.
I honestly rarely used Therapist. Though I have used it and do see the appeal, and I don't doubt that the Therapist interface is easier to use. It's just by the time Therapist came out I already knew the DF interface like the back of my hand. I found it easier to work with the DF interface that I already knew instead of working with the Therapist interface I was unfamiliar with.
Maybe I'm just weird.