Helmes Summer Bootcamp 2017

Helmes Summer Bootcamp 2017

Thursday 24 August 2017

Day 18

Our last days here. We're wrapping everything up and trying to finish off the stories we have left. During the stand-up we informed our PO, that we have a version on the test environment that is close to the final release for the sprint.

My task today was to load the data from our part of the system to the existing system using JavaScript. As I had started with that task yesterday and completed half of it already I was confident of finishing the task before 2 pm. Without much resistance I managed to complete the task just before lunch. As I asked my teammate to deploy the changes a familiar demon rose from the depths of our code. The attachments. As we were very close to completing our sprint my teammate took on the bug of being able to upload files larger than 100mb. And he succeeded! All is well.
Trying to load a contract with attachments

Now armed with our giant files the application felt like a Kia Cee'd, in the winter, with summer tires, on ice. After debugging the problem with our mentors we determined, that the fault was in our global usage of the dbset, which lazily loaded the attachments with every contract you accessed. After rewriting our usage the application was loading our contracts with blistering speed once again. Yay!

Everything else taking advantage of our glorious lazy loading however was now broken. With some trial and error we started weeding out the troublesome places. This was no simple task since writing the project has been a team effort so we didn't know where someone might have used lazily loaded attachments. Also each person themselves hardly remembered the places where they used our beloved attachments.

After many hours of not very effective debugging we managed to get a working demo out. When we left the Java team was still there, God knows what they are doing there. The demo is at 9:30 am. Testing is at 9 am.