4 ms·
> Try asking a non-developer in your life what their dream software would be for their work, or their hobby. If they don't have what Nilay Patel calls "software
by ElProlactin 5mo ago
> Try asking a non-developer in your life what their dream software would be for their work, or their hobby. If they don't have what Nilay Patel calls "software brain" I'd be surprised if they came up with something actionable.
I've posted this in numerous comments because I think it bears repeating: there are tech-savvy non-developers who are actually building and shipping stuff with AI. I personally know a few who have been successful in acquiring initial customers.
You can say "but their apps won't scale", "their apps aren't secure", etc. and you might be right but these criticisms ignore the fact that most human-built software suffers from issues around scalability, security, etc. What AI in the hands of a relatively tech-savvy person is capable of is building functional, usable applications that are pretty decent compared to what you might get if you paid an experienced contractor tens of thousands of dollars to build.
A whole generation of young people has grown up with the internet, smartphones, etc. They might not be trained software engineers or have a "software brain" but in many cases they probably have a better intuitive sense for digital product design than a 30 or 40-something engineer who has been staring at an IDE for the past decade(s).
- simonw 5mo ago> there are tech-savvy non-developers who are actually building and shipping stuff with AI I absolutely believe that. I think those are people with "software brain" who are on their way to becoming real developers. By the point they can write apps that are secure and scale... they'll have learned enough about software development to be employable as software developers. They'll be part of a new breed of developer who never memorized the syntax of a programming language, but they'll still be at the starting point of learning a HUGE volume of other stuff that's necessary to build good software. If we want to stay employed, we need to be notably better at building software than they are.
- ElProlactin 5mo ago> I absolutely believe that. I think those are people with "software brain" who are on their way to becoming real developers. In my opinion, this is a software developer-centric way of thinking that reminds me of the saying, "if all you have is a hammer, everything is a nail." Here's an alternative perspective: For billions of people, technology products are an integral part of daily life. As a result, lots of people have an interest in building technology products, particularly software. Thanks to AI, you no longer need to be a "real developer" to build software. You can learn enough to build things that are commercially viable without seeking to be employed as a developer. > If we want to stay employed, we need to be notably better at building software than they are. While I don't believe that the market for developers will shrink to 0, unfortunately, I think this type of comment reflects the fear, existential angst and denial that has overtaken many people in this industry. The reality is that developers are no different than all the displaced workers who came before them. One day you had a job that seemed secure and capable of providing for a comfortable life and the next you were facing the prospect of diminished wages and unemployment because the world simply needs fewer people with your skills and there's no way around the secular trend. The sad irony is that when software was eating the world and new CompSci grads could take their pick of $150,000+ job offers before ever writing a line of production code, a lot of people in the industry had a smug "tough luck" attitude towards all the workers being displaced by the tech boom. Now it's their turn.
- emodendroket 5mo agoMaybe the tools are going to get to a point where this isn't true but today even with Claude Code at whatever at hand you're going to have to learn enough about software to basically be a developer in the traditional sense to deliver a multi-tenant application that has to deal with high TPS or whatever. At least at present you're positing there's no need for carpenters because the home gamer can knock together a table or birdhouse at home.
- ElProlactin 5mo ago> ...to deliver a multi-tenant application that has to deal with high TPS or whatever. There's a whole world of opportunity that lives below complex multi-tenant applications that have to deal with high TPS. > At least at present you're positing there's no need for carpenters because the home gamer can knock together a table or birdhouse at home. This is an extreme, straw man argument. And here's the thing: I don't know a home gamer who framed a house. But I do know tech-savvy people who have used AI to build web apps that they have launched and been able to get customers to pay for. Not every tech-savvy person has the ability to do this but the whole "you can't do that if you're not a software developer" argument looks to me like a denial mechanism more than a reflection of reality. People are doing it because the AI tools have advanced to the point where they can.
- emodendroket 5mo agoWhy is anyone paying for these apps if any idiot can do it with a few prompts?
- ElProlactin 5mo ago> ...if any idiot can do it with a few prompts? With all due respect, this sounds like just another version of the arrogant, scared attitude that seems to be more and more prevalent among software folks these days. Is it really hard to imagine that there are tech-savvy people who are smart and motivated but don't have training as software developers, who are now capable of using AI to build and ship things? In other words, AI doesn't allow any "any idiot" to build commercially useful software. What it does is allow smart people who aren't software developers and who don't want to become software developers professionally to, with a much shorter learning curve and on a much faster time scale, take their ideas and build and ship functional software.
- fragmede 5mo agoNevermind syntax, what's a variable? function? class? What's the difference between int/float/boolean string? Nevermind more advanced concepts like O(1) vs O(n). But when the vibe coder just needs to prompt "the page loads really slowly. plz fix" and the LLM can go in, add an index to the right SQL table, add a limit and pagination, so what if I can tell you the difference between PostgreSQL's dialect of SQL vs MySQL, and what the difference is in row types supported. I can describe what happens when you type Google.com into your webbrowser to an inane level of detail off the top of my head, but when the LLM can do an even more through version, I mean, I can pat myself on the back and be smug that I know most of that innately, but what is it really worth? About a decade back, we, as an industry were collectively learning how to make apps webscale, and oh the blog posts about not using a database as a queue. But the LLMs have ingested all of them. I've only read the ones I came across, and of course my professional experience being part of teams implementing that at various companies. So I've got that going for me, but when the Vibe-platform-dev just has to tell the LLM "hey, when the user hits the send message button, it's slow. /goal make messages fast", and the LLM grinds for hours overnight switching the entire system over to a pub sub event driven architecture and the vibe-platform-dev doesn't even know what pubsub stands for or that they're using one unless they go back and read the transcript. I don't think there's as much of a domain expertise moat for as long as we're hoping.
- simonw 5mo agoIt only takes two or three unreviewed prompts like "the page loads slow, plz fix" for you to end up with a tangled mess that even the agents can't productively work with. Take a look at the Reddit forums for vibe-coders - now that a bunch of them have been hacking on things for 3+ months there's a growing awareness there that you hit a wall. Here's the first post I found from just searching "reddit vibe coding wall", it's a great illustration of the genre: https://www.reddit.com/r/vibecoding/comments/1sabdw3/anyone_else_feels_like_vibe_coding_hits_a_wall/ https://www.reddit.com/r/vibecoding/comments/1sabdw3/anyone_... Software development is really, really hard. Coding agents can get you a surprisingly long way, but if you want to build real software for real people you quickly find that you DO need that domain expertise. The agents may type all of the code for you now, but you need a huge amount of skill to clearly tell them what to do, confidently decide what to do next and credibly present software that works for other people to use.
- Mezzie 5mo agoI agree, and I want to add that 'better' doesn't necessarily mean 'creates more robust, elegant, resilient software'. Better means from a business perspective. If we (I'm one of the people you're discussing) end up cheaper or more fungible, for example, we still might be worth hiring from a business perspective even if the code we create is shit. I've also seen an assumption that you've made here that I think is worth drawing attention to and questioning: that the tech-savvy non-developers are starting from zero or near zero when it comes to programming and software development. Right now, that's probably mostly true, but I'm not sure that will continue to be the case. I'm not a developer (depending on how fuzzy we want the boundaries around the idea to be, anyway). I do understand the building blocks of programming languages (e.g. I can answer all the questions fragmede posed in a sister comment), the trade-offs between rolling your own and using existing libraries, the need to evaluate tools, frameworks, and languages to determine which is best for your use case, why version control matters, why access rights matter, why backups and a test environment are necessary, why it matters to write code another human can read, etc. Do I understand as much as an active working developer? Absolutely not and I'd never claim to, but I'm far from starting at zero. The reason for this is that I was raised by programmers. There are far, far more programmers and general tech nerds now than there were in 1988 (when I was born). Which means that in 10-20 years, there are going to be a lot more children, grandchildren, nieces, nephews, and so on of developers, and a lot of them are not going to be starting at zero. For pretty much of all computing history, there's been a substantial opportunity cost to developing a deep understanding of coding and software development: either a person has to be so into the domain that they devote a lot of their waking hours to it (usually in adolescence or young adulthood, when that trade off closes the most doors and makes developing certain other time intensive skills difficult), or they have to obtain a CS degree, which means not getting a different kind of degree and often incurring significant front-loaded financial costs. The opportunity cost for people born into programming or tech families is much lower. You can start younger and spread out the hours needed to learn across a greater amount of years, you can acquire knowledge in less time-intensive ways and while practicing other skills (e.g. my cousins also have 'software brain' and we could all hang out and develop those skills while also developing in person social skills), and you have a built in network of experienced people who want to help you + that can give you extremely individualized, personalized attention. If what you suggest comes to pass, I think that one of the greatest threats to SDE as a career is going to be your own children and grandchildren.
- emodendroket 5mo ago> I've posted this in numerous comments because I think it bears repeating: there are tech-savvy non-developers who are actually building and shipping stuff with AI. I personally know a few who have been successful in acquiring initial customers. I mean, sure. But there have always been people teaching themselves to program too. In the end it's a pretty small population.
- wiseowise 5mo ago> there are tech-savvy non-developers who are actually building and shipping stuff with AI. I personally know a few who have been successful in acquiring initial customers. It'll shake your world, but tech-savvy non-developers were building and shipping long before AI. > they probably have a better intuitive sense for digital product design than a 30 or 40-something engineer who has been staring at an IDE for the past decade(s). Because developers only stare at IDE 24/7, and never interact with anyone besides mother who brings tendies to their basement? What am I even reading?
- ElProlactin 5mo ago> It'll shake your world, but tech-savvy non-developers were building and shipping long before AI. They weren't building and shipping by themselves though. They were hiring people to do the work. AI has made it possible for people with motivation and time to do what was previously only possible with motivation, time and money. > Because developers only stare at IDE 24/7, and never interact with anyone besides mother who brings tendies to their basement? What am I even reading? Why is so hard to acknowledge the fact that many of the people who are good at developing aren't as good at coming up with ideas for digital products and building businesses on them?
- wiseowise 5mo ago> They weren't building and shipping by themselves though. Yes they did, all the time. You just need to get out of your tech bubble. > AI has made it possible for people with motivation and time to do what was previously only possible with motivation, time and money. Nonsense. AI simplified it, but programming was always accessible to the masses. They might not have shipped full blown SaaS products, but people have been programming with Excel, Access, Python, JS forever. > Why is so hard to acknowledge the fact that many of the people who are good at developing aren't as good at coming up with ideas for digital products and building businesses on them? Because it's a complete straw man detached from reality.
- ElProlactin 5mo ago