Improving Software for Society