β€œBe consistent”, they say.

But why?

Have you ever heard of the compounding effect?

Or exponential growth?

I'll show you how all these are connected, with real-life examples πŸ‘‡πŸ§΅ Image
I'll let you in on a little secret: I have a personal goal on Twitter.

The goal is to grow by 1% every day.

That's just that.

Every day, I want my follower count to increase by 1%

If you are anything like me, you might be thinking:
β€œIsn't 1% too little? You're gonna take ages to grow!”

Well...

Is 1% that little?

I'll show you it isn't!

First, here's a screenshot of my growth in the beginning of my Twitter journey πŸ‘‡

Let's work with those numbers... Image
On the 6th of August, I woke up to 257 followers.

If I had grown 1% on that day, how many followers would I gain?

1% of 257 is 2.57, so I'd get 2 or 3 followers...

Not much, right?

Except...
Those 2 or 3 followers represent a growth of 1%.

1% is a relative measure, not an absolute one.

1% is always 1%, regardless of whether I have 257 followers or 257k.

So, if I keep growing at the rate of 1%/day, where will I be by the end of August?
Hm, growing at 1%/day,

I'd wake up to 257 Γ— 1.01 followers on the 7th of August.

Then, I'd wake up to 257 Γ— 1.01 Γ— 1.01 followers on the 8th.

Then, I'd wake up to 257 Γ— 1.01Β³ followers on the 9th.

,,,

And I'd wake up to 257 Γ— 1.01²⁢ β‰ˆ 333 followers on the 1st of September. Image
Well, still not much, right?

We can even look at the growth graph, and it'd look like this πŸ‘‡

Pretty much a line.

The thing is, we are too close to the graph!

Let's zoom out a bit in the next one... Image
If I keep growing at the mere rate of 1%/day...

Where will I be in one year?

How many followers will I have on the 6th of August of 2022?

Well, let's plot it! πŸ‘‡ Image
After 1 year, I'd be at β‰ˆ9,710 followers!

How come ⁉⁉

That's just 257 Γ— 1.01³⁢⁡

What seemed like a slow start, actually picks up the pace quite fast!

Just look at the graph again πŸ‘‡

It starts as a β€œslow line”, but suddenly it β€œcurves up” and explodes! Image
That's the power of consistency and compound growth.

Small improvements build on top of themselves.

1% improvement looks like a small thing.

But if you do 365 small improvements of 1%, one on top of the other, do you know how much better you get?
If you do 365 of those 1% improvements, you end up 37Γ— better at whatever you were doing!

After just one year!

Isn't that amazing?

E.g., if you increase your follower count by 1% every day, you'll 37Γ— your followers in one year!

Now, here comes the β€œparadoxical” part...
At +1%/day, how many days does it take to double your follower count?

Care to guess?

Or, rather, try computing the answer.

I won't spoil the answer for you yet.

πŸ‘‡
You need 70 days to double your follower count.

The graph below πŸ‘‡ shows how the β€œimprovement multiplier” grows with the days passing by.

(This is just the 1.01 to the power of the number of days elapsed.) Image
Doesn't the 70 look like β€œtoo much”?

Like, in 365 days my followers grow by 37Γ— but it takes SEVENTY days to grow 2Γ—?

But it makes sense, if you think of it...

In 70 days, followers Γ— 2, so...
In 140 days, that's followers Γ— 2 Γ— 2, which is followers Γ— 4.

Then, in 280 days, that's followers Γ— 4 Γ— 4, which is followers Γ— 16.

See how these things quickly stack up?

Isn't maths amazing? ✨
So, we can see something here.

This compounding effect translates into using exponentiation when we do calculations.

That's why this is called exponential growth.

Because the growth is modelled by an exponential function.

For my 257 follower example, what's that function?
In Python 🐍, we could implement it as follows πŸ‘‡

It's just the initial number of followers, with `Γ— 1.01` written in front of it a bunch of times.

β€œA bunch of times” is as many times as days elapsed, and we can condense that as an exponentiation operation.

Making sense..? Image
I hope so!

Here's another very-real-life-example.

