Live data from Hacker News

I miss thinking hard

jernesto.com

571–580 of 764 posts

Re: I miss thinking hard

#571

As someone who's been coding for several decades now (i.e. I'm old), I find the current generation of AI tools very ... freeing. As an industry, we've been preaching the benefits of running lots of small experiments to see what works vs what doesn't, try out different approaches to implementing features, and so on. Pre-AI, lots of these ideas never got implemented because they'd take too much time for no definitive b…

Just wanted to +1 this as a deep thinker who disagrees with the blog post's conclusion. I remember back on the years and decades I wasted dealing with the conceptual flaws inherent to nearly all software, and it breaks my heart.

90-99% of programming is a waste of time. Most apps today have less than a single spreadsheet page of actual business logic. The rest is boilerplate. Conjuring up whatever arcane runes are needed to wake a slumbering beast made of anti-patterns and groupthink.

For me, AI offers the first real computer that I've had access to in over 25 years. Because desktop computing stagnated after the 2000 Dot Bomb, and died on the table after the iPhone arrived in 2007. Where we should have symmetric multiprocessing with 1000+ cores running 100,000 times faster for the same price, we have the same mediocre quad core computer running about the same speed as its 3 GHz grandfather from the early 2000s. But AI bridges that divide by recruiting video cards that actually did increase in speed, albeit for SIMD which is generally useless for desktop computing. AI liberates me from having to mourn that travesty any longer.

I think that people have tied their identity to programming without realizing that it's mostly transcribing.

But I will never go back to manual entry (the modern equivalent of punch cards).

If anything, I can finally think deeply without it costing me everything. No longer having to give my all just to tread water as I slowly drown in technical debt and deadlines which could never be met before without sacrificing a part of my psyche in the process.

What I find fascinating is that it's truly over. I see so clearly how networks of agents are evolving now, faster than we can study, and have already passed us on nearly every metric. We only have 5-10 years now until the epiphany, the Singularity, AGI.

It's so strange to have worked so hard to win the internet lottery when that no longer matters. People will stop buying software. Their AI will deliver their deepest wish, even if that's merely basic resources to survive, that the powers that be deny us to prop up their fever dream of late-stage crony capitalism under artificial scarcity.

Everything is about to hit the fan so hard, and I am so here for it.

Re: I miss thinking hard

#572
It really bothers me how many comments on this topic (here and elsewhere) draw a false parallel between LLM-based coding as an abstraction and frameworks and compilers as an abstraction. They're not the same thing and it matters.

Frameworks and compilers are designed to be leak-proof abstractions. Any way in which they deviate from their abstract promise is a bug that can be found, filed, and permanently fixed. You get to spend your time and energy reasoning in terms of the abstraction because you can trust that the finished product works exactly the way you reasoned about at the abstract level.

LLMs cannot offer that promise by design, so it remains your job to find and fix any deviations from the abstraction you intended. If you fell short of finding and fixing any of those bugs, you've just left yourself a potential crisis down the line.

[Aside: I get why that's acceptable in many domains, and I hope in return people can get why it's not acceptable in many other domains]

All of our decades of progress in programming languages, frameworks, libraries, etc. has been in trying to build up leak-proof abstractions so that programmer intent can be focused only on the unique and interesting parts of a problem, with the other details getting the best available (or at least most widely applicable) implementation. In many ways we've succeeded, even though in many ways it looks like progress has stalled. LLMs have not solved this, they've just given up on the leak-proof part of the problem, trading it for exactly the costs and risks the industry was trying to avoid by solving it properly.

Re: I miss thinking hard

#573
post #266

Earlier quoted context omitted.

OS and compilers have a deterministic public interface. They obey a specification developers know, so you they can be relied on to write correct software that depends on them even without knowing the internal behavior. Generative AI does not have those properties.

> They obey a specification developers know Which spec? Is there a spec that says if you use a particular set of libraries you’d get less than 10 millisecond response? You can’t even know that for sure if you roll your own code, with no 3rd party libraries. Bugs are by definition issues arise when developers expect they code to do one thing, but it does another thing, because of unforeseen combination of factors. Yet…

> Is there a spec that says if you use a particular set of libraries you’d get less than 10 millisecond response?

There can be. But you’d have to map the libraries to opcodes and then count the cycles. That’s what people do when they care about that particular optimization. They measure and make guaranties.

Re: I miss thinking hard

#574
I have mixed feelings. On the one hand, I totally feel what this author is saying. On the other hand , I love that I am now able to push into areas that I could have never touched before, and complete successful projects in them.

Re: I miss thinking hard

#575

I relate to the post, but I'm not sure it's hitting the nail on the head _for me_. I like being useful, and I'm not yet sure how much of what I'm creating with AI is _me_, and how much it is _it_. It's hard to derive as much purpose/meaning from it compared to the previous reality where it was _all me_. If I compare it to a real world problem; e.g. when I unplug the charging cable from my laptop at my home desk, the…

That's exactly it for me. Coming up with a solution using my own brainpower is a large part of the pleasure of programming for me.

