- I don't think this video is going to change the entire world
- As a mentor of mine often told me, I'm a a little boat - I don't try and sail far from shore.
- Instead, what I hope is that this video can help... you.
- You clicked on this video because the title was "The Worst Thing You Can Do For Your Career"
- and you're wondering what that thing is and how to avoid it
- Online, usually this poisonous idea is not suggested in a straightforward fashion. Usually it's presented in something more like:
- Anonymous Redditor on CS Career Questions: "Hey kiddo, you're three years into your CS degree? well that's three years too late. Just drop out now"
- CEO of a company who greatly benefits from you believing this: "Yo Junior, don't bother understanding the code or underlying concepts - just let our AI tab-complete you to success"
- What's their conclusion?
- **You don't need to learn - or even try hard**
- In effect, they are suggesting to **Just Give Up**.
- But here's the my problem with that - The future is hard to predict. But here's something nearly guaranteed: if you stop learning and stop improving, and ultimately, give up on trying hard, you practically guarantee the outcome.
- This sentiment is Self-reinforcing advice or a self-fulfilling prophecy: their advice will make you believe that it's correct because the more you practice it the more you will experience the doomer direction
- If you believe that it's not possible to get a software development job, and you give up on working on improving your skills - your chances of landing a software developer job decrease
- If you believe there's no reason to learn underlying technologies or skills, then you'll never find the places to apply them - or even realize how they could have shifted your thinking if you knew about them.
- If you believe that it's not possible to get a software development job, you might even give up on search - your chances of landing a software developer job are now approaching zero
- And so then... you'll believe that they were right. That knowing software, that understanding software is simply a dead end - no longer useful at generating value.
And one note on this - what I'm not saying is that AI is useless. In fact, I think quite the opposite. AI is very useful to me.
- However, I think sometimes the **inherent** usefulness is overstated by programmers - sometimes especially excellent programmers.
- Nearly everyone, not just programmers, suffers from the curse of knowledge: after having become highly familiar with a topic or skill, we struggle to imagine what it's like not to know it.
- And so, when an expert programmer uses an LLM, they often find bugs easily, use prompts that lead the LLM to a much better solution than it would otherwise pick or even write certain parts by hand that the LLM just simply continues to get wrong.
- A lot of this can happen sub-consciously almost - saying "ya, the LLM did most of it and I just did a few little edits"
- Sure! But those edits were only small and simple because you've been programming and learning and experimenting for years!
- Most of us didn't come out of the womb with an inherent knowledge of what footguns React might have hiding for us.
- This can lead to an inflated expectation, even from experts in the field - because "normal users" will not be able to replicate what the "expert users" are able to produce....
- And that's exactly my point!! That sounds like expertise and a job description that is predicated on knowing things and being able to do them well.
- And so, if you never develop any new skills or knowledge, then you are only ever as good as what the LLM can do. And if you're only as good as the LLM, **then you are a commodity**.
- If you're only skill is asking the LLM for something and then uncritically executing the LLMs vision (which is the only way you're able to execute the LLM's vision if you have no tools to evaluate whether the decisions are good or bad), then you so much more likely to be replaced by an LLM who can work more hours and doesn't take sick days. Of course the business will want to replace you as soon as it becomes convenient to do so.
- Or perhaps, you'll never even get hired in the first place.
- Why would I want to hire an LLM with extra steps?
- If you follow their advice, you'll never have anything to offer that's more than the LLM.
- And so the natural and expected outcome of the "give up" advice is actually, and a bit ironically, the very outcome that the fear peddlers are shilling: jobless and with no future prospects.
- Life is all about tradeoffs - every decision you make has a cost: the opportunity cost of all the things you didn't end up doing.
- If you give up on learning, or maybe more specifically, you give up on computer science - you are giving up on all the opportunities you had to learn, for the serendipity that can come from working hard and perhaps even a successful, employed future where we aren't all so immediately replaced with fully autonomous LLM systems.
- So what are you going to replace your current time with if it's not computer science? maybe you have an alternate career path that is viable for you, if you think that one is going to suit you better than computer science, then you consider going for it! I'm not saying the only job is software developer
- If instead of giving up on computer science (wherever you are on that journey), you try, and maybe even try hard, you are simply missing out on exactly what you can do later - which is giving up.
- What's so funny is that the predictions for why software is going to be dead are the exact outcomes that completely make irrelevant whatever things you were doing before.
- If we truly get LLMs capable of creating the perfect bug-free Uber for catnip with a few words and a quick expenditure of some electricity, then it won't matter that you spent time learning computer science. Their entire fear is that LLMs will make any piece of software trivial to generate explicitly implies that then you (someone whose knowledge level is irrelevant) will be able to generate any piece of software trivially!
- Their whole premise is self-defeating!
- If you truly do have a curious mind and are interested in learning, then you will of course end up playing with and using LLMs.
- AI should definitely be a tool in your software developer toolbelt - just like reading documentation or communicating well with coworkers should be in your toolbelt.
- But my guess is that just using AI for stuff is not going to be the way that you convince an employer you have the unique skills required to get a job.
- Instead, You need to find a way to differentiate yourself from the other people in the world - whether as an entrepreneur with your own product or as an employee getting hired.
- That's always been the case, and I expect it to be the case even when no humans are writing software anymore.
- Perhaps the differentiating factor you will have from all the other LLM operators is that you spent time trying to understand some fundamental technologies or that you build some side projects that you are passionate about.
- I have a hard time fathoming the scenario where giving up on learning and working is the thing that gets you your next job.
- Don't cede every thought, every experience, every idea, every emotion, every experiment to the LLM.
- Because if you do that, you are the LLM. And, as I said, LLMs are a commodity.
- If your only skill is pressing Tab like everyone else can do in their editor, you will get replaced.
In Closing:
- Being competent is better than being incompetent.
- Thinking is better than ceding all thought to the LLM.
And my encouragement is: don't be a commodity - make yourself useful today and continue to prepare yourself for tomorrow.
If you try hard, the worst thing that can happen is you can take the easy path later.
It's only hopeless if you are. (gets up)
Oh and don't forget. Be nice! It really helps.