Why not just flat out employ them? Since there is a demand for this work to be done, hire these people.
Because they are usually make-work jobs. We don't actually want 10+ million people picking up garbage on the highway or turning big rocks into small rocks.
In theory, these make-work jobs should pay
less than minimum wage so people have a reason to search for real employment. It would also be ideal if the make-work jobs had some kind of usable training. Ideally, welfare would be something similar to the military. You learn discipline, you get in shape, you follow orders, you use computers, you read maps, you shoot guns, you learn gun safety, you wake up early, you learn hand to hand combat, you learn to speak proper English, etc. Military people
not scarred by war make excellent employees. It's truly unfortunate that both political parties are determined to get involved in every conflict that happens around the world.
It would be a nice change if we used our military for good instead of... whatever. Instead of having 100k troops in Iraq, why couldn't we use those same 100k people providing support after hurricanes? People would say that's what the national guard is for. Fine, then let's have people be part of the national guard while receiving welfare. If you look at wiki's page for the national guard, you'll see it morphed into its current form in 1933, during the depression. Why can't we do that right now?
It's a tricky problem because anything the government does will slowly turn into a disaster. Governments have the same nepotism of private organizations, but there's no risk of bankruptcy, so they get worse every year without consequence.