This is a landing page for my GitHub profile, to help you navigate my repos. If you are overwhelmed by the dozens of repositories listed on my profile, you are in the right place. I'll also link here when applying for jobs, so that recruiters / hiring managers don't have to go digging through my profile to find useful information about how I write code and communicate on projects.
I intend for this page to be comprehensive, so if you are looking for some repo in particular, a search for the repo name should bring you to the right place.
- About Me
- Table of Contents
- Repos
- Contributing
These are open source projects that I have started, with the intent to be used more widely (though some may still be incomplete).
Name / Link | Description |
---|---|
Big Gollum | A rails app that lets you make, browse, edit, and eventually control permission to gollum wikis. Created by @oponder, I became co-maintainer after helping develop it, and later the project was given to me. |
Codeception Data Selector | A Codeception extension to automatically select data from DB based on certain conditions. |
Emacs Auto Formatter | An Emacs plugin to automatically format code according to user preferences. Still WIP. |
Emacs Org EBS | An Emacs Org-Mode implementation of Joel Spolsky's Evidence-Based Scheduling. |
Git Kraken Boards Exporter | A Python script to export data from GitKraken Glo Boards using their API. |
git-rstash | A simple Git extension to transfer stashes to and from remote repositories. |
ledger-autobot | A bot to automatically run ledger-autosync and submit a Pull Request with the result. Currently delaying work on this until I can automate the download of OFX files from banks that don't support OFX Direct Connect. |
sqrl-qt | Beginning of project to implement a desktop client for SQRL. No recent activity due to lack of time, and other higher priorities, but may come back to eventually. |
XP to Emerald Plugin | Plugin for the Bukkit Minecraft server to allow users to convert XP to Emeralds and back again. Not updated recently for same reasons as above. Original commit in 2012 (!), and it needs some major refactoring, but It Works! ™️ |
These repos were for the most part not developed by me, but I packaged up existing code to make it easier to distribute for my needs.
- https://github.com/501st-alpha1/bento4-cli-nuget
- https://github.com/501st-alpha1/ef-auto-soft-delete
- https://github.com/501st-alpha1/facebook
- https://github.com/501st-alpha1/cross-platform-docker-images
- https://github.com/501st-alpha1/cross-platform-php-docker-image
- https://github.com/501st-alpha1/Commercial-Standard-License
- https://github.com/501st-alpha1/crypto-signatures
- https://github.com/501st-alpha1/floss-weekly
- https://github.com/501st-alpha1/referrals
These projects are not very far along in their development, and are mainly here as placeholders for things I want to do in the future.
- Blog Posts
- Emacs Mode for reading the NASB
- Compiling code in Emacs
- Web app Minimum Viable Product in Laravel
- .NET library for v2 of Dwolla's API
- Docker image for ngircd server
These are projects that were written either for fun or as part of an interview, and are published here to give examples of how I write and manage code.
Name / Link | Description |
---|---|
Java Chess App | Example project I created in Java while still in school. Not updated much since then. |
rpn-calculator | A command-line Reverse Polish Notation (RPN) calculator, written as part of the On-Site interview process. |
These are personal config files and scripts for various programs. While I publish them here on GitHub, I don't expect them to be used widely (though I have no problem if they are). The more likely use is someone may be looking for a solution to a specific problem and find it in one of these repos.
Name / Link | Description |
---|---|
emacs-init | Public portion of my configuration for Emacs. |
git-template | Template for new .git folders. |
i3wm-config | My config for the i3 window manager |
scott-script | Various Bash scripts that I use. Some of them may be useful for wider audiences, but those should probably be extracted to separate repos eventually. |
scott-server-scripts | Same as above but for scripts that I only need on servers. |
Below are some selected contributions to third party projects. Most forks are made with the intent to submit PRs against upstream, but I'll note here if they have any other uses.
- Source
- https://github.com/egh/ledger-autosync
- Fork
- https://github.com/501st-alpha1/ledger-autosync
- Source Description
- Synchronize your ledger-cli files with your bank.
From the README:
ledger-autosync is a program to pull down transactions from your bank and create ledger transactions for them. It is designed to only create transactions that are not already present in your ledger files (that is, it will deduplicate transactions). This should make it comparable to some of the automated synchronization features available in products like GnuCash, Mint, etc. In fact, ledger-autosync performs OFX import and synchronization better than all the alternatives I have seen.
My contributions:
-
New feature to allow renaming payees to a more reasonable value in Ledger files, but still match with what bank says they are. Discussed design of feature prior to implementation, in issue #25. Also added automated test for new functionality.
-
Follow-up to above PR, allowing matching to be applied to
MEMO
OFX field if bank uses that instead ofNAME
. Again discussed design prior in issue #71. -
Add argument to specify ofxclient config file
Small change to allow specifying which config file to use, so I didn't have to edit the hardcoded path of
$HOME/ofxclient.ini
every time. -
Opened various other issues that I didn't implement solutions for myself (at least, not yet); see here.
- Source
- https://github.com/artisancomputer/ledgercalc
- Fork
- https://github.com/501st-alpha1/ledgercalc
- Source Description
- multifunction + variables RPN calculator for ledger
ledgercalc
is a Python script to perform simple calculations on Ledger balances.
My contributions:
-
Allow filtering transactions by payee
Added ability to filter transactions included in balance by payee, rather than only using raw account balance. Discussed improvments in PR comments; now waiting on owner to merge.
Because no pull request is too small!
- egh/ledger-autosync#82
- egh/ledger-autosync#81
- MicrosoftDocs/azure-docs#294
- BabylonJS/Babylon.js#1138
- Codeception/Specify#21
- editorconfig/editorconfig-emacs#48
- d4be4st/progress_job#7
- anlutro/laravel-4-smart-errors#27
- gollum/rugged_adapter#8
- bbatsov/projectile#677
- https://github.com/arc298/instagram-scraper/pull/568
- yspreen/sqlcipher#1
TODO: Add repos.
If you see a missing repo, feel free to open an issue, or if you can guess where the repo should be, open a pull request.