You know what works better than giving tax-credits to property developers, or mandating a few poor-door accessible affordable housing units in a new luxury high rise? Just building affordable housing on public land that's publicly managed.
Cities already own huge swathes of non-park real estate, and can borrow on terms that are much better than anything a property developer can get; the rents in public housing can be set by accountable governments, there's no impetus to evict tenants from public housing to move in deep-pocketed yuppies; public housing can be run on a cost basis, or a subsidy, or even a money-making basis, with the surplus going to build and maintain more public housing.
That also has the side-effect of reducing the number of powerful, rich people who have an interest in distorting the housing market to keep prices and rents as high as possible.
First, social housing could be built at lower cost. The interest rates on government debt are lower than the interest rates on almost any other kinds of financing, including the bank loans relied upon by private developers. Additionally, local governments in many cities already own around a fifth of their city's land, a figure that excludes public parks. It means that, unlike a private developer, municipalities could have zero land acquisition costs in many cases. Savings from lower interest rates, lower land acquisition costs, and the ability to forgo profits could be used to offer new housing at much lower rents.
Second, social housing could be built more efficiently. Both the yimbys and anti-gentrification campaigners seem to agree that private developers will build units at the top end of the market first. But this is not an efficient allocation of short-term construction resources. A municipal builder could redirect those same construction resources towards middle-income housing with smaller square footage per unit and fewer frills and amenities. By starting at the middle-end rather than working through luxury developments first, housing supply is added in a way that addresses the concerns of anti-gentrification campaigners.
Finally, social housing ensures that the public owns the resulting land and housing assets rather than private investors or homeowners. This gives municipalities more flexibility in managing their city's housing stock, ensures that profits (if charged) flow to the public instead of affluent people, and avoids creating even more people who have an interest in blocking further housing development.
Why we need social housing in the US [Matt Bruenig/The Guardian]
(Image: Moses, CC-BY)