Live data from Hacker News

Aider: AI pair programming in your terminal

github.com

111–120 of 170 posts

Re: Aider: AI pair programming in your terminal

#111
post #107
post #97

Earlier quoted context omitted.

> Personally the use for me has been in writing boilerplate. We live in a world with everything from macro systems and code generation to higher-order functions and types... if you find yourself writing the same "boilerplate" enough times that you find it annoying, just automate it, the same way you can automate anything else we do using software. I have found myself writing very little "boilerplate" in my decades of…

I'd say that using LLMs to write boilerplate falls under "automation"

Yes, except it's "bad automation", because as opposed to the automation referred to by GP, boilerplate written by an LLM (or an intern or whomever) is extra code that costs a lot of time to be maintained.

Re: Aider: AI pair programming in your terminal

#112
post #107
post #97

Earlier quoted context omitted.

> Personally the use for me has been in writing boilerplate. We live in a world with everything from macro systems and code generation to higher-order functions and types... if you find yourself writing the same "boilerplate" enough times that you find it annoying, just automate it, the same way you can automate anything else we do using software. I have found myself writing very little "boilerplate" in my decades of…

I'd say that using LLMs to write boilerplate falls under "automation"

But, perhaps uniquely amongst all the systems for avoiding boilerplate since Lisp macros were introduced in the 1950s, it will sometimes make stuff up. I don't buy that "a worse way to write boilerplate" is going to revolutionise programming.

Re: Aider: AI pair programming in your terminal

#113

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…

Exactly. It's almost useless to me.

Re: Aider: AI pair programming in your terminal

#114
post #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…

It must be your app/lang/prompt/grandma/dog/... lol. LLMs are the future, and they will replaces Allllllll the coders in the woooorld (TM), and did you know "it" can create websites??? Wooo, let's go, baby! Nah these things are all stupid as hell. Any back and forth between a human and an LLM in terms of problem solving coding tasks is an absolute disaster. People here and certainly in the mainstream population see s…

LLMs does not store information though.

Language is a tool to convey information. LLMs are only about the language, not the information.

Re: Aider: AI pair programming in your terminal

#115
post #107
post #97

Earlier quoted context omitted.

> Personally the use for me has been in writing boilerplate. We live in a world with everything from macro systems and code generation to higher-order functions and types... if you find yourself writing the same "boilerplate" enough times that you find it annoying, just automate it, the same way you can automate anything else we do using software. I have found myself writing very little "boilerplate" in my decades of…

I'd say that using LLMs to write boilerplate falls under "automation"

[deleted]

Re: Aider: AI pair programming in your terminal

#116

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…

Yea that's where I've landed. Telling it what to do is time consuming.

Telling it what I want to do in a broader term and asking for code examples is a lot better., especially for something I don't know how to do.

Otherwise the autocomplete/suggestions in the editor is great for the minutia and tedious crap and utility functions. Probably saves me about 20% typing which is great on hands that have typing for 20 odd years.

It's also good for finding tools and libraries (when it doesn't hallucinate) since https://libs.garden disappeared inexplicably (dunno what to do on Friday nights now that I can't browse through that wonderful site till 2am)

Re: Aider: AI pair programming in your terminal

#117

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 te…

Most of the discussions about AI applied to coding end up having someone who states that it's just not worth it (at least the moment) and someone else who then chimes in to say that they mostly use it for "boilerplate" code.

I have trouble understanding the "boilerplate" thing because avoiding writing boilerplate is

1) already a solved "problem" long before AI

2) is it really a "problem"?

The first point: * If you find yourself writing the same piece of code over and over again in the same code it's the indication that you should abstract it away as a function / class / library.

* IDEs have had snippets / code completion for a long time to save you from writing the same pieces of code.

* Large piece of recycled functionalities are generally abstracted away in libraries of frameworks.

* Things like "writing similar static websites a million times" are the reason why solutions like WordPress exist: to take away the boilerplate part of writing websites. This of course applies to solutions / technologies / services that make "avoid writing boilerplate code" their core business

* The only type of real boilerplate that comes to my mind are things like "start a new React application" but that is a thing you do once per project and it's the reason why boostrappers exist so that you only really have to type "npx create-react-app my-app" once and the boilerplate part is taken care of.

The second point: Some mundane refactoring / translations of pieces of code from one technology to the other can actually be automated by AI (I think it's what you're talking about here, but how often does one really do such tasks?), but... Do you really want to? Automate, it, I mean?

I mean, yes "let AI do the boring staff so that I can concentrate on the most interesting parts" make sense, but it's not something I want to do. Maybe it's because I'm aging, but I don't have it in me to be concentrated on demanding, difficult, tiring tasks 8 hour straight a day. It's not something that I can and it's also something that I don't want to.

I much prefer alternating hard stuff that require 100% of my attention with lighter tasks that I can do while listening to a podcast and steam off in order to rest by brain before going back to a harder task. Honestly I don't think anyone is supposed to be concentrated on demanding stuff all day long all week long. That's the recipe for a burnout.

Re: Aider: AI pair programming in your terminal

#118

When working alone remotely from home, I simulate pair programming with a methodology I call "The Stranger". I sit on one of my hands until it becomes numb and tingly, and then it feels like somebody else is typing and moving the mouse!

I use synthetic aperture pair programming. I write some code and get it working. Then I get pulled off it for a few months and come back to it.

Me + 3 months: da fuk.

Re: Aider: AI pair programming in your terminal

#119

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 te…

>checking that everything is right takes just a few seconds as well. It’d take me hours to go through every file manually

how can you check it in a few seconds if it'd take you hours to change it manually?

Re: Aider: AI pair programming in your terminal

#120

I appreciate @anotherpaulg's continual benchmarking of LLM performance with aider, for example: > OpenAI just released GPT-4 Turbo with Vision and it performs worse on aider’s benchmark suites than all the previous GPT-4 models. In particular, it seems much more prone to “lazy coding” than the GPT-4 Turbo preview models. https://aider.chat/2024/04/09/gpt-4-turbo.html

+ accompanying HN thread (117 comments) https://news.ycombinator.com/item?id=39985596
Post reply on HN