Recently I set out on an interesting journey. I wanted to build programming libraries for my API, HolidayAPI. Some of the languages I know like the back of my hand. Others, have never even touched them before.
Before you start sending me hate comment, I am fully aware of Swagger. I had given it an honest shot but I felt the resulting code was bloated. The resulting libraries had a bunch of files and I was able to fit each library into a single file that was less than 100 lines of code. In fact, the largest library was only 62 lines of code.
Bloat aside, I was fearful that taking such an approach would leave me attempting to maintain code that I didn’t fully understand. I most likely would have figured things out but I figured that writing each library myself would make maintenance easier.
So I set out to write a library in five different langauges. I started with what I am the most fluent in, Node.js and PHP. Then I attacked Ruby and Python, which I have a small bit of working knowledge. Rounding out the pack was Go.
One of the most frequent requests I receive on Holiday API is “How do I sign up for an account?” and “How do I get an API key?”
It throws me off because there is a giant “get started for free” banner near the top of the page. It stands out as it’s got a green background on a white page and it’s even above the fold!
Seems quite obvious yet it’s still one of my number one support requests.
What’s really interesting about it is that this particular site is the first time I decided to get clever with my login / sign up form.
Most of the time, folks are talking about making projects open source not closed. Companies use it as way to get some press and to position themselves as being altruistic by giving back to the community.
I used to be that guy.
Recently, I came to realize that one of my open source projects may actually have some potential as a commercial service. People were using it, and the contributions that were being made back to the project were less than ideal.
The project was already open source, what’s a guy to do?
Noticed the domain was available while researching APIs to obtain holiday data. Snagged the domain and built the API, originally released as open source eventually pivoting to a premium offering.