eli knaap
banner
knaaptime.com
eli knaap
@knaaptime.com
urban planning & public policy prof @ UC Irvine | core dev @ PySAL & QuantEcon | urban social science & spatial data science | open source

https://knaaptime.com
I also plan to 1) make the repository public and 2) re-release the code under a more permissive license once we're a bit further into the publication process
November 26, 2025 at 5:50 AM
it's *wild* to finally see this thing compiling to pdf--and clocking in at ~600 pages 😵

digital version still works better for interactivity, but if anyone wants to offer feedback, please share

www.dropbox.com/scl/fi/861z6...

(I'm aware of lingering formatting issues, especially tables)
www.dropbox.com
November 26, 2025 at 4:58 AM
Reposted by eli knaap
My third point is that the large rise in Black unemployment over the past few months is a reminder that aggregate demand has important distributional consequences. Strong labor markets disproportionately help less privileged workers, weaker labor markets disproportionately hurt them.
November 25, 2025 at 9:18 PM
ah, ok, so i think the issue is when you fire off a `df.plot()` (or `gdf.plot()`) it only emits the matplotlib *axes* object, and quarto needs an actual Figure object to recognize a figure. So you need to force the cell to emit a *figure* by doing `pyplot.show()` if no explicit pyplot in the cell
November 23, 2025 at 2:41 AM
instead i get

😑
November 19, 2025 at 5:37 PM
lol omg ffmpeg. 100% all of this
November 19, 2025 at 5:32 PM
Reposted by eli knaap
November 19, 2025 at 5:17 PM
for the longest time i thought the blocks were placeholders for the different characters refusing to render, as opposed to the actual troublesome characters themselves 😂
November 19, 2025 at 5:19 PM
i kept getting unicode errors in the log and was convinced it was emoji-related for awhile; kept changing engines to xelatex, lua, tectonic then finally realized its the *block* characters, █ (U+2588), and there's like 1k of them at different widths
November 19, 2025 at 5:17 PM
often people resort to 'data driven neighborhoods', i.e. geodemographics or regionalization algos where 'neighborhood' means an area of relative homogeneity across many social indicators--but thats not really the same as officially demarcated boundaries. Maybe see oturns.github.io/geosnap-guide/
A Guide to Geosnap
oturns.github.io
November 9, 2025 at 11:27 PM
depends on what you mean by "actual neighborhoods". Usually there's no such thing. There are special cases like chicago or pittsburgh where 'neighborhood' means something historically so there are established boundaries but in most places there's no "real" delineation (so no official data to draw)
November 9, 2025 at 11:24 PM
(that said, still very proud of california for having opportunity analysis part of the formal policymaking process)
November 2, 2025 at 11:48 PM