Seat Yourself

Seat Yourself

As part of a group project dur­ing a Web Devel­op­ment Immer­sive course at Bit­mak­er (GA Toron­to), we were tasked with recre­at­ing the func­tion­al­i­ty of the pop­u­lar restau­rant reser­va­tion site Open Table.

Screenshots of Seat Yourself
Screen­shots of Seat Your­self

The Process

Hav­ing been through a com­plete Rails build on one assign­ment indi­vid­u­al­ly, we were asked to team up to plan, devel­op, build a pre­sentable MVP in a quick sprint of 3 afternoons/evenings. As a four­some, we did all the plan­ning (MOSCOW), data mod­el­ling, user sto­ries, etc. togeth­er, and then broke off and most­ly cod­ed indi­vid­u­al­ly to get the most work done in the short time avail­able. We did, how­ev­er, always work at the same table, so that we could check in with each oth­er reg­u­lar­ly.

One of our ear­ly chal­lenges was to decide how we were going to han­dle the dif­fer­ent types of users (din­er vs. restau­rant own­er) to set up their user flows and autho­rize their per­mit­ted actions. After a lot of head scratch­ing and slow progress, it wasn’t until late the first evening that I had the insight to sim­ply cre­ate a boolean val­ue to be select­ed by the user upon user reg­is­tra­tion, and checked before load­ing rel­e­vant views. It seems so sim­ple in ret­ro­spect, but it real­ly was a break­through idea that felt so ele­gant and allowed us to move for­ward more quick­ly and with tidi­er code.

There was no design or wire­fram­ing process in this short project; as my team­mates fin­ished up the final aspects on the back end, I tin­kered with some sim­ple Sass on the front end to tidy things up for the pre­sen­ta­tion. It was real­ly a sprint to the fin­ish, but hav­ing a strong detail-mind­ed team meant we were able to tidy up a lot of loose ends and come up with a rather impres­sive prod­uct in time to present to our class­mates and instruc­tors.

Tools & Tech

  • Piv­otal Track­er
  • Ruby on Rails
  • SQLite3
  • cus­tom SCSS
  • Google Fonts

Lessons Learned

  • Some­times things can pro­ceed much dif­fer­ent­ly than they feel. I was not at all con­fi­dent in the state of our app come pre­sen­ta­tion time, and yet every­thing fell into place and it all worked per­fect­ly when it need­ed to. At times it can be enough to apply the skills you have, trust in the skills of oth­ers, and hope for a lit­tle luck to fill in the rest.
  • Project man­age­ment tools are only as good as the time you put into man­ag­ing them. We tried Piv­otal Track­er to man­age our work­flow, but it took a chunk of time to set up, and in the end was prob­a­bly too much tool for our short project.

See it