8 ms·
Strong disagree here. I've been trying to learn Zig, and I'm thwarted enough by chatgpt giving me outdated information on Zig's unstable API that if I didn't ha
by milesvp 2y ago
Strong disagree here. I've been trying to learn Zig, and I'm thwarted enough by chatgpt giving me outdated information on Zig's unstable API that if I didn't have a strong incentive to learn it for it's cross compiler, I'd likely turn my efforts towards another language. This effect can greatly alter the adoption curve of a new tech, which can leave it dying on the vine.
You're not wrong though, in that Stack Overflow has the exact same problem. The main difference is that with Stack Overflow, there was a bonus in becoming the first expert on the platform, so while it does stifle new tech adoption, it at least encourages new tech content creation, which in turn encourages new tech. Though, I don't know if it's a net positive or negative in aggregate.
I think this problem will likely lessen as training becomes cheaper and faster. But right now, there is really strong incentives to avoid any tech that has had breaking changes in the last 3 years.
- throwup238 2y agoHave you tried Cursor instead of a chatbot? I don’t trust it to do much coding for me but it has this feature where you give it the URL of the documentation, and it indexes it for you. Then you can reference that documentation in the chat with the @ symbol and Cursor applies RAG to the indexed content to include relevant documentation. I usually index autogenerated API docs and any website docs the library has like guides and tutorials. The experience is night and day and it’s the only reason I pay for Cursor on top of OpenAI/Anthropic. The answers it gives are much more accurate when including documentation and it helps a lot with exploring APIs. Probably helps a lot with the code generation too, but I don’t use Composer as much.
- giovannibonetti 2y agoYeah, RAG is a great way to handle outdated docs
- hinkley 2y agoSomeone recently put it that it’s the first 10% of adoption that sets the future for a product. There are people online calling it the “tech adoption cycle” but this is a concept I encountered in a literal Business 101 class. 2.5% of the population are Innovators. 12.5 are early adopters. Then there’s 70% in the middle where most of your cash comes in, and by the time the laggards hit you’re optimizing for cost per unit because you’ve had to drop the price so much due to competition from copycats and from the next new thing. So by the time 60% of your early adopters are onboard it’s already been decided if you’re on a rocket ship or this is just a burp. Early adopters have a high tolerance for inconveniences but it’s not infinite. If they bleed enough they will find something else, and then you are DOA.
- _puk 2y agoHaving spent the past week deep in cursor, it's amazing for building out a basic web app.. but getting it to a point of productivity takes a while.. Command line install for latest svelte.. nope npx install is now deprecated, have to do it another way.. ok, let's go old school and read the docs. Great, it's up and running, but nope, Svelte has just hit V5 and the LLM isn't aware of the changes.. ok, do I drop back to 4 on a new code write, or spend the time to get a decent .cursorrules in place to make sure it's using the right version. Ok, that's in, but look tailwind is too new too.. ok, fine let's get that into .cursorrules.. Oh look, daisy has a v5 coming in 15 days, luckily I got in there just in time.. I thought svelte, tailwind and daisy were the one true way nowadays! I now have a rule in my cursorrules that asks for any errors that I spot in the code (related to wrong versions) results in both the fix and a rule for the cursorrules so it doesn't happen again. That works well.
- mattmanser 2y agoThe unfortunate truth is that the one true way these days is React, and if you're doing anything else you're in for a world of pain.
- turnsout 2y agoThe actual truth is that you don’t need any of these frameworks at all. Vanilla JS & HTML has come a long way, and LLMs like Claude can build Vanilla JS with no trouble.
- simianparrot 2y agoSo AI does stifle adoption of new tech then?
- turnsout 2y agoBoth things can be true. I have also been frustrated trying to get LLMs to work with SwiftUI, given that it’s slightly newer, changing frequently, and has lower adoption relative to something like React. Honestly this is a short term problem. Eventually the models will have larger context windows and will be able to easily browse brand new documentation or example code.
- jeremyjh 2y agoImagine a world without ChatGPT or Stack Overflow. Is it easier to build your Zig project in that world?
- bangaladore 2y agoThe simple answer is no. However, it's naive to deny that people are driven to technology with large amounts of samples and documentation. When trained on it, LLMs can essentially create infinite, customized versions of these. LLMs artificially inflate the amount of documentation and samples for older technologies, and many lack the knowledge of newer ones. This creates a feedback loop until the newer technology is included, but the damage has already been done. That's just a perspective, I don't know that I fully agree with the premise, and certainly don't know a solution. The best solution I can think of is more LLMs that are essentially constantly RAGing from the internet, rather than mostly using pre-trained info. Obviously this part is no longer just the model, but I imagine models could be made to make the RAG process more efficient, or better.
- camdenreslink 2y agoNo, but the relative ease of picking up Zig is lower compared to another language that has a lot of training data (maybe golang could be used for similar projects) in the LLM world. So users might be less reluctant to pick up Zig at all now. That could slow down adoption of new languages, frameworks, libraries etc.
- godelski 2y agoPossibly yes. But this is hard to know and I certainly don't. What I can say is that it would certainly be easier without SEO and that both things you listed tend to exacerbate SEO Hell. SO less so, but it'd be naive to think it is immune. Though not quite to the degree of Reddit. But LLMs tend to reflex the training, so...
- ysofunny 2y agoor you could try leraning zig in the old-school way, the way we used to learn before LLMs who am I kidding? LLMs have changed the game forever. making new computer programming languages is no longer professionally useful, like hand-knitting
- lasagnagram 2y agoHave you considered learning by reading documentation and tutorials, instead of asking the lie generator? I mean, how do you think people learned things before 2023?
- williamcotton 2y agoWhat about a library that doesn’t have any documentation or tutorials, like the Soundfont lib for JUCE where the LLM was essentially I had to get a working product?
- goatlover 2y agoWhere did the LLM get information for the Soundfront lib if there is no documentation, tutorials, answered questions or source code online?
- daveguy 2y agoSame place every LLM gets "information" -- plucking random bits from the latent space that are most likely to follow the input context.
- swatcoder 2y agoLet's dig into this for a second. Which "Soundfont lib for JUCE" are you talking about? How did you find it in the first place? Why did you decide to use it if there was no documentation? How did you know it was appropriate or capable for your use case? How did you know it was mature, stable, or safe? Did you read the headers for the library? Did they have comments? Did you read the technical specification for the Soundfont format to understand how it modeled sample libraries? I work in this stuff all the time, and I'm so very puzzled by what you're even suggesting here.
- williamcotton 2y agoI Googled and got: https://www.mucoder.net/blog/2016/03/24/sfzero.html https://www.mucoder.net/blog/2016/03/24/sfzero.html There was boilerplate that wasn’t explained and only existed in a demo for an audio plugin. I prompted the LLM with the header files and sections of the demo app and after a few back and forth learning sessions I was getting piano samples playing back: https://github.com/williamcotton/midiplayer https://github.com/williamcotton/midiplayer It works, it doesn’t have any memory issues (after I fixed an issue in the module), and is performant. This is also my first C++ project!
- s__s 2y agoI think it will become standard to provide up to date references specifically tailored for LLMS. For example: https://svelte.dev/docs/llms https://svelte.dev/docs/llms
- cpursley 2y agoThat's because you're using ChatGPT instead of Claude.
- sroussey 2y agoHave ChatGPT always use search when you ask questions. I find referencing a version number and requiring search improves things dramatically. Improves does not fix. v0 for vercel/nextjs Try phind or other things more into looking stuff up.
- godelski 2y agoHonestly, the shittiness of Google and terrible LLM answers has just made me start reading docs more. In the past few years I think I've become a substantially stronger programmer because of this. So in a way, thanks Google for becoming shit and thanks GPT for being frustrating as hell. The problem is that sometimes doing things the hard way is the better way. I think learning programming, math, or any tough subject requires struggle. People like these things because it removes a lot of struggle but it more seems like this is a temporary advantage instead of a more long term one. My big concern is how we are becoming more and more addicted to instant gratification, at so many levels. Businesses are valuing quarterly profits above yearly. We've taken "ship early, ship often" to the extreme, as well as "move fast and break things." These are find adages, but like all things have limits. But the world gets more complex and as a result, solving problems becomes harder. You can't get away with first order approximations now and we're just building empires of technical debt. Too big to fail, too entrenched to compete against. But I still think, at some point, we have to say "fuck it, I'm doing things the right way, not the fast way."