donReach was initially conceived in spring 2014 for one very simple reason - most official social share buttons affected our client’s website performance extremely negatively. In many cases the Google Pagespeed score dropped from above 90 to somewhere between 40 & 60, which is simply not acceptable for a few little buttons!
We needed a solution which we could effortlessly integrate into all of our clients’ websites, which “just worked” and didn’t affect the websites’ performance.
One option was static HTML buttons, however this meant loosing the social proof an article gains through social shares, another option was one of the many share button services out there but sadly they all either added too much bloat, were very limited in terms of customisation & styling or lacked features we wanted (such as share counters for Twitter, Google+ & Tumblr).
After a lot of reasearch we came to the conclusion that the only real solution was building our own share button service. To avoid loads of unnecessary HTTP requests we started by building an API which would get all the share counts and cache these on a CDN, so that our buttons would only need to make one quick AJAX request to retrieve the share counts of all selected providers. Next, we built the share button widget in vanilla JS, installed it on all of our clients’ sites, made a quick little page with docs for the buttons and the API and wrote a blog post about it.
Job done! (…NOT!)
The next level
A year went by without any of us giving another thought to donReach (other than integrating the buttons on more of our clients’ websites), until one fateful day when we got an email from a client saying the share buttons no longer displayed the share count. How strange, we thought - none of the social networks’ APIs had changed and no one had touched the donReach codebase so it made no sense whatsoever.
We investigated the server logs and what we found blew our mind - the shares for millions of URLs were being requested with our API every single day with our buttons having been integrated in over 100k websites! The API (back then written in PHP) had never been built to handle this volume of traffic, so we were faced with the decision of either closing it to the public or investing into scaling up. Needless to say we chose the latter, so we rewrote it from scratch using Go, upgraded the server structure from a single t2.micro to a cluster of dedicated machines and got the service back up and running.
Following another successful year with a steady growth of about 500k more unique IP addresses connecting to our API per month as well as another 100k websites using our share button we decided to take it to the next level and launched this shiny new site dedicated solely to creating slick, perfomant & easy-to-use social widgets, as well as business intelligence products based on analysis of social signals across the internet.