Comment by cdoxsey
8 years ago
All too often we focus on performance as the main problem we're trying to solve, when, in reality, our chief problem is managing complexity.
A clever algorithm can often dramatically improve performance, but usually clever algorithms are difficult to understand and their unmaintainability leads them to be abandoned as a project evolves, or, worse, subtly break when assumptions no longer hold. (Its especially hard when working with other developers)
The only example that was coming immediately to mind was a distributed lock. Once you have that primitive available your distributed systems problem can be substantially simpler to implement. Without it writing race-free code is going to be really tricky.
No comments yet
Contribute on Hacker News ↗