The Future of Junior Developers in an AI...
π£οΈ ποΈ New Databased Episode: AI and the future of development π» π
It's about time someone on the Internet was talking about AI!
Join Tom, James, and me as we dive into software development and gen AI, cursor, the impact these big changes might have on the engineering profession, existential dread, and all the awesome AI feelings.
tl;dr - we're both pretty excited and pretty worried about AI, but maybe not for the reasons you'd expect?
https://www.youtube.com/watch?v=v5WW8Wecsuo
Convex
YouTube
The Future of Junior Developers in an AI-Driven World
In this episode of Databased, Tom Redman engages Jamie Turner and James Cowling in exploring the transformative impact of AI on software development, particularly through tools like Cursor AI. They discuss the balance between efficiency and the essential understanding of coding principles, emphasizing the risks junior developers face when relyin...
14 Replies
I've come to some pretty strong takes on this, going to see if this episode can balance me out
@erquhart we need a blog post or a podcast reply π
Turns out we agree on all points so it would be a very short response lol. I think my only diff is the general comparison to human endeavors like strongest man and playing chess - no one is doing those things as a means to an end, really. They're competitive sports. But most people coding today are doing it as a means to an end, with varying levels of actual enjoyment. For example, I'm blessed to be able to make money doing something as non-strenuous and enjoyable as coding, but the moment I don't have to do it anymore, I probably won't.
For those of us whom that rings true, I would say the ending of "this is a hype cycle like other hype cycles, it'll settle out" is really rosy. I suspect this is the start of something unlike other abstractions, more than a single exponential jump.
Maybe a future episode will pull that thread about senior engineers building operating systems
Useful episode, though sometimes strawman-y. Regarding learning, ai helps with the encoding process of learning more than it helps recall. For encoding, fast in-context syntopical reading is helpful and quickened the encoding loop
Helpful for understanding the prevalence of developers not understanding the llm outputs. No clean data here, inherently. So useful to hear othersβ experiences
Getting back to work on my main project and feeling a little less bullish on AI now lol
The problem is, when AI writes your code, it's directly analogous to having another person write your code. And the only way having another person write your code - not a less experienced engineer doing tightly scoped work, but a senior doing the big stuff - the only way that really works is you allow that person to have ownership. And LLM's are simply incapable of ownership.
That analogy sounds like that's coming from a baseline of pretty high expectations.
I look to AI much more for augmentation than I do for delegation:
- give me the Tailwind classes to do X
- give me the regular expression for this business logic
- how do you do this common use case in X framework?
100%. I'm looking at what these teams, like Anthropic, are aiming for - the goal is no code.
I haven't tested this fully, but a primary differentiator may be greenfield vs brownfield. Giving AI ownership of a 3 year old codebase that is large and not authored by AI, vs starting from scratch with AI writing everything. I don't think it's impossible to use AI to build a new SaaS all the way out to production. Would require strategy like having AI write tests to cover the requirements it fulfills.
But again, haven't been able to test. Maybe one day I'll have time.
That's a good point about greenfield vs. brownfield. To add on to that, AI is less useful the further along the codebase has grown. And the comprehensibility of the codebase to LLMs matter a lot too, which is why I have repeatedly encouraged Convex templates to use longer, unambiguous, and more self-documenting variable names
Yeah harder at scale for sure
I've been getting improved results from Cursor by using
.cursorrules
file heavily. I add all my coding patterns into this file (with example snippets).Have not played with that much, will def give it a shot
I have all my logic in a number of
.md
files, for example ai/rules/code-comments
. I have a bun script that watches my ai/rules
dir for changes and then moves all the content over to .cursorrules
file. I updated my package.json to run the watcher script alongside my backend convex process. @erquhart I'm happy to share the watcher script if it's helpful.Nice, will let you know!
Test of AI's ability to replace junior developer:
Invert the phrase:
"Don't ask me a question you can google" to "Don't ask me a question you can prompt".
I don't think that works well.