Is it ok to pay below minimum wage, if the prisoners are gaining useful skills? No. It's not ok.
1. We have no system of accountability measuring worth of useful skills against amount under minimum wage the prisoner is getting paid. Is upholstery worth 3$ less an hour, or 4$? Are they actually learning upholstery? How do we know? Is upholstery actually a valuable skill? How do we know?
2. We have not allowed other people to be paid less than minimum wage, why prisoners? "Useful skills" is not a valid excuse (except for interns sometimes, which I also disagree with). I don't agree that it should be considered part of the punishment as the jury and judge had no say in the amount under minimum wage the prisoner would be paid. There's no transparency or accountability.
3. It doesn't make economic sense. Why pay someone minimum wage to upholster, when you can buy the work on the cheap from the prisons? The prisons have thus evaded our imposed market controls and have an unfair advantage.
4. Prisoners are humans and (generally) US citizens. It is not cool to devalue them by paying them less.