When it came time to replace the pen-and-paper approach to tracking student involvement in a local high school's STEM-focused career day, I whipped up a simple web app to streamline the process. While the design was handled by a third party, I tackled both front and back-end development. Over the years, the project evolved as my skillset grew; what started as a sloppy mess of PHP is now a svelte, maintainable Rails app.
Ruby on Rails 3.2.x with MySQL data store
Devise + Cancan for authentication and authorization, respectively
Paperclip for uploads; WickedPDF with wkhtmltopdf for PDF rendering of rosters and schedules
Neurology faculty members needed an easy way to keep track of their performance. I handled front and back-end development of a thoroughly modern tool that put these metrics within reach. Built with HTML, CSS, Ruby on Rails and MySQL, Dashboards also offers administrators a clearer picture of the department and its employees. As Dashboards grew in complexity, I used RoR's native fragment caching and a dose of some Redis goodness to keep things speedy.
Ruby on Rails 3.0.x with MySQL and Redis data stores
Devise for authentication, Cancan for authorization, and Omniauth + 37Signals ID for SSO
Sunspot and Solr for full-text search and PDF + Word document indexing
Paperclip, Docsplit, and Tesseract to handle document uploads (and OCR of PDFs when appropriate)
RSS feed consumption, web scraping, and Highrise API integration custom-built on top of Nokogiri
Intuitive keyboard shortcuts for interacting with content
Neurology Information Services
The endless collection of static HTML files associated with the old Internet Stroke Center wasn't going to cut it; we had a complete relaunch planned and I knew implementing a CMS was key. After marking up a custom theme and extending some core functionality, I rolled out a WordPress-based site that suited our new information architecture. Front-end work for the Trials Registry followed, and I lent a helping hand on the back-end when possible. My knowledge of Redis came in handy when a key feature necessitated the construction of a scalable job queue.
WordPress-driven main site with custom theme and extensive modifications
MacGyver-ed version of gmaps4rails gem to support site's extensive mapping needs
Redis-based job queue for handling distributed geocoding work
Our collection of deidentified radiology studies had always been a great resource, but it needed a facelift. Drawing inspiration from real-world medical systems, I created a jQuery-based slider to fluidly navigate through image sequences. With a sharp design and new back-end in place, we soon had an intuitive and educational tool that showcases the sizable number of scans in our library. Plus, it's fun as hell to use and a blast on the iPad.
Ported from ASP and Access to Ruby on Rails 3.1 and MySQL in only a few days