Live data from Hacker News

How I program with LLMs

crawshaw.io

71–80 of 342 posts

Re: How I program with LLMs

#71
One mode I felt was missed was "thought partner", especially while debugging (aka rubber ducking).

We had an issue recently with a task queue seemingly randomly stalling. We were able to arrive at the root cause much more quickly than we would have because of a back-and-forth brainstorming session with Claude, which involved describing the issue we were seeing, pasting in code from library to ask questions, asking it to write some code to add some missing telemetry, and then probing it for ideas on what might be going wrong. An issue that may have taken days to debug took about an hour to identify.

Think of it as rubber ducking with a very strong generalist engineer who knows about basically any technical concepts.

Re: How I program with LLMs

#72

I disagree about search. While LLM can give you an answer faster, good doc (eg. MDN article in CSS example) will : - be way more reliable - probably be up to date on how you should solve it in latest/recommend approach - put you in a place where you can search for adjecent tech LLM with search has potential but I'd like if current tools are more oriented on source material rather than AI paraphrasing.

One of my tricks is to paste the docs right into the context so the model can’t fuck it up.

Though I still wonder if that means I’m only tricking myself into thinking the LLM is increasing my productivity.

Re: How I program with LLMs

#73
post #52

One interesting bit of context is that the author of this post is a legit world-class software engineer already (though probably too modest to admit it). Former staff engineer at Google and co-founder / CTO of Tailscale. He doesn't need LLMs. That he says LLMs make him more productive at all as a hands-on developer, especially around first drafts on a new idea, means a lot to me personally. His post reminds me of an…

I knew he was a world-class engineer the moment I saw that his site didn't bother with CSS stylesheets, ads, pictures, or anything beyond a rudimentary layout. The whole article page reads like a site from the '90s, written from scratch in HTML. That's when I knew the article would go hard. Substantive pieces don't need fluffy UIs - the idea takes the stage, not the window dressing.

I wonder what he uses, I noticed the first paragraph took over a second to load... Largest Contentful Paint element 1,370 ms This is the largest contentful element painted within the viewport. Element p

Re: How I program with LLMs

#74
post #52

One interesting bit of context is that the author of this post is a legit world-class software engineer already (though probably too modest to admit it). Former staff engineer at Google and co-founder / CTO of Tailscale. He doesn't need LLMs. That he says LLMs make him more productive at all as a hands-on developer, especially around first drafts on a new idea, means a lot to me personally. His post reminds me of an…

I think what you're describing is basically "interface driven development" and "test driven development" taken to the extreme: where the formal specification of an implementation is defined by the test suite. I suppose a cynic would say that's what you get if you left an AI alone in a room with Hyrum's Law.

Re: How I program with LLMs

#75

I disagree about search. While LLM can give you an answer faster, good doc (eg. MDN article in CSS example) will : - be way more reliable - probably be up to date on how you should solve it in latest/recommend approach - put you in a place where you can search for adjecent tech LLM with search has potential but I'd like if current tools are more oriented on source material rather than AI paraphrasing.

One of my tricks is to paste the docs right into the context so the model can’t fuck it up. Though I still wonder if that means I’m only tricking myself into thinking the LLM is increasing my productivity.

I likr this approach. Read the docs, figure out what you want, get LLM to do the grunt work with all relevant context and review.

Re: How I program with LLMs

#76
I've recently started using Cursor because it means I can now write python where two weeks ago I couldn't write python. It wrote the first pass of an API implementation by feeding it the PDF documentation. I've spent a few days testing and massaging it into a well formed, well structured library, pair-programming style.

Then I needed to write a simple command line utility, so I wrote it in Go, even though I've never written Go before. Being able to make tiny standalone executables which do real work is incredible.

Now if I ever need to write something, I can choose the language most suited to the task, not the one I happen to have the most experience with.

That's a superpower.

Re: How I program with LLMs

#77

One mode I felt was missed was "thought partner", especially while debugging (aka rubber ducking). We had an issue recently with a task queue seemingly randomly stalling. We were able to arrive at the root cause much more quickly than we would have because of a back-and-forth brainstorming session with Claude, which involved describing the issue we were seeing, pasting in code from library to ask questions, asking it…

The new video and screen-share capabilities in ChatGPT and Gemini should make rubber-ducking smoother.

I feel like I've worn out my computer’s clipboard and alt-tab keys at this stage of the LLM experience.

Re: How I program with LLMs

#78

Our company has a no AI use policy. The assumption is zero trust. We simply can’t know whether a model or its framework could or would send proprietary code outside the network. So it’s best to assume all LLMs/AI is or will send code or fragments of code. While I applaud the incredible work by their creators, I’m not sure how a responsible enterprise class company could rely on “trust us bro” EULAs or repo readmes.

You can run pretty decent models on your laptop these days. Works in airplane mode.

https://ollama.com/

Re: How I program with LLMs

#79
post #49

Earlier quoted context omitted.

The randomness comes from sampling. With local LLMs, you can fix the random seed, or even disable sampling all together - both will get you determinism. I agree that LLMs are not search tools, but for very different reasons.

Semantics. It may be able to get deterministic but it’s unstable wrt unrelated changes in the training data, no? If I add a page about sausages to a search index, the results for ”ski jacket” will be unaffected. In a practical sense, LLMs are non-deterministic. I mean, ChatGPT even has a ”regenerate” button to expose this ”turbulence” as a feature.

Hence n-grams rather than documents.

Also what's with using "semantics" as a dismissal when the technology we're talking about is the most semantically relevant search ever made.

Re: How I program with LLMs

#80
> I could not go a week without getting frustrated by how much mundane typing I had to do before having a FIM model

For those not in-the-know, I just learned today that code autocomplete is actually called "Fill-in-the-Middle" tasks

Post reply on HN