Here are a list of my projects and projects I’ve made major contributions to. Organized by primary programming language. Clicking on the title for each will take you to their respective GitHub pages.

HelpScout Net

A C# API library for HelpScouts REST API
Details

  • Language: C#
  • Relation: Contributed
  • Source: GitHub

I made major contributions to this project to update the library with new API endpoints so I could use it in my HelpScout Metrics project. I also made an async client to fix deadlocking issues when burst calling the API.

HelpScout Metrics

A  WPF client to pull HelpScout related data.
Details

  • Language: C#
  • Relation: Created
  • Status: Abandoned
  • Source: GitHub

This was a WPF learning exercise that was created to solve the problem of automatically pulling some data from HelpScout. It is no longer in use as we have moved to Zendesk.

Major accomplishments during this project:

  • Implementing an asynchronous call queue to ensure adherence to rate limits. User can customize API calls/minute up to the maximum.
  • Implementing a pop-out logging view using NLog, is filterable by log level.
  • Implementing toggleable columns, the user can show/hide columns in the grid view via a right-click menu.
  • Persistent user settings and basic employee information to make future use easier.

CSVSerializer

A CSV serialization library
Details

  • Language: C#
  • Relation: Created
  • Status: Complete
  • Source: GitHub

I created this as a side project just to tackle the problem of serializing an objects properties into an easy file format.

TalkDesk Agent Monitoring

A userscript that adds a floating widget to TalkDesk that adds several monitoring/tracking features the service was missing.
Details

  • Language: JavaScript, CSS, HTML
  • Frameworks Used: JQuery, JQueryUI, AngularJS
  • Relation: Created
  • Status: Complete
  • Source: GitHub

I needed a new project, I had heard some complaints at work about TalkDesk’s lack of real-time pause state information. I originally created this to just display basic real-time info, but I’ve since expanded it out to cover several areas of improvement.