Hypermedia and HATEOAS: Client/Server Relations

JANUARY 29, 2014 My Goal is to Make Changes Easier So, I started writing a fully HATEOAS web service API. It's funny, I am not designing this new API for any external developer community. I am designing it for myself. My hope is that it will make my life easier…

QuickSort Performance Tests

OCTOBER 29, 2013 QuickSort is Fun, Sort Of I am learning to work with algorithms. I am a little more interested in learning for the sake of mastery, rather than solving a specific problem. I am reading through TopCoder and also doing a little research on popular algorithm sites. QuickSort…

Iron-Clad Contract: 100% Code Coverage Done Right (PHP)

OCTOBER 24, 2013 Covering every line is not the standard Getting to 100% Unit Test code coverage should not mean ignoring some code fragments, and should never mean ignoring the contract your code makes with the rest of the codebase and with users of you services. Good unit testing will…

Progressive Abstraction

OCTOBER 23, 2013 Balancing Is Important In this post I am telling a tale of quickly finding the balance point between building future proof abstracted code and an MVP (Minimum Viable Product). It is an important lesson when building large projects on tight timelines. Developing for a larger/tighter project…

How to Win a Hackathon

OCTOBER 21, 2013 My Advice After winning two hackathons in the last month, I am formulating a theory for quickly hacking together something great. After finding a sweet spot between MVP (Minimum Viable Product) and MVD (Minimum Viable Demo), I think I have a nice way to balance what you…

Winning at AppHack San Francisco 2013

OCTOBER 20, 2013 Our Experience Going into AppHack we were excited to build something to make lead generation easier. We spend the weekend making entering leads easier, and making gathering leads easier. There are two pain points that strike immediately: making lead forms easy to find, and making lead forms…