I'm a software developer in Victoria, BC. Professionally I mostly make iOS and web apps and do system admin / devops (and dabble with Android). For fun, I mostly write Ruby and C and Swift. My personal site is samhuri.net and you can find me on Mastodon at @sjs@techhub.social.
Most of my recent open source work is in Ruby and Swift. I'm a maintainer on grape_logging and grape-active_model_serializers. On the Swift side I made SJSAssetExportSession, a modern version of SDAVAssetExportSession for Swift 6 and strict concurrency, AsyncMonitor for monitoring async sequences with Swift concurrency, and the now-Sherlocked NotificationSmuggler for embedding strongly-typed values in notification user-info dictionaries.
Back in the day I made strftime, a strftime implementation for JavaScript that somehow picked up 650+ stars, and format, a printf-like formatter for JS. In my more masochistic days I went cross-eyed reading Intel's mod-r/m docs and wrote this x86 compiler in Ruby. The last month that I lived out in Shawnigan Lake, I read The Little Schemer and wrote a little Scheme in C, called lake. My website uses this old thing, gitter, which is a GitHub API client for Node and browsers and somehow still works.
I make tiny fixes and improvements to other open source projects now and then. And I've contributed dozens of typo fixes, which I'm possibly most proud of.






