5.3 Learnings

One of the main take aways from this project was to develop the app in an iterative loop rather than an incremental fashion. A lot of times I ended up painting the picture in an incremental fashion where in I would complete one app of the ecosystem. Premature optimization is the root of all evil. Even though this was in my mind when constructing the app. I lost the forest for the trees. I was making sure that I don't optimizing the function. But what I had to do was to take in view the entire system complete one whole loop and then start painting in the details. This is something that I would be using throughout my life from now on.

Incremental vs. Iterative

One of the major learnings that I have made in the development of software was that development is better done in loops of iterative improvements than piecemeal incremental stuff. Lack of adoption of this guiding principle turned out to be detrimental even near the end of writing this dissertation when a certain bug in the PDF exporting system caused lose of considerable amount of time. Developing one complete loop and then strengthening it with additional support structures is what I think a superior way to develop software is rather than putting it together incrementally.