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.
  • JavaScript is a lot more free form then other languages I’m used to. This is both useful and not useful in different situations

Now I’m very pleased. There was a lot of trouble but now that I have it finished it is incredibly satisfying. Having something with actual functionality and use that I made feels amazing. The portfolio website was cool, and fun to make, but it wasn’t really something that made. Having the chat app finished has bolstered by confidence in JavaScript, HTML, and CSS.  Now I cannot wait to start on the next project!

1 thought on “Uit Chat App Project: The Appening”

Eric Lortie Eric Lortie says:

This was a great, great project for you. It was right up in your wheelhouse, represented something you wanted to use and solved a problem you experienced, and allowed you to bring your computer sciences background to play as it was quite functionally complex.

I was thrilled to see you write over 1000 lines of javascript during this project!

Can’t wait to see how this develops over time and I’m hoping we can even use it for some UIT pen and paper games down the road.

Leave a Reply