It's been awhile. Nearly half a year! I'm writing this while waiting for a haircut (what a time for reflection!). Let's start from the top....
HOTSBA is an application that I'm incredibly proud of. It's basically a small data gathering tool for a computer game that allows you to gather some statistics about your opponents to make strategic decisions off of. On the surface, it seems simple: A glorified HTML scraper with a GUI. It's more than that, however.
- Built on Electron, it is a desktop app that is cross platform (mainly for Windows, and OS X, no users for Linux)
- Is easily installable for both platforms via Squirrel
- Check for updates on startup, automatic update process.
- Great test coverage around fragile functions (i.e : scraping) via Mocha/Chai-as-Promised.
- Pushing to my Github repo results in the automated tests running and binaries being built for BOTH platforms utilizing Appveyor and Travis CI.
- Played around with my amateur marketing skills via Reddit's paid ad platform.
DL-Validator is a "bot" that, given some sort of data source, will let you know whether a file hosted at one of your common online "file repository" sites exists/is valid still. The main use case in question was for Customsforge.com, who has the problem of their user uploaded files expiring all the time. Unfortunately, I never got to finish it, as it was a bigger project than I tackle
- Implemented module systems for both "input" and "output" of the application. Input processors are easily integrated, and customizable. Result Handlers implemented are console, Google spreadsheet, and a slack integration.
- A very complex workflow, due to the need for error recovery, handling redirects, and a lot of edge cases due to the need to support many file providers.
- My greatest regret was not starting with a strong automated test philosophy with this one.
While I started working at uShip in late 2015, I didn't really get productive until 2016. While my product team is being reorganized and separate, I'm really proud of the work we got done.
- We overhauled the post-match overview/search in our marketplace, allowing for scale. This involved implementing a search indexer, and eventual consistency. Not always easy in a legacy codebase.
- Made a "header/footer" microservice within our MVC layer which is called by both Web Forms pages and MVC pages. Heavily cached, and also able to serve any clients that might not be hosted on the App Server, like our sister Wordpress sites. Now navigation across uShip is easily maintained and consistent.
- Led/on-boarded a class of interns, along with two other developers, which was a great learning experience.
- Wrote a pretty neat blog on color discrepancies between video codecs.
I also did a seminar on consulting for new developers at General Assembly. All in all, one of my most productive years. Here's to accomplishments in 2017!