Hacker News new | ask | show | jobs
by Aga 4943 days ago
Albert Einstein is attributed with a great quote: “Everything should be made as simple as possible, but no simpler.”

I would argue that in the case of Git it's not about a single design decision. The whole design is very simple and easily understandable. Thus everything can be derived from the design decisions.

The design decisions also have clear rationales.

"Why something is better" and "why something has "won"" are of course different questions that deserve different answers.

1 comments

Having taught Git to a number of people, I disagree that it’s easily understandable. It’s easy to understand the general idea of how it works, but actually productively using it is an entirely different matter.

Of course, I may also be a terrible teacher.

I too have been teaching Git for many years now.

I find it easy to teach, thanks the concepts being simple and clear. I don't have to transfer a lot of information before people can start reasoning about things themselves and independently finding out more.

I always try to make sure people understand two things:

1) The history tree (==how to read the metro-map that is gitk)

2) Distribution, that you are responsible for syncing with others, not the other way round

Almost everything else I prefer the students at least try to figure out themselves.