Steve Bennett

stevebennett.me · Personal blog · on HN since 2014

Steve Bennett, an Australian developer, writes about Git usability, maps, vector tiles, and cycle touring.

What HN saysHN commenters mostly cite his 2012 post on Git's UI problems as a classic that still matches their frustrations, and also link his map work.
17HN people shared it
7linked it in comments
10stories submitted
88story points
12 months agolast shared
2014people per year2026

Most-shared posts

  1. 1
    Things I hate about Git (2012)
    16 people · 88 points · first shared 2014 · 76 comments on HN
  2. 2
  3. 3
    Introducing cooking for engineers
    1 people · first shared 2022
  4. 4
  5. 5

What HN people wrote when they linked it

stevage · 2025-09-03
Wow, another great writeup. I did a sort of half-arsed version of that here: https://stevebennett.me/2020/01/03/alternative-earth-procedurally-gene… I basically took a square grid and then just randomly displaced each of the vertices a bit to disguise the fact that there is a grid at all. I just wasn't really clever enough to come up with any other way to do deterministic procedural generation.
david-given · 2016-09-30
It's from 2012, and some (but not all) of the things that are complained about here have been fixed, but Steve Benett's classic blog post verbalises all the problems I have with the git UI way better than I can, and is still quite valid: https://stevebennett.me/2012/02/24/10-things-i-hate-about-git/
blakeyrat · 2016-08-21
Which is awful, because there's nothing stopping usability development in CLI environments (look at Cortana or Siri, for example, or to a lesser extent PowerShell) except that awful stagnation. People shouldn't have to bend their brain to work with a machine. The machine should be designed to work with human brains. And to be that snarky person for a second: I've heard a lot of people who actually love Linux CLIs still complaining about Git's weird-ass behaviors. https://stevebennett.me/2012/02/24/10-things-i-hate-about-git/
IshKebab · 2014-11-13
Are you serious? Git is by far the least user-friendly version control system I've used (Mercurial being the best). Here are some longer articles explaining why git sucks so much (from a convenience / user friendliness point of view): http://reprog.wordpress.com/2010/05/10/git-is-a-harrier-jump-jet-and-n… http://merrigrove.blogspot.co.uk/2014/02/why-heck-is-git-so-hard-place… http://stevebennett.me/2012/02/24/10-things-i-hate-about-git/ Version control is one of those annoying admin tasks that you have to do and what to think about as little as possible. Git makes you think about it a lot.
probably_wrong · 2025-05-14
I think you are seeing it as a software developer as opposed to (say) a biologist on the first year of their PhD who just wants to keep their scripts safe. Mercurial's strong point (IMO) was to cater to the 90% of developers who work with two-to-three colleagues on a single branch - you could always make things more complex if needed (as evidenced by Firefox doing just fine), but the defaults were always more user-friendly than git's. For a more time-appropriate critique, this post [1] from 2012 gives an overview of what working with Git felt like at the time when git was being popularized as an alternative to Subversion (including a frequent comment of "use Mercurial instead!"). It's also worth noting that git's error messages have become more helpful since - while the documentation for git-rebase used to be "Forward-port local commits to the updated upstream head", it now reads "Reapply commits on top of another base tip". [1] https://stevebennett.me/2012/02/24/10-things-i-hate-about-git/
StavrosK · 2016-08-25
This is a good article: https://stevebennett.me/2012/02/24/10-things-i-hate-about-git/ > Once you understand Git's data model, the UI is perfectly intuitive So it's not intuitive at all. Not to mention that every damn command is inconsistent with every other command! To remove a file, git rm. To remove a branch, git branch -D. To remove a commit, git reset --hard HEAD^. How is this intuitive, consistent, or even sane? "I understand git" and "git is easily understandable" are completely different. Git is not easily understandable, at all.
skew4 · 2016-05-11
This distinction between branches and bookmarks looks like one of the things missing the most from git. Grab a random branch from some place and try to guess whether the committer intends to rewrite it in the future or not: good luck. For the rest: https://stevebennett.me/2012/02/24/10-things-i-hate-about-git/

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close