Side Project:

I'm a huge fan of the Swarm mobile app. If you're not familiar with Swarm, it's an app for checking into venues, built by Foursquare, that makes your everyday travels into a competitive game. By checking-in to new venus, in new locations, more frequently (among other factors) you earn (virtual) coins, and win the game by outscoring your friends each week.

The coins are used to purchase virtual stickers which are used to enhance check-ins. For example, once you've upgraded the Jetsetter sticker using it at Airport check-ins will multiply the coin bonus by 2 or 3 times. Coins can also be used to purchase 'perks' at participating venues.

So, you go about your day you check-in to venues via the Swarm app, that's the easy part.

Unlocking Stickers and Earning Coins

As mentioned the goal of playing the Swarm game is to earn stickers and maximize coin bonuses through check-ins. This is the hard part.

To unlock stickers you need to check-in to specific types of venues, series of venues, or make specific comments on a check-in. For example, checking-in to Italian restaurants will earn you the Spaghetti Monster sticker. Or, checking-in to 5 Bar venues in 5 hours will earn you the Bar Crawl sticker.

The Side Project

To help users earn stickers and maximize check-ins I've created The site, providing tips and tricks for the Swarm app, is really a testing ground for me to try new technologies, strategies and ideas. In no particular order here are a few areas I'm experimenting with:


I really, really, really like flat-file CMSs. There are several flat-file CMSs that are fully-featured enough to power large sites these days. I particularly like how easy they are to develop locally and deploy to a server (DigitalOcean in my case). After all, they're nothing more than some some text (or YAML or markdown files) and PHP (usually). This makes it easy to track changes via git. They're also extremely fast, resulting in a speedy-loading site for users.

I'm using Statamic v2 on It's a great CMS that has all the features a modern CMS requires - custom fields, a responsive admin panel, an API for adding functionality, and the option to create custom themes.

For I created a custom theme I built using Google's Material Design Lite framework on the front-end.

I also used Statamic's extensible framework to build an add-on (using PHP/Laravel). The custom add-on creates a template tag to query the Foursquare API to return specific types of venues around a user's location. More on this later.


One of the more fun challenges has been optimizing the site for search engines. Only 2 months post-launch the site is attracting a consistent load of organic and direct traffic. Over the past 60 days there are sessions from 70+ countries, visiting 6+ pages and staying on the site for nearly 4 minutes on average.

Using Google Analytics I'm also collecting data on which countries/languages visit most frequently. Using this data I'll create localized versions for the most popular languages down the road. Currently the most popular non-English language is pt-br, or Portuguese (Brazil). Better start brushing up...


The site runs on a DigitalOcean droplet and has allowed me to learn more about server setup and configuration. The droplet is currently running Ubuntu 16.04.1 with HTTP2.

I also setup a SSL certificate on the site, through Comodo, to enable secure connections. The HTTPS-connection also helps with search engine rankings to some degree. I love seeing the little green lock icon in URL bar too.

SSL Certificate


With the flat-file CMS the site was relatively fast out-of-the-box. However, some speed tests revealed there was still room for improvement. To maximize the site speed I installed the Google Pagespeed Apache module and after configuring the module the site is now rated a 99/100 on Google Pagespeed Insights.

Product Development

While the site is mostly content-based (at the moment) I've been working on a few features (read: tools) to make the site even more useful Swarm fans.

The first tool I created was a Nearby Venue Finder - to find venues (using the Foursquare API) near the user (using the Geolocation API) which can be used to earn, or use, a specific sticker.

For example, to earn the Joey Beans sticker you need to check-in to a venue in the Coffee Shop category. On the other end, if you want to use the sticker (for a larger coin bonus) you need to visit a Coffee Shop. My tool uses your current position to find eligible venues within walking distance to earn and use the sticker.

Swarm Venue Finder

Using Google Analytics Event Tracking I can track how frequently the feature is used. In the month since the tool was added more than 1,300 nearby venue searches have been completed, all around the world.

What's Next

I'm looking forward to adding more tools and continuing to experiment with SEO techniques to increase traffic to the site. I'll post more updates as the site evolves.