Skip to main content

2nd Week: Firebase and Design Choice

On this week, we focus on discussing and fine-tuning our proposal for the first sprint in week 7. We first look at different possible back-end database for our app. When deciding between a SQL or NoSQL database, we looked at the differences between scalability, data storage model, and database schema. Looking deeper into this, and listen to Dr. Stonedahl recommendation of Firebase, we concluded that it is the most fitting choice for its inherent compatibility with Android, cross-platform potential, scalability, and tutorial/resources availability. However, since all of our members have no experience with a NoSQL database, we think there might be a learning curve to get used to.

About our design choice, we gathered feedback from our cross-group discussion from last week, as well as brainstorming about the difficulty of different functions of LocalHobby. With the 2-3 weeks timeline in mind, we decided to take some functions out of our original proposal, namely the nested tree design of the hobbies' storage and the local group chat feed. We think that these functions are great stretch goals, but might not be possible to implement in our first demo version. Listed our remaining functions by the difficulty to implement, we have a rough timeline in mind to follow in the next few weeks.

For our actual coding, we created a working project on Android Studio and successfully connect it to our assigned group repository on Github. We also connected the app to a Firebase project on our shared Augustana email account. Lastly, although not complete, we have working simple sign-in, sign-up, and sign-off for accounts using email and password. 

<INSERT SCREENSHOT OF WORKING AUTHENTICATION>

Looking toward next week, we want to finish the authentication process, including saving user extra information, profile picture, and list of hobbies. We also looking at more resources about GPS and messenger to employ to our nearby user search and chat function.

Comments

Popular posts from this blog

Week 6

This week we were mostly working on responding to the comments that we got form our first sprint demo. Things like cleaning up the UI, adding a few small features, starting to add a few larger features, and then some general bug fixes. We were very happy with how our app did in the demo but there were many things that we thought we could improve upon and features we could be add. For example, although we were very pleased with how our one to one chat function worked, one of the original pieces of functionality that we wanted for this project was a many to many chat feed sort of like a message board or chat forum for all of the different specific hobbies. This week, An started to build out this many to many chat functionality. It is still in development, as it is very complicated, but thankfully since we already had the one to one functionality up and running that made figuring out the many to many easier. Currently, An has the many to many chat feed working but it is not integrated int...

Week 5: First Sprint

The first Sprint is done. We got some good feedback from both our professor and classmates. No one found any major bugs and mostly offered ideas for enhancemets, so all in all, a good first demo. Features complete for sprint one: Login/Sign up authentication Profile with database synchronisation Ability to add hobbies  Search for specific hobbies Basic chat with other members of your hobby Navigation between functions Features in development: Location based member filtering. Will only list members of a hobby that are within a certain distance of you. Clean up chat screen UI and backend Enhance login and sign up with fogot password and email + password confirmation respectively Create a new navigation menu Notifications for chat, and marking members you have or are chatting with Ability to add new hobbies to list Clean up and enhance UI Various bug fixes About us page As you can see, we have a lot of work to do before the last sprint! However, the basic...

Week 3

This week everyone in our senior inquiry class was working on tech demos for various technologies in Android. For example, things like how to integrate camera functionality into the app, text-to-speech, speech recognition, GPS location data and GPS functionality, etc. Because we were all working on these tech demos throughout the week we didn't make very much progress on our app. James made some small quality of life changes to the code so that it would be more readable and would utilize more resources, Nick worked a little bit more on setting up the Firebase database and getting the hobby activity for the app setup and An did some research on Geo Location data. Although we didn't do all that much work this week on the app itself we learned a lot about different Android technologies that we could maybe include in our app. For example, since our app does need some GPS functionality because it is about connecting with people in your area who share your hobby, being able to use ...