I remember when ChatGPT first launched as a demo, and how it took the world by storm. Needless to say, the industry has developed a lot since then. Like it or not, AI has become a major part of our workflow.
This week, I sat in on a interview process to hire a SWE intern. Their resume was glowing, with all the right keywords and experiences. They answered all the questions with confidence and clarity, until they got to the technical part.
I like to find out how passionate the candidate is about the role. I asked them what their go-to programming language was, what version they use, and what are some of their favourite and least favourite features of the language.
That’s when the confidence evaporated. They had no idea what features Python has, or how it is different from other programming languages. They had no idea what version they were running, (‘the latest one, I guess’). Worst yet, they had no idea how to find out.
I felt secondhand embarassment asking the questions. It was like an self-proclaimed artist trying to paint an oil painting while they have never even held a pencil, much less a brush. I honestly don’t know how you go through university courses without learning about the python REPL. Isn’t python3 --version the first thing you learn? If you don’t even know that, how can you even start to write code, much less do machine learning anything?
The candidate tried their best to salvage the interview, but I think both of us knew it was a formality at that point. It was obvious that they spent more time typing prompts into ChatGPT than they did writing code in an editor. Maybe it makes me a bit of a dinosaur, but I don’t think “I just use ChatGPT, bro” is a valid answer to anything.
I got into programming largely because it is determinative. Code only outputs in one way. Generative AI has largely changed this, because even when you write the same prompt there is no guarantee what the output will be.
Furthermore, the constant usage of AI atrophies your fundamental programming skills. You become dependent on the AI to write code for you, and you become unable to write code for yourself. You become unable to think critically about code, and you become unable to debug code. You become unable to understand the underlying principles of programming.
This is a problem not just about programming. This affects how you critically think about any problem, code or not. If you blindly prompt an AI to solve every problem, soon it will not be you training the AI model, but the AI model training you.
bx 🚀