Last week I journaled about what it was like working in an agile environment for the first time. This week we concluded the 2 week sprint and came full circle on the agile process.
Throughout the week, I continued to work on my task of migrating some Rails views to React. With a lot of the groundwork laid in the first week for this task, this week involved a lot more writing in React and optimizing the interaction between Rails and React.
One of the issues that needed immediate fixing was a bug with Turbolinks, a Ruby gem, that was causing React to render components multiple times when navigating with history. This was added to a bug list and needed to be fixed before the end of the week before demos. We used YouTrack for bug logging as well. For this issue, it turned out there are known issues with using Turbolinks and React Router because they both handle the back and forward buttons. I pair programmed with the lead developer to try out different ways of fixing the issue while both using Turbolinks and React Router. In the end, the best fix was to disable Turbolinks on every React view.
As it became closer to Friday, any new code being pushed needed to be reviewed and approved for merging to the demo branch. I remember the importance of having a fresh set of eyes look over my code so it was nice to have my code reviewed and approved as well as review other developer’s code.
Friday morning we had a meeting to discuss what new things have been added to the demo branch and what things were kept out for the time being and why. After our meeting concluded, we presented the updated demo to everyone else. Each developer talked about the new changes they made and walked through the application while doing so.
After the demo presentation, the developers had another meeting where we had a “retrospective”. We finalized what tasks were completed this sprint on YouTrack and moved unfinished tasks to next week’s sprint. Then we discussed what things went well during the sprint, what things could have gone better, and what things could be improved. One thing I felt went well was that the backend and frontend were better set up for future migrating. The API I worked on will become more fleshed out in time and React was set up now with routing and greater compartmentalization for better structure.
It was great learning to work on a larger team, something I hadn’t had the opportunity in my previous coding experiences. I highly valued the chance to have my code reviewed and to see other people’s code as well.