Data says Git is officially the world's most woeful piece of software

Monday, April 15, 2013 / Posted by Luke Puplett /

When computer programmers have a problem, they turn to StackOverflow. The site has a great feature to vote-up a question, so rather than ask the same question, you can say "Me too" by casting a vote.

So what then is the software with the highest voted questions?

Overwhelmingly, Git.



Problems with Git are responsible for 1 in 5 of the top-voted questions on StackOverflow, which is really saying something when it is such a small tool compared to say, an entire language.

So next time you're having problems with Git and someone tells you its not Git's fault, don't blame the tool, you can point out that it actually really is the most woeful programming software in existence today.

There's a lot of hate for Git but it also has a very active and noisy tribe of supporters, that get very defensive when people dare to criticize Git. Of course, the problem is that criticism and confronting problems is the first step towards making improvements, which banishes Git to an ugly status quo.

Labels:

3 comments:

Anonymous on Wednesday, April 17, 2013

(To put my response to some context, I've just answered your Git question on SO and landed here through viewing your SO profile).

I think you might slightly miss the point with your estimation.

As a relative old-timer reading/answering questions tagged "git" on SO I may assure you that some 90% of them are just outright newbie questions asked by people who don't bother to read a book before starting to use a tool and don't bother to search SO first, too.

The problem here is that Git is a complex tool. And I do not mean suboptimal UI alone (it's suboptimal, right). It's just plain complex and this complexity is not reducible. Now consider the fact that Git is the de-facto VCS for many F/OSS projects *and* web development. I do not quite understand why web-development appears to be so Git-centered, but that's just what I see on SO. And, ahem, web development is where many newfangled programmers do their first steps, and face Git.

Another point is that Git does active inroads into "the Enterprise", mostly meaning small commercial firms. It's no surprise many of them write for Windows or are even Windows-only shops. So when such people face the need to set up server-side Git on a POSIX machine, mess with SSH keys etc they enter an uncharted (for them) territory. Working with SSH and its PKI is a no-brainer for any Unix hacker but not that for a Windows user.

TL;DR
I think that's not exactly Git itself which accounts for such a proliferation of SO questions related to it but rather its overwhelmingly popularity (yeah, it's a fad) combined with low skills of those who just start working with the tool combined with the tools' complexity.

Another

Comment by Rich Stewart on Wednesday, October 26, 2016

Have you tried Subversion?

I don't agree that git is as awful as you say it is; perhaps a great deal has changed in the last three years, also.

TFS version control is not that wonderful either. I think that one of the chief problems is that people don't stop to think about what they're doing with these powerful tools. Git has a very steep learning curve, as does something like Emacs. But if it's a tool you're going to use a great deal, then it's worth the trouble to learn to use it properly, right?

And git merging is very powerful when used properly. It's just hard to use it properly, and it's hard to use properly because merging two lines of development can be intrinsically difficult. That is not git's fault.

Comment by Luke Puplett on Wednesday, October 26, 2016

I love Git and I push for it when a team at a contract/gig isn't using it. It's a brilliant, powerful and "simple" tool (in the serverless sense).

However, its CLI is completely terrible. It has improved a bit, and now I'm very familiar with it I've lost the clarity you get when you see something through stranger's eyes, but doing anything but the basics in it is a terrible experience and the data reflects that, not-to-mention first hand experience of people's reactions when I introduce them to it.

It's, um, organic.

Post a Comment