i'm philip
i like to be at the intersection of computers and humanities
if you want to get in touch, drop me an email
-
Commoditized Social Networking
Meta's Threads is joining the Fediverse, now what?
-
SwiftUI: ScrollView clipping
ScrollView's clipping behavior can be surprising.
-
SwiftUI: Dynamic status bar style
A minimally invasive approach to dynamically alter the status bar style in SwiftUI 2 projects.
-
Obtaining Apple Health Workout Icons
Acquiring the official workout icons used across the Apple Health ecosystem is surprisingly difficult.
-
Pedantic Review: Elgato Thunderbolt 3 Pro Dock
Overly pedantic review of Elgato's Thunderbolt 3 Pro Dock.
-
Developer Diary Excerpts: machinectl auto-login
Circumventing manual password input for fun and profit!
-
Python Quirks: Implicit Return
Python function always have to return something, right? Well, its complicated...
-
Python Tips: Generator unrolling
There are many ways to unroll generators in Python, but which one is the best?
-
Python Tips: Dynamic function definition
Function definition in Python can be considered static, right? Wrong!
-
Python Quirks: Lambdas
Python lambdas are weird and underpowered... But why?
-
Three days of owning a Dell XPS 15 (9570)
Detailed Dell XPS 15 (9570) review and postmortem from the perspective of a previous MacBook owner.
-
Python Quirks: Comments
Performance comparison of various Python comment types.
products
-
Quantile
beautiful workout widgets
repos
-
Python
Adds track change notifications and media key support to cmus.
-
Python
Runtime Python bytecode optimizer. ⚡️
-
CSS
GitHub syntax highlighter color scheme for Pygments.
-
Rust
A MCP3008 sensor driver in Rust.
-
Python
Namespace promotion made easy. ↑
-
Shell
Excuse Me Sir, Do You Have a Moment to Talk About Tiling WMs?
-
JavaScript
Lightweight, route-based and data-type preserving network protocol framework.
-
Python
Lightweight, route-based and data-type preserving network protocol framework.
-
Python
Non-progressive web app.
-
Posts and comments found on my blog.
-
C#
Nifty tool that saves your last clipboard entries for later use.
-
HTML
Landing page for Quantile. 🏃♂️
-
archived
Python
Scrape media right from your terminal with the help of Offliberty.
-
archived
Python
Python configuration files in Python. ¯\_(ツ)_/¯
-
archived
Python
Bury the undead tracks in your Inbox playlist once and for all!
-
archived
Shell
My dotfiles I guess.
-
archived
Rust
A work in progress Bejeweled clone.
-
archived
Python
Python abstraction layer around ScriptingBridge to control iTunes with style.
-
archived
Python
Enumerate all SoundCloud users and save them to a sqlite3 database.
-
archived
C++
Horrible rsync clone.
services
-
rss feed
still using rss? great, here is a feed for ya'