Hacker News new | ask | show | jobs
by mike_hearn 1161 days ago
A few thoughts based on my experience with GPT4 so far.

1. For now, not by much. It will make us more productive but the world is not short of projects with endless backlogs so huge nobody can ever drain them. Maybe some of those tickets are low value or obsolete, but a lot of them represent real bugs or ideas for improvement that the cost of software development makes prohibitive to reach.

2. It may change the nature of the job a lot. It could hurt developers who are very heads down and ideas constrained. If what you love most about coding is the thrill of finding the perfect algorithmic implementation, then, well, AI may reduce the enjoyment of the job. If what you love about coding is seeing your ideas come alive, then AI can increase your enjoyment of the job.

3. Whilst some people claim they ideate and get inspired by talking to AI, my own experience has been that GPT4 is a rather conservative and predictable sort of personality. Perhaps it's the training and maybe via the API you can ramp up the temperature and get more creativity out of it, but whenever I've asked it for ideas or tried to bounce ideas around, I tend to get milquetoast yes-man type results, or the ideas it comes up with are generic and obvious. Also with each day that passes it's getting easier to notice the lack of "AI invents/solves something new" type stories. There was the one where it came up with a word game, which was pretty cool, and we know it can invent stories. But it doesn't yet seem to be producing an abundance of new ideas for things like new features, business innovations, etc. Maybe it does for other people. Maybe it will start doing it for me soon. But for now, it doesn't seem able to do that.

So - programmers who just want to play code golf, be ready for that to become more of a hobby than a job. But for programmers who always wished they had more hours in the day to get through all their ideas, it will enable them to create a lot more value and that value will in turn create demand for yet more value-add on top of that. So it should be a virtuous circle, in theory.

1 comments

> So - programmers who just want to play code golf, be ready for that to become more of a hobby than a job. But for programmers who always wished they had more hours in the day to get through all their ideas, it will enable them to create a lot more value and that value will in turn create demand for yet more value-add on top of that. So it should be a virtuous circle, in theory.

But to me, this also implies a vicious circle of yet more crappy, barely-good-enough, bloated, inefficient software. I wish this wasn't the case. I recognize the upside; more real-world problems will be solved. But we really need to do something about the excesses that lead to things like the old (Electron-based) Microsoft Teams.

Here's a trick I've been experimenting with lately - try making a GUI in some high level and English-like but formal language. FXML works well (the description language of JavaFX) probably because it's relatively noise-free, but XAML would probably also work.

Then ask GPT-4 to convert it to SwiftUI. It actually does it. Or try Jetpack Compose: same thing.

This leads to an obvious thought - part of why people use heavy abstractions is because the cost of native development is too high. You could pay development teams to write a WPF UI, a Cocoa UI, a GTK UI, an Android UI and a UIKit UI for your app but even VC funded firms flush with cash can't justify that level of extravagance. It's too hard and expensive to hire devs, so when you do, the opportunity cost of them porting stuff between endless UI native APIs just can't make sense. AI changes that equation completely. GPT-4 is cheap for what it does. Suddenly, auto-porting your app into 5 different native APIs simultaneously and then assigning the resulting bugs to a bug-fixing bot doesn't seem unimaginable.

Now, for better or worse, even if AI reaches the point where it can do that, it doesn't mean Teams won't be slow. People use Electron for a lot of reasons, not just cost of duplicated development (skills, libraries, Windows lacking a competitive and non-deprecated UI toolkit etc). But it's interesting to think about ideas that we instinctively write off today due to the massive cost of software developer time.