Due to the wide variety of roles I play in my work (including both frontend and backend development, system administration, technical writing, and social media management), it is impossible to include each project I work on here, or even to fully describe the projects I have been able to include. Please feel free to contact me to discuss how I can help your organization in more depth.

Websites and Applications


Council on Education for Public Health ceph.org

To help this non-profit better manage their website and its content, I built them a new WordPress-based website. Since many of their visitors use their website to access information about accredited public health programs, I created a more robust search engine that is both easier for staff to keep updated while simultaneously allowing users a broader range of fields to search on than the previous Microsoft Access-based version.

The Nerve thenerve.org

I helped this online newspaper transition to a new website based on Armstrong, a Django-based CMS designed for news organizations. In addition to installing Armstrong on their server, I converted a table-based website design to a modern HTML5 layout, extended Armstrong's WordPress importer to correctly convert their previous content, added code to support their custom image handling and article publication workflows, and successfully redirected URLs from the two previous iterations of their website to ensure that old links would not be broken.

Social Photo Download no longer publicly available

Social Photo Download allowed Facebook users to download photographs that they or their friends have uploaded to the website. Unlike other popular photo downloading services, this site made heavy use of Facebook's Graph API to ensure compliance with Facebook's developer terms. With over 50,000 pageviews each month, the website used Celery and RabbitMQ to queue and manage downloads.

MP3 Gift no longer publicly available

MP3 Gift allowed people to legally purchase MP3 songs or albums for their friends. The Django-based website used Facebook Connect for quick user registration, Facebook's Graph API to retrieve information about friends' birthdays and musical preferences, and Medianet's Open API to handle music purchases.

Open Source Projects


While I am an active participant in multiple open source projects for more than a decade, the following projects are all libraries that I were I am the primary maintainer. My work includes writing new features, replying to bug reports, merging in pull requests, and making new releases.

django-longform https://github.com/martey/django-longform

This software runs the Writing section of this website.

django-shortcodes https://github.com/martey/django-shortcodes

One issue when converting clients from WordPress sites to Django is usage of WordPress shortcodes in their content. This library helps Django applications support these shortcodes, so that site staff can easily embed YouTube videos and other content.

facebook-sdk https://github.com/pythonforfacebook/facebook-sdk

After Facebook ended official support for their Python Facebook SDK, Python developers were left without a solution that would remain updated as Facebook's Graph API grew and changed. While other developers used this opportunity to create custom Graph API libraries, I joined together with other developers to fork and improve Facebook's SDK. Our fork is currently the only Python library to be listed on Facebook's list of third party SDKs.