I create software and documentation for the public commons
I believe that software should be built for people and grassroots organizations, not for corporate profits. It should be truly reliable and easy-to-use, so that anyone can use it, without needing the backing and resources of a company. It should inspire to create and express yourself, not force you into a sterile 'professional' one-size-fits-all design. It should be non-commercial, free of ads, and free to use and adapt in any way. It should be easy to fork if we don't see eye-to-eye. It should be modular, for optimal reusability.
Likewise, I think that good documentation should be freely available to anyone, and that it is an important part of making software development more accessible, especially to minorities. Good documentation that not just explains how to do something, but also how to do it well, how to write maintainable and readable code, so that everyone else in the community can more easily work with it and adapt it.
Because of this, I license all my work under the WTFPL or CC0 (your choice), which basically makes it public domain. Not just my software, but also my writings, and basically everything else I create. I also try to design everything in such a way that it's reusable, even for weird experimental projects that I could never have thought of myself :)
Unfortunately, I still have bills to pay, and completely free (as in gratis) software doesn't do very well at that! Right now my income mostly comes from freelance development/review work, but in the long run, my goal is to spend 100% of my time on non-commercial open-source projects. And you can help with that! The more donations I receive, the more time I can dedicate to my non-commercial work.
Some of my projects:
- My blog
- "Getting started with Node.js" documentation (perpetually a work-in-progress)
- bhttp, a HTTP library for JS
- measure-font, a library for cross-browser measuring of font dimensions
- promise-task-queue, a lightweight in-memory task queue for asynchronous code
- icssify, a Browserify plugin with full support for CSS Modules and ICSS
- budo-express, a Browserify development server integration for Express
- Various low-level utilities for JS, such as split-filter, match-value, generate-lookup-table, as-expression, and do-arrays-intersect
Some projects that I'm still working hard on, and that will be released in the near future:
- Validatem, a universal data and argument validation library for JS
- Modular Matrix, a modular set of protocol libraries (both client and server) for the Matrix protocol
- Promistreams, a new 'streams' specification for JS with full support for concurrency, aborts, Promises, and 'looped' streams such as task queues
- A volunteer management system for community-organized events, to be first used at MCH2021
Some past projects that I am no longer maintaining:
- pythonwhois, a WHOIS parsing library for Python (made largely redundant by the GDPR)
Some projects that I'm still working on, but that probably won't be done any time soon (unless I get enough donations to work on them full-time!):
- An accessible platform that allows anyone to build a custom website/community, with complete design freedom
- CVM, a VPS management panel
- microlafs, a distributed low-trust storage system, loosely based on the design of Tahoe-LAFS, but with various improvements
- Sharenet, a user-curated P2P filesharing network
More of my projects are found here, with everything from hopeful ideas in empty repositories, to ready-to-use projects :)
joepie91 owns the following accounts on other platforms:
joepie91 joined 4 months ago.