5 ms·
Git is just repeating all the same mistakes all over again, just when it looked like things were starting to maybe get a bit better. I'm amazed you're citing th
by blakeyrat 10y ago
Git is just repeating all the same mistakes all over again, just when it looked like things were starting to maybe get a bit better. I'm amazed you're citing that as a positive example.
- haldean 10y agoIf you're going to hate on something almost universally respected, you're going to have to explain yourself.
- blakeyrat 10y agoGit was made in, what, 2005. We knew about discoverability then. We knew about accessibility then. We knew about user testing, about UX. Git makes use of zero of those concepts. In fact, it seems to be actively hostile towards its users^. We also had source control packages that were not only easier to use, but had more features: TFS let you put a lock on files that don't merge well, for example. Both TFS and Subversion allowed you to check-out only small portions of the repository. Git has some nice things. It's generally fast, for example. It allows developers to work offline. But when the developer community apparently unilaterally chose to adopt it, we threw away a lot of good stuff, let's not forget that. I'd also question that Git is "universally respected". I've worked with a great many programmers who found it just as unpleasant and unfriendly as I do. The reason people use Git is because other developers demand it as a condition of employment, not because it's enjoyable. In that respect, it's in the same class of application as, say, OracleApps or Lotus Notes. --- ^ Yes, someone's going to come in here and say, "well it's a professional tool for professionals therefore it's ok that it's difficult to use and hostile and not accessibility to people who can't use a CLI due to physical limitations because it's a professional tool for professionals. Well. Sony Vegas is a professional tool for professionals, and somehow it doesn't have even remotely the amount of usability problems Git does. So is Adobe Photoshop. So I don't buy that argument.
- mixedCase 10y ago> Yes, someone's going to come in here and say, "well it's a professional tool for professionals therefore it's ok that it's difficult to use and hostile and not accessibility to people who can't use a CLI due to physical limitations because it's a professional tool for professionals. Oh that's nonsense. First of all, because git is a CLI application you can easily build a GUI for it, and there are a lot of them for you to choose. You can't do the reverse, and good luck integrating your tightly coupled WinForms application with other tools. Second, what "physical limitations" put people into a position where they can code but they can't use a CLI? > Sony Vegas is a professional tool for professionals, and somehow it doesn't have even remotely the amount of usability problems Git does. So is Adobe Photoshop. So I don't buy that argument. Multimedia artists are among the people who are most resistant to ever switch tools due to how much they have mentally invested into the complexities of their go-to application. Your example is far from good.
- joesb 10y ago> Multimedia artists are among the people who are most resistant to ever switch tools due to how much they have mentally invested into the complexities of their go-to application. Your example is far from good. And here we are talking about people not wanting to use IDE because how much they have invested in their favorite work flow mental model.
- josteink 10y ago> Oh that's nonsense. First of all, because git is a CLI application you can easily build a GUI for it, and there are a lot of them for you to choose. You can't do the reverse, and good luck integrating your tightly coupled WinForms application with other tools. While I agree his example (TFS) is rubbish and all that, I'll hand it to Microsoft that they've at least considered developers. TFS source control comes with fully scriptable command line tools, not to mention a web-based API. You can automate TFS-based processes. The WinForms are just there to make it more useable for end-users (and obviously because nobody else is going to bother making a GUI for this source-control system)
- jimbokun 10y ago"Second, what "physical limitations" put people into a position where they can code but they can't use a CLI?" It's not the lack of a GUI, it's that the CLI interface is very poorly designed.
- chetanahuja 10y agoThe fact that git man page generator is so successful at creating pages full of garbage indistinguishable from the real thing should be a hint https://git-man-page-generator.lokaltog.net/ https://git-man-page-generator.lokaltog.net/
- josteink 10y ago> We knew about user testing, about UX. Git makes use of zero of those concepts. In fact, it seems to be actively hostile towards its users^. I was with you all the way here, and then suddenly... > We also had source control packages that were not only easier to use, but had more features: TFS let you Suddenly you mention TFS as an example of something good. Mind blown. TFS is absolutely among the worst "popular" version control systems I've worked with, and maintaining several branches and merging between them is pure hell. In TFS a branch is something heavy which moves at tectonic speeds. Trying to maintaining agility in a world of TFS is just not viable. > TFS let you put a lock on files that don't merge well, for example. A "key" feature which more often than not is a source of problems you only have with TFS. 90% of the failed merges I've had with TFS has been because of its completely inadequate handling of binary files. > Both TFS and Subversion allowed you to check-out only small portions of the repository. This has nothing to do with Git specifically. This is a difference between centralized and distributed. If you want the benefits of distributed source-control, you'll have to pay the cost. > I'd also question that Git is "universally respected". Yes. Universally will obviously be easily disproven. I'd say "widely respected" instead.
- blakeyrat 10y ago> Suddenly you mention TFS as an example of something good. You need to work on your reading comprehension. The only claim I made about TFS is that it has a feature (locking files) that Git doesn't. I cited it as an example that Git has fewer features than its competitors. I never said anything about its quality. > This has nothing to do with Git specifically. This is a difference between centralized and distributed. If you want the benefits of distributed source-control, you'll have to pay the cost. Fine; but that's not the point. The point is it's a feature that I want. And now that Git has seemingly taken-over the field of source control, I no longer have it. Nobody does. It's gone. I'm not a fan of newer software having fewer features than older software.
- josteink 10y ago> I cited it as an example that Git has fewer features than its competitors. I never said anything about its quality. Fair enough. > This is a difference between centralized and distributed... Fine; but that's not the point. The point is it's a feature that I want. But file-locking is realistically just not implementable in a distributed source-control system. This sort of mechanism does only have a home in centralized architectures. > I'm not a fan of newer software having fewer features than older software. This may be a nitpick about the way you decided to express yourself, but just in case: Your math is wrong here. You've had 1 capability you appreciate removed, while having tons of others added. That still yields you new software with more features, not fewer.
- noir_lord 10y agoI'm a vote in the got sucks camp, its not universally respected amongst the programmers I know we just put up with it because its dominant. I always preferred mercurial but that fight is largely lost, I could use a mercurial -> whatever bridge but I'd still need to know git for when things break. Git's ui is simply horrible in my opinion.
- blakeyrat 10y agoI want to thank you for posting. I know that the groupthink around Git, especially on forums like this one, is so powerful that by even mentioning that Git has flaws and isn't some kind of angelic perfect software from heaven runs the risk of having a billion down votes.
- noir_lord 10y agoPeople get silly when it comes to tools they've invested time in, lots of people don't like to think they made the wrong choice and will defend it often to the extreme, I don't get invested in tools I use what works for me and switch when it seems reasonable. Git is a necessary evil basically.
- blakeyrat 10y agoWell like I said above, I look at it as a "condition of employment" piece of software. Nobody would us Lotus Notes for email if they had their own choice in the matter. Nobody would use OracleApps for time keeping if they had their own choice in the matter. No, you have to use it to be employed. Unfortunately, software in that particular niche has to be really good or it'll engender a lot of hate. If you're Skype, people generally don't mind because Skype is relatively easy and pleasant to use. If you're Git, people are going to hate you.