Ask HN: Burnout because of ChatGPT?
Long story...
I have been using ChatGPT for a while, and moved to the Plus subscription for their GPT-4 model, which I must say, is quite good.
1. ChatGPT makes us very productive. Personally, in my early 40s, I feel my brain is back in 20s.
2. I no longer feel the need to hire juniors. This is a short-term positive and maybe a long-term negative. [[EDIT: I may have implied a wrong meaning. To clarify - nobody's going yet because of ChatGPT. It is just raising the bar high and higher. What took me years to learn, this thing can do already and much more. And I cannot predict the financial future of OpenAI or the markets in general.]]
A lot of stuff I used to delegate to fellow humans are now being delegated to ChatGPT. And I can get the results immediately and at any time I want. I agree that it cannot operate on its own. I still need to review and correct things. I have do that even when working with other humans. The only difference is that I can start trusting a human to improve, but I cannot expect ChatGPT to do so. Not that it is incapable, but because it is restricted by OpenAI.
And I have gotten better at using it. Calling myself a prompt-engineer sounds weird.
With all the good, I am now experiencing the cons, stress and burnout:
1. Humans work 9-5 (or some schedule), but ChatGPT is available always and works instantly. Now, when I have some idea I want to try out - I start working on it immediately with the help of AI. Earlier I just used to put a note in the todo-list and stash it for the next day.
2. The outputs with ChatGPT are so fast, that my "review load" is too high. At times it feels like we are working for ChatGPT and not the other way around.
3. ChatGPT has the habit of throwing new knowledge back at you. Google does that too, but this feels 10x of Google. Sometimes it is overwhelming. Good thing is we learn a lot, bad thing is that if often slows down our decision making.
4. I tried to put a schedule to use it - but when everybody has access to this tech, I have a genuine fear of missing out.
5. I have zero doubt that AI is setting the bar high, and it is going to take away a ton of average-joe desk jobs. GPT-4 itself is quite capable and organisations are yet to embrace it.
And not the least, it makes me worry - what lies with the future models. I am not a layman when it comes to AI/ML - have worked with it until the past few years in the pre-GPT era.
Has anybody experienced these issues? And how do you deal with those?
* I could not resist asking ChatGPT the above - couple of strategies it told me were to "Seek Support from Others" and "Participating in discussions or groups focused on ethical AI". *
204 comments
[ 3.2 ms ] story [ 228 ms ] threadThis seems to be contradicted by the text that follows.
It would seem odd if this were the one time in the history of computing where a big productivity boost didn't just lead to increasingly big/complex software.
It's all about scaling up or out. Having co-workers is like scaling out, you have to worry about aligning your goals, there's a lot of communication overhead in general. Using ChatGPT is like scaling up, you're just upgrading your skills and intelligence and you still have very low latency as there is only one mind in control.
I'm wondering why you're feeling the need to hire juniors because of GPT-4. Is it because GPT-4 has taken up the cognitive load capacity you need for mentoring juniors, or do you feel like GPT "obsoletes" less experienced people?
I think ChatGPT's advice is on the right track. It sounds to me like your experience of using it is kind of like my experience of pairing with someone else of equal-ish ability: productive, but draining, due to the need to constantly pay attention. If so, why not treat it similarly? Most people don't pair all day every day, probably because of the aforementioned cognitive load of doing so.
Last, but not least, while this may seem obvious, you should remember that you are human and not a machine. You need to separate yourself from this thing for at least some portion of your day. The constant stress (and, yes, that dopamine rush you feel when you use it is a kind of stress -- stress isn't always a purely negative thing) will take its toll on you eventually. That's the "burnout" you're perceiving, and the only way to prevent it is to just not let it happen.
Take care of yourself. Socialize and interact with humans, especially close friends and/or SO's as applicable. If you have a pet, spend some time with them. Take a walk.
But, most of all, remember that GPT-x, as smart as it may appear, can't actually learn anything from experience. It can only learn from an expensive and labor-intensive process, and once its training is done, it's frozen in time forever (modulo some fine-tuning, which is essentially an extension of said labor-intensive training process). And, at the end of the day, that just makes it a very versatile, very expensive, and very useful tool, but a tool nonetheless.
This sounds like the root of your problem, and entirely on your ability to enforce boundaries (which you may or may not have set for yourself). No judgment here; I think we all have struggled with this at one time or another. Or, you know, constantly...
> 4. I tried to put a schedule to use it - but when everybody has access to this tech, I have a genuine fear of missing out.
I definitely know that feeling. I think the likely outcome writ large is that this FOMO feeling will eventually subside. The economy for years has needed more developers than were available; ChatGPT and friends will result in individuals being able to do more and soak up demand that way instead of increasing supply. The long-term negative effect of this is more likely to be depressed wages instead of massive unemployment in the tech sector.
> 5. I have zero doubt that AI is setting the bar high, and it is going to take away a ton of average-joe desk jobs. GPT-4 itself is quite capable and organisations are yet to embrace it.
Another way of looking at it is that its going to create a number of desk jobs, but those who can't adapt to the tools on the market will suffer in the same way that people who couldn't adapt to the use of spreadsheets, word processors, etc, certainly had fewer job opportunities than those who did. Some people are going to get left behind, no doubt—this is why I'm in favor of a robust social safety net. But even with questionable public support for those people, I don't think anyone today would suggest we should retreat to an economy that didn't have such basic tools as spreadsheets and word processor apps today.
I feel the opposite: I had a great experience asking GPT-4 to do some tasks for me and have been feeling like I'm missing out ever since by not using it more often.
However, I'm wary of posting work-related code into it so I either have to come up with similar examples, which is time-consuming or ask it conceptual questions for which I haven't been able to make it much helpful. Sometimes I even noticed that a conversation with a colleague produced a much better result and it wasn't even something very specific to the project. So yeah, I feel like it's a great tool but I'm having a hard time using it productively. It definitely feels like being creative with your prompts is an important part of getting value out of it.
GPT can give incorrect, bad, or non-functional code. A senior engineer that reviews GPT responses will (hopefully) spot that and rectify it right away. Junior engineers can end up being less productive and not learn a lot when encountering this.
I'm always curious when I see this. Is it about potential IP in the code? References to clients in the code? Secrets?
In my last job they were worried about it too, but decided the cons outweighed the pros. Some of our code was client-specific (CanvaMapper etc.), but we would remove brand names and then go for it.
*This may be a bit of an oversimplification, but argo showed me that the whole pipeline can be automated
Is it supposed to be a good thing?
> A lot of stuff I used to delegate to fellow humans are now being delegated to ChatGPT. And I can get the results immediately and at any time I want. I agree that it cannot operate on its own. I still need to review and correct things. I have do that even when working with other humans. The only difference is that I can start trusting a human to improve, but I cannot expect ChatGPT to do so. Not that it is incapable, but because it is restricted by OpenAI.
I think this point bears repeating.
The threat of these models isn't that they'll go all Skynet and kill everyone, it's that they'll cause a lot of economic devastation to people who make a living through labor requiring skill and knowledge, especially future generations of skilled labor. Then there will be a decision point: either the senior-level people who thought they were safe get replaced by a more-advanced model, or they don't and there's a future society-level shortage because the pipeline to produce more senior-level people has been shut down (like the OP is doing).
The only people who will come out (relatively) unscathed are the ownership class, like always.
Of course, this is inevitable because it's impossible to question or change our society's ideological assumptions. They must be played out until they utterly destroy society.
Yes. This is pretty much my only concern about these models, and I'm powerfully concerned about this. It's hard to see how this will lead to a good place. It seems more likely that this will lead to increased poverty and multiple socioeconomic crises.
I am even more concerned that very few people are talking about this, and none of the power players in this space are, except for occasional mentions in passing of fantasies like UBI.
If everything you do for money goes in and out over a wire, be very afraid.
I don't think so. My concerns have nothing to do with agency, anyway. Nor are my concerns limited to (or even primarily about) impact on software engineering specifically.
Even if LLMs perform worse, if using them will save companies money over employing people, then those people are gone.
People have been talking about the threat of automation since the very beginning of the industrial revolution. It just never plays out nearly that badly, and short-term disruptions are always outweighed by long-term efficiency gains within ~5 years or so; even those who experience the worst career disruption tend to end up better off within that time frame.
I certainly would not like for my career to be disrupted for ~5 years, but the alternative would be worse.
That hasn't been my observation at all. In the US, there are large swaths of the nation that still haven't recovered from the last similar event.
To add additional worry, the last time, everyone was told that the way out was to "upskill" into knowledge and service industries. Which a lot of people did, and those people were fine. But what are people to do this time? "Upskilling" back to physical jobs can only absorb so many workers, particularly since there aren't as many such jobs as there used to be.
This is all why I'm so concerned. I don't think history gives us any real reason to be optimistic here. In the very long term -- a couple of generations, say -- perhaps. But in the meantime? Even ignoring the ethics of some people deciding that others are expendable, the people being kicked to the curb will still have to find a way to eat, keep a roof over their head, etc.
If even 10-20% of the population can't do that, we're in big trouble.
All that said, nothing would make me happier than for you to be right and me to be wrong.
And the prediction that only the ownership class would benefit from technological improvements is at least as old as Marx.
I hear that from a friend in the legal business. Less need for paralegals. Unclear yet if the need for new lawyers will be reduced.
why pay Law school graduate as paralegal, when you can hire associate degree grad with ChatGPT to do the same work?
Or, for every junior that isn't hired by a business that can't expand its portfolio to exploit greater productivity or can’t figure out how to effectively use LLMs across the experience spectrum, two will be hired in shops that can do those things, and, as with previous software dev productivity increases, greater productivity in the field will mean a broader range of viable applications and more total jobs across all experience levels.
And everybody also gets a pony! Win-win-win situation!
Previous "software dev productivity increases" happened as computing saturation itself increased from a hanful of mainframes to one in every office, then at every desk, then a few in every home, and later one in every hand. Now it's at 100% or close.
It also still required computer operators. LLM are not mere increased productivity of a human computer operator, but automation of productivity so that it can happen without an operator (or with much fewer).
Moreover, all this "increased productivity" still left wage stagnant for 40 years (with basic costs like housing, education, healthcare skyrocketing). It's not like more of it, in the same old corporatism context, bodes better for the future...
Enabling the same production with fewer workers (or, equivalently, greater production with the same number of workers) is the definition of a productivity increase, not something that constitutes a difference in kind from a normal productivity increase.
> Moreover, all this "increased productivity" still left wage stagnant for 40 years
Not in computing it didn't. Same job category pay rose in real terms over almost any window you choose in the last 50 years, and in most cases the distribution of jobs also moved over time from lower-paid to higher-paid categories within computing.
Also, even general real wages didn't really stagnate for 40 years, average (mean) wages dropped slowly for 20 — mid-70s to mid-90s, and mostly have slowly climbed since, crossing over about 30-ish years after the past peak, but the same effect isn't seen in median wages (though that also was low in the early 1980s and most of the 1990s, before mostly rising strongly) or median personal income (which, despite short drops around recessions, has been rising consistently strongly since the 1981 trough.)
Of course. But "greater production with the same number of workers" vs "the same production with fewer workers" is already a difference in quantity (of both production, and, the thing pertinent to the discussion, of workers).
And there's also "greater production with fewer workers" - where you get to have your employer pie (fewer workers) and eat it too (still get greater production).
In other words, sure, there’s a limiting factor in terms of how much software the world actually wants, but the more software we can produce per programmer, the cheaper software gets and the more software the world wants. There is still eventually a limit here, but it is a lot farther away than it looks.
previous 'computing saturation is at 100% or close' pronouncements go back to 01953 https://geekhistory.com/content/urban-legend-i-think-there-w...
this human body weighs about 100 kg and occupies about 100 liters. it contains about 30 trillion cells, each of which contains something like 10 million ribosomes, 300 quintillion in all, which are programmable machines that construct proteins by executing a digital program on a dna tape, although the program is quite limited, more like a player piano roll than a computer program
current sram bits are on the order of 20 nanometers in diameter, about the same size as a ribosome. this is clearly feasible because these devices are already in mass production. you need on the order of 4096 of these, plus a roughly equivalent number of transistor-like switching elements (which are smaller), to get something we would recognize as a computer (i.e., you can program it in c or basic or assembly rather than verilog or abel or something). multiplying by a safety factor of two, we're talking about 32768 20-nanometer-sized elements, which is a cube 640 nanometers on a side
obviously (?) such a computer can't be manufactured by current manufacturing techniques, but also obviously it will work once you figure out how to make it. quite likely you can improve on that by orders of magnitude; ribosomes, after all, are considerably more capable than a 1-bit memory cell
you can fit 400 quadrillion such computers into the space of the human body, a bit over ten thousand per cell
so quite plausibly we are still 20 orders of magnitude away from personal computing saturation, and after another 12 orders of magnitude people will be saying things like 'then a few in every home, later one in every hand, and finally one in every cell. now it's at 100% or close'
even this is overly pessimistic, though. the obviously-workable computer outlined above weighs about 2e-16 kg, and jupiter weighs about 2e27 kg, so if you convert jupiter into computronium, you can get about 1e43 computers, roughly 1e33 computers per currently living person. and the milky way is about 1e12 solar masses, which works out to 2e42 kg, so a milky way of computronium would be roughly 1e58 computers
converting most of the milky way to computronium is less obviously feasible or desirable than putting anticancer robots in every cell but it suggests that we're closer to 48 orders of magnitude from computing saturation
as for corporatism, corporatism seems very unlikely to become established in the current political environment outside of backwaters like argentina. of course, the future is enormously unpredictable, but to me corporatism seems like an idiosyncratic response to the political conditions of the 01920s
Yes, pronouncements can come early. They can also come at the point in time that they hold. Previous pronouncements having come early doesn't mean the same pronouncement will never hold.
In any case, those pronouncements didn't match an 1:1 (or even 3:1, considering laptop+work computer+smartphone) ratio of computer to person.
>obviously (?) such a computer can't be manufactured by current manufacturing techniques, but also obviously it will work once you figure out how to make it.
In any case, fitting "400 quadrillion such computers into the space of the human body", even if possible, doesn't require 400 quadrillion programmers. Or even necessarily that much programmer. After all programmers genereally don't increase based on the count of cpus (that's a less strong correlation), but based on the number of individual software programs.
Such a development might not even require more programmers than there are today. In fact, if LLMs improve similarly as original GPT to GPT 4, or (even worse) if AGI is achieved before those nanocomputers, their software might require exactly 0 programmers.
In any case, the eventual (?) achievement of those "400 quadrillion such computers into the space of the human body" (while still waiting for flying cars, robot servants, and cold fusion) would be so far ahead to make the point moot regarding the job prospects on programmers in the industry given the raise of LLM in the next 30-40 years.
>as for corporatism, corporatism seems very unlikely to become established in the current political environment outside of backwaters like argentina.
Outside of backwaters? Corporatism has been the status quo in the US for several decades now...
the only handwaving in the bit you quoted consists of saying that it's not possible to build computers where the entire computer is less than a micron across with current manufacturing techniques
it's certainly true that computers don't require programmers. i think it's easier to reason correctly about the issue the other way around; programmers can do anything, but they require computers to do it
50 years ago, if you wanted to cycle the current in a voltammetry lab setup or make your windshield wipers intermittent, you designed a circuit. if you wanted to get a screw machine to cut a new kind of screw, you probably cut some new cams out of steel sheet. if you wanted to retard the spark timing on your engine ignition, you adjusted a screw
now in all those cases you just write a program, or perhaps even change some parameters to a program, because all those things are controlled by computers now. so suddenly you have lots of programmers working in these areas
today, if you want a ditch dug, you don't write a program; you rent a backhoe or pick up a shovel. but that's just because your dirt isn't programmable yet
the flying cars problem is well documented to be a question of regulatory obstacles and governance, not technical capabilities. lots of people do fly ultralights today, you can find videos on youtube
will the same problem force you to move your dirt with a shovel 50 years from now instead of just telling it where to go? yeah, plausibly, but that's just a question of amish-style or tokugawa-style rejection of technology, not a question of saturating the possibilities
as for corporatism in the usa, it definitely isn't a thing. possibly you just don't know what corporatism is https://en.wikipedia.org/wiki/Corporatism
Leading up to 2008 you'd think the market would optimize for lenders that checked who they were giving loans to. But that's not what happened. The idiots kept giving out shit loans until the entire market burned down taking out good and bad lenders alike in the aftermath.
As an American parent of young children, I keep being told that college is a scam and I should steer my kids toward the trades. 90+% of the time, I am being told this by a white-collar worker who went to college themselves, and is just bloviating.
When we reach a real crisis point, severe enough to actually consider granting skilled tradespeople access to a fraction of the privilege enjoyed by white-collar workers, then I might consider nudging my kids toward electrician or plumbing work. But under the current social caste system, of course I am going to do everything possible to give my kids access to college and steer them that way.
I believe that virtually everyone, white-collar and blue-collar alike, quietly feels likewise. We make a pretense of giving contrary advice, but mostly just in hopes that other people will move in that direction for us. To take the bullet and help with this imbalance, and also to relieve the intense competition our own kids face.
Exactly. When I talk to plumbers, electricians, etc. many of them express the desire to leave because the hours and environments are hellish. Meanwhile some full of themselves tech bro is babbling on about how everyone (not them of course) should go into the trades. Or they pull some vague anecdote out of their ass about how someone they know makes a gazllion dollars in the trades after 20 years and starting their own business, which is about as valid as telling someone to go into software development because they can become a billionaire, and throwing out some anecdote about a startup founder they know who got aquired.
While there is plenty of money to be made in the trades, one thing that gets ignored is, as you said, the working conditions. Further, those working conditions compound over the years and absolutely wreck bodies.
The happiest I’ve been in my life is spending about 2-3 hours a day at a desk. It’s a shit life but we don’t see it like that coz we love sitting on our ass.
But not anything like 8+ hours a day of manual, repetitive, physical labor!
Come on, there's no comparison to desk work.
Except that can be trivially counteracted by get up to stretch every hour, taking a 20 minute walk at lunch and hitting the gym a couple of times a week.
I think how hard the trades can be on your body is under appreciated
We seem to have structured things in a way where what is individually optimal and desired is very opposed to what we need at larger scales. It does seem like the system is maintained only by inertia at this stage.
He does not have paid vacation, good sick leave policies, or good health insurance through his employer. He has witnessed a bunch of on-the-job injuries and one near-fatality, largely caused by his employer pushing hard for the team to complete jobs as fast as possible. He is paid alright, but less than the norm for the people I know with college degrees even after we exclude everybody in software. His job is also physically demanding and may cause problems later in life.
Not exactly a "hey, pick this job and you'll have a great career" story.
And a part of their role will morph into prompting GPT4 (much like this senior engineer has started doing).
If GPTx ends up in the narrow area where it's universally smarter than junior engs but definitely not capable of being a senior eng, then junior engs will just shift to the little remaining work for senior engs, shadow them for months to years like an apprenticeship.
Of course in that case the total number of eng needed will also decrease (already only a small percent ever get good enough to be considered truly senior), so there will be selection bias toward more intelligent engineers who are a step above GPTx. If none are left, then the profession will be gone and there will be no problem.
They do suck at solving problems correctly, however if you give them an incorrect solution and ask them to spot mistakes, or just ask for a general method to do a problem, it works out.
However, they might not yet compare to the best of humans. The best SO answers probably represent 0.01% of the answers, which is a high bar. I am certain very amazing teachers and professors exist out there in the world whom LLMs can't beat yet but the average can't compete.
The discussion was specifically about LLMs to write software. Not about university essays or articles or exams. Are you claiming GPT3.5 is better at writing bug-free software than the average software engineer?
However, I do think a framework needs to be developed for formally learning any particular topic. If you are self learning using just chatgpt, you might miss out on a few key things. I haven't used it much personally but the khan academy bot is close.
For example, Llama is nowhere close (even if it's pretty good).
You can think of GPT4 as a way to flexibly access a lot of knowledge from domain experts. Sure, sometimes that flexibility hallucinates things, but it mostly works and we can verify a large part of it.
That's bunk. The OP is literally "feel[s] the need to hire junior" engineers because he can ChatGPT that work. How are they going to learn a job they won't be given the opportunity to have much faster?
> If GPTx ends up in the narrow area where it's universally smarter than junior engs but definitely not capable of being a senior eng, then junior engs will just shift to the little remaining work for senior engs, shadow them for months to years like an apprenticeship.
That doesn't make much sense. That kind of apprenticeship would be pure charity, so it's not going to happen. No one is going to learn to be a senior engineer in "months," and no one (except someone's rich parents) is going to pay for someone to sit around unproductively in and office for years while they learn. Even interns are required to produce output that adds value. They do that by successfully completing junior-level tasks that need to be done well.
There's always a set of junior eng with high growth potential who are being trained to become senior. They will continue be hired, albeit with less simple work than before, because most companies do run scenario planning like "what if X left who is our backup".
The juniors who are not expected to ever grow to that level would no longer be sought out for simpler tasks as those tasks will be automated away.
Net impact is fewer total engineers, but those who remain are at a higher level of average skill.
They are to become an independent person, taking independent actions, aligned with the current vision and goals.
I don’t want a permanent increase of my own workload which is what working with chatgpt feels like.
That's bunk. The OP is literally "feel[s] the need to hire junior" engineers because he can ChatGPT that work. How are they going to learn a job they won't be given the opportunity to have much faster?
> If GPTx ends up in the narrow area where it's universally smarter than junior engs but definitely not capable of being a senior eng, then junior engs will just shift to the little remaining work for senior engs, shadow them for months to years like an apprenticeship.
That doesn't make any sense. That kind of apprenticeship is pure charity, so it's not going to happen.
If a task can be completed satisfactorily by an automated computer program, was the task really "skilled labor"?
I ask this sincerely, because some of the occupations being replaced/evicted (eg: copywriting) were clearly given more skill value than they should have.
I'm surprised someone hasn't replace politicians with an LLM. Imagine not having to pay their salaries when ChatGPT can send "thoughts and prayers" to Maui over Twitter 24/7.
In my opinion this is the most optimistic of the realistic possible outcomes. In the past when automation put a factory worker out of a job, they were just told to go back to school or "learn to code" which isn't actually a solution for most people. These LLMs disproportionately impact people further up the socioeconomic ladder than prior waves of automation. Maybe our uneven society means that this wave of distribution of a more powerful group of people will be more likely to cause an actual change to how we organize society.
Their whole job is to 'represent' their constituents. A LLM can poll the sentiments of the people far more effectively than they can. I'm sure it could be programmed to accept bribes too to weigh rich people's opinions higher. I'd love to see votes done by 100 different LLMs instead of Senators (a hyperbolic, non literal statement but interesting as a thought experiment I hope)
Politicians should still propose new and altered legislation but actually voting, and being informed to vote, could be massively improved.
Head out of the developed world and you can see this type of society everywhere.
This meme of AI -> upheaval -> basic income utopia has got to die. It’s wishful thinking. It’s “clean coal” for programmers.
Occasionally I would see clips from or read reactions to Idiocracy, and be left scratching my head, because somehow, somewhere, there have to be the people who are thinking. The whole conceit of the film is that there are no smart, curious people because it's being bred out of the population. That never made sense to me because you still have to have some smart, curious, creative people somewhere to keep things moving. Our society is quite dependent on the people who silently keep things running in the background.
I can however envision a world where early curiosity is discouraged, and supplanted by a technology that can fill the holes of the entry-level smart people. When everyone is discouraged from starting, and the existing participants age out, then maybe you can get a world where there are no new smart, curious people.
Regarding Idiocracy, once of the background conceits of the film is those kinds of people set up automation to keep things going before they died out (for the reasons clearly explained at the start of the movie). If you pay attention everything in that world is automated: a diagnostic machine with a playskool interface (https://www.youtube.com/watch?v=hmUVo0xVAqE) is what's actually doing the doctor's job, a major company is run by a computer the CEO doesn't understand (https://www.youtube.com/watch?v=jBFREFtFEgs), etc.
I am already seeing this, companies are desperate for senior developers but at the same time they don't want to hire juniors.
This time may very well be different, but there would have to be some additional factor and nobody has given a compelling answer as to what that might be.
History isn't math, dude. This time is always different from last time. The fallacy is making the claim that it's the same (conveniently ignoring all the differences that make it different).
Another mistake is taking an aloof perspective. A lot of changes that "turned out OK" from that perspective were pretty terrible for the people who actually had to live through them.
If someone wants to bring up some of those differences by all means. The reason i am unconvinced is because nobody ever does.
> Another mistake is taking an aloof perspective. A lot of changes that "turned out OK" from that perspective were pretty terrible for the people who actually had to live through them.
Sure, i'd agree. But this is moving goal posts quite a bit. If the claim was simply that some industries might experience some levels of short term disruption due to an emerging technology like AI and it will probably suck for the individuals being disrupted - I don't think anybody would disagree. It also wouldn't make AI exactly unique - short term disruptions in various industries due to changing conditions happen all the time.
And then the automobile was invented. And over the next few decades the demand for horse labor tanked. Now the demand for horse labor is a tiny fraction of what it was a century ago.
The answer is probably that it's not.
The way I view it, I don't hire juniors either. I'm much rather hiring the regular admin I'll have on the team in a year or two who will take over all of the mundane stuff I currently have to handle. At that point, I don't have to ask ChatGPT for a fix, think about the fix, implement the good parts... at that point, Zabbix will just open a ticket "This is broken" and someone else will take care of it.
That takes away real workload from me, and allows them to learn a lot.
> 1. Humans work 9-5 (or some schedule), but ChatGPT is available always and works instantly. Now, when I have some idea I want to try out - I start working on it immediately with the help of AI. Earlier I just used to put a note in the todo-list and stash it for the next day.
Here, my main question would be: Why is ChatGPT special? I've burned midnight oil for an employer just with boring tools like terraform and a configuration management. They are paying me 9 - 5, and I'll work for them most effectively during that time, which at this point certainly includes ChatGPT or Copilot. But I don't really see the point of putting work in for them outside of office hours (and emergencies), regardless of the tools involved.
I feel like a lot of the evergreen hype in computing is framework, practices, etc, that try to break things down into a system where any junior could then just fill in each piece and of course this always collides with the larger context problems.
Once you get to a certain point with such a system, either you have been paying attention all along or you have no idea what you've made and how to deal with a real cross cutting problem and you get to the point where the systems promise is really irrelevant, you succeed based on actual expertise you supposedly weren't going to need.
With GPT-like AI around its current level, I feel like some of these systems for breaking down programming projects are going to face an actual test now that the junior engineers to do it are some GPU costs that could be run in parallel and won't have the usual heterogeneous resources problems of testing with a real project team.
I'm not really sure if any systems will survive (or something learned in the process will make a good one) but I feel like it would be a proof of a holy grail that is suppose quite important, and just the refutation of many systems is itself a major disruption to the field.
To me it feels exactly like finding wikipedia in 2005, or getting an iphone + wikipanion in 2008. The frontiers of my mind have been unleashed. A real bicycle for the mind.
Here are some tactics I use to "turn off gpt":
1. It'll be there tomorrow. The great thing about their threaded model is you can easily find the convo and continue it tomorrow. Remind yourself of that consciously (or tape it to your monitor!)
2. You're not behind, you're ahead. 80% of Americans haven't tried chatgpt. 95% of the world maybe.
3. Don't worry about juniors. They'll still be hired because now they'll ramp up faster and produce better code, using the same tool you're using. Same thing that happened when stackoverflow became popular and junior devs stopped "reading the source code" or "reading man pages."
For all the limitations of GPT4, it truly is great at coding. Exciting times.
idk if anyone realistically compares themselves to the abstract nebulous "everyone". its likely moreso in regards to their socioeconomic band
So maybe the seniors should be worried, since we/they don't have much barrier to entry that means much more competition.
Transitioning from junior to medior (for example) is much more than writing x% better code. It's the process of falling and getting back up. Being stumped and learning when to ask for help (and not just technical, what if the spec is 'wrong'?).
I definitely worry that we are leaving future generations in the dust and that there'll be an experience gap. It's a disservice to take away something from them that we enjoyed ourselves.
No sane company should run on juniors, they're an investment.
What tasks are you delegating to ChatGPT that were previously done by humans? Most of my input from others is regarding current information specific to the task at hand. I don't see how ChatGPT would have any idea what I'm talking about.
Do you have some specific examples you could share?
Add to this the limited usefulness for generating code that's contextual - making some method deep inside a component tree that needs to reference a service class, and pick some dom elements to mutate etc... it requires knowledge and reasoning about the project and overall code structure.
I don't understand how folks are using it as a productivity booster, unless maybe as something like a better StackOverflow?
A few more:
- "Write a Python script with no extra dependencies which can take a list of URLs and use a HEAD request to find the size of each one and then add those all up" https://simonwillison.net/2023/Aug/3/weird-world-of-llms/#us...
- "Show me code examples of different web frameworks in Python and JavaScript and Go illustrating how HTTP routing works - in particular the problem of mapping an incoming HTTP request to some code based on both the URL path and the HTTP verb" https://til.simonwillison.net/gpt3/gpt4-api-design
- "JavaScript to prepend a <input type="checkbox"> to the first table cell in each row of a table" https://til.simonwillison.net/datasette/row-selection-protot...
- "Write applescript to loop through all of my Apple Notes and output their contents" https://til.simonwillison.net/gpt3/chatgpt-applescript
If someone on my team was doing things this unusually they’d probably be let go.
But... they're things that require research. Do you know how to loop through all of your Apple Notes using AppleScript off the top of your head?
That research isn't free: it takes time.
As someone who hasn't done much work with AppleScript before, I would guess it would take me about half an hour to figure out how to do this. But there's a risk that it might take longer.
So the sensible thing is probably not to take on that project at all! I don't care enough about solving it to invest the research time.
But the time taken to chuck a prompt through GPT-4 and then test the results to see if it works is less than a minute.
I wrote more about how this is encouraging me to be more ambitious with my projects here: https://simonwillison.net/2023/Mar/27/ai-enhanced-developmen...
I then Googled "applescript print to console" and got this: https://stackoverflow.com/questions/13653358/how-to-log-obje... ; admittedly this answer took a few minutes to read through, but the second most upvoted answer recommended using log, which your ChatGPT-developed solution (eventually) used.
This all took me < 5 minutes.
Compare them to my original transcript. They don't provide me with enough information: how do I actually run that code?
I got ChatGPT to split me out a zsh script, which caused it to show me how to use "osascript -e ".
I'm excited about using ChatGPT/GPT-4 because it takes the time I need to figure out how to do something "easy" down from half an hour to sub-5-minutes.
Also, take a look at the problems and projects simonw actually tackles.
I work in Deep Learning Research. I don't get any help at all from ChatGPT for my core job. Copilot spews gibberish, too.
I do get enough help about peripherals. Some weeks ago, I needed help with Flask and HTML deploying a model to show it to stakeholders. (I learned Flask some years ago, but not needing it regularly, I forgot enough.)
The data cleaning, preprocessing, model training, making it better than humans were the hard tasks.
Deploying a Flask app with a simple HTML frontend was the easy task. But easy != free. It would have required 2-3x more time researching how to do exactly what I needed, which I did with Copilot and ChatGPT in ~1 hr.
Programmers are paid not to bang out code, but rather to figure out the mess and crap of the existing codebase and how to selectively add one-two lines to change system's behavior and keep stability of the system.
I wouldn't expect much from them for figuring out gnarly changes in huge existing codebases (at least not yet).
But they've been actively encouraging me to write smaller, tighter tools - the good old Unix philosophy - for which they are extremely well suited.
Our existing tooling and helpers lack modularity to begin with. I'm now thinking it would be a better approach to start with having it build smaller tools and patch them together in more useful and interesting ways myself as opposed to being upset that it can't deliver complex, context aware solutions.
Still not buying into the hype that LLMs will replace all software engineers by 2030 due to thinking the nature of our work is not to write code but to solve problems, regardless of the tools we are using, but I definitely see potential productivity gains from using the tool with a different approach to what I have previously attempted.
Fair enough, but i also don't really feel this is threatening anybody's job.
* I'm always using it to munge/generated tables/csv/markdown/json - you can basically throw any copy and paste from a random PDF that's some weird gobbedlygook of tabs, spaces, newlines and get something cleanly formatted. On the one hand, it seems like a waste of computation, but on the other hand, it's way cheaper than my time and there are so many tasks that require using poorly formatted output. Even better, CI will of course write awk/sed for you if you need to do any automation.
* I'm always forgetting the syntax for named byobu sessions (it happily wrote a script to help with that) but I've also been staging some dev servers and it was able to generate the scripts to create new named session and windows, attaching/creating when necessary, handling if the processes were running, and creating the systemd units for spinning these up.
* On this same project it wrote some python scripts for managing SSH tunnels and reverse tunnels, including filtering/logging of error messages, handling jump servers, etc. This is all stuff I've done years ago (and even written lots of docs for), but it was actually way faster for ChatGPT to generate these than digging those out.
* I've been running into issues w/ some HTML5 audio output and needed to swap to websocket streaming w/ webmedia output (which I wasn't familiar with at all). ChatGPT gave me the code to swap into my FastAPI server and the frontend code I had w/o having to do any further research, great.
* I hate Docker setups, and I had issues w/ Nvidia containers and GPUs not showing up w/ my docker config. I was able pass the various error messages and get my problems fixed without spelunking/hair-pulling. Same with figuring out some cross-container network hijinx.
* There's a bunch of one-offs that I might just not have bothered doing, that I can just ask it to do as well - eg, I've previously written code for poisson distributions and the like, so I knew what to ask for, but would have been a huge PITA to dig out exactly how to do it, but took like no effort to just ask GPT4 CI to figure out a one off I just wouldn't have done otherwise: https://chat.openai.com/share/80fa7bc0-e099-4577-bad9-d026e7...
I really wanted to know what vague things OP's humans were doing, but they haven't responded to anything.
I've been reading your blog since the dark ages. Thanks for the great content over the years!
Largely I use CGPT for work that's boilerplate/LOC heavy but architecture light, things like writing first drafts of React hooks and the like. It's quite good with constraints like use typescript or use X function to do Y.
I usually give it about two goes if it goes in the wrong direction on the first try. If it seems to not conceptually understand what I'm asking I generally just write it directly rather than tinkering with prompts for 20 minutes.
I also have a couple of longer system prompts saved for converting Vue components to React using the house style and things like that using the playground.
It does fairly well for architecture, if you don't expect too many specifics. It, at least, works as a reasonable sanity check/brainstorm.
All of these LLM becomes less expert the finer resolution you take the context. Keep it high level, and you still have a relatively expert assistant.
Instead I paste the JavaScript and tell ChatGPT to add type definitions. Mostly it gets it right. If it doesn't, it gets me closer.
I don't use it for JS in general because I'm particular about how I write stuff. Though occasionally I'll lean on Copilot to fill out a utility function.
Where I have found LLM useful is in generating text. Where I used to use a thesaurus I now use LLM to find words to name things in themed UX. But it’s not great at function or variable names, it tends to pick names that look good but don’t precisely describe what something is. LLM is also great at generating text for role play.
Indeed because ChatGPT is excellent at writing text. And because I know exactly what I want to see even if I have a hard time putting it into words myself, I can easily catch the mistakes and hallucinations.
I don't get why there is so much focus on code generating AIs and so little on code analysis. Have AIs do code reviews, write tests and analyze the results, etc... LLMs are awesome at reviewing code, they are able to tell you what's unexpected. And what is unexpected has a good chance of either being a bug or some key element of the code that needs attention. I think I have seen a single article about that, out of hundreds that are about code generation.
same for SQL, if you are not familiar with SQL.
probably could be same with Splunk SPL, Kibana KQL, Prometheus PromQL, or any other DSL that you are not familiar with
I want to contribute, while being fully aware what I'm contributing with. This doesn't lend itself to that.
If it was actually a life altering tool (and it might be one day) there wouldn’t need to be an entire industry of people trying to convince everyone that with just one small trick Google doesn’t want you to know, you can quadruple your productivity.
At the very least, its a much more powerful google (dont nitpick my comparison, i realize it hallucinates). Getting the EXACT context of your question is something generalized search/articles online will NEVER give you, and you can read hundreds of pages of docs all day. This is good for certain things, but not when you want to know just a single setting or atomic piece of information. I want to get the smallest amount of accurate information very specifically to my problem, as I'm programming many hours per day on my own companies as a one man show.
My search history on chat gpt includes a few things as examples:
- specific ways SOLID principles could be applied to Go which is non-OOP language
- helping me quickly learn nuances of Lua for configuring neovim, specifically for weird syntax or things annoying to google (ie what does # mean) or what does a specific error mean within the context of the configuration
- more efficient top k algorithms than what I was building for learning purposes
- asking to break down big o complexity of certain types of sort functions and whether they differ from n log n
- helping me learn enough rust to do a bug fix Pr that was annoying me
- x vs s in neovim config for keymap modes
- figuring out why Ruby doesn’t implement descending ranges
Etc etc etc
This is repeated on like a daily basis anywhere online, and lots of people agree. All you will see are basically fake amazon review websites, or affiliate links in everything. The top 100 pages are pure garbage that they choose to favor over actual websites with real reputation.
Even for things that I've done before, it's often much easier to ask ChatGPT how to do something than to look through my projects to find how I did it previously. It might sound lazy, but if it takes me several minutes to search through various projects to find that one time I did something, why bother when I can just ask ChatGPT and know in seconds?
I will say that yes, ChatGPT can hallucinate APIs that don't exist, and that can be annoying, but even if it does it 20% of the time, it's still incredibly valuable in the time savings the other 80% of the time it does hit.
A common thing I've searched for, for instance, is the various date formatting options and types I need for managing time zones. I suppose I could sit down and learn the plethora of options, but I don't see that is information that's worth memorizing internally. Similarly, I suppose I could really internalize the complete syntax of regular expressions, but is it worth it? I've used them so many times before ChatGPT, but I've not memorized absolutely all the options available to me.
The other side of the coin is this is allowing me to make so much progress that I'm needing to even use more APIs than I would've previously. If I had done it the old way, I might only have time and energy to devote to a small number of tasks, but with ChatGPT I can "explore" more territory than I wouldn't have previously.
This is a time management problem and a setting boundaries problem. When I leave work, if I have an idea (work related) I jot it into a notebook to review the next day. After I leave (no later than 1630 every day) I am not obligated to work, so I don't. I exercise, read, study, spend time with my wife, play with the cats, whatever I feel like doing. If they want me to work 24x7, they can increase my pay by 20x because they'll only get a year of use out of me and I can retire with that income in a year or so without issue. They pay for 8 hours, they get 8 hours.
> 2. The outputs with ChatGPT are so fast, that my "review load" is too high. At times it feels like we are working for ChatGPT and not the other way around.
Then slow down. See my response to (1). Your time management skills are in desperate need of development. Ask less of ChatGPT. Only ask enough to complete an objective, no more. Don't ask it for information faster than you can process it. And if you feel the need to ask it a million and one questions, delegate processing its responses to others (bring back your juniors).
> 3. ChatGPT has the habit of throwing new knowledge back at you. Google does that too, but this feels 10x of Google. Sometimes it is overwhelming. Good thing is we learn a lot, bad thing is that if often slows down our decision making.
> 4. I tried to put a schedule to use it - but when everybody has access to this tech, I have a genuine fear of missing out.
FOMO is real, but like most fears it's a waste. There is no existential crisis. You are not being chased by a bear, you appear to be a professional so you have steady income you know where your next meal is coming from and have shelter. Your fear is unwarranted, even if normal. Seek out counseling or therapy to learn how to manage fear and anxiety more effectively.
Github copilot and other tools help you scale up, not out. At the end of the day teams may be smaller, but someone needs to guide it.
I'm not sure what you do, but I can't see it for most SWE jobs. These posts make me question whether people understand llms or have zero quality controls at their workplace.
It almost feels like every day people just make up wild stories that seem untrue.
Are people using it to pump out full apps and services or what? Anytime I've tried that the result quality is poor, even after lengthy explanations of what I'm asking it to build. Sure, sometimes it saves a little bit of time, but sometimes it also wastes my time by giving me nonsense or never zoning in on what I'm asking for. I don't see how people are becoming so much more "productive" with this, unless they're mostly talking about stuff like non-code written content.
It doesn't help that my company's infosec policies forbid putting any proprietary data or code into these AI tools, hence why I only ever ask for short snippets.
So don't use it outside of work hours.
If you feel compelled to solve work problems outside of work hours that isn't a ChatGPT issue. It's just vanilla workaholism
Work to live, don't live to work and all of that.
The biggest fear should be missing out on life. Not some novel tech.
I'll be honest, someone calling themself this sounds to me like someone with no self respect.
> The only difference is that I can start trusting a human to improve, but I cannot expect ChatGPT to do so. Not that it is incapable, but because it is restricted by OpenAI.
Sounds like a good reason to hire juniors.
Welcome to the future, where AI subscriptions (self or employee provided) are required for employment, with the majority of your work being management and high level input, where you guide and answering questions for the* AI.
*Probably "The" AI, since there will be one obvious choice for your problem space, which not using would put you at a severe disadvantage.
Seriously though, I've been feeling this somewhat too, lately. The "investment" part of ROI has been shifted significantly, for the "junior" side of things, where I can do "boring" things I wouldn't normally. So, I find myself doing more boring tasks, with a definite net positive outcome, but also everything negative that you described.
The problem with this is that this ROI only the "junior" end of problem space, so, I'm working on more junior problems than I was before.
I think we're somewhat proving that juniors are still needed, to take these tasks. They have been empowered the most, and will still learn and feel creative, working on these problems. More senior people won't. I understand I'm saying this from a point of extreme privilege, but I think most of us need to feel creative, and "enjoy" what we're doing. That means harder problems.
Maybe it's best to still let the juniors continue to do the junior things. There's someone out there that would love to spend all day doing what's burning you out.