The Superlative Guide to Big O

Jared Nielsen - Jan 13 '21 - - Dev Community

Is there a computer science topic more terrifying than Big O notation? Don’t let the name scare you, Big O notation is not a big deal. It’s very easy to understand and you don’t need to be a math whiz to do so. In this series, you’ll learn the fundamentals of Big O notation with side trips in dynamic programming and proof by induction, all using examples in JavaScript.

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?

Yes. Immensely.

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!

Big O: The Superlative Guide

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.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .