skip to content

The power of versioning

October 2019

CS approach to compounding

Yes, there are NN number of articles, books, and posts on compounding, and why does one have to take out the time to write one more article on it?

Because of complexity. Not one post alone, nor a finite number of posts can ever achieve victory over simplifying this amazing yet elegant concept of compounding.

Viewing and attacking such a high-dimensional concept from various axes is the only way to either:

  1. Gain a new ‘Aha!’ understanding, OR

  2. Discard how the new axis was particularly not useful to the reader and hope they find a new favorite axis somewhere else.

And when one says compounding to be a high-dimensional concept, it’s only because such non-linear, geometric growth, exponential-based concepts don’t etch into our primitive hardware minds, which like to see things in a linear, arithmetic, low-dimensional way.

Rethink compounding.

How about this: we version the activities, like v0.1, v0.2, v0.3, and so on and so forth.

After every 10th hit, we level up our version.

A 100th level version is far more fluid and gallops compared to the v0.2 iteration. For me, versioning sticks.

Versioning involves compounding; however, it does not shock the user in terms of seeing the end objective’s grand mountainous vision. Instead, it demands getting started with the smallest achievable step and versioning it while saving the last status of it.

The next time one picks up the state, they can restore the session and version a higher upgrade.

All the while, just deeply observing and interacting in that state’s version, and nothing ever more matters.

If a framework can enable us to solve the nitty-gritty details of providing a space to version our goals, save end state, and log it, that would be great.

So how can one live that in spirit and accomplish the missions and visions in their life?

It’s by outright starting with a very basic working prototype, because we don’t always find the perfect idea, the perfect start, the perfect friend, and many other aspects in life; they are always versioned.

They start raw, untamed, and imperfect, and it’s always in the means toward being that we keep on improving. Again, they never reach perfection, but their journey continues; improving by version after version, we reach a much more refined idea, a much more user-friendly product, and a much better friend.

What matters is that despite the odds, you continue to stay in love, stay interested, stay in a job. It’s hard, the void looks upfront in your eyes, meaninglessness stares, yet despite all that, we gotta stay and keep on versioning.

At the core of versioning lies genuine observation, and much deeper lies interaction with the real world. Because at the core, the real world provides feedback, and with every feedback, the system inherently finds advantage over a system that lacks it.

Just thinking is an example of a process that lacks feedback. Thinking and interacting (building a prototype, simulating, versioning) is fully loaded with feedback.

The choice is ours: whether just to think, or to think and version.

Not Coherent

This post itself is a direct outcome of versioning and does not flesh out the idea of what one understands and what one has conveyed, and which deserve versions of their own.

[diag req]

So many times, one feels a sense of lacking in the self, because despite reading many self-help books, one is not able to intuitively integrate a concept into their lens of how they view and interact with the world.

This post acts as one in a series (possibly) to give a shot at integrating these abstract concepts, which, if done correctly, will help us in seeing things in a non-linear, geometric, and natural way and take maximum leverage because of their abundant applications in this single-player game called life.