There's two ways to learn abstract tools.

There's rote learning: if I do this, this happens. This'll get you started.

But real understanding happens when you form a mental model of the tool.

Sounds obvious, yet so many engineers use Git every day only knowing `git commit -am`.

(Of course, this is where I should plug my tutorial that helps you form a mental model of Git in ~11 minutes:

This is a cool tutorial!

However, for myself the most important moment understanding more about git was when I realized a commit is really a snapshot of the whole repository in a given time.

This changed my attitude towards all git operations. Suddenly I understood that basically anything in git is comparing snapshots to each other.

So, you are absolutely right when saying that creating a proper mental model of a tool is crucial.

Sign in to participate in the conversation

Fosstodon is an English speaking Mastodon instance that is open to anyone who is interested in technology; particularly free & open source software.