News for hackers. Stuff that matters.
Re:Jane Street – Our software engineering interviews are cha... by saghm on Thursday November 12, 2026 @10:33AM (#50469094)
I feel like git operations are one of the few things that I truly don't care at all about whether someone uses an LLM for and doesn't tell me. PR descriptions and commit messages should be written by humans for humans, but like, if someone doesn't know how to manually configure their git remotes and what exact command to use to amend/squash their commits into the shape needed and instead has an agent prepare all that and use the GitHub CLI to open the PR, why should I care? Beyond the code itself, I care about the things that will continue existing in the long run fitting my team's conventions (the number of commits, the commit messages, the PR description and comments, and then whether there's a merge commit at the end), but the process used to create those things doesn't matter to me.
Re:Jane Street – Our software engineering interviews are cha... by astonex on Thursday November 12, 2026 @10:42AM (#50469236)
> but like, if someone doesn't know how to manually configure their git remotes and what exact command to use to amend/squash their commits into the shape needed and instead has an agent prepare all that and use the GitHub CLI to open the PR, why should I care?

Because LLMs aren't a reason to not learn your tools. A determinist CLI command vs using a statistical machine for it. It's just a waste of tokens at the very least.

Re:Jane Street – Our software engineering interviews are cha... by tempfile on Thursday November 12, 2026 @10:54AM (#50469442)
I happen to have memorised how to add new remotes a long time ago, but I would 100% not care if someone I worked with googled it every time. That's how it was for me for several years. I don't think that has anything to do with "learning the tools". And getting claude to do it is not that much different from copy-pasting from google.
Re:Jane Street – Our software engineering interviews are cha... by wtetzner on Thursday November 12, 2026 @11:02AM (#50469581)
TBH I usually just search my shell history for the last time I added a remote and edit it.
Re:Jane Street – Our software engineering interviews are cha... by saghm on Thursday November 12, 2026 @12:56PM (#50471344)
It's also not particularly hard to write a shell function to avoid needing to care about the syntax, e.g.:

    add_github_remote() {
        git remote add $1 [email protected]:$2/$3.git
    }
Re:Jane Street – Our software engineering interviews are cha... by 8note on Thursday November 12, 2026 @06:36PM (#50475981)
thats just the same problem though, ig you arent using it regularly you are going to forget that part of your shell functions
Re:Jane Street – Our software engineering interviews are cha... by saghm on Thursday November 12, 2026 @09:23PM (#50477289)
I wholeheartedly agree that it's the same, but I fundamentally disagree about it being a "problem", or at least, one worth caring about. I don't honestly believe that typing out the extra 35 characters that are filled in by the helper function I gave here would solve anything that comes close to the convenience of not needing to memorize them.
Re:Jane Street – Our software engineering interviews are cha... by zahlman on Thursday November 12, 2026 @10:28PM (#50477827)
1. Develop the instinct of "I probably have a shell function for that, if it isn't already obvious; and if I don't, I need to fix that"

2. Give your shell functions a common prefix, and/or big-endian naming convention (e.g. things that help you with git start with `@git-`)

3. Tab completion is your friend.

Re:Jane Street – Our software engineering interviews are cha... by zahlman on Thursday November 12, 2026 @10:32PM (#50477872)
Better yet, assign the positional arguments to named variables for documentation purposes; you can see them when you `type` the function. (Comments get stripped, unless you make an actual script.)
Re:Jane Street – Our software engineering interviews are cha... by sokoloff on Thursday November 12, 2026 @10:58AM (#50469517)
> It's just a waste of tokens at the very least.

Some 6-figure per year developer spending a dime’s worth of tokens to do something they do once a month or so is not something I’ll ever care to optimize away…

Re:Jane Street – Our software engineering interviews are cha... by saghm on Thursday November 12, 2026 @09:24PM (#50477292)
I misread this as a "quarter" as in "three month period of the calendar year" and was very confused until I remembered that was also the name of a coin
Re:Jane Street – Our software engineering interviews are cha... by saghm on Thursday November 12, 2026 @11:02AM (#50469584)
No, the reason not to learn your tools is if they're not your tools anymore, and something else is. I don't spend time trying to manually invoke filesystem APIs to create files in my work projects and instead will often just have my LSP do it when I declare a module and the file isn't found. I could memorize the exact sequence of system calls needed, but my employer would prefer I spend time on things that are more worthwhile to them.

I don't disagree that having a deterministic CLI is useful, but I'd argue that's not the question here, because the CLI is what the statistical machine will be using. The question is whether the time spend doing it manually is worthwhile compared to the tokens spend on it. I'd argue that if you instead learn how to pick the right model for the right job so that you don't use something way more expensive than needed for the task at hand, the token overhead will be extremely minimal for stuff like git operations; knowing that you can use something cheaper than like, Astra or Opus if all you want to do is a quick git cleanup and push is going to save your employer a lot more money in the long run than if you insist on doing every messy rebase by hand.

Re:Jane Street – Our software engineering interviews are cha... by nightdeployboy on Thursday November 12, 2026 @11:27AM (#50469966)
While using LLMs is a great idea, it has become crucial to put safeguards in place to ensure that their use doesn't deviate from team practices or compromise security.
Re:Jane Street – Our software engineering interviews are cha... by saghm on Thursday November 12, 2026 @12:08PM (#50470611)
I'd argue that these are not really specific to git (or even LLMs honestly); in terms of security, don't put company data into anything that your company hasn't given you explicit permission to put it into.

In terms of team practices, that basically seems like a code review thing. If my team has conventions around git, and a PR doesn't fit them, that's something I would point out regardless of how the PR was generated. If a team member is repeatedly not meeting the expectations we've all agreed upon, I would deal with it in the same way I always have; reach out and offer guidance for how to do things the way they're supposed to, notify my manager if they continue having trouble with it, and eventually just not bother looking at their PRs if they absolutely refuse to do things the way everyone else on the team has agreed they should be done.

Re:Jane Street – Our software engineering interviews are cha... by StrangeWill on Thursday November 12, 2026 @05:13PM (#50475094)
The point of knowing your tools is to stop escalating to other people every time something doesn't work with them.

Even if an LLM can hold your hand through everything, the disruption I've had because people don't understand what the LLM tool is doing, and ultimately does damage (we've had repos corrupted, systems taken offline, systems brought their knees, numerous data security incidents... it's been a fucking nightmare) is immense.

Re:Jane Street – Our software engineering interviews are cha... by saghm on Thursday November 12, 2026 @09:21PM (#50477263)
Repos corrupted? From arbitrary usage of a git client? I feel like it's been generally a bad idea to allow arbitrary force pushes for anything shared for a while before LLMs entered the picture.
Re:Jane Street – Our software engineering interviews are cha... by StrangeWill on Thursday November 12, 2026 @10:40PM (#50477931)
Automation bias!

Even worse, it gave a developer a command to run that basically crushed all history across all branches, it was a mess to clean up and lost a significant amount of work. It wasn't Claude running it on its own, but was entirely driven by a mix of a developer's lack of understanding their tools, and trusting Claude's output too much.

This was also the dev trying to "remove a key he had accidentally committed" again, just letting Claude take the wheel.

Of course, the new team _also_ really loved leaning on AI so they were all behind his plan to "clean up the repo" and not just reset the key and move on.

It was a nightmare.

Re:Jane Street – Our software engineering interviews are cha... by zahlman on Thursday November 12, 2026 @10:25PM (#50477807)
The idea of saying the LLM is "my tool" as opposed to all the actual tools it calls, is about as appealing to me as saying the same about, say, Remote Desktop. "The statistical machine" is there to generate candidate actions, not to implement them.
Re:Jane Street – Our software engineering interviews are cha... by bawolff on Thursday November 12, 2026 @11:28AM (#50469985)
In the before time, this is the sort of thing people would just google.

One time setup commands are the sort of thing people do once when setting up the repo, but dont use day to day. its understandable that people dont have that memorized and will reach for a man page, google or an AI.

Re:Jane Street – Our software engineering interviews are cha... by marssaxman on Thursday November 12, 2026 @01:50PM (#50472234)
Tokens are cheaper than brain power. Why waste my time trying to recall the details of git's byzantine, ill-begotten command line interface when I can delegate that boring task to a robot?
Re:Jane Street – Our software engineering interviews are cha... by syshyk on Thursday November 12, 2026 @10:51AM (#50469397)
Wasn't this a think before_ai? Enough people are using IDEs which handle this for them. I still have to check a few commands now and then.

Though ideally interviewers should appreciate this - unless its a hard requirement you do it by hand day to day - the rest of us can look this up quick enough.

Re:Jane Street – Our software engineering interviews are cha... by saghm on Thursday November 12, 2026 @11:23AM (#50469901)
At previous jobs, I was the one coworkers would come to when they had messy git problems and needed help cleaning them up. I've put in the hours in the past to learn how to do all of that, and then later forgotten it because it's just not worth it anymore. I switched to jj a few years ago and had the majority of the annoying rebase issues go away, and whatever's left goes into my LLM to spit out a potential solution that I can then manually tweak if the result isn't perfect.

My OS professor in college once told us about what he considered the difference between "knowledge" and "information", with "knowledge" being the underlying facts about how something works and "information" being the terminology/labeling/bucketing/etc. of how to refer to it. The point he made was that knowledge was more important than information, and that he would try to test us on knowledge rather than information. To me, knowing how the underlying version control model works and what "shapes" you might want to make with it is useful knowledge. The exact set of commands, interactions with an IDE, or specific prompts you can use to ask an LLM to produce them is information. Arguably the entire benefit of LLMs is that you can ask them to do things even if you don't have the exact information memorized; if you can describe it in a rigorous way, and recognize whether what it gives you as an output fits that or not, you don't need to know any of the actual information of how to do it manually.

Re:Jane Street – Our software engineering interviews are cha... by PorciiVorbesc on Thursday November 12, 2026 @05:28PM (#50475261)
>I switched to jj a few years ago and had the majority of the annoying rebase issues go away

jj? what's that?

I wish better names would be chosen by the tech industry, that would make search engine discoverability easier.

Re:Jane Street – Our software engineering interviews are cha... by mjdiloreto on Thursday November 12, 2026 @05:36PM (#50475381)
Jujutsu, another VCS. It is popular enough to not require introduction on HN, or so the parent must have thought.
Re:Jane Street – Our software engineering interviews are cha... by PorciiVorbesc on Thursday November 12, 2026 @05:39PM (#50475425)
>It is popular enough

WHERE?! This is the first time I'm hearing about it.

Re:Jane Street – Our software engineering interviews are cha... by hatthew on Thursday November 12, 2026 @05:58PM (#50475623)
[delayed]
Re:Jane Street – Our software engineering interviews are cha... by gspetr on Thursday November 12, 2026 @06:44PM (#50476074)
>I wish these products had names that were easily googleable.

They... are?

https://www.google.com/search?aep=11&udm=50&q=should+you+swi...

You can't google for "X" like it's early stack overflow days, but adding the minimum context "X that has something to do with Y" works 99% of the time.

Re:Jane Street – Our software engineering interviews are cha... by zahlman on Thursday November 12, 2026 @10:22PM (#50477784)
Re:Jane Street – Our software engineering interviews are cha... by saghm on Thursday November 12, 2026 @09:19PM (#50477252)
Based on "or so the parent must have thought", I don't think they were being fully serious when they said it was "popular enough". I've seen it brought up pretty much in every conversation around git on Hacker News for the past year or so, and I did make an assumption that most people reading several comments deep into a debate about how important it is to memorize the exact incantations of git commands would be familiar with it. It's largely not relevant to my overall point though; you could replace it with "a different git tool" and it would not really change what I was saying.
Re:Jane Street – Our software engineering interviews are cha... by OJFord on Friday November 13, 2026 @04:42AM (#50480813)
Re:Jane Street – Our software engineering interviews are cha... by filoeleven on Thursday November 12, 2026 @06:31PM (#50475930)
I hadn't heard of this either, but they have an interesting reason for the name:

> The command-line tool is called jj for now because it's easy to type and easy to replace (rare in English). The project is called "Jujutsu" because it matches "jj".

https://github.com/jj-vcs/jj

Re:Jane Street – Our software engineering interviews are cha... by ozim on Thursday November 12, 2026 @05:36PM (#50475376)
Problem for me is that unless I see someone being proficient at using git commands to rebase, merge etc. … I have hard time believing they understand underlying model. Even if someone knows all the right words.

There is no way to verify it just by talking.

Re:Jane Street – Our software engineering interviews are cha... by 8note on Thursday November 12, 2026 @06:33PM (#50475947)
i guess your difficulty is that half the commands i can write off hand and the other half i cant, and i only really care to understand the parts of the data model that i actually touch.

like, i dont really need to know all the stash details when i only stash one thing at a time, very temporarily

i also dont really care to know all the origin and remote definitions stuff when i only touch it once per project or so.

i could certainly draw graphs of what different git repos look like, but what makes it salient to know the rest of the details unless im actually building git itself? if youre using every git feature regularly you're probably doing something wrong

Re:Jane Street – Our software engineering interviews are cha... by zahlman on Thursday November 12, 2026 @10:20PM (#50477761)
> like, i dont really need to know all the stash details when i only stash one thing at a time, very temporarily

If I were hiring, I would care about whether you can `git help stash`, skim over it (bonus points for actually using the pager competently) and figure out what you need to do.

Re:Jane Street – Our software engineering interviews are cha... by ozim on Thursday November 12, 2026 @11:26PM (#50478322)
Your comment hits the nail on what I wrote.

I couldn’t care less about stashing commands.

I do care about … if someone understands origins and not by definition because developer needs to know what is his local version and what is on the server and how those two affect each other. Bonus points if they understand server is not special in Git and their colleagues copy on their laptop can be origin as well.

Drawing graphs of what different repos look like? That’s irrelevant.

Irrelevant if one understands that Git uses DAG and is content addressable store.

You see someone might know those hard words but when working daily with Git reasoning about rebase or merge, cleaning up their own work with interactive rebase, making pull/merge requests or resolving conflicts it is much easier if one knows what is local what is remote and how Git stores data.

You also learn it once. In my 15 years of using Git I basically didn’t learn much new commands but having mental model of how it works was my tool to fix any problems other people had. Knowing commands or definitions is secondary.

Re:Jane Street – Our software engineering interviews are cha... by WalterBright on Thursday November 12, 2026 @08:53PM (#50477089)
I used to go to stackoverflow to resolve issues with git. The trouble was, I'd get 15 answers, all different, all saying "this might work", "try this", "try that".

Now I just ask google, and I get a straightforward "do this", and it works.

Re:Jane Street – Our software engineering interviews are cha... by zahlman on Thursday November 12, 2026 @10:15PM (#50477720)
That's largely because the OP couldn't clearly describe a specific situation to ask about (the question underlying the problem, but also a clearly recognizable, reproducible example); and solving your problem might depend on things that are different in your setup vs. the OP's.

That's the thing, though. Stack Overflow is not and never was intended to solve your problem, nor to solve the OP's problem. It was intended to answer questions. It was your responsibility, both as someone posting a question and as someone reading the Q&A later, to adapt knowledge to your circumstances. That's why they're called questions and answers, and are not called problems and solutions.

People who use a web site to get a solution to a problem are looking for a help desk, or a forum. Stack Overflow was specifically created to be not that, and that choice was specifically motivated by the frustration people had with trying to search those kinds of sites for information, and the frustration that experts had with trying to help people (for free) in that kind of environment.

Re:Jane Street – Our software engineering interviews are cha... by philpem on Thursday November 12, 2026 @11:33AM (#50470053)
That's pretty much where I'm at, so long as they're not filling the code with "///CLAUDE ADDITION" type guards (ie noise).

Personally I ask the LLM to summarise what the commit does and explain it to me, make sure I understand it, then review the PR. I'm getting half the speed the High Speed Sloperators are getting but I was the only person submitting PRs the other day when the LLM service was down.

For nasty multi-way git merges and rebases, it's been a game changer. And of course that's reviewable by doing a delta on the final rebase branch vs. the original branch.

With all that said... having to use LLMs at work is making me want to use them less on my own projects.

Re:Jane Street – Our software engineering interviews are cha... by saghm on Thursday November 12, 2026 @12:11PM (#50470655)
Oh, I was not even attempting to discuss using them for the code itself in my above comment. Code that's checked into a repo has a much more complex set of tradeoffs that I'm much less convinced have a one-size-fits-all answer. My point was more that even if reasonable people can disagree on how much you need to care about the code itself being LLM generated, I can't wrap my head around why anyone should care whether an LLM happened to execute the `git commit` and `git push` shell commands!
Re:Jane Street – Our software engineering interviews are cha... by curt15 on Thursday November 12, 2026 @05:16PM (#50475129)
> Personally I ask the LLM to summarise what the commit does and explain it to me, make sure I understand it, then review the PR

For the more important changes, I find it easier to stay on my toes by taking a pass at the codebase before comparing notes with the LLM. Looking up the answer key first makes it too easy to nod uncritically.

Re:Jane Street – Our software engineering interviews are cha... by nunez on Thursday November 12, 2026 @03:36PM (#50473865)
what happens when there's a massive merge conflict that requires human review?

Git is an essential tool; not knowing how a key tool works is dangerous IMO

Re:Jane Street – Our software engineering interviews are cha... by rsoto2 on Thursday November 12, 2026 @03:40PM (#50473927)
just ask the agent "no mistakes" /s
Re:Jane Street – Our software engineering interviews are cha... by a34729t on Thursday November 12, 2026 @03:55PM (#50474148)
Yeah, I feel like knowing how to use tools is one of the key smells for finding good engineers.
Re:Jane Street – Our software engineering interviews are cha... by jvidalv on Thursday November 12, 2026 @04:10PM (#50474315)
LLMs solves them great. So who cares? At most it will ask for a few guidelines on what takes priority, but no one is using git directly anymore.

I have not run a single git command in like the entire 2026.

Re:Jane Street – Our software engineering interviews are cha... by saghm on Thursday November 12, 2026 @04:29PM (#50474555)
I think that actual direct knowledge about how git merges things and what ends up surfacing as "conflicts" as a result of that is not particularly well understood by quite a large number of people who in practice do not have any trouble using git every day. Moreover, there's nothing specific to git in terms of reviewing code, which is fundamentally what you get from the result of fixing conflicts; once the conflicts are all resolved, there's a diff from the old state (pre-merge) to the new state, and you already should be reviewing it to see if it's what you want even if there were never any conflicts.
Re:Jane Street – Our software engineering interviews are cha... by user43928 on Thursday November 12, 2026 @04:40PM (#50474699)
Nothing.

Should you resolve the conflicts in a bad way we're going to see the result in the MR, will we not?

I don't think git knowledge is essential anymore.

Back in the days of the crappy git GUIs this was a problem, because people would regularly misunderstand even the basics of what they were doing and managed to lose their local changes.

That shouldn't happen with LLMs.

Re:Jane Street – Our software engineering interviews are cha... by ctkhn on Thursday November 12, 2026 @04:07PM (#50474286)
I had a coworker a few years ago who was very stuck up and the first place I saw it was his opinions how people should use git. I use the terminal for some stuff and the gui for others, but he was weirdly judgemental about doing anything other than full terminal.
Re:Jane Street – Our software engineering interviews are cha... by SamuelAdams on Thursday November 12, 2026 @07:00PM (#50476239)
Omzsh user checking in, I always stumble a little in interviews about this because they usually have a default git configured and commands like gco -b and gp don’t work, and I have to think about it for a second.
Re:Jane Street – Our software engineering interviews are cha... by zahlman on Thursday November 12, 2026 @10:11PM (#50477682)
> but like, if someone doesn't know how to manually configure their git remotes and what exact command to use to amend/squash their commits into the shape needed and instead has an agent prepare all that and use the GitHub CLI to open the PR, why should I care?

Because someone who's familiar with those sorts of things can get the commands typed and running before someone who isn't has even figured out the prompt.

(Well, not so much if there's a need to identify the base commit for a squash, do some cherry-picking, etc. But in those cases I'd rather see direct human judgment of what to do than hoping the LLM understands a vague description.)