When ever we do a job for which we deserve a badge, why aren't we awarded one as soon as we do it. Is it a bug or something? Or is some algorithm not well developed? Just curious, that's all.
Because there are more important things for the system to do immediately than award badges. Badges are awarded by tasks that are scheduled to run at periodic times.
The algorithms are fine; the only problem is some people's need for immediate gratification. Learn some patience - waiting a few hours for a badge won't make you ill. Badges are meaningless in the global picture - they won't feed the hungry, cure the ill, or make the world a more peaceful place. If you're finding yourself so concerned with them you can't wait a day, your priorities are in the wrong place.