5 ms·
Git's UI is unbelievably bad. However, it's practically impossible to avoid learning how to use it these days, so "much better UI than git" will never be a comp
by roca 7y ago
Git's UI is unbelievably bad. However, it's practically impossible to avoid learning how to use it these days, so "much better UI than git" will never be a compelling selling point for an alternative VCS: almost its entire target market has already paid the cost of learning git.
That problem could be gotten around if there was some enormous pool of potential VCS users who aren't using VCS currently but would if there was a better one. I don't think there is.
- HALtheWise 7y agoThe obvious pool of people who don't currently use VCS's is everybody who mostly deals with files that aren't plain text. Using git to collaborate on Photoshop documents, Word docs, Jupyter notebooks, videos, or any other non-plain-text format is a frustrating nightmare, and a VCS solution that provided revision tracking and collaboration for all those filetypes would open up a new set of users.
- james_s_tayler 7y agoJust use SharePoint.
- spderosso 7y agoHowever, it's practically impossible to avoid learning how to use it these days, so "much better UI than git" will never be a compelling selling point for an alternative VCS I think this is true if you think the target market for VCSs is professional software developers only. But there are other people writing code that might care less about the fact that Git is the standard for professional software development and don't want to pay the cost of learning or using Git: data scientists, scientists in general, new media artists, most high school students, etc. I've had a hard time selling Gitless (https://gitless.com https://gitless.com) to undergrad CS students, but it is easy to sell to non-CS students that write code. That said, GitHub is a big thing so any new VCS probably needs some story for Git-compatibility. Even tools that have built-in version control like Overleaf have some way of synchronizing with Git repos.
- roca 7y agoThanks to Github, git is the standard for non-professional software development as well. My kids are in high school and they're using it. Gitless looks great. It looks like you nailed all the main issues I have with git. If you ensure that people never have to use the regular git interface, maybe it'll take off. I hope so! BTW Daniel was my PhD advisor :-).
- spderosso 7y agoThanks to Github, git is the standard for non-professional software development as well. My kids are in high school and they're using it. Yes, but maybe they care less about using Git compared to another VCS as long as the other VCS interacts with Git and they can put their repo on GitHub. The question is: If you can use a VCS that is easier to learn/use than Git and that is compatible with Git so that you can put your repo on GitHub if you want to, would you use it? If no, why? My guess is that most professional programmers would answer "No, because Git is an industry standard and I need to know Git to get a good job", while other people that write code but have no intention on becoming professional programmers are much more likely to answer "Sure, why not!". If you ask your kids, I'd love to know what they said :) Gitless looks great. It looks like you nailed all the main issues I have with git. If you ensure that people never have to use the regular git interface, maybe it'll take off. I hope so! BTW Daniel was my PhD advisor :-). Thank you!
- james_s_tayler 7y agoIt doesn't have a UI. Its just a program that takes instructions and does what you tell it. If you want a nice fancy GUI for Git there are plenty of reasonable options. Fork is the one my coworkers seem to be enamoured with at this point in time. I myself don't see the need to use any sort of GUI for Git the vast majority of the time.
- mrunkel 7y agoThe manner in which it takes instructions and returns results is the User Interface. That's what the person you are responding to is talking about. UI = User Interface which is the interface between the User and the Program GUI = Graphical User Interface. Same thing, but pretty.
- roca 7y agoThat's right. The Git CLI is the default Git UI. A better Git UI is possible, like Gitless. A GUI that just has the functionality of the Git CLI doesn't solve the problems I care about, like the staging area being unnecessary and complex.
- chrisseaton 7y ago> that takes instructions That’s a UI!
- hinkley 7y agoBob Martin claims at various points in time that half of all developers have less than five years experience, and attrition and expansion of CS degrees has maintained this. Five years after introducing a replacement you could have half a team that never used it at all, just like SVN is now.
- roca 7y agoOnly if those people never have to learn git in those five years. Maybe in some niches they wouldn't have to, but lots would.
- hinkley 7y agoSo you think git will be different from SVN when a new contender comes along?
- roca 7y agoYes. I've been programming for nearly 40 years and I only had to use Subversion a couple of times; I never really learned it. OTOH I have to use git for all kinds of projects. Learning git is essential in a way that SVN never was. I think part of the reason is that SVN never took over from CVS as completely as git took over from everything else. I think another part of the reason is that the number, size and scope of open-source projects exploded since git and Github appeared, and they mostly chose git. Also relevant: the only project that I recently interacted with that was using SVN is LLVM, and it was faster/easier to use the Github mirror than to use SVN.