Portfolio 2 Week 10: Christmas Holiday? Not really
- Goh Qi Xun

- Dec 29, 2020
- 3 min read
Updated: Feb 8, 2021
After the hackathon, we had a consultation with our FSD (Full-stack development) teacher to check and work on our Trello board. We realised that we made a huge mistake as we are supposed to create a working product by Sprint 1 and 2, instead we created a prototype. We are supposed to use an agile methodology throughout but it turns out that we are actually doing waterfall.
In order to cover up the mistakes we made in both earlier sprints, we decided to work revamp the whole Trello board and start doing what we said we will completed. For this self-proclaim "sprint", I aim to finish my login, register and news page with storing information into database and for the part both me and Jun Wei need to work together, the get essential and donation page.
Before we start anything, we must have a cloud storage to store all the essentials information so that we can retrieve and set data in real-time. We decided to choose Firebase as our cloud storage as it is free and reliable. The knowledge I have gained from Portfolio 1 and ITE has gave me a lot of understanding when handling Firebase.

I setup our Firebase and enabled authentication through Email and Password as we are unable to get user to Login with Singpass. This is because Singpass is a government account. I connect my application with this Firebase and decided to work on the login page and register page.
To start off, I need to create and design it. Thanks to Jun Wei for teaching me the constraints that helped me speed up the process of designing the app. If it looks familiar to you it's because we replicate exactly what we prototyped.
Here is how the login and register page looks like:

Since I am not using Singpass as a login method, I need to get basic information of user such as their name and contact. I decided to create a profile page.
Profile Page

After user enter it's basic information, it will store all their data into Firebase real-time database.
===== DUE TO THE LACK OF TIME, This is what I've done for this "Self-Proclaim" Sprint ====
So much planning but still we had forgotten that we need to do a Home Page. Jun Wei and I decided just exactly how we prototyped it too. Throughout the process of making the app, we tried to replicate UI as close as possible, unless we faced difficulties that stop us from doing so. This is how our Home Page looks like:

Issues Faced
There are many major issues we faced throughout this self-proclaim "sprint" that really decrease our productivity. Here are the issues we faced at the start:
Issue #1: Different cocoa pods version
Since Jun Wei and I have a different version of MacOs and cocoa pods version, we had an issue where every time we sync our file to Git. There will be error that prevent us from running the application. For some reason in Jun Wei's Macbook, he is unable to install pods through RubyGem package manager but only with brew. Brew versions are not as updated as RubyGem so it messes up our compatibility. At the start we just don't understand where this issue was coming from until we decided to open up all the errors and much of googling. We spend up to half a day fixing this, a really waste of time. We even tried to recreate git multiple times (it's just a temporary fix) but eventually we fixed this by downgrading my cocoa pods to match his version. Because of this, we have a phobia of installing pods.
Issue #2: Main.Storyboard
Until today, I still don't understand why we... We are unable to edit the Main storyboard together even though we are touching different controllers. This slows our productivity because we had to take turn to do our design as if we are doing a part-time shift job. Every time Jun Wei and I touch the main storyboard together, we will have conflict issue when pushing and pulling. Thankfully, Jun Wei know's how to split our storyboard into 2 so we can work on design on our own storyboard. Although this is not the most effective way of solving this issue, it manage to bring our productivity higher.



Comments