Why Your Building Codes Keep Failing the People They Claim to Protect
I spent twelve years working on municipal zoning reviews before I stopped pretending the system was broken and started understanding it was doing exactly what it was designed to do. The framework Jan Tarrants describes isn't a theory you apply to architecture. It's a diagnostic tool that reveals the power structure already sitting underneath every building permit you've ever stamped. Most people encounter this lens through academic papers and never actually use it on a real site plan. The radical part isn't the analysis itself. It's what happens when you stop treating architecture as aesthetic or functional problem-solving and start reading every floor plan, setback requirement, and parking ratio as a political document written in concrete. Tarrants' core argument is straightforward but uncomfortable. Architecture doesn't reflect power. Architecture is power made physical. When a city mandates minimum parking spaces for a mixed-use development, that isn't a transportation decision. That's a decision about who gets to occupy space and who gets pushed out. When a historic district overlays restrict renovations, that's not preservation. That's a boundary enforcement mechanism dressed up in heritage language.
I ran into this directly in 2019 when I was reviewing a proposal for an affordable housing complex in a suburb north of downtown. The engineering files were clean. Fire lane access met code. Setbacks were within range. What wasn't in the files was the parking minimum of six spaces per unit combined with a floor area ratio cap that made the project financially impossible to build at the required affordability levels. The developer walked away after three months of back-and-forth. The land sat vacant for four years. Then a single-family subdivision went up, which was zoned by right with no review process. The workaround I used wasn't heroic. I pulled the municipal code sections that allowed for parking reductions in transit-adjacent zones, verified the transit corridor designation on the county map, and resubmitted with a variance request citing the reduced demand. It added six weeks to the timeline. The units got built. This isn't a triumph. It's evidence of how the system actually operates. Here's what the literature doesn't emphasize enough. The lens works best when you apply it to your own objections, not just other people's proposals. I've watched planners use Tarrants' framework to tear apart a neighbor's NIMBY argument while quietly ignoring identical power dynamics in their own department's standard review checklist. The uncomfortable truth is that every zoning administrator is making political decisions hourly. The question is whether they're aware of it.
Another counter-intuitive finding from practical application: architectural power structures are most visible in the documents people consider boring. Site drainage plans reveal more about class exclusion than any facade design ever could. A retention pond requirement that demands three feet of freeboard effectively raises construction costs by fourteen to eighteen percent on a typical residential project. That margin determines whether the project targets market-rate tenants or low-income residents. The civil engineer writing that specification rarely thinks about housing policy. That's precisely why the specification functions as housing policy. If you want to actually use this lens rather than just cite it, here's a practical workflow that took me about two years to refine. Start with the zoning ordinance, not the design. Read the conditional use amendment section before you look at a single rendering. The amendment language will tell you what the jurisdiction considers risky enough to require discretionary review. That list is your power map. Every item on it represents a category of development the community has decided needs supervision because it might change something about the neighborhood's character or composition.
Get the Full Details

Then pull the comprehensive plan and compare it to the actual zoning map. The gap between them is where the real decisions live. Most comprehensive plans contain language about housing diversity and economic inclusion. The zoning maps in nearly every municipality I've reviewed contradict that language through density restrictions, use limitations, and dimensional requirements. Documenting that contradiction takes approximately two hours with an GIS overlay and a spreadsheet. When you find a project that sits within the formal code requirements but still produces exclusionary outcomes, you've located the mechanism. That's the work. Not the rhetoric around it. There are significant limitations to this approach that I need to state plainly. The lens can become self-validating if you enter every analysis expecting to find power manipulation. I've seen researchers produce elaborate critiques of municipal codes that turned out to be structurally necessary safety provisions misread as exclusionary. A twenty-foot side yard setback in a fire-prone zone isn't class warfare. It's wildfire containment. The trick is developing the discipline to distinguish between legitimate safety or infrastructure requirements and requirements that primarily function as exclusion devices.
The second limitation is scale. This lens excels at the site plan and zoning ordinance level. It becomes less useful when you're analyzing national housing policy or regional transportation funding decisions. The mechanisms of power operate differently at those scales. You'll get better results combining this framework with urban political economy analysis rather than relying on it alone. For implementation, you don't need special software. A PDF reader with annotation capabilities, the municipal code in editable format, and a basic spreadsheet is sufficient. I've used Google Sheets with conditional formatting to flag discrepancies between comprehensive plan language and zoning text. The entire audit of a mid-sized city's housing zoning framework took me three weekdays. If you want to go further, pair this with building cost estimation data. When you can show that a specific code requirement adds approximately forty-seven dollars per square foot to construction costs, you're no longer making a political argument. You're presenting a quantified impact. Decision-makers respond differently to that.
The material isn't freely distributed in a single accessible source. Tarrants' core arguments appear across several peer-reviewed articles and conference presentations in planning and architecture journals. The most complete articulation I found runs through their work on how building codes function as de facto immigration policy at the municipal level. Search for their publications through academic databases. University libraries with planning program access will have the relevant issues of journals like the Journal of the American Planning Association and Environment and Planning D. What I can tell you from personal experience is that applying this lens changes how you read every built environment you encounter afterward. You'll look at a strip mall and immediately see the parking minimums, the signage restrictions, the use separation buffers, and the delivery vehicle requirements as a coordinated system of behavioral regulation. That shift in perception is the actual payoff. The policy analysis that follows is secondary. The most useful thing this framework gave me wasn't analytical. It was disciplinary. It stopped me from accepting code compliance as a moral endpoint for development review. A project that checks every box on the checklist isn't necessarily a good project. It's just a legal one. Those are two different conversations, and mixing them up is how exclusionary outcomes persist in jurisdictions that prides themselves on fair process.

I keep a running document of code requirements I've encountered and their real-world distributional effects. Not because it's publishable. Because I forget otherwise, and forgetting makes complicity easier.