Hacker News new | ask | show | jobs
by angersock 4095 days ago
So, on Windows, TortoiseGit isn't too bad. I like some of what the Github client does, but it gets confused sometimes and that terrifies me. For a while I maintained our in-house Git tool that enforced a particular workflow--a nice GUI that had buttons for particular work stages and checked to make sure the devs were following process. :)

That said, we kept getting nibbled by little issues the interfaces had glossed over, and eventually I just sat down with the team and started practicing and reiterating how to do what we did with git, and made sure our team's wiki had explicit reference instructions. They weren't really CLI folks, but within about a month they were all fine, and I cleaned up any messes they made and helped them gain confidence even after big oopsies (like deleting the master development branch on a weekend).

I think that if your development environment is more server-y ('nix, basically) you'd be getting more exposure and practice with composition of tools and CLI stuff. Don't give up!

1 comments

I develop server apps all day. We don't use Unix servers, we use Windows servers. Which is great, because it means I can use C# which is one of the few programming languages available that actually has competent GUI tools.

Your post is misconstruing my point quite a bit. I don't want to learn CLI tools. (Why would I, when they're clearly inferior to GUI tools I already have? From my perspective.)

What I want is for developers of programming tools to be more aware of usability issues in their products, and to test their products with a wider audience of users. (It's obvious the authors of Git never thought for even a brief moment about usability or accessibility issues.)

Usability isn't just for mobile apps; all applications should have effort applied to make them as usable as possible to as many different kinds of users as possible.

These CLI tools are generally developed by and for * nix developers.

These developers generally prefer CLI tools for a bunch of reasons: their power, flexibility and ease of automation, integration and combination, standardized in/outputs, use over SSH and speed.

They prefer making CLI tools for all these reasons, and because it takes much, much less time to write a good CLI tool than to write a good GUI tool.

So, if you prefer hand-holding and mouse-holding, fine, use Microsoft products, they have something for almost everything you could need.

However, you can not expect developers, who work for free, to spend their free time to solve a problem they don't have, for a platform they don't use.

If you want these as GUI tools, why don't you build them yourself? No one is stopping you.

Edit: readability

> These CLI tools are generally developed by and for * nix developers.

Duh, I know that. But I'm not a Linux developer, I don't want to be a Linux developer, and I still have to use Git.

> They prefer making CLI tools for all these reasons, and because it takes much, much less time to write a good CLI tool than to write a good GUI tool.

Too lazy to make software properly; gotcha. They wrote about 1/3rd of a good source control program, then just kind of gave up, stopped, and called it "done".

> However, you can not expect developers, who work for free, to spend their free time to solve a problem they don't have, for a platform they don't use.

No; but I'd expect someone to do it. And it would be nice if open source developers actually felt a bit of guilt or remorse over how difficult their products are to use.

> If you want these as GUI tools, why don't you build them yourself? No one is stopping you.

I already have a job. My job is significantly more unpleasant because I have to work with Git. Volunteering my time to work with Git more is not appealing to me.