Just to add some clarification - the newer GPT4 models from OpenAI have 128k context windows[1]. I regularly load in the entirety of my React/Django project, via Aider.
1. https://platform.openai.com/docs/models/gpt-4-and-gpt-4-turb...
https://github.com/gkamradt/LLMTest_NeedleInAHaystack/raw/ma...
https://cdn.arstechnica.net/wp-content/uploads/2024/03/claud...
Then if you want to test for recall of sparse information or multi-hop information, it's useless.
Here's a quick start guide with OpenAI: https://platform.openai.com/docs/quickstart?context=python
Personally I’ve been practicing for almost 3 years now going back to CoPilot so I would guess I have at very minimum a few hundred hours of thinking about how (what to prompt for, what to check the output for) and probably more importantly when (how to decompose the task I am doing into parts for which some the LLM can reliably execute) to use the tool.
I tried to have it rewrite in Go a small Python script (a hundred or so lines) that I wrote, and it basically refused, saying "here's the start, you write the rest now". As others said, if it went away it'd be a minor inconvenience of me having to read a bit more documentation.
I order to reflect on my mental about this. It’s that i more often break down parts problem into sub routines that are 30 or so lines. These are nailed about 95% of the time and when there’s something wrong it’s obvious.
1) making it write some basic code for an API I don't know. Some windows API calls in particular 2) Abusing it as a search engine since google barely qualifies for one anymore
For actual refactoring, the usual tools still blow it out of the water IMO. Same for quality code. It just doesn't compile half the time.
For example, I had to patch together some excel files the other day. Data in one file referenced data in ~60 other files in a pretty complicated way, but a standardized one. About 80,000 rows needed to be processed across 60,000 columns. Not terrible, not fun though.
Now, I'm good at excel, but not VBA good. And I'm a 'D-' in python. Passing, but barely. Writing a python program to do the job would take me about a full work day, likely two.
But, when I fired up GPT3.5 (I'm a schlub, I know!) and typed in the request, I got a pretty good working answer in about, ohhh, 15 seconds. Sure, it didn't work the first time, but I was able to hack at it, iterate with GPT3.5 only twice, and I got my work done just fine. Total time? About 15 minutes. Likely a 64X increase in productivity.
So, maybe when we say that our programming is improved, what we actually mean is that our productivity is improved, not our innate abilities to program.
For me llms are fantastic as they enable me to build things I never could have without.
I imagine they wouldn’t be as useful for a skilled programmer as they can do it all already.
Can’t remember the source, but I read a paper a while back that looked at how much ChatGPT actually helped people in their work. For above average workers it didn’t make much difference, but it made a big improvement for below average workers, bringing them up to the level of their more experienced peers.
Why not use the API directly? Their Workbench interface is pretty nifty if you don't feel like hooking the API up to your tools of choice.
[1] https://github.com/SillyTavern/SillyTavern
Do you mean you are throttled by it more often? (~“You must wait X mins to make more queries”)
It often makes some small mistakes, but little nudge here and there corrects them, whereas with human you have to spend a lot of time explaining why something is wrong and why this and that way would rectify it.
The difference is probably because GPT has access to a vast array of knowledge a human can't reasonably compete with.
It really bugs me when people imply AI will replace only certain devs based on their title.
Seniority does not equal skill. There are plenty of extremely talented "junior" developers who don't have the senior title because of a slow promo process and minimum time in role requirements. They can and do own entire projects and take on senior-level responsibilities.
I've also worked with a "senior" dev who struggled for over a month to make a logging change.
Definitely not all junior developers. I have yet to see it do well at handling code migrations, updating APIs, writing end to end tests, and front end code changes with existing UX specifications to name a few things.
I've been using Claude pretty intensively over the last week and it's so much better than GPT. The larger context window (200k tokens vs ~16k) means that it can hold almost the entire codebase in memory and is much less likely to forget things.
The low request quota even for paid users is a pain though.