> The biggest lesson I take is that "social networks" are not about protocols but about how we use the existing infrastructure.
It's also not about scale and breadth. Focused social networks around niches can be a breath of fresh air compared to the social behemoths. I joined a couple of more targeted social networks recently and it seems like there's a far more positive community when people have a shared interest. Fable[1] has a social network for reading and that has a generally positive and cosy vibe. Bryan Johnson's Don't Die[2] app is focused on health and longevity and it has a supportive atmosphere. You'd think that something like Reddit with its many niche subreddits would be able to replicate this. But it seems like Reddit has its own tone that permeates everywhere.
It seems like social networks that stay small and focused can maintain a fun and productive environment that degrades over time in larger networks.
> there's a far more positive community when people have a shared interest
Even old fashioned web forums and email listservs are still thriving in some niches and work this way.
I think reddit fails here because it's too frictionless. Requiring a little bit of intentional action to join or subscribe keeps out a surprising amount of drive-by trolls.
HN is pretty big now and has its share of trolls and bots but because it doesn't use social media accounts it's not nearly as bad as Facebook or Reddit.
> It seems like social networks that stay small and focused can maintain a fun and productive environment that degrades over time in larger networks
I would love to find some good social networks for myself but discovering them is hard and I don't have the free time to dig like I used to to find the hidden gems
That's interesting. I have been thinking about how the vastly different reactions people seem to have to agentic coding could be influenced by what they value about coding. To me it seems like there are three joys in coding:
1. Creating something
2. Solving puzzles
3. Learning new things
If you are primarily motivated by seeing a finished product of some sort, then I think agentic coding is transcendent. You can get an output so much quicker.
If your enjoyment comes from solving hard puzzles, digging into algorithms, how hardware works, weird machine quirks, language internals etc... then you're going to lose nearly all of that fun.
And learning new things is somewhere in the middle. I do think that you can use agentic coding to learn new technologies. I have found llms to be a phenomenal tool for teaching me things, exploring new concepts, and showing me where to go to read more from human authors. But I have to concede that the best way to learn is by doing so you will probably lose out on some depth and stickiness if you're not the one implementing something in a new technology.
Of course most people find joy in some mix of all three. And exactly what they're looking for might change from project to project. I'm curious if you were leaning more towards 2 and 3 in your recent project and that's why you were so unsatisfied with Claude Code.
I'll add "craftsmanship". It isn't just delivering "A" finished product, you want to deliver a "good", if not "the best", finished product.
I guess if you're in an iterative MVP mindset then this matters less, but that model has always made me a little queasy. I like testing and verifying the crap out of my stuff so that when I hand it off I know it's the best effort I could possibly give.
Relying on AI code denies me the deep knowledge I need to feel that level of pride and confidence. And if I'm going to take the time to read, test and verify the AI code to that level, then I might as well write most of it unless it's really repetitive.
I don't think AI coding means you stop being a craftsman. It is just a different tool. Manual coding is a hand tool, AI coding is a power tool. You still retain all of the knowledge and as much control over the codebase as you want, same with any tool.
It's a different conversation when we talk about people learning to code now though. I'd probably not recommend going for the power tool until you have a solid understanding of the manual tools.
It can be a power tool if used in a limited capacity, but I'd describe vibe-coding as sending a junior construction worker out to finish a piece of framing on his own.
Will he remember to use pressure treated lumber? Will he use the right nails? Will he space them correctly? Will the gaps be acceptable? Did he snort some bath salts and build a sandcastle in a corner for some reason?
All unknowns and you have to over-specify and play inspector. Maybe that's still faster than doing it yourself for some tasks, but I doubt most vibe-coders are doing that. And I guess it doesn't matter for toy programs that aren't meant for production, but I'm not wired to enjoy it. My challenge is restraining myself from overengineering my work and wasting time on micro-optimizations.
> I'll add "craftsmanship". It isn't just delivering "A" finished product, you want to deliver a "good", if not "the best", finished product.
I don't raise a single PR that I feel I wouldn't have written myself. All the code written by the AI agent must be high quality and if it isn't, I tell it why and get it to write bits again, or I just do it myself.
I'm having quite a hard time understanding why this is a problem for other people using AI. Can you help me?
If you take the time to read the code and understand it to that level, great. But that sort of belies the promise of vibe-coding, where all software engineers essentially become PMs to a bunch of agents.
I use AI to extract information from documentation and write me bespoke examples, but I'd never feel good relying on code it actually generated without extremely thorough testing and review.
> If you take the time to read the code and understand it to that level, great. But that sort of belies the promise of vibe-coding, where all software engineers essentially become PMs to a bunch of agents.
But why would I do vibe coding? I am releasing this code to production systems that will bring the company down if there is a significant error. And my human peers will give me hell for raising terrible code for review.
I have a helpful, endlessly patient junior engineer with superhuman typing speed who will take all of my advice and apply it exactly as a I want it, and write my code for me. When I see errors, I'll tell it, and I'll even ask it to remember why it is a problem in our code base (maybe not others). So it has memory and (mostly) won't do that again.
And I also make sure to apply the same quality to the tests we write together.
Over the last few months I'd say between 50-80% of code being delivered to our repo is "typed" by agents. Humans are still guiding them and ensuring the quality meets our high standards.
I don't really have a grasp on how other people are working with this stuff that they're seeing problems with production code.
You can use (and create) tools to codify what you think of as "quality".
There's the new frontier for delivering good or the best products. Less relying on the feels of an experienced programmer and more configuring and creating deterministic tools to define quality.
Unless you get actual joy and enjoyment from writing 42 unit tests for a CRUD API with slight variations for each test. Then go ahead =)
That's a really good point. And I agree that kind of confidence in craftsmanship is something that's missing from agentic coding today... it does make slop if you're not careful with it. Even though I've learned how to guide agents, I still have some uneasiness about missing something sloppy they have done.
But then it makes me ask if the agents will get so good that craftsmanship is a given? Then that concern goes away. When I use Go I don't worry too much about craftsmanship of the language because it was written by a lot of smart people and has proven itself to be good in production for thousands of orgs. Is there a point at which agents prove themselves capable enough that we start trusting in their craftsmanship? There's a long way to go, but I don't think that's impossible.
I would argue that craftsmanship includes a thorough understanding and cognitive model of the code. And, as far as I understand it, these agents are syntactic wonders but can not really understand anything. Which would preclude any sort of craftsmanship, even if what they make happens to be well-built.
I think I'd add a #4 to this list, and that's helping people. I like making things that people can use to make their life easier. That's probably my number one.
The "creating something" idea... That's more complex. With agentic coding something can be created, but did I create it? Using agentic coding feels like hiring someone to do the work for me. For example, I just had all the windows in my house replaced. A crew came out at did it. The job is done, but I didn't do anything and felt no pride or sense of accomplishment in having these new windows. It just happened. Contrast that to a slow drain I had in my bathroom. I took the pipes apart, found the blockage, cleared it out, and reassembled the drain. When I next used the sink and the water effortlessly flowed away, I felt like I accomplished something, because I did it, not some plumber I hired.
So it isn't even about learning or solving puzzles, it's about being the person who actually did the work and seeing the result of that effort.
Yes! Good points! I think what I meant for point 1 was more "outputting something" vs "creating something". In my mind that encompasses materializing something into the world to achieve whatever you wanted, whether you were aiming to help others, solve a problem you alone have, or scratch some other sort of itch. It's about achieving some end. And helping somebody can be achieved indirectly and still be satisfying.
The inherent value of creating is something I was missing. Solving puzzles might be part of that, but not all. It's the classic Platonic question about how we value actions: for their own sake, for their results, or for both.
I think we agree that coding can be both, and it sounds like you feel the value for its own sake is lackluster in agentic coding -- It's just too easy. And I think that's the core sliding scale: Do you value creation more for its own sake or for its results? Where you land on that spectrum probably influences how people feel about agentic coding.
That being said, I also think that agentic coding can give enough of a challenge to scratch the itch of intrinsic value of creating. To a certain degree I think it's about moving up the abstraction chain to work more on architecture and product design. Those things can be fun and rewarding too. But fundamentally it's a preference.
It's kind of a weird thing. I spent 2 days working one some code, which in a way was the process of working out the requirements and functionality that was required. I then told Claude to look at it in and refactor it.
I did put in 2 days of work to come up with what Claude used to ultimately do what it did... but when I look at the resulting code, I feel nothing. Having the idea isn't the same as being the one who actually did the thing. I plan to delete the branch next week. I don't want to maintain what it did, and think it should be less complex than it made it.
I can see where this idea is coming from, but I don't agree with the conclusion at all. As someone who loves solving puzzles and learning new things, AI has been a godsend. I also very much like creating things, but even more than that, I like doing all three at once.
I think of AI like a microdose of Speed Force. Having super speed doesn't mean you don't like running; it just means you can run further and more often. That in turn justifies a greater amount of time spent running.
Without the Speed Force, most of the time you were reliant on vehicles (i.e. paying for third-party solutions) to get where you needed to go. With the Speed Force, not only can you suddenly meet a lot more of your transportation needs by foot, you're able to run to entirely new destinations that you'd never before considered. Eventually, you may find yourself planning trips to yet unexplored faraway harsh terrains.
If your joy in running came from attempting to push your biological physical limits, maybe you hate the Speed Force. If you enjoy spending time running and navigating unfamiliar territory, the Speed Force can give you more of that.
Sure, there are also oddballs who don't know how to run, yet insist on using the Speed Force to awkwardly jump somewhere vaguely in the vicinity of their destination. No one's saying they don't exist, but that's a completely different crowd from experienced speedsters.
My experiences are not universal but apart from hardware and maybe $10 for a VPS for hosting, I do not find the need to pay for third-party solutions; I quite like this situation, and I do not find myself particularly constrained taking a little extra time or having to think a bit harder. But, my friend, I must ask, what are LLMs if not third-party solutions with sizable expenditures?
You may be an exception, but most businesses and many individuals pay for a laundry list of commercial software products. If you count non-monetary forms of payment (i.e. data and/or attention to ads), that expands to virtually everyone with access to a computer.
> If you are primarily motivated by seeing a finished product of some sort, then I think agentic coding is transcendent
As someone who enjoys technology, and using it, and can just barely sort-of code but really not, agentic coding must be wonderful. I have barely scratched the surface with a couple of scripts. But simply translating "here's what I want, and how I would have done it the last time I used Linux 20 years ago, show me how to do it with systemd" is so much easier than digging through years of forum posts and trying to make sure they haven't all been obsoleted.
None of it is new. None of it is fancy. I do regret that people aren't getting credit for their work, but "automount this SMB share from my NAS" isn't going to make anyone's reputation. It's just going to make my day easier. I really did learn enough to set up a NAT system to share a DSL connection with an office in the late 1990s on OpenBSD. It took a long time, and I don't have that kind of free time anymore. I will never git gud. It's this, or just be another luser who goes without.
I'm squarely into #1, but it usually requires #2 (at a high level) and has #3 as a side effect. But there's also #0 which kicks it all off: the triggering problem/question.
Like just yesterday I started to notice the increasing pressure of an increasingly hard-to-navigate number of Claude chats. So I went searching for something to organize them. I did find an extension, but it's for Chrome, and I'm a Firefox person, so I had Claude look at it with the initial idea of porting to Firefox. Then in the analysis, Claude mentioned creating an extension from scratch, and that's what I went for.
I've never really used JavaScript, let alone created a Firefox extension before, but in a few minutes I was iterating on one, figuring out how I wanted it to work with Claude, and now I have a very nice and featureful chats organizer. And I haven't even peeked at the code. I also now have a firm idea of this general spec of how I want arbitrary list-organizing UI to look+behave going forward.
I think your comment really captures some of the reasons behind the differences between people’s reactions to Claude pretty well.
I will add though, on 2 and 3, during most of the coding I do in my day job as a staff engineer, it’s pretty rare for me to encounter deeply interesting puzzles and really interesting things to learn. It’s not like I’m writing a compiler or and OS kernel or something; this is web dev and infra at a mid sized company. For 95% of coding tasks I do I’ve seen some variation already before and they are boring. It’s nice to have Claude power through them.
On system design and architecture, the problems still tend to be a bit more novel. I still learn things there. Claude is helpful, but not as helpful as it is for the code.
I do get the sense that some folks enjoy solving variations of familiar programming puzzles over and over again, and Claude kills that for them. That’s not me at all. I like novelty and I hate solving the same thing twice. Different tastes, I guess.
I find there are still opportunities to solve puzzles. Claude Code might build something in an unsatisfying or inelegant way, and you can suggest a better approach. You can absolutely write core components — the fun parts you crave — of the code and give it to an LLM to flesh out the rest.
One of the recent joys I’ve had is having CC knit together separate notebooks I’d been updating for a couple of years into a unified app. It can be a fulfilling experience.
I think coding can be an endurance sport sometimes. There are a lot of points at which you have to bang your head against a wall for hours or days to figure out the smallest issue. Having an agent do that frustrating part definitely lowers the endurance needed to stay productive on a project.
Same! After years in engineering management I'm building so many small side projects thanks to Claude Code. I'm creating at a breakneck pace. Claude Code has mostly raised the level of abstraction so I can focus much more on the creative aspect of building which has been so much fun.
There are definitely a lot of limitations with Claude Code, but it's fun to work through the issues, figure out Claude's behavior, and create guardrails and workarounds. I do think that a lot of the poor behavior that agents exhibit can be fixed with more guardrails and scaffolding... so I'm looking forward to the future.
As somebody who used em-dashes a lot pre-ChatGPT, I have genuinely struggled with feeling I should change my writing style to appear more human. I would be happy with a double dash--but many programs autocorrect that to a full em-dash. So I'm left anxious that people will think I find them so unimportant I have offloaded communication with them to an LLM. So this post resonated with me.
I also like Will's "em-dash disclosure" on his about page:
> I like em dashes (—), en dashes (–), and hyphens (-), and I know how to type them. I also enjoy a well-placed ellipsis, but I didn’t know how to type one… until now. I believe that footnotes and sidenotes are superior to endnotes, appreciate the occasional fleuron, and at one point in my life, I knew what a colophon was.
> All of this is to say: the words, punctuation marks, misspellings, and opinions on this site are my own.
I have considered starting throwing more em-dashes into my writing, simply because I find the whole “this looks like LLM” to be a tiresome comment. Engage with (or dismiss) the material, not the pen.
I've been pointing out LLM written stuff for months now, and often people ask how I determined it. When they do, I mention all the aesthetic things, and then I usually engage with the content and why the content is bad. In every case the content has been garbage. Usually it's a really bad infodump, in a singular tone, usually oversold, and you can't tell what was important to the original author and what's not. Often the some of the info isn't right. So it's like, infodump with extra labor to read that includes mistakes and masks what the author cared about.
It's just too easy to make garbage content that gets upvoted because it looks good if you skim it and serves as a good jumping-off ground for discussion. Engaging with the content of all the LLM-written garbage is a major waste of time and would make the site not worth it anymore to me.
Like it's already a major drain just to notice the aesthetic tells and then disengage. It's significantly more work to engage, and, AFAICT, around a 0% conversion rate to "oh shit I'm actually glad I read that."
Are you considering making the subject field for your personal emails "FREE VIAGRA" too? People try to filter out LLMs because they're often used like DDoS attacks on their energy.
> ...simply because I find the whole “this looks like LLM” to be a tiresome comment. Engage with (or dismiss) the material, not the pen.
No. Engagement isn't free, and people need heuristics to figure out what's worth engaging with or not.
If people followed your advice, they'd waste their life conversing with dead-internet bots. And to what end? We're not machines mindlessly consuming and producing text. The our is often produced with a goal that's subverted if the consumer is a bot.
I'd argue this entire HN discussion is proof that whether or not content is LLM generated, people can engage and have a meaningful discussion. I see lots of viewpoints in this discussion.
> And to what end?
The same could be asked of engaging with human commenters on HN :)
I comment on HN because writing is cathartic for me. If the person I'm responding to is a bot, or used a bot to generate it, it doesn't matter. I still stand by what I write. And other commenters can engage with what I wrote, regardless of the provenance of the text of the comment I responded to.
> I'd argue this entire HN discussion is proof that whether or not content is LLM generated, people can engage and have a meaningful discussion. I see lots of viewpoints in this discussion.
People can talk to themselves too. The question is: is that what you want? Talking with a bot has a lot in common with talking with yourself.
> The same could be asked of engaging with human commenters on HN :)
One problem with software engineers is they oversimplify things based on technical factors, missing important characteristics. For instance: oversimplifying a text-based interaction into mere production and consumption of text, then claiming it doesn't matter what produces or consumes that text.
Well it does matter. For instance if you're looking for connection or community with other human beings, a bot is only giving of a false simulacrum of what you want. If you're engaging in politics, trying to convince others with persuasive case for your views, you've just wasted all your time if you were talking to a bot.
> I comment on HN because writing is cathartic for me. If the person I'm responding to is a bot, or used a bot to generate it, it doesn't matter. I still stand by what I write. And other commenters can engage with what I wrote, regardless of the provenance of the text of the comment I responded to.
Have you tried talking to yourself? That seems like it'd give you everything you need.
Well sure. I have a blog that no one reads. That's textbook definition of talking to oneself in public.
> you've just wasted all your time if you were talking to a bot.
Not really. If the person I was responding to was a bot, it doesn't mean that humans can't read the thread and engage similarly. Most of the time when i respond to someone on HN, someone else responds to me with something compelling. I mean this thread is a prime example of that! Your comment I was responding to was a reply to someone else's comment. Let's say that person was a bot and neither you nor I are bots. We're still two humans connecting that wouldn't have otherwise connected if the bot hadn't posted that comment.
>> you've just wasted all your time if you were talking to a bot.
> Not really. If the person I was responding to was a bot, it doesn't mean that humans can't read the thread and engage similarly.
Ok, so you've wasted some of your time, in proportion to how many bots you're interacting with. And the more prolific and capable they come, the more and more time you waste.
You seem to be walking a back your "engage with (or dismiss) the material, not the pen," statement. If you really stood by it, those humans wouldn't have to have to have read the thread.
That wasn't my statement. I still agree with it though. Humans do need context to respond. We don't respond to comments in a vacuum. We respond with whatever context we have available to us. Whether or not someone is a bot is not a fact available to us. But the comment or post being replied to is. That is material.
In the comment "engage with (or dismiss) the material, not the pen," I understood the material to be whatever content I'm consuming, and not the mechanism by which the content was produced (the pen).
Edit to add: I don't think prolificness of bots has a true bearing on time wasted. I respond to lots of HN comments, written by humans or bots, that don't get responses or votes (ups or downs). But that has always happened since the dawn of social media. That's just how public forums works.
As long as humans are able to consume the content and similarly engage, I don't really think it matters. Again, we're several comments deep on a piece whose origin is very likely a bot. And we're having fun engaging. Or at least I am. You seem smart and I like chatting with smart people.
"What's the current discourse on LLM writing tells as of today? Create a Markdown checklist."
Squishy brain heuristics can't last long enough to matter in this environment. Personally, I created a Claude skill to run this query (with some refinements) and check it against an article I suspect of being lazy AI writing. If it's good AI-supported writing, I probably won't suspect it, and I won't care if it is.
The people trying to fool you with lazy writing run the same list on their outputs to have the LLM fix it.
> also enjoy a well-placed ellipsis, but I didn’t know how to type one… until now.
Made me look it up in my own environment. I had already set up a custom incantation for em and en dashes, although I really have no idea when to use the latter instead. Actually I never used to use em dashes, but now I do. I'd much rather deal with people who can intuit the quality of writing rather than relying on such blunt heuristics.
Yeah I personally don't give it much thought. I write what I want to write, reread what I wrote, make sure it makes sense and briefly check for errors, then submit (at least as that's how I write HN comments, other venues may require more or less process).
Admittedly sometimes I'll pass my text through an LLM to check for obvious mistakes I may have missed. But the text itself was mine.
If that makes someone think I'm a bot, then maybe it's OK that we didn't engage anyway.
All of us use the same keyboards more or less, maybe us randomly typing a large number is not as random as we would like to think. Just like how “asdf”, “xcyb” are common strings because these keys are together, there has to be some pattern here as well.
Especially for those very large numbers in the top ten (like 166884362531608099236779 with 6779 searches), and the relatively small number of total "votes" (probably less than a million), I think the only likely explanation for their rank is ballot-stuffing.
That means there is less entropy than purely random strings, not that this specific number would be so far outside the distribution. My money would be on someone hammering it.
I have noticed that my writing ability has atrophied since I was writing essays in school. Now at work most of my writing is slack messages. Writing longer more thoughtful pieces about strategy or performance review has become a slog. I suspect that a lot of people have had a similar experience so offloading the pain of writing to an LLM is appealing.
But frankly LLMs suck at writing. It's not only formulaic, it's uninspired!! So I worry that we're entering an era of mediocre writing. I like the "Have you considered writing?" suggestion. I've been trying to make a habit of writing book reviews so I can counter some of the writing atrophy I've developed. Hopefully it will help me become a better thinker too. As Ray says here: "Understanding your own point of view is an enriching exercise."
I have been using Tauri for a macOS app I'm making[1] and it has been great. The app is only 11MB and I've had most of the APIs I'd need.
However, there are still some rough edges that have been annoying to work with. I think for my next project I will actually go back to electron. There are two issues that caused me pain:
1. I can't use Playwright to run e2e tests on the tauri app itself. That's because the webview doesn't expose the Chrome DevTools Protocol, and the tauri-driver [2] does not work on MacOS.
2. Security Scoped Resources aren't fully implemented which means if a user gets the app through the app store the app won't be able to remember file permissions between runs [3]. It's not too much of an issue since I probably won't release it on the app store, but still annoying.
But I hope Tauri continues to grow and we start seeing apps use it more.
I have also used Tauri for one of my private apps, and using the OS's webview just doesn't work for me, so for my next stuff I'm probably going to use Electron as well since you can embed the webview. Yeah, it's bloated, but I'm so tired of things not working properly on Wayland without disabling this and that with random env vars and not able to do a fully OOTB single portable AppImage build on Linux. I can either make it work in Kubuntu + Arch (building on Ubuntu), or Arch + Fedora (building on Arch), but not all 3.
I tried Uno Platform and AvaloniaUI last year but I had similar problems there with external drag 'n' drop not working on Wayland and the difficulty in writing your own advanced components of which there are oodles to choose from using React/Vue/Solid/Svelte.
I'm not rewriting that other app in Electron, so for Tauri (the development of which largely seems to have stalled?) I'm hoping this[1] will solve my Linux hurdles. Going to try that branch out.
If you're interested on a dive into building game engines, I've enjoyed some of Cherno's videos [1] on developing his game engine Hazel [2][3]. It's cool to see the amount of work that has to go into building an engine. I believe Noel when he says building games without a commercial engine is more fun - there's a lot of fascinating optimizations and tricks at the engine layer.
Being made "redundant" isn't just an synonym for being fired. It has a specific legal meaning in the UK [1]. When employees are made redundant they are entitled to certain rights including statutory redundancy pay [2]. So it's not just a euphemism in UK contexts. And yes this is normal phrasing in the UK.
Cool, thank you - it was an awkward enough phrase that it was either a legal term or a management euphemism, glad to hear it was the former and the BBC wasn't just parroting MBA-speak.
It's also not about scale and breadth. Focused social networks around niches can be a breath of fresh air compared to the social behemoths. I joined a couple of more targeted social networks recently and it seems like there's a far more positive community when people have a shared interest. Fable[1] has a social network for reading and that has a generally positive and cosy vibe. Bryan Johnson's Don't Die[2] app is focused on health and longevity and it has a supportive atmosphere. You'd think that something like Reddit with its many niche subreddits would be able to replicate this. But it seems like Reddit has its own tone that permeates everywhere.
It seems like social networks that stay small and focused can maintain a fun and productive environment that degrades over time in larger networks.
[1] https://fable.co/
[2] https://dontdieapp.com/
reply