Coober.nl

2016

Introduction

The goal of Coober was to make it easier to engage in sports by by simplifying the booking process. We came up with the idea of creating a Booking.com-a-like website for sports facilities. We felt that grouping the facilities together into one website would make it easier for people to find a hall that's available.

Briefing

Booking an indoor sports hall is currently quite a time-consuming process. Mostly you have to call or email the operator of a sports hall to find out about availability and make a booking. Grouping the facilities into a single website not only makes it easier for people to find a hall that's available, but also provides a scalable solution for operators to make their facilities bookable 24/7.

It didn't take long before we found an operator who was interested in carrying out a pilot project with us. This operator is responsible for three sports halls in the Netherlands. My job was to gather user stories and to build a minimum viable product to test our business idea in practice.

Result

Providing only three sports halls to our users wouldn't have been enough. For this reason, we decided to list all the sports halls and gyms in the Netherlands, including contact information. Those facilities that could be booked via our platform ranked higher on the search results page.

Bookable sports halls have an extensive profile page including a tool to help you select time slots and make a reservation.

The trick was to only include truly essential elements for the MVP. Therefore, we decided to use Google Calendar as a "database" for the availability of the facilities that were bookable. For the operators, this meant they could import existing bookings using iCal, or they could manually manage the availability of their facilities using the UI of Google Calendar.

While gathering the user stories, it became obvious that at some point we would have to create native apps for consumers and an admin tool for operators. That's why we decided to completely decouple the website from the back-end. The development team that handled the initial release consisted of myself plus two other developers. We used Express & AngularJS for the website and a REST API built with Strongloop Loopback (built on Node.js and Express) for the back-end.

In March 2016, we launched the MVP, and several days later we received our first booking. Now we were able to validate our business idea in practice. This project made me more experienced in working with SCRUM, JavaScript, AngularJS and Node.js.

Tools and languages used: JavaScript, Node.js, AngularJS, unit-testing, Mocha, Chai, Sinon.JS, HTML5, CSS3, MySQL, requirement analysis, SCRUM, code reviewing, GIT, REST APIs, Google Analytics, Express, Nunjucks, Grunt, Strongloop Loopback, MongoDB, LESS, Twitter Bootstrap, data modeling, Mandrill, Mailchimp, SEO, SEA, Postmark, iDEAL (Mollie), Amazon Web Services (AWS EC2, CloudFront & CloudWatch), New Relic (APM & Infrastructure), PM2, SSL with Let's Encrypt, Atlassian Jira.

Also see coober.nl