The bug tracking and resolving solidified my respect for branching the code often to search for solutions. This made it easier for me to abandon a venture if it wasn’t working out without doing a bunch of resets on the semi-stable code base and also compare the two more effectively if necessary. I didn’t really start doing this until the bug troubleshooting phase, but I am starting to see how it could be more beneficial in the primary development as well even as a single developer.
The main learning resource that helped to kickstart my understanding of React was the excellent course by Wes Bos at React for Beginners. Wes does a great job explaining the various stages of building a React app, how to handle properties and state, authentication with Firebase, and more. What really helped me was building out an actual application while following the videos. I referenced the videos and the code written through the course multiple times while building out this app, and I know that the learning process would have been substantially longer had I not started with his course. I have no affiliation with Wes or his courses, but am a highly satisfied customer who will likely look to his other courses should I desire to learn their topics. The basic package of the course is currently $72 and the full package is $98. I highly recommend it as a resource if you a just starting to learn or want to learn React.
I again decided to go a bit beyond the user story requirements for the Free Code Camp project by implementing percentages and the ability to toggle a number from being positive or negative. I'm happy that I did this as dealing with the percentages required a slightly different way to handle responses when the button is pushed depending on what value is being modified. Additionally, thanks to the recommendation of a friend, I decided to add keyboard support for this app which was also a first for me. I can understand why FCC doesn't expand the projects to include more nuances and edge cases like these. For me, the added challenge of figuring out how to do something that I had not done before or that may require some more nuanced logic, was valuable. It stretched me a little bit more, and I believe helps to prepare me for future problems.
The next project that I am starting and have a rough game plan for is a version of the Pomodoro timer. This is the second of the four advanced front end projects for Free Code Camp. I'm also looking at developing that project in React.
There are a total of 4 states managed within the calculator app: the display, the previous value in an operation, the current value being manipulated, and the operand stored to complete an operation.↩