Tonight I learned about authentication with firebase. It was much simpler than I expected. It has it all built in, so the bulk of the work is simply in getting api keys for the different services and then putting them in the right places. I set up facebook and github logins in about 10 minutes! I can see why developers like to use these types of things.
On the other hand I was hoping to see something like what I learned in my python class about salted hashed passwords. I can also see a strong benefit to not trusting monolithic companies and their fickle ways with all of my user accounts. Maybe I will look into hashing in js.
Firebase continues to feel really nice. Simple even. I’m not sure about how one would back it up, but hopefully there is a way. If not then I wonder how much you need to worry about data loss with them. I’d hate to build my app on this and then lose all of the customer data at some point with no hope of retrieval.
I also did a lesson on propTypes. I can see the benefit of using them. I wonder if this is similar to using a more strongly typed language. Right now I’m juggling testing and propTypes in terms of “I know I should do this” versus “yeah or I could actually get it working” and I doubt that dichotomy will ever go away.
I also listened to a good podcast all about eslint. I’d love to get comfortable with installing and using that so that it could be used on group projects in the future, but I’m afraid that it might be too big of a push and that any extra energy (if that exists in a boot camp) should be put into features and possibly testing. Even in a rush job with new devs I could see tests still being very helpful, and I could even see that being true with “happy path” testing. I think that is basic functionality testing vs edge case testing. Anything that can warn when a merge breaks the app would be a good thing in my book, especially with new devs who are not confident in both coding AND git workflows.