But this will be a problem for big companies: small ones normally care less about these types of things. This means big companies have to do something otherwise they will compete with ml enhanced developers.
But this will be a problem for big companies: small ones normally care less about these types of things. This means big companies have to do something otherwise they will compete with ml enhanced developers.
I'm sure they're terrified of competing with the legions of boilerplate generators
It's a significant advantage for developers to ask AI to solve technical problems, get right answers right away and move to a next task vs keep on scratching your head for the next 5h wondering "why it doesn't work".
I can ask my magic 8 ball too, it has about the same success rate
Perhaps if you provide an API to it you'll secure billions in funding in no time.
that's not a bad idea actually
I just need a way to market it as some sort of AI based decision maker
"extreme temperature generative AI" maybe
It isn't even about the AI itself; the problem is uploading your code base or whatever other IP anywhere not approved. If mere corporate policy seems like a fuddy-duddy reason to be concerned, there's a lot of regulations in a lot of various places too, and up to this point while employees had to be educated to some extent, there wasn't this attractive nuisance sitting out there on the internet asking to be fed swathes of data with the promise of making your job easier, so it was generally not an issue. Now there is this text box just begging to be loaded with customer medical data, or your internal finance reports, or random data that happen to have information the GDPR requires special treatment for even if that wasn't what the employee "meant" to use it for. You can break a lot of laws very quickly with this textbox.
(I mean, when it comes down to it, the companies have every motivation for you to go ahead and proactively do all the work to figure out how to replace your job with ChatGPT or a similar technology. They're not banning it out of fear or something.)
I think equal advantage lies in getting multiple approaches fleshed out, even if the answer isn't right, as in, may not compile as-is. That is more than sufficient advantage a developer gets because most of the time usually spent isn't actually typing the code but finding out how to design/combine things.
E.g. I was working on a rust problem and asked ChatGPT for a solution. What it provided didn't compile (incorrect functions etc) but it provided me information in terms of the crates to use, general outline of the functionality and the approach to combine them - that proved to be more than enough for me to get going (to be clear, I didn't blindly copy the code; I understood it first and wrote tests for the finished product). I think that is where the real advantage lies. I see it as an imperfect but very powerful assistant.
Funny enough, the answers gpt4 gave were basically taken wholesale from the first Google result from stackoverflow each time. It's like the return of the I'm Feeling Lucky button.
I doubt though that corporations that employ these developers will have any advantage. To the contrary, their code bases will suffer and secrets will leak.
Ask some question about cpp or c and Google search will provide 5 or 6 ad ridden cesspools before giving link to cppreference.
For the case I last tested, there was no correct answer. I asked it to do something that is not currently possible within the programming framework I asked it to use. Many people had tried to solve the problem, so chaptgpt followed the same path as that's what was in its data set and provided solutions that did not actually solve the problem. There wasn't any problem with the prompts, it's the answers that were incorrect. Having those initial prompts influence the results was desired (and usually is, imo).
Maybe.
I haven't actually seen that advantage in action. That is, I haven't seen a case where an LLM has actually given a solution right away for a problem that would have stumped a dev for multiple hours.
In my workplace, two devs are using chatgpt -- and so far, neither has exhibited an increase in productivity or code quality.
That's a sample size of two, of course, so statistically meaningless. But given the hype, I expected to see something.
I'm pretty sure the current level is not the ceiling of it.
And for the first time ever it makes sense for a large company to put knowledge on purpose into a LLM.
People leave companies but that knowledge is even more critical for big projects and the loss of people as well.
Use ChatGPT in a domain you're a relative expert in and you run into a million scenarios where it offers a "solution" that will do something close to what was described, but not quite - and you might even not immediately notice the problem as a domain expert. Even worse it may produce side effects suggestive that it is working as desired, when it's not.
In the not-so-secret world of Stack Exchange coffee pasta, people would have other skilled humans pointing these issues out. In the world of LLMs, you risk introducing ever more code that looks perfectly correct, but isn't. What happens at scale?
The net change in efficiency of LLMs will be quite interesting to see. Because unlike past technologies where there was only user error, we're dealing here with going to a calculator that will not infrequently give you an answer that's wrong, but looks right. And what sort of 'equilibrium' people will settle into with this, is still an open question.
It's not that bad. In reality if we're looking at large tech companies, they've got senior people who know pretty much anything you want available within minutes/hours - which is something small companies just can't afford.
Ml enhanced devs may be a little bit faster and get some usually-correct help, but they won't get any wisdom.
In my experience the great slowdown of growing companies comes from hitting the communication barrier on their products - the point at which the majority of effort is spent coordinating work rather than doing work. I find that the path from majority focus on product to majority focus on coordination isn't linear, but rather more of a watershed. One day you are 80/20, the seemingly overnight after some growth you are 20/80 the other way and never look back.
The advantage of being on the right side of that watershed is that you can maintain velocity and agility. Not only can you iterate quickly, but you're in a better position to change course and rebuild as needed. The left hand and the right hand require little effort to coordinate and get it done.
Larger companies live and die on their ability to either find a moat large enough to protect them, or build organizational structures that let them keep scaling. It takes decades to get the culture and processes right and baked in across the board for a large company to be able to maintain any velocity and reinvent itself.
This is where the gap is. Being small is easy, you simply don't have the coordination problems. But the moment you hit success and need to grow, you immediately are at a disadvantage compared to the big incumbents who have had decades to refine their coordination systems.
The extent to which AI can provide more leverage to smaller companies allowing them to "grow" without actually crossing that coordination watershed, they will be in a much better position take on the incumbents.
One of the things I'm going to be looking for over the next few years is whether extensive use of AI assistance will enhance the development of "wisdom" or inhibit it.
I suspect the latter, based on our existing experiences with leaning too much on help, but only time will tell. If it accelerates the development of this wisdom, it will be an invaluable too; if it inhibits it, it will be a career equivalent of taking hard drugs; fun now, deadly over the long term. I'd advise those who are dabbling with it now to 1. keep an eye out on whether or not your own skills are developing and 2. consider whether there's a way to use the tool in a way that your own skills do continue to develop.
I'm still in charge of telling it where it go, but it takes me there. Knowing where to go and why is the important bit tied to wisdom.
My suspicion is that a company like Apple would want it on-prem, or not at all. A hosted instance with a pinky promise not to peek is not attractive to a lot of large businesses out there.
Your material point may still be valid. Apple could buy it, assuming MS was willing to give Apple a full copy and let them run it internally. (This would require divulging the details of its model to Apple. So I have no clue whether either of them are interested in dealing on such a basis? It would seem like a deal to me if MS could get the right price from Apple? But people a lot smarter than me make that call.)
If I had to bet, they won't allow non hosted instances of a model until they are well on their way to completing the next model. That's just my gut feeling. But again, smarter people make those calls.
Why is it critical to use a boilerplate code generator?