"Being honest with themselves about whether what they are doing is actually working or not" and "Having the courage to go on when nobody believes in you" are opposites.
No, they're actually the same thing: making an honest assessment of reality. In the first case you're doing so to prevent self-delusion. In the second you're doing so to prevent others from clouding your judgment.
Such a great synopsis. The things that are easy to signal (landing page, presentation deck, logo, etc) have never been the make-or-break aspect. The part that's always been hard, that remains hard, is that a business must solve a problem for people. Even B2B is solving business problems for specific people. And people are a difficult, difficult problem to solve.
I have found that it gets some of the "cruft" out of the work, freeing me to do more work.
Since starting to use LLMs, I have actually been spending more time, at the console, than before.
One reason is that I like to ship (as opposed to "code"). That means a lot of tedious, boring stuff. The kind of thing that I want to "take a break before tackling," so I may take 30 minutes, and watch something on TV for a while, before rolling up my sleeves.
Now, the LLM can take care of a lot of this stuff, so I am not motivated to "take a break," so much, anymore.
It doesn't actually feel bad, but I now have to schedule "downtime." I never used to have to do that, before. My work always involved a lot of "context switch" points; naturally set up for taking breaks.
> And I think that’s the biggest danger of AI. You convince yourself that you are doing something useful when you are not.
Building technology to overcome relatable hardships and frictions is a worthy challenge full of meaning.
Using someone else's technology to erase frictions and hardships from your life can erode meaning.
On my worst days I am convinced programming and technological optimism is a theft of meaning; personal satisfaction at solving a human problem awkwardly mapped to technology, at the expense of users dating, socializing, or consuming with discomfort and therefore the possibility of growth and meaning.
I spent multiple 5-hour sessions spec-ing my climbing app with AI, clarifying interactions, algorithm, workflow etc. It ended up a frankenstein that I didn't recognise or know how each part interact with each other. Command line were a mess, different commands doing the same thing, with similar but redundant arguments. Everything looks kind of doing what I intended but overly convoluted and nothing really works. Real progress was made when I actually dig into the documentation of colmap/OpenMVS (essential tools, which I had never used before, in my workflow).
The AI gave me unprecedented turn around time in experimentation. The same experiments would easily take me over a month in the past. Now it was a few days. But still, real progress is made only when my understanding catch up with reality.
I think the mistake there was the 5 hour session specing the app. It's so hard to know what you want before you see it, so optimize towards seeing it as soon as possible. That's what I thought the article was going to be about based off the title.
Once you have something concrete you can iterate on the prototype until it's a mess. But, hopefully, in that time you got closer to figuring out what you want. And even if the code for the prototype is a mess the "idea" of it should be cleaner. I like to have an LLM make a new spec at that point, and start fresh with it. You can clean up the abstractions and the UX there.
When writing code is cheap figuring out what you want to write is the hard part. It always was, but the barrier of getting the code written and working made that less obvious.
I find the more structure that the AI can be given to follow the better. I recently tried building a side project with Elixir, Phoenix & LiveView but on the recommendation of somebody I decided to have it use the Ash framework within it.
I've been very pleasantly surprised. The combination of the compiler improvements in Elixir 1.20 and the structural guardrails from Ash seems to have led to very consistent, organized and readable code.
As apps get larger and more complex, I get the LLM to produce 'developer documentation'. I find it helps them stay on the rails, and it helps ME stay on top of everything.
The 'spec' frameworks are documentation as well, but can become contradictory as decisions about the app change over time.
The only two instances where I didn't manage to achieve satisfactory outcome with AI were when I overspecced ahead of time. The things I left out of the spec were implemented in the most undesired manner possible.
The best mode of work for me was gradually sculpting the prototype into a product by providing feedback and moving to version 2 (from scratch but often with v1 accessible as inspiration) if I felt like it's becoming overbloated.
No this isn't punching yourself in the face. Not for swes.
What's written above is self confirmation that you are better than AI and that you will always have a job because you are better because AI can't build something that works. That stuff about convincing yourself you're building something useful is actually the easy question.
Punching yourself in the face involves telling truths that are incredibly hard to stomach. That you don't matter, that all your years of coding and your identity is about to be consumed by a machine that is superior. The fact that you still hold a rank as a software engineer right now is only because that machine is slightly worse than you. But as it improves, your role becomes meaningless. The life you built your skills around becomes meaningless. It is less about what AI is now and more about the trajectory of AI and what the current AI says about the AI of the near tomorrow. We don't code by hand anymore and this came about in less than 5 years since the popular rise of LLMs. Think about what the next 5 years will bring.
That is punching yourself in the face with reality^^
What even motivates you to write something like this? In what universe is a software engineer a "rank"? You sound absurdly bitter that people want to keep their livelihood?
This doesn't even match with reality. I got laid off in January because of "ai" (scare quotes because it was really about the salaries of the US based teams being more expensive than the overseas teams, I think). I got hired at a new job with better pay within two months, and my team is still hiring software engineers, and we work on cutting edge stuff. And yes we use AI (tastefully), but nobody here expects it to replace them. Hacker News and twitter are a fricking echo chamber of the most obnoxious people trying to be "thought leaders", but it doesn't match my reality at all.
"The fact that you still hold a rank as a software engineer right now is only because that machine is slightly worse than you. But as it improves, your role becomes meaningless. The life you built your skills around becomes meaningless. It is less about what AI is now and more about the trajectory of AI and what the current AI says about the AI of the near tomorrow"
^ read what I wrote. I'm telling you the future, but you're talking about your current job. So there's no contradiction here. Your current situation FITS what I said. And my prediction of the future is the most likely out come.
>What even motivates you to write something like this
Because it's the most likely truth? It's the most probably reality. The god awful truth is like the sun. It permeates everything, it's rays touch everything and it's a very obvious flaming fireball in the sky, yet nobody can stare directly at it. No one can fully face the sun.
I ask you, What motivates you to lie to yourself? To deny the obvious trajectory of AI? Does preserving your livelihood involve denying reality?
Such a bizarre train of thought. There's nothing inevitable about this future. Most people HATE what's being proposed. Why wouldn't you fight against something this shitty? These things cost hundreds of millions of dollars to train. Nothing about that is inevitable at all! What's actually probably inevitable is that these companies fail, because the amount of energy they're demanding and the amount of money they need to make to make this even remotely economically viable does not make any sense. The math doesn't work.
Also, what would even be your motivation for telling me my life is meaningless? Like, what's your expectation here, that I lie down on the ground and go "welp, why even bother".
My opinion is that the only people proposing a narrative like this have a direct financial incentive from the AI companies. I see no other value to promoting this narrative.
This guy's head will explode when he realizes that AI has been better at coding than humans for years and yet software engineering employment % has barely twitched...
> I have seen way too many startup founders delude themselves into building more and more for months without a single conversation with a real user
This has been a problem since the beginning of tech startups. I worked in a dot-com in the late 1990s. Lots of investor money. New offices. Hundreds of employees. The product was well thought out, fairly well built, and it worked. But they had no customers. It's even in the same market niche as products that today have millions of users, but those folks weren't ready for it in 1999, at least not enough of them and quickly enough to matter.
Building something quickly is only a small part of what it takes to have a successful startup. You must solve a problem for people who are ready for your solution and willing to pay for it.
> Who can punch themselves in the face with reality the most? This is who will win in the age of AI.
Reminds me of a politician in India who would ask elders in his family to slap him hard before he starts out on the election campaigns. He says that the slaps are meant to keep him alert and honest.
> If all you know is how to build, and you just use AI as an excuse to keep building more and more and more, you are just procrastinating and avoiding reality.
I’ve had this sense about AI for a while now and this articulates that feeling far better than I’ve been able to.
While it's true that unsupervised AIs build a heap of trash, I have to admit, it doesn't look much worse than some of the code I saw powering products that sold for millions.
As someone who used to have an incredibly hard time putting my app in front of users, or asking for feedback, or getting rejected, etc:
Posts like this one always made me feel like I was a coward. Like there was.. unvirtuousness.. in not killing one’s darlings, not validating ideas, not quitting things in time, not looking for product-market fit.
I can report that looking for product-market fit, and everything else from the list above, became easier once I started taking antidepressants and adhd meds.
For example, it turns out deciding to punch yourself in the face with reality is much easier when you don’t feel, for example, like abandoning a project would be a giant betrayal and a thing one might in theory do but you must never do ever under any circumstances.
- - -
There are likely many people who have more capacity for self control, and who are genuinely helped by hearing moderately harsh truths because they can (1) take a look at their behavior, (2) realize it hurts them and their chances of success, (3) realize where they’ve been blind to reality, and (4) change.
I suspect that such people assume — maybe correctly in most cases — that if someone hasn’t done (4), it’s because they haven’t done enough (1-3), and this is the appropriate lever to push.
I'm a creative person so my brain requires that I make something every day. Sometimes I make stuff that isn't very good. I've been told a lot by former bosses and random people that my desire to build stuff is frivolous. I could punch myself in the face with this reality, but then I would stop building.
> You convince yourself that you are doing something useful when you are not.
I mean, this is true of literally every thought I have.
How many pointless imaginary arguments have you won? Maybe it had some benefit, but it was probably mostly unproductive thought. Time spent, calories burned, that would have been better spent elsewhere.
How many random side experiments or "Guess I'll just try" moments ended up defining your career, or life? People meet their spouses this way, and land their first real job.
It's all just flowing out of darkness... Nobody knows where it comes from. Nobody knows where it goes. Nobody knows what works. Nobody knows what fails.
But I'm not so naive to brush off tangibilities that unfold before my very eyes.
That's where some of us draw the line. You have to know the difference between reality and "unreality", or myth. That goes both ways
39 comments
[ 2.9 ms ] story [ 76.1 ms ] threadReality is that which, when you stop believing in it, doesn't go away.
Who is responsible for this mess? ;)
Since starting to use LLMs, I have actually been spending more time, at the console, than before.
One reason is that I like to ship (as opposed to "code"). That means a lot of tedious, boring stuff. The kind of thing that I want to "take a break before tackling," so I may take 30 minutes, and watch something on TV for a while, before rolling up my sleeves.
Now, the LLM can take care of a lot of this stuff, so I am not motivated to "take a break," so much, anymore.
It doesn't actually feel bad, but I now have to schedule "downtime." I never used to have to do that, before. My work always involved a lot of "context switch" points; naturally set up for taking breaks.
Building technology to overcome relatable hardships and frictions is a worthy challenge full of meaning.
Using someone else's technology to erase frictions and hardships from your life can erode meaning.
On my worst days I am convinced programming and technological optimism is a theft of meaning; personal satisfaction at solving a human problem awkwardly mapped to technology, at the expense of users dating, socializing, or consuming with discomfort and therefore the possibility of growth and meaning.
The AI gave me unprecedented turn around time in experimentation. The same experiments would easily take me over a month in the past. Now it was a few days. But still, real progress is made only when my understanding catch up with reality.
Once you have something concrete you can iterate on the prototype until it's a mess. But, hopefully, in that time you got closer to figuring out what you want. And even if the code for the prototype is a mess the "idea" of it should be cleaner. I like to have an LLM make a new spec at that point, and start fresh with it. You can clean up the abstractions and the UX there.
When writing code is cheap figuring out what you want to write is the hard part. It always was, but the barrier of getting the code written and working made that less obvious.
I've been very pleasantly surprised. The combination of the compiler improvements in Elixir 1.20 and the structural guardrails from Ash seems to have led to very consistent, organized and readable code.
Does anyone want one?
The article says to stop building and go outside!
And actually, talking about climbing apps with fellow climbers is a great way to be outside.
The 'spec' frameworks are documentation as well, but can become contradictory as decisions about the app change over time.
The best mode of work for me was gradually sculpting the prototype into a product by providing feedback and moving to version 2 (from scratch but often with v1 accessible as inspiration) if I felt like it's becoming overbloated.
What's written above is self confirmation that you are better than AI and that you will always have a job because you are better because AI can't build something that works. That stuff about convincing yourself you're building something useful is actually the easy question.
Punching yourself in the face involves telling truths that are incredibly hard to stomach. That you don't matter, that all your years of coding and your identity is about to be consumed by a machine that is superior. The fact that you still hold a rank as a software engineer right now is only because that machine is slightly worse than you. But as it improves, your role becomes meaningless. The life you built your skills around becomes meaningless. It is less about what AI is now and more about the trajectory of AI and what the current AI says about the AI of the near tomorrow. We don't code by hand anymore and this came about in less than 5 years since the popular rise of LLMs. Think about what the next 5 years will bring.
That is punching yourself in the face with reality^^
This doesn't even match with reality. I got laid off in January because of "ai" (scare quotes because it was really about the salaries of the US based teams being more expensive than the overseas teams, I think). I got hired at a new job with better pay within two months, and my team is still hiring software engineers, and we work on cutting edge stuff. And yes we use AI (tastefully), but nobody here expects it to replace them. Hacker News and twitter are a fricking echo chamber of the most obnoxious people trying to be "thought leaders", but it doesn't match my reality at all.
^ read what I wrote. I'm telling you the future, but you're talking about your current job. So there's no contradiction here. Your current situation FITS what I said. And my prediction of the future is the most likely out come.
>What even motivates you to write something like this
Because it's the most likely truth? It's the most probably reality. The god awful truth is like the sun. It permeates everything, it's rays touch everything and it's a very obvious flaming fireball in the sky, yet nobody can stare directly at it. No one can fully face the sun.
I ask you, What motivates you to lie to yourself? To deny the obvious trajectory of AI? Does preserving your livelihood involve denying reality?
Also, what would even be your motivation for telling me my life is meaningless? Like, what's your expectation here, that I lie down on the ground and go "welp, why even bother".
My opinion is that the only people proposing a narrative like this have a direct financial incentive from the AI companies. I see no other value to promoting this narrative.
This has been a problem since the beginning of tech startups. I worked in a dot-com in the late 1990s. Lots of investor money. New offices. Hundreds of employees. The product was well thought out, fairly well built, and it worked. But they had no customers. It's even in the same market niche as products that today have millions of users, but those folks weren't ready for it in 1999, at least not enough of them and quickly enough to matter.
Building something quickly is only a small part of what it takes to have a successful startup. You must solve a problem for people who are ready for your solution and willing to pay for it.
Reminds me of a politician in India who would ask elders in his family to slap him hard before he starts out on the election campaigns. He says that the slaps are meant to keep him alert and honest.
I’ve had this sense about AI for a while now and this articulates that feeling far better than I’ve been able to.
Cloud was like this too. You spent all this money as a startup with AWS regardless of whether you made a dollar or not.
The only thing that changed is the scale.
Posts like this one always made me feel like I was a coward. Like there was.. unvirtuousness.. in not killing one’s darlings, not validating ideas, not quitting things in time, not looking for product-market fit.
I can report that looking for product-market fit, and everything else from the list above, became easier once I started taking antidepressants and adhd meds.
For example, it turns out deciding to punch yourself in the face with reality is much easier when you don’t feel, for example, like abandoning a project would be a giant betrayal and a thing one might in theory do but you must never do ever under any circumstances.
- - -
There are likely many people who have more capacity for self control, and who are genuinely helped by hearing moderately harsh truths because they can (1) take a look at their behavior, (2) realize it hurts them and their chances of success, (3) realize where they’ve been blind to reality, and (4) change.
I suspect that such people assume — maybe correctly in most cases — that if someone hasn’t done (4), it’s because they haven’t done enough (1-3), and this is the appropriate lever to push.
I don’t know how to finish this comment.
I mean, this is true of literally every thought I have.
How many pointless imaginary arguments have you won? Maybe it had some benefit, but it was probably mostly unproductive thought. Time spent, calories burned, that would have been better spent elsewhere.
How many random side experiments or "Guess I'll just try" moments ended up defining your career, or life? People meet their spouses this way, and land their first real job.
It's all just flowing out of darkness... Nobody knows where it comes from. Nobody knows where it goes. Nobody knows what works. Nobody knows what fails.
But I'm not so naive to brush off tangibilities that unfold before my very eyes.
That's where some of us draw the line. You have to know the difference between reality and "unreality", or myth. That goes both ways