Live data from Hacker News

Aider: AI pair programming in your terminal

github.com

81–90 of 170 posts

Re: Aider: AI pair programming in your terminal

#81
post #4

Earlier quoted context omitted.

To be fair in a world of good LSP impls, grep/find are really primative tools to be using. Not saying this isn't better then a more sophisicated editor setup, just that grep and find are a _really_ low bar

Not sure if that's making things "fair". Grep & find are insanely powerful when you're a CLI power user. Nonetheless, I'm particularly curious which cases the AI tool can find things that are not easy to find via find & grep (eg: finding URLs that are created via string concatenation, those that do not appear as a string literal in the source code) Perhaps a larger question there, what's the overall false negative ra…

I evaluate a lot of code, like ten-twenty applications per year currently, terminal tooling is my goto. Mostly the basic stuff, tree, ripgrep, find, wc, jq, things like that. I also use them on top of output from static analysis tooling.

It's not as slick as SQL on a RDBMS, but very close, and integrates well into e.g. vim, so I can directly pull in output from the tools and add notes when I'm building up my reports. Finding partial URL:s, suspicious strings like API keys, SQL query concatenation and the like is usually trivial.

For me to switch to another toolset there would have to be very strong guarantees that the output is correct, deterministic and the full set of results, since this is the core basis for correctness in my risk assessments and value estimations.

Re: Aider: AI pair programming in your terminal

#82

So many AI coding agents popping up that claim to build entire projects but all I'm interested in (happy to pay): - Review GitHub PR and suggest fixes. - Improve the readability of code with a single command (devs suck at naming variables). - context aware autocomplete for real

> devs suck at naming variables

This is the #1 problem I've faced with my contractors and I wish I could find a good solution for it

Re: Aider: AI pair programming in your terminal

#83
post #68

I have used this technique for months and it’s great https://x.com/arjie/status/1575201117595926530 I just have copilot in my editor and switch into my editor with C-x C-e for AI completion. I use neovim like example but you can use whatever you like. EDIT: Oh never mind. I see what it is now. It’s a terminal based flow for editing code. Mine is for command line writing live.

That’s cool, but is there a way to use another vendor instead of GitHub CoPilot?

There’s the fauxpilot project. This is just the minimal stuff to use the AI completer. But you can sub out faux pilot and get the same result (modulo quality).

Re: Aider: AI pair programming in your terminal

#84
With all these AI tools requiring a prompt, does it really simplify/speed up things? From the example: I have to write "add a name param to the 'greeting' function, add all types", then wait for the result to be generated, read it carefully to be sure that it does what I want, probably reiterate if the result does not match the expectation. This seems to me more time consuming than actually do the work myself. Does anyone has examples where promoting and double checking is faster than doing it on your own? Is it faster when exploring new solutions and "unknown territory" and in this case, are the answers accurate (from what I tried so far they were far off)? In that case how do you compare it with "regular search" via Google/Bing/...? Sorry for the silly question but I'm genuinely trying to understand

Re: Aider: AI pair programming in your terminal

#85
post #79

If you prefer GUI with more space to write task requirements, or use your existing ChatGPT/Claude subscription without additional API costs, you can check out my desktop app: https://prompt.16x.engineer/

Everyone has one, I just made a script to print all the files in the current folder to the terminal. I have .context-ignore files to exclude some patterns, similar to .gitignore The first file is a README.md that contains my initial description of what I am working on. At the end I type a new command. I copy & paste the text into chatGPT web interface. I think I used it for 10-15 rounds of iteration on my latest proj…

That's exactly how I started as well, I was using a similar workflow to build an AI-driven game.

Then I thought maybe it's a good idea to turn it into something less ad-hoc, more user-friendly, and work for any project.

Re: Aider: AI pair programming in your terminal

#86

With all these AI tools requiring a prompt, does it really simplify/speed up things? From the example: I have to write "add a name param to the 'greeting' function, add all types", then wait for the result to be generated, read it carefully to be sure that it does what I want, probably reiterate if the result does not match the expectation. This seems to me more time consuming than actually do the work myself. Does a…

Can’t speak for everyone else but I almost exclusively use it for what you mentioned:

