Open Source Contributions

Building, testing, and sharing tools people can own.

← Back to Home

Why Open Source?

Today, we have unprecedented access to information and creativity. Yet much of modern technology remains closed, controlled, and difficult for everyday people to truly own.

I believe in building and supporting open systems — tools that anyone can use, modify, and extend — because true empowerment comes from understanding and ownership.

Merged upstream

Contributions to the wider community

Accepted work in open-source projects beyond my own repositories.

RISC-V · Unified Database

Made LD/SD definitions depend on XLEN

Merged

Corrected the machine-readable ISA definitions so ld and sd are defined by I on RV64 and by Zilsd on RV32.

  • Updated both doubleword load and store definitions.
  • Passed Unified Database schema validation across the architecture files.
  • Merged into the official RISC-V Unified Database on August 20, 2026.

GUN · peer-to-peer database

Added audio to the browser streaming example

Merged

I extended GUN's basic browser streaming example so peers could share microphone audio alongside video, making the example a more complete demonstration of real-time media over GUN.

  • Added audio capture and playback to examples/basic/stream.html.
  • Contributed 53 lines to the official example.
  • Merged into the official GUN repository on July 25, 2025.

GUN · graph database

Reproduced a late-subscription sync gap

Merged

I turned an intermittent synchronization problem from real-world use into a repeatable PANIC regression test. The test creates a relay, writes a dynamic index from one browser, starts a second browser later, and verifies that the initial .map().on() subscription receives every indexed record without a reload.

  • Added a 177-line automated browser test and configurable load controls.
  • Documented the load-sensitive results across the repository build and published release.
  • Merged into the official GUN repository on August 1, 2026.

Submitted upstream

Work under review

Current patches and pull requests submitted to upstream projects. When accepted, they move into the merged section above.

GUN · SEA encryption

Preserved raw strings during decryption

Open PR

Added an opt-in skipParse path to SEA.decrypt so JSON-looking plaintext can be recovered exactly as encrypted without changing the default parsing behavior.

  • Updated the canonical SEA bundle, extracted decrypt module, and TypeScript declarations.
  • Added regression coverage; the upstream SEA test suite passes.

RISC-V · Glossary

Generated an extension-name reference from UDB

Open PR

Added the requested abbreviation-to-long-name reference for RISC-V extensions, generated from Unified Database metadata instead of maintaining a second hand-written list.

  • Generates the reference from current UDB extension metadata.
  • Keeps the generated AsciiDoc committed so normal glossary builds remain standalone.

libimobiledevice · build system

Fixed Python 3 discovery on systems without a python command

Open PR

Fixed Autoconf ordering so systems that provide python3 but not python can reach Automake's Python 3 discovery before the Python development check runs.

libimobiledevice · CI

Removed obsolete distutils use from macOS CI

Open PR

Replaced the macOS workflow's explicit distutils.sysconfig imports with Python's supported standard-library sysconfig module.

libimobiledevice · documentation

Corrected the LGPL license-file reference

Open PR

Corrected the README so its LGPL 2.1 reference points to COPYING.LESSER rather than the GPL text in COPYING.

libimobiledevice · Debian/Ubuntu docs

Removed an obsolete libtatsu source-build note

Open PR

Removed the stale instruction saying libtatsu-dev must be built from source now that it is available from current Debian and Ubuntu repositories.

Debian · PulseAudio

Fixed stale README.Debian configuration guidance

Patch sent

Submitted a Debian-native patch removing the stale reference to /etc/default/pulseaudio while preserving the valid client.conf guidance.

This is a living record. New upstream submissions are added while they are under review and moved to “Merged upstream” when accepted.

Community participation

Learning and contributing in public

Public discussions, field reports, and hands-on learning within open communities.

Debian · RISC-V community

Shared installation research across emerging RISC-V boards

Mailing list

I joined Debian's public RISC-V discussion around installing mainline Debian on the StarFive VisionFive 2, comparing the effort with my Sipeed LicheePi 4A and sharing Debian's board-installation resources.

Libre-SOC · open hardware

Participated in the development community

Community

From May through August 2024, I participated in Libre-SOC's development list while getting its HDL workflow running, discussing supported Debian environments, and exploring how an open business could help sustain open hardware development.

Projects I Believe In

What I'm Building

Through 3dvr.tech and TommyOS, I'm developing new systems that anyone can use — portable, self-hosted, open-source tools that help people create, communicate, and build their dreams anywhere in the world.

The future is not owned — it's shared.