A silly example to illustrate the kind of guy I am: when I'm watching a show or movie, I'll often wonder where I've seen an actor before. A "normal" person, like my wife, would just look it up on IMDB and be done with it. But I almost always insist on rifling through all the dustiest corners of my brain to figure it out. Even if it takes me a day or two of thinking about it off and on. Because to me, the satisfaction of doing it myself is worth it.

Re: I miss thinking hard

#576
The use of AI is a choice. You make that choice, no one else does it for you. I myself chose to act like AI does not exist. The author, evidently, did not. So it's odd, then, that they're complaining about the consequences of their own choices.

Re: I miss thinking hard

#577
post #506

You know, I was expecting what the post would say and was prepared to dunk on it and just tell them to stop using ai then, but the builder/thinker division they presented got me thinking. How ai/vibe coding fulfills the builder, not the thinker, made me realize that I'm basically 100% thinker, 0% builder, and that's why I don't really care at all about ai for coding. I'll spend years working on a from scratch OS kern…

Absolutely nah. I know it feels good to jump into the 'thinker' camp and lump the users of AI into a non-thinker group, but this dichotomy is very poorly suited. Builders/engineers want a great tool to build faster with. Coders want to write code and find elegance in the prose. Both are thinkers.

This just sounds like a boring definitional issue. 'Thinker' is a loaded word.

You are advocating for a particular (more inclusive) definition for 'thinker' which clashes with the author's, but his is equally valid. You're both just gesturing at different concepts and suggesting they should be tagged to that word.

OP raises a particular way to classify something about personalities, says he finds it quite interesting/discriminative, and calls that kind of personality a "thinker". You instead consider a "thinker" a broader category.

That feels like an empty disagreement (nobody is right on such matters) - the real debatable question of substance is whether the _concept_ OP is gesturing at has interesting discriminative power. That concept is something like "personalities which seem to value the act of thinking through a problem/problem solving itself rather than downstream result".

Re: I miss thinking hard

#578
post #572

It really bothers me how many comments on this topic (here and elsewhere) draw a false parallel between LLM-based coding as an abstraction and frameworks and compilers as an abstraction. They're not the same thing and it matters. Frameworks and compilers are designed to be leak-proof abstractions. Any way in which they deviate from their abstract promise is a bug that can be found, filed, and permanently fixed. You g…

Your comment gets to the crux of my thinking about LLM coding. The way I think of what LLM coding is doing is decompressing your prompt into code based on the statistical likelihood of that decompression based on training data. Basically "Build me an IOS app" -> a concrete implementation of an iOS app. The issue here is that the user supplying the prompt needs to encode all of the potential variables that the AI needs to work with into the prompt, or else the implementation will just be based on the "bog-standard" iOS app based on the training corpus, although with potential differences in the app based on other tokens in the prompt. Is natural language the right way to encode that information? Do we want to rely on input tokens to the context of a model successfully making it into the output to guarantee accuracy? I think the Kiro Spec driven development starts to get at addressing the inherent issues in LLM based coding assistance, but it is an early step.

Re: I miss thinking hard

#579

As someone who's been coding for several decades now (i.e. I'm old), I find the current generation of AI tools very ... freeing. As an industry, we've been preaching the benefits of running lots of small experiments to see what works vs what doesn't, try out different approaches to implementing features, and so on. Pre-AI, lots of these ideas never got implemented because they'd take too much time for no definitive b…

Just wanted to +1 this as a deep thinker who disagrees with the blog post's conclusion. I remember back on the years and decades I wasted dealing with the conceptual flaws inherent to nearly all software, and it breaks my heart. 90-99% of programming is a waste of time. Most apps today have less than a single spreadsheet page of actual business logic. The rest is boilerplate. Conjuring up whatever arcane runes are ne…

> 90-99% of programming is a waste of time. Most apps today have less than a single spreadsheet page of actual business logic.

I would very much like to know the kind of app you’ve seen. It’s very hard to see something like mpv, calibre, abiword, cmus,… through that lens. Even web apps like forgejo, gonic, sr.ht, don’t fit into that view.

Re: I miss thinking hard

#580
post #195
post #94

Earlier quoted context omitted.

I think I understand what the author is trying to say. We miss thinking "hard" about the small details. Maybe "hard" isn't the right adjective, but we all know the process of coding isn't just typing stuff while the mind wanders. We keep thinking about the code we're typing and the interactions between the new code and the existing stuff, and keep thinking about potential bugs and issues. (This may or may not be "har…

Spot on. It’s the lumberjack mourning the axe while holding a chainsaw. The work is still hard. it’s just different. The friction comes from developers who prioritize the 'craft' of syntax over delivering value. It results in massive motivated reasoning. We see people suddenly becoming activists about energy usage or copyright solely to justify not using a tool they dislike. They will hunt for a single AI syntax erro…

Egotistical would be to reject the new tools in principle and be a less efficient developer.

But really, most of us who personally feel sad about the work being replaced by LLMs can still act reasonable, use the new tooling at work like a good employee, and lament about it privately in a blog or something.

Post reply on HN