Suppose you have $100 with you and you decide you want to invest it.

You find that, for example, stocks can easily fluctuate 3% in a regular day, so you settle for a β€œconservative” investment goal: Photo by Gilly on Unsplash
You want to grow your money 0.5% each day.

That's not that much, right?

If you do manage to grow your money 0.5% each day, and started with $100, how much money will you have after 1 year?

That'd be approximately $617.47 😲

And after 2 years? Image
That'd be approximately $3,812.63 😱😱😱

Ok, ok, ok.

At this +0.5% / day rate, how long would it take for you to have $1M?

Can you figure the answer out, without using trial and error?

I'm effectively asking you to find the value of `n` in this code πŸ‘‡ Image
If we want to go from $100 to $1,000,000, our money needs to grow by Γ—10,000.

Hence, we need that 1.005 to the power of `n` be greater than or equal to 10,000.

We can find `n` using the logarithm function πŸ‘‡

(We round up with `ceil` to figure out a whole number of days.) Image
If you don't know the `log` (logarithm) function, think of it as the function that plays a game with you.

Say you want a number, call it `base`.

Now you decide a `target`.

You want to exponentiate `base` to get to `target`...

E.g., how to exponentiate 2 to get to 32?
2⁡ = 32
So `log(32, 2)` is 5.

The logarithm just tells you how to reach the target!

In maths notation, we'd write logβ‚‚ 32 = 5.

My `base` was 1.005 and I wanted to reach the 10,000 multiplier.

That's why I did `log(10_000, 1.005)` to get my `n`, the answer to the challenge.
`n` was 1847 days, which is just a little over 5 years!

That sounds ridiculous, doesn't it?

Starting with $100, if you grow your money 0.5% / day, you become a millionaire in a little over 5 years.

Well, IMPORTANT disclaimer 🚨:
⚠ Be advised that the example above only went through the mathematics of investment growth.

It is theoretically possible to do what I described.

But it is ALMOST impossible to do it in practice.

Invest money at your own risk.

Enough with that, one final (SHORT) example:
Say you go to the gym to lift weights πŸ‹οΈ

You are out of shape, so you start with a mere 10kg when exercising the legs.

But you want to see evolution, so you decide to increase weight by 1% each training session.

Sure, if you can do 10kg, ...
I'm SURE you'll be able to do 10.1kg the next day.

What's 100g? 20 sheets of paper?

You won't even feel the difference.

So you set the goal. Increase the weight by 1% each day.

In 70 days you'll be lifting 20kg with little effort.

But what about in 1 year..? πŸ€”
In 1 year you'd be lifting more than 370kg...

And in 2 years you'd be lifting more than 14,000kg.

That's more than 10 average cars πŸ˜‚πŸ˜‚πŸ˜‚

What's the moral of this story?

Just because calculations work, doesn't mean that real life behaves like that:
Some things CANNOT grow exponentially...

For example, the amount of weight you will be able to lift probably looks like a different type of curve, a logistic curve πŸ‘‡

Its start LOOKS like an exponential, but eventually stagnates. Image
Maybe I'll tweet about the logistic curve some other time 😊

That's it for now!

If you like concepts like this explained in simple terms and with good examples, follow me for more: @mathsppblog

Also, it'd help a lot if you retweeted the beginning πŸ™

Finally, thank you, @guilatrova, for the picture you took and tweeted, which inspired me to write this thread.

I also got one of the images above from @unsplash.
Here's a TL;DR:

- small gains accumulate over time;
- ↑ is explained mathematically with exponentials;
- logarithms do the inverse operation;
- 1%/day means Γ—2 after 70 days and more than 37Γ— after 365 days; and
- don't forget to check reality before doing calculations!

β€’ β€’ β€’

Missing some Tweet in this thread? You can try to force a refresh
γ€€

Keep Current with Rodrigo πŸπŸ“

Rodrigo πŸπŸ“ Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @mathsppblog

2 Oct
πŸ› πŸ‘€ On the 23/09 I challenged myself to go from 2.95k followers to 4k by the end of the month 😱

