soft is hard