Many people born in the 90s like me have witnessed how fast the Internet has been developed and spread. The areas of use of the Internet can be described as numerous, but in my opinion, the biggest advantage is that it enables us to access the most up-to-date, top-notch information in any field. As a matter of my profession, I have to read articles on software development and examine new patterns. I take notes some of what I have read and try to apply them in my current projects. This is a good approach however, it can keep you from your own path and constantly push you to make your code perfect as much as possible. If you become obsessed about the patterns, your code may get ahead of your idea waiting to be implemented.
According to estimates, the average lifespan of mobile applications is around 1 year and and during that time at least 3-4 updates of that app is produced. Do you think there is a need to scrutinize the code so much? How logical is it to build neat and flawless structures without being completely sure that your idea has a real buyer?
In that manner, I follow two different scenarios. If I write an enterprise app, I choose methodical way and try to keep everything is well-documented. However, I choose fastest way and don't addict to patterns if I need the reactions against my idea.