Starting three weeks ago we were tasked with making a chat application. Everyone was to pick some unique features they could throw in to make it special but the core was the same. The apps needed to have real time chat (Direct or Chat Room style messages), and we were using databases, this time through firebase.
Being a big Pen and Paper gamer (i.e Dungeons and Dragons, Pathfinder, etc) with lots of friends not from Sydney I thought I would make something that could be used as an aid for playing those games. There is already a really good website called Roll20 that I like to use, but most people I know have trouble using the software, so it ends up complicating things rather then make it easier to play the game.
The two features I choose were:
- A grid you could draw on, which is important to playing P&P games
- and the ability to roll dice, which is completely mandatory for playing those game
The Project was impossible starting off. I spent the whole first week trying to make a wireframe and flesh out all the HTML. I did everything I knew to try and style the page, and as far as I could tell it should have been working. Until lastly I set the hight of the body element. Suddenly all my styling came through and everything worked.
I stumbled through several of these problems. Where lots of time went into trying to find the problem with the code, only to find out it was somewhere else that a minor thing was stopped progress. For example I couldn’t make dropdown menus work for quite a while, and spent hours checking and rechecking the thinking I did it wrong. But it turned out I just wasn’t using the correct Bootstrap package.
After those types of problems stopped happening, I got into the nitty-gritty with Firebase. That was where my real difficulties began. None of the code was overly complex, but the thought that went behind trying to make all the interactions with the server work was hard for me to think through.
Eventually, though help from Rob and Eric I was able to get all the functionality of my site worked out and have had a lot of fun playing around with it while it’s working.
Important take aways from this assignment for me include:
- Don’t forget to review all your scripts and sources for things like Bootstrap, JS, JQuery, etc.
- FireBase has two reference websites, one of them if totally wrong and not helpful.