> when exploring new solutions and "unknown territory"

If it’s something I have no idea how to do I might describe the problem and just look at the code it spits out; not even copy pasting but just reading for a basic idea.

> how do you compare it with "regular search" via Google/Bing

Much worse if there’s a blog post or example in documentation that’s exactly what I’m looking for, but, if it’s something novel, much better.

An example:

Recently asked how I could convert pressure and temperature data to “skew T” coordinates for a meteorological plot. Not something easy to Google, and the answers the AI gave were slightly wrong, but it gave me a foot in the door.

Re: Aider: AI pair programming in your terminal

#87
I have this 300 line Go application which manages git tags for me. I asked it to implement a -dry-run function. It failed twice. First time it just mangled the file. Second time it just made code that didn't do anything.

I asked it to rename a global variable. It broke the application and failed to understand scoping rules.

Perhaps it is bad luck, or perhaps my Go code is weird, but I don't understand how y'all wanna trust this.

Re: Aider: AI pair programming in your terminal

#88
post #86

With all these AI tools requiring a prompt, does it really simplify/speed up things? From the example: I have to write "add a name param to the 'greeting' function, add all types", then wait for the result to be generated, read it carefully to be sure that it does what I want, probably reiterate if the result does not match the expectation. This seems to me more time consuming than actually do the work myself. Does a…

Can’t speak for everyone else but I almost exclusively use it for what you mentioned: > when exploring new solutions and "unknown territory" If it’s something I have no idea how to do I might describe the problem and just look at the code it spits out; not even copy pasting but just reading for a basic idea. > how do you compare it with "regular search" via Google/Bing Much worse if there’s a blog post or example in…

This is also where I've kind of ended up with it, I've also noticed that when I was at one point using it everyday, I'm opening it less and less, maybe a few times a week and recently cancelled my subscription. It's still pretty useful for exploritory stuff, boilerplate and sometimes it can give you a hint on debugging. Everything else I can write faster and more correctly myself.

Re: Aider: AI pair programming in your terminal

#89

With all these AI tools requiring a prompt, does it really simplify/speed up things? From the example: I have to write "add a name param to the 'greeting' function, add all types", then wait for the result to be generated, read it carefully to be sure that it does what I want, probably reiterate if the result does not match the expectation. This seems to me more time consuming than actually do the work myself. Does a…

Well, regular search means switching to a different application, with an implied context switch. It definitely takes longer for many things than just using GitHub copilot.

Re: Aider: AI pair programming in your terminal

#90

With all these AI tools requiring a prompt, does it really simplify/speed up things? From the example: I have to write "add a name param to the 'greeting' function, add all types", then wait for the result to be generated, read it carefully to be sure that it does what I want, probably reiterate if the result does not match the expectation. This seems to me more time consuming than actually do the work myself. Does a…

Personally the use for me has been in writing boilerplate. As an example, one of my ongoing goals has been to port all the view code of a project to another framework, following its idioms. Using an LLM, I can process a file in a couple of seconds, and checking that everything is right takes just a few seconds as well. It’d take me hours to go through every file manually, and it’d be prone to human error. It’s not technically challenging stuff, just tedious and mind-numbing, which is perfect for an LLM.

I do agree though, these basic examples do seem quite pointless, if you already know what you’re doing. It’s just as pointless as telling another developer to “add a name param to ‘greeting’ function, add all types”, which you’d then have to review.

I think it comes down to your level of experience though. If you have years and years of experience and have honed your search skills and are perfectly comfortable, then I suspect there isn’t a lot that an LLM is going to do when it comes to writing chunks of code. That’s how I’ve felt about all these “write a chunk of code” tools.

In my case, apart from automating the kind of repetitive, mindless work I mentioned, it’s just been a glorified autocomplete. It works -really- well for that, especially with comments. Oftentimes I find myself adding a little comment that explains what I’m about to do, and then boop, I’ve got the next few lines autocompleted with no surprises.

I had to work without an internet connection a few days ago and it really, really hit me how much I’ve come to use that autocomplete - I barely ever type anything to completion anymore, it was jarring, having to type everything by hand. I didn’t realise how lazy my typing had become.

Post reply on HN