Often at the beginning of a larger project you have the choice to structure the project and the data in a certain way.The intentional choice of a table structure or the assignment of functions to certain classes determines the later day-to-day performance as well as the optimal maintainability.
For example, I currently have to revise a project for which the customer wanted only a few input data and a simple layout about a year ago. So at the beginning of the preparations it was decided that the data should be in a kvs and that the interface should have only one layout. So a Q&D version was created and handed over. In the meantime the project has grown due to desired upgrades and is hardly manageable due to the immense time needed for maintenance. My conclusion: "Quick is ok - but it must remain understandable without comments even in small nontrivial projects".
Have you ever made a hasty decision that later required extensive revisions and the transfer of customer data into new structures? (KVS or database? All code in main module or multitier architecture? Custom types vs maps? )
For example, I currently have to revise a project for which the customer wanted only a few input data and a simple layout about a year ago. So at the beginning of the preparations it was decided that the data should be in a kvs and that the interface should have only one layout. So a Q&D version was created and handed over. In the meantime the project has grown due to desired upgrades and is hardly manageable due to the immense time needed for maintenance. My conclusion: "Quick is ok - but it must remain understandable without comments even in small nontrivial projects".
Have you ever made a hasty decision that later required extensive revisions and the transfer of customer data into new structures? (KVS or database? All code in main module or multitier architecture? Custom types vs maps? )