What is Nostr?
Fabio Manganiello /
npub13uu…pvgs
2024-03-20 23:19:33
in reply to nevent1q…uhgr

Fabio Manganiello on Nostr: npub1kljxm…j36ce npub1lhngm…ss0mj I wouldn’t use ChatGPT for any problem that I ...

npub1kljxml8pnffr83jth75ee60d4e5wwwes7felqxvs38h0kuf5fc7spj36ce (npub1klj…36ce) npub1lhngm68szjfcqr6yptylfnupq3dyajl7h56j05zdwhllf7e0ezdsgss0mj (npub1lhn…s0mj) I wouldn’t use ChatGPT for any problem that I could solve by searching on StackOverflow/Reddit - that’s where most of its training content came from anyway.

But I definitely find AI assistants helpful. I used TabNine even on vim for many years - it’s a mostly local AI assistant that has pioneered the field before everybody jumped in the same pond. And Copilot…I hate what Github did, training such a big model without asking for anybody’s permission, with no concerns for the licenses of the underlying code, and when you already host 99% of the FOSS code out there, was nothing but a dick move. But when I use it (and I tend to avoid using it when possible), it really boosts my productivity by at least 70%.

Even in hard problems with innovative solutions, there’s always in my experience some boilerplate involved. The struct/class/map that you have to fill from a JSON response, the unit test that needs to check what your code does when you pass any of the values in a big enum, the CI/CD pipeline, the Helm chart, the Gradle configuration…

This is all stuff where these assistants actually do very well. I wouldn’t let them touch my code that adjusts the thrusts of the motors of my drone depending on the accelerometer readings even with a 10ft stick, because that’s the kind of stuff that requires knowledge of a bunch of fluidodynamics equation as well as real-time programming principles - and if it something goes wrong the drone may go off the tangent hit somebody’s face. But generating a template for my API definitions, filling in the blanks in a schema/adapter definition or initializing the dependencies in my Gradle or package.json? Definitely! That’s not the kind of stuff that excites me about engineering anyway, those are more like the bureaucratic papers that I need to fill up in order to do my job.

I actually see a lot of potential for AI assistants on the augmentation. Just like LINTers, and IDEs with runtime errors/warnings checks before them, and compilers with error checks before them, boosted the productivity of developers in the previous decades.

But asking ChatGPT to whip up a concurrent, production-ready application and deploying it without engineering oversight (i.e. the replacement part), I don’t see that happening any time soon. At least for backend developers though, since our field usually requires a lot of application-specific problem solving skills. For frontend devs and designers, where the same design patterns and best practices are basically applied to all the UIs out there (and these models are actually great in inferring knowledge from common patterns), I’m not so sure…
Author Public Key
npub13uunvh7djw9ep54nswkuxlneyee7ehcpc7e53t68krykrdeg6j4qrdpvgs