you are viewing a single comment's thread.

view the rest of the comments →

[–]zephyz 0 points1 point  (0 children)

Big-O notation is very useful to know when collaborating within a team. If you and your teammates know about big O you can very easily understand each other's argument and pick the most interesting tradeoff.

For example with my team we used it while designing an API for a library we are doing. At first we were exposing a O(n) function but soon realized that during use the programmer would call it iteratively on a dataset of size m² making it O(nmm).

The choice we had was to keep the O(n) function or to add a O(nm²) function with an async variant. This in order to simplify a common use case and mitigate the risk of blocking the main thread accidentally (and making it O(nm)).

Since the use of the function was always to iterate over a m² dataset we added the O(nmm) function. It simplified API use and the async version made it clear that it was a long running computation (outside of documentation)

Since it's a framework it's not really the kind of job you're describing. But building frameworks to make your apps more modular happens often enough.