Skip to content

Lessons Learned

manny42g edited this page Dec 15, 2017 · 9 revisions

Third party login

We ran into some issues while trying to implement a Google sign in option into our code. While the Google documentation, We were having trouble incorporating Flow, Credentials, and Storage objects into our code. We overcame this problem by finding a Django component (Social-Django) that takes care of that process for us and we were able to easily implement the third party sign in.

Unit Testing

Testing and viewing the coverage was a very useful tool during our development process. It would show us parts of our code that were no longer used, and help us redesign how we write the code. Sometimes it was difficult and forgetting to set environment variables in all of our environments caused heartache. Django-nose shows coverage and provides a lot of features that were extremely helpful, but created a learning curve. Research had to be done to figure out what was available to us. Overall we learned that new tools can be helpful, but we need to account for the learning curve and not just the benefits.

Testing

We started using RedwoodHQ for automatic testing, but it was a bit difficult to figure out and some other issues with test case creation. We opted to manually test the website instead. Manually was a better option to check if everything was displaying where it should be and allowed us to test button functionality.

Collaboration

Throughout the development process finding time to regularly meet was a challenge. We overcame this by meeting once a week, communicating via Slack, and always updating our Github project board.

Django and ORM

Using an Object-Relational Mapping database was really interesting and helpful, but added some difficulty when changing our models. We are using an SQL database underneath, but did not have to write any SQL statements ourselves. It fit really well with our project, but was somewhat hard to understand in the beginning.

Clone this wiki locally