Hi, I'm a senior developer. I specialize in visualizations, WYSIWYG editors, games and real-time interaction.
Please see examples of my work below and contact me if you might be interested in working with me
I made an online card editor that enables people to create their own playable cards for the board game STRIKE! The Game of Worker Rebellion. You can upload a drawing or photograph, enter some text, make choices, and then download or print your card. I also made a similar online card editor for the board game Good Dog, Bad Zombie.
Technologies: JavaScript, React, Redux, Webpack, ES6, canvas, responsive CSS, PDF, IE11
Just for fun, I built a free word game called HexBog. No download/registration/ads/etc, just click to play
Technologies: JavaScript, HTML, CSS, JSONP, MediaWiki API
For a startup, I built a control panel for staff to enter data manually, and an automated system to import data exports from the federal government. Then I wrote code to efficiently examine all the relationships between the entities in this database which enabled my client to be at the leading edge of understanding the status/relationships of the entities. I also built a visualizer/browser in D3 (screenshot above). They had many nodes like the ones pictured above, so I had to tweak D3 to be able to organize so many nodes at once.
Technologies: PHP, XML, cron, D3
With two other developers, I created a free and open source, downloadable arcade-style spaceship game called Variations on Rockdodger.
Technologies: C, SDL, POV-Ray, MilkyTracker
At The Conference Exchange I enabled presenters to poll the audience via the conference smartphone app. Audience responses are tabulated and presented in a bar graph on the presenter's screen.
Technologies: Node.js, Redis, MySQL, JavaScript, WebSockets, Underscore, ElasticSearch, Perl, Redmine
For Inferscience I built a custom interface allowing their staff to enter flow-chart style rules. I also wrote the back-end code to process those rules against medical documents to extract data points.
Technologies: Laravel, PHP, Javascript, HTML, MySQL, Jira
I fixed a bug in Firefox! It would sometimes wrap paragraphs to the next line in the wrong place when it was set to display all whitespace.
Technologies: C, Bugzilla
Vintners Alliance was a company helping wineries with online advertising. I automated downloading Google Analytic data from hundreds of accounts, cross-referencing with their spreadsheets and generating many reports.
Technologies: node.js, javascript, GA API, CSV
I helped Earthdance transition from Access (database) to CiviCRM.
Technologies: PHP, Drupal, CiviCRM