My experience with my very first react/redux application
Well, that was rough. When I first started to learn react, I admittedly found it incredibly challenging. When I was then introduced to redux, the amount of confusion I faced was indescribable. However, like all my previous projects, the satisfaction of having a functional application was well worth the stress that was brought on during the production.
For my rails application, I created Physio, a way for rehabilitative therapists to track their patients through locations and offer diagnosis. Similarly, PocketDoc does the same thing, just using react. At first, I attempted to create an application called OddJobz, an application that matched the demand for a job with the skill of a laborer. That soon proved to be too overambitious as the project requirements simply did not need all the features I planned on adding.
So, I switched gears. I went back to the drawing board with the mindset that genius is often bred from simplicity and I would have all the time in the world to add a bunch of cool stuff after I graduate.
The real challenge was redux. Sure I could regurgitate text from Flatirons curriculum but I really did not know how to put it into practice. If it wasn’t for the patience of my project lead who must’ve explained the redux flow to me dozens of times, I probably wouldn’t have gotten to this point. Nonetheless, a diagram he created has really helped with my understanding of all the little steps needed to change state via redux.
What was particularly interesting was creating a form with react/redux. As you may know, if a user inputs information into a form, it would require either a post or patch request (it was patch in my case). My aim was to populate a string of an already existing model which I thought I did. In fact, the binding.pry I placed in the backend confirmed that I was, at the very least, hitting the ‘edit’ method in my ruby backend. But, as another lead explained, the problem was that I was returning the same patient value without the actual update. Once I created a new updated patient variable that accounted for the updated patient, it worked like a charm.
This project was ultimately a blast to work on. Although I have so much more to learn, the confidence I’ve gained from this project is immeasurable.