David Foster's Projects
Optional static typing for Python 2 and 3 (PEP484)
Small fast HTTP forward proxy in Go.
Namecheap DNS Updater client (Basic)
Moves old emails from one IMAP mailbox to another.
Conjugates Japanese verbs and adjectives.
Allows scripts to send email to a preconfigured address.
Python Enhancement Proposals
A Python type checker and linter that just works.
Visualizes Python module dependencies.
Barebones Python app that can be submitted to the Mac App Store.
Source code for python.org
Discount (For Ruby) Implementation of John Gruber's Markdown
Renames files in bulk using regular expressions.
Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.
Set up your GitHub Actions workflow with a specific version of Poetry
Access PHP stream objects by URL.
SublimeREPL - run an interpreter inside ST2 (Clojure, CoffeeScript, F#, Groovy, Haskell, Lua, MozRepl, NodeJS, Python, R, Ruby, Scala, shell or configure one yourself)
Tic-tac-toe game written in Idris.
iOS app that provides driving directions which avoid the WA-520 toll bridge.
trycast parses JSON-like values whose shape is defined by TypedDicts and other standard Python type hints.
Experiments in typechecking Vue using TypeScript.
Collection of library stubs for Python, with static types
Work related to PEP 484: typing.py and typing_extensions.py (both released via PyPI) and issue tracker for type system bugs/features.
A translation assistant for reading Japanese text quickly.
Refreshes all your hostnames on no-ip.com
Python HTTP library with thread-safe connection pooling, file post support, sanity friendly, and more.
Reduces the byte size of a video file by reencoding it at half width and height.
An archiving HTTP proxy and on-disk archival format for websites.
Syncs a YouTube music playlist with iTunes.