What is GifFight.club?
Take a quick look - it has a new subject/headline each day, and you post the best matching gif.
Winner takes all! (a celebratory tweet..)
This was only possible because of all the brilliant people working on all the brilliant open source projects I stood on the shoulders of.
If you have some time, please contribute to open source.
Idea - 10 minutes
My first thought of starting a gif site was the night before coding. Contacting my colleague Jamie was my first port of call, but he was a bit busy melting his brain so I firmed up the idea some and went to bed.
Start - 10 minutes
To start you need a name right?
When I woke up I used the Namecheap app on my phone to do a quick search.
My initial thoughts were along getting the top news headline of the day and letting people battle with gifs on that, but after reading the most recent headlines I figured that would be too negative.
After looking for positive/upbeat news, and finding they didn't bring any gifs to mind, I chose to start the site with a personally curated gif battle starter.
Registration, DNS, Email - 10 minutes
Registering the domain on Namecheap and changing the DNS to Linode (ns[1-5].linode.com) was easy - I cloned a previous domain (GoRemote.io) to speed it up, then added it as a 'domain alias' on Google Apps.
Setup coding - 1 hour
Adding a GitHub repo, and doing
git init; git remote add origin; git add *; git commit -am "OH YEA"; git push origin master only took 5 minutes and a quick google to find
git update-index --assume-unchanged config/secrets.php to make sure my Twitter keys aren't in the wild.
Twitter - 20 minutes
Real life coding - 4.5-ish hours
Most of this time was spent on the design and layout with Materialize as I hadn't used it before. Ctrl + Tab, edit code, Ctrl + Tab, Ctrl + R, repeat.
The PHP was pretty straight forward, but the CSS gave me some headaches!
Not writing unit tests, or decent commit messages, or nice code saved me a bit of time - it's not advised, but if you do do it make sure you refactor it later on to be awesome!
Things I used
- Sublime Text 3
- MacBook Pro 13"
- Google Chrome
- Materialize CSS
- Ubuntu Server on Linode.com