That was +1.05k followers (+36%) in 7 days.

On the 1st Oct I woke up to a little over 6k followers πŸŽ‰πŸ”₯ that's INSANE!

Thanks for your support!

Here's a recap of these days πŸ‘‡πŸ§΅ Image
First off, for reference, here is the original tweet with the public challenge:

In the original tweet I said that my strategy would be to publish a high-value thread each day.

For my challenge to be met, I had to grow β‰ˆ4% each day.

Here's a breakdown of the number of followers I woke up to each day, with the % change relative to the previous day. Image
Read 13 tweets
2 Oct
I love the `enumerate` Python 🐍 built-in!

I love it because your `for` loops become much more readable ✨ if you know how to use it.

Here's a thread πŸ‘‡πŸ§΅ on how `enumerate` will make your Python code so much better.

Let's go πŸš€ Image
Python's `for` loops are amazing!

And yet, many people write too much stuff in their loops.

For example, if you just need to go through a list, you shouldn't be writing this πŸ‘‡ Image
In Python, you can just β€œgo through lists”, you don't need to compute the range of the length of the list!

Instead of the above, you can just write this πŸ‘‡

This is better because you can read it as β€œfor each colour in the list `l`”. Image
Read 16 tweets
29 Sep
I challenged you πŸ†...

You delivered πŸ’ͺ!

I asked you to implement the sign function in Python 🐍.

Now I'll go over some alternatives and tell you what I like βœ… and dislike ❌ about them.

I'll also tell you which one I think is the best, most Pythonic ✨ one.

πŸ‘‡πŸ§΅
By the way, for reference, here is the original challenge:

Let's start with the β€œbasic” `if: ... elif: ... else: ...` approach first.

Gets the job done, is simple, and is easy to ready.

Funnily enough, the only one to share that solution was a _very_ seasoned Python 🐍 programmer, author and trainer, @dabeaz πŸ™ƒ

Now, a couple of notes:
Read 28 tweets
28 Sep
Interested in improving your Python 🐍 skills?

πŸ€” If you are, have you learned about conditional expressions?

Here is a MEGA thread πŸ‘‡πŸ§΅ teaching you almost everything there is to know about conditional expressions!

I will include a bunch of examples πŸ–Ό, so don't worry!
This is the follow-up to my experiment from earlier today.

I tried teaching you about conditional expressions without words 😢.

Here is the original thread:

Alright, so conditional expressions aren't that hard, really.

It is just an expression: a piece of code that evaluates to a result.

But then, it is tied to a condition: depending on whether the condition is truthy or falsy, the final result changes.

Check the function below:
Read 30 tweets
28 Sep
πŸ€” If you are learning Python 🐍, I want to do an experiment:

Here's a thread πŸ‘‡πŸ§΅ teaching you conditional expressions.

BUT, I will teach you with NO words 😢

I will only show code snippets and examples.

Check the thread out carefully πŸ” and then give me your feedback!
By the way, if you want to learn something from this thread...

I'm not going to lie, you'll have to focus πŸ”.

Also, what's the rationale for this crazy πŸ€ͺ thread?

By reading code and examples, you see first-hand how the feature is used and where it comes in handy.

Let's go:
Read 17 tweets
26 Sep
Have you heard that Python 🐍 3.10 will be released soon?

Are you ready for when it drops πŸ’£πŸ”₯?

Python 3.10 will ship with the new ✨ match statement, and I created a cheatsheet just for that.

This is also a thread πŸ‘‡πŸ§΅ that breaks it down and explains everything:
The cheatsheet is free and teaches you 12+ things about the new `match` statement.

From the basics, to object destructuring, to wildcards, among other things.

Get it from the link πŸ‘‡, and keep reading below to learn all about the `match` statement.

mathspp.gumroad.com/l/cheatsheet_m…
In its most basic form, a `match` statement kind of resembles an `if` statement.

That's what most of the β€œswitch” or β€œmatch” statements in other languages do: a series of `if` / `elif` / `else` statements.

Even a basic `case` is powerful: use `|` to separate multiple options. Image
Read 23 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(