git is not the end of history
I hereby am foolish enough to predict that in 5 years for now, we will see a new tool for version control, let’s call it hju, that will attract millions of developers on a promise that could be “hju is like git, but simpler“.
- hju concepts will be a lot like git, you will have commits, branches, sha1, clones, …
- hju will have great interoperability with git. Importing your GitHub repository into hju will be one click. Transforming you hju repository in a git repo will also be simple.
- hju will struggle to find a business model that supports a team strong enough to build a tool concurrent to git. Probably the main hurdle right here.
- hju will not try to have feature parity with git. git can support all the complex workflows you have not imagined yet. The more complex workflow will stay with git. Especially projects like the Linux Kernel, bazaar projects that are completely decentralized, will see no point in migrating to hju.
- hju will instead work hard to make the life simpler for the vast majority of projects where a small number of developers work together, know each other, trust each other.
- git will probably have more users than hju for a long while. But there are enough developers that having for example 20% of the market is completely sustainable.
- hju on the other hand will be focused on the most common usages of version control. It will be designed for usability. It will be significantly harder to fuck up things with hju than with git.
- hju will lower the cognitive load. When submitting a pulll request, you will feel that you are more focused on the task at hand rather than on what your control version tool expects from you.
- hju will discourage practices like rewriting history that makes it so enjoyable to shoot yourself in the foot. It will push the idea that it’s OK if the hju history inside a PR doesn’t look like what should have happened, but instead like what actually happened. It will encourage people to have small PRs focused on one thing and that can be squashed (squashing will be the default).
- hju will have a vastly better learning curve than git. At some points bootcamps and university courses will teach hju rather than git because the ratio of concepts learned over time spent is so much better. There will be great tutorials on the internet on how to learn git if you already know hju.
- hju will just work on Windows and Android
Best case scenario: Microsoft has already a secret internal project similar to hju and will make sure GitHub can make it an implementation detail of whether you use git or hju.
Dear readers, what’s the best and the lamest part in my prediction?
Since you too can predict the future, how do you see the future of version control?