The builder's path
For: Python developers using uv can't cap how much disk its cache uses.
“The unexamined life is not worth living.”
ὁ δὲ ἀνεξέταστος βίος οὐ βιωτὸς ἀνθρώπῳ
Routes to a solution
Each route is a different kind of journey, with real people and organisations to contact at each step, starting with those in every country.
Step 1
Build in the open
Publish the code and invite contributors from the community.
Let the people a free tool helps fund its maintainer directly.
Raise and spend money in the open for a community project.
Grants for open source that makes the internet better.
Network of civic tech groups in many countries; find the one near the problem.
Step 2
Fund the maintainers
Sponsors, collectives and open source grants.
Let the people a free tool helps fund its maintainer directly.
Raise and spend money in the open for a community project.
Grants for open source that makes the internet better.
Network of civic tech groups in many countries; find the one near the problem.
Step 3
Get it adopted
Civic tech groups and public bodies take it up.
Y Combinator's free course and co-founder matching.
Raise and spend money in the open for a community project.
Network of civic tech groups in many countries; find the one near the problem.
Volunteer data scientists working with social-sector organisations.
Ideas, sources and tools for this problem, from first interviews to funding.
how the cache is laid out and how clean and prune work
need to agree a design before code
Starter prompt
Built from this problem's brief. Paste it into Claude or any AI assistant.
Help me design and build a first working prototype for this problem in Anywhere. Problem: Python developers using uv can't cap how much disk its cache uses. Who it hurts: Developers and CI administrators who use uv, a widely used Python package manager. The moment it hurts: When a laptop or build server runs out of disk and the uv cache turns out to be tens of gigabytes. What people do today: People run uv cache clean or uv cache prune by hand or from their own scripts. Why it is still unsolved: The issue is labelled ‘needs design’; evicting entries safely while other uv processes use the cache is not trivial. What solved looks like: A design note and prototype for an opt-in size limit that removes least-recently-used entries after an install, without breaking other uv processes running at the same time. Tested by filling a cache past the limit and checking it ends under the limit while recent packages still install offline. Where: Anywhere First, list what you would need to learn from the people affected before building, as interview questions. Then propose the simplest version that would help, the screens or messages it needs, and the data it would use. Keep it cheap to run, accessible, and respectful of people's privacy. Flag anything you are unsure about instead of guessing.
Talk to the people who live it before you build.
“In the fields of observation chance favours only the prepared mind.”
Dans les champs de l'observation le hasard ne favorise que les esprits préparés.
Get a working version in front of people fast.
Using AI is not cheating. Every tool carries the work of the people who made it, and using it well is how knowledge has always moved forward. The thinking, the care for the people who live the problem, and the judgement are still yours.
“The Analytical Engine weaves algebraical patterns just as the Jacquard-loom weaves flowers and leaves.”
Open data that fits this problem.
“You cannot step twice into the same river.”
Tools matched to what this problem needs.
“Tasks are achieved by effort, not by wishing.”
उद्यमेन हि सिध्यन्ति कार्याणि न मनोरथैः
udyamena hi sidhyanti kāryāṇi na manorathaiḥ
Ship it responsibly, and find help and funding.
“Act, keeping in view the welfare of the world.”
लोकसंग्रहमेवापि सम्पश्यन्कर्तुमर्हसि
lokasaṅgraham evāpi sampaśyan kartum arhasi
Kit written for this problem from its brief; every link was checked. Links go to each provider's own site. Zetema is not paid for any listing.