Комментарии:
My team shipped the peak of complexity 8 years ago, and progress to develop has been slow ever since. We're making the investment now to cut the worst of it. We've taken the most overcomplex part of de domain, wrote our wish interface for it, wrote an adapter from the old peak of complexity interface to the wish interface, and are now migrating a lot of code to use the wish interface at the cost of performance. Once that's done, we can lose the complexity by reimplementing the wish interface cleanly. Yes, we had to fold more complexity in to get here, but when release + 2 ships, the customers will notice dev time decreases and performance gains. How do we know it's the right path? All code migrated to the wish interface, (which has fewer bells and whistles than legacy) has become simpler as a result, and we know the same holds for the new implementation, and the underlying data. So, at the cost of work, we had to invest complexity, but have a clear path to shed complexity in the data (without losing information), the peak of complexity solution, and every part of the system interacting with it. Sometimes you must navigate up to go down, cause you settled in a local minimum, like a little crater at the peak of a vulcano.
ОтветитьYou mean to say that developing these features is like a computer science PhD (except more people and more time)
ОтветитьThank you for share!
Ответить