This article originally published on jarednielsen.com
Will it scale?
That is the question.
Big O helps us answer it.
Programming and problem solving are both metacognitive activities. We think about thinking. Big O is one more tool in our problem solving toolbox. While Big O is specifically used to calculate the order of a function, we can extend the mindset to problem solving (and life) in general and ask ourselves, ‘how can we improve?’
I’m an entirely self-taught developer. I’m lucky. I was never asked any questions about Big O in any technical interviews.
Did I need it?
No. I got by just fine without it.
Would it have helped?
If you didn’t take the traditional, academic route to programming, there’s no urgency to learn Big O. There are too many other things to keep up on: libraries, frameworks, the latest spec! So Big O falls by the wayside and we hope it never comes up. If we do carve out time to learn it, it’s most likely in preparation for a technical interview.
Will you scale?
That is the question!
The following list is a ‘table of contents’ of my articles about Big O. They weren’t all written in this order, but this is the order I recommend you read them. If you think otherwise or think there’s something missing, let me know on Twitter @jarednielsen.
If you want all this (and more!) in one package, pick up a copy of The Little Book of Big O.