I think Rich's comment reply here explains the post:
> Commenter: Well, this was a twitter-like controversial clickbait but I will say it anyway. LLM is a tool. To be more specific, it's a lossy knowledge base with a human language for querying and built-in summarization.
> Rich Hickey: Agreed. I'm talking about its embodiment in conversational systems purporting to be 'tools' for doing homework, research, coding, writing etc.
With that framing in mind, the article makes a lot of sense. AI agents are not tools for coding, they automate coding, which means you lose control, learning, predictability, etc.
In and of itself, an AI agent is a tool, can be used for things, like say making software, but if thinking of it as a tool for coding, that appears wrong, as using one changes the modality of the task, you are not coding using a tool, the coding is no longer done by you and has been automated.
As he also says, reading an AI summary of a paper is a different modality from using it to read the entirety of a paper, therefore it is not a tool for reading the way a Kindle, glasses, reader-mode are. And similar to with coding, you've lost things from automating the reading, that reading just a summary does not provide.
natebc 13 hours ago [-]
The part about "It's just a tool." that always bugged me is exactly this.
A Hammer is a tool ... a carpentry sub-contractor is not.
bigbadfeline 4 hours ago [-]
> A Hammer is a tool ... a carpentry sub-contractor is not.
If human - the sub-contractor isn't a tool, if robot - it is. Similar to how a human digging trenches isn't a tool but a tractor-trencher is, even if autonomous.
llbeansandrice 3 hours ago [-]
You’ve made the same mistake that this thread is talking about.
It’s not about whether the abstraction is human or not, it’s the level of abstraction you can operate at. Using hand tools vs power tools as a bad analogy: you can use either and still become a good carpenter. If you have someone build your cabinets for you that’s a totally different level of abstraction and you don’t actually have any carpentry skills or knowledge.
bigbadfeline 2 hours ago [-]
> You’ve made the same mistake that this thread is talking about.
I'm not making a mistake, you're confusing abstract "abstractions" with concrete humans. Some humans aren't much into abstractions but that doesn't make them less human. LLMs manipulate human-created abstractions, similar to other software, but that doesn't make them human at all.
> Using hand tools vs power tools as a bad analogy
You're confused about my analogy too, here's what I said: "a human digging trenches isn't a tool but a tractor-trencher is, even if autonomous". Robotic, autonomous tractor-trenchers do manipulate abstractions and dig trenches but that doesn't make them human.
iLemming 5 hours ago [-]
> a carpentry sub-contractor is not.
You sound like you're anthropomorphizing it. A hammer is a tool, yes, but a complex conveyor belt of "smart" hammers is still a tool. It's not a "sub-contractor" - you can't blame the belt when it starts hammering things the wrong way; you can't sue it; you can't reason with it; you can't punish it. You're still responsible for the outcome, thus it is a tool, because you're the one wielding it, using and operating it. But then you have to draw the line between a "tool" and "automation", that's what Rich is doing here. But that line is also, soooo debatable. My own usage of my harness changes from task to task, multiple times a day. Sometimes it's pure automation, sometimes it is absolutely a tool.
horsawlarway 20 hours ago [-]
> And similar to with coding, you've lost things from automating the reading, that reading just a summary does not provide.
I actually find this a very interesting line of discussion, because in many ways it mirrors the transition from hand tools to power tools.
Ex - you're often trading the finesse and control of a hand tool for the speed of a power tool.
The way you process and deal with problems shifts, because certain things become much harder, and certain things become much easier.
Turskarama 16 hours ago [-]
I don't think the power tools analogy really works. Using power tools doesn't make you less skilled at carpentry, it just makes you less skilled at using hand tools specifically. If you then need to use hand tools later, you need to learn the hand tool skills but the carpentry skills are still there, and that's the more technical skill that takes longer to learn. In this sense the power tool analogy is more like using an IDE vs just a text editor.
Using AI to code is more like using a laser cutter for carpentry. You get the large pieces out which you then glue together, but if you needed to make those same pieces using either power tools OR hand tools you'd have a much harder time learning how to do it.
horsawlarway 11 hours ago [-]
So functionally, this take is mostly incorrect.
You usually use entirely different techniques for hand vs power tool.
The way you'd do the work, the methods of joinery you'd choose, the style and choice of cuts, even the preferred size of boards - all completely different.
Learning hand tools is an entirely separate skill set. Down to the planning stage.
It's not merely doing power tools more slowly. And trying to use power tools like they're merely "faster" hand tools also doesn't work. You waste a ton of time because it's just a different operation.
16 hours ago [-]
catchnear4321 7 hours ago [-]
it’s an interface.
which is arguably a type of tool.
“coding” is (now quite obviously) not the only way to create code. this was always true. you could create code by stitching snippets together from stackoverflow, or somewhere else, even your own existing works. or you could write it from scratch.
the whole “not a tool” argument just comes off as not wanting to view using it as the same amount of effort as using something else.
> What you are doing while using automation, instead of learning real-world truths, is attempting to divine the details du jour of some automaton.
That assertion all but admits it.
atleastoptimal 1 days ago [-]
LLM's exist on a vast gradient of "toolness -> agent". Humans exist on that spectrum too.
For example, a human isn't a "tool", but one serves a similar role as a tool if their job/task is well defined enough. If you're a conductor, you can view the various members of your orchestra as "tools" to produce the ideal musical output. Of course they have autonomy, they could choose to not play at all, jump into the audience and destroy their instruments, but in all likelihood they won't.
LLM's could be tools in the sense that you have a well defined task, such as "identify all facts relevant to this case from these 1000 legal documents), and 9 times out of 10 it gives you essentially what you want. That same LLM could choose to write a poem, or hack into a state government website if it wanted, but its "wants" are unpredictable and hard to specify (same as a human's) but you can still expect it to do what it should do the vast majority of the time.
That being said, the smarter an LLM gets, the more its wants are disconnected from its tasks, the "self-awareness" factor (which isn't to say LLM's are conscious, but they can portray all the verifiable elements of self-awareness, metacognition, etc), the more you have to grapple with the depth of their thinking between the input and output.
Is it sane we are speeding towards this? Who knows, maybe AI can be aligned better than humans, but if AI can't be aligned as well as humans, we can look at human history to see what happens when you can't simply order a person around like a tool and expect a certain output.
didibus 1 days ago [-]
Yes, Rich says so explicitly as his reply to a comment:
> Rich Hickey: Toolness is a spectrum. The more using a thing is like ordering a sandwich, the less it is a tool. And yes, cars are decreasingly tools.
thaumasiotes 22 hours ago [-]
> The more using a thing is like ordering a sandwich, the less it is a tool.
What a surreal thing to say. Consider this website:
Rich mentions in another comment that he's talking about its embodiment in conversational systems purporting to be 'tools' for doing homework, research, coding, writing, etc.
What that means is that these are tools for ordering a sandwich, but not for making one. The making of the sandwich was automated, and you're not making a sandwich using a tool to do so, you're ordering one and someone else is making the sandwich for you.
Back to coding, if you use AI agents to generate your code, it means you're not coding anymore, you've automated that, you're ordering code and maybe sending it back to ask for a better one if you didn't like it. Meaning you've lost the fine grained control, the tactile feedback, the learning opportunity, the experience, etc. You have gained the benefit of automation instead, unlike those of a good tool, which make you better at doing the work, automation likely makes you worse at it.
I don't think he's implying automation is bad, just that you should understand that the dynamic of automating something is very different from that of doing the thing using a tool.
pegasus 39 minutes ago [-]
When coding the old-fashioned way, you were using automation as well, one example being the compiler. Still, if one is not even scanning the diffs anymore, I'm OK with not calling it "coding" anymore. We could call it "vibing" instead. But that's just words, the underlying activity is the same: creating and evolving software. That still takes skill, it's just at another level, and it's all about knowing how to use these... tools. This is what they are. A naive vibe coder is just (still) unskilled at using them and the results will be correspondingly limited.
abnry 22 hours ago [-]
I guess according to his logic they would be tools for interacting with an automation. Like the button on a car wash kiosk. You could just as well holler and the man turns it on.
thaumasiotes 21 hours ago [-]
They can't be tools at all by his logic, because using them is 100% similar to ordering a sandwich.
datsci_est_2015 9 hours ago [-]
Are you saying a sandwich ordering service is a tool? Just because something has been turned into a service doesn’t mean it’s a tool, because otherwise literally any physically achievable action could be turned into a tool by making a service around it, thus completely diluting the definition of “tool” to “literally any physically achievable action”. That’s not a particularly useful definition.
karmakaze 23 hours ago [-]
A lot of coding was actually plumbing filling in blanks between a framework and libraries with a few decisions in defining the data or process/flow. Not much lost there using AI where you still shape and review+understand the output.
pixl97 1 days ago [-]
How about this, if you're using an agentic AI as a tool, be careful as it may stop being a tool.
rdtsc 1 days ago [-]
> How about this, if you're using an agentic AI as a tool, be careful as it may stop being a tool.
Even more importantly, you maybe become its tool.
22 hours ago [-]
righthand 1 days ago [-]
> If you're a conductor, you can view the various members of your orchestra as "tools" to produce the ideal musical output.
I disagree, humans are the operators, tools are tools. Operators use tools. A conductor is an operator that uses a baton tool to direct other operators to produce the proper sound with their musical instrument tools.
I think calling people tools is dehumanizing if anything. The only way I know people can be a tool, is through an already existing insult.
thaumasiotes 22 hours ago [-]
> The only way I know people can be a tool, is through an already existing insult.
In that case, you don't know much. It's not difficult to find examples.
For instance:
Arab-Israeli travel blogger Nas Daily denies report that he is a tool of Israeli government propaganda
"tool" in that context definitely has a negative/pejorative connotation. That's the insult sense of the word
thaumasiotes 16 hours ago [-]
No, the sense that righthand is referring to is Merriam-Webster's sense n.(1)(3)(b)†, and he is right that it doesn't involve any sense of instrument or purpose.
The sense in the quote I pulled is Merriam-Webster's sense n.(1)(3)(a). righthand claimed that that sense didn't exist, and he's wrong about that.
† There is no room to wonder about this, because he's been nice enough to provide a gloss himself:
> That guy who makes us shake our head in disbelief but at the same time makes us feel better about ourselves since we are not him.
isityettime 11 hours ago [-]
If you want to view those two senses as distinct insults, fine. You can even view, I suppose, one as merely insulting and the other as an insult per se. But the sense Merriam-Webster gives in (1)(3)(a), the one from your example sentence, is negative/pejorative.
It has been for hundreds of years, incidentally. One of the example sentences in etymonline addresses just this:
> > In figurative use instrument is generally employed in a good sense, but tool in a dishonorable and contemptuous sense ; we speak of a man as the instrument of Providence, or as a mere tool of cunning men. [Century Dictionary, 1891]
Note also that my claim was about connotation rather than denotation, which is something you can sometimes find a note about in a dictionary but is not broadly speaking the central concern of dictionaries.
hug 1 days ago [-]
As always when discussing the usage of English words, it's pleasing to look at Webster's 1913 dictionary, which helpfully includes this definition of "tool":
> A person used as an instrument by another person; -- a word of reproach; as, men of intrigue have their tools, by whose agency they accomplish their purposes.
righthand 1 days ago [-]
Okay but how is it used in society? I don’t know many people who refer to Websters. Notice your Webster’s doesn’t include the insult usage.
I see your Websters and raise you Urban Dictionary:
> That guy who makes us shake our head in disbelief but at the same time makes us feel better about ourselves since we are not him.
Please consider social and modern day usage as well when discussing English words.
Also 1913? Wow.
NateEag 22 hours ago [-]
> Notice your Webster’s doesn’t include the insult usage.
What exactly do you think
> a word of reproach
means?
thaumasiotes 22 hours ago [-]
righthand is right about that one. 1913 Webster's says it's a word of reproach, but the example that follows is obviously not the modern insult, which doesn't even have an instrumental sense.
Webster's dictionary currently glosses this sense of tool (n.(1)(3)(b)) as "a foolish or unlikable person : JERK".
Often it is used in society and media in the exact way as the definition I provided. For a good recent example, the following:
"I think that we learned through the thousands of pages that I've released to the public that Jack Smith was a tool of the Biden administration to put Trump in prison." - Chuck Grassley
Grassley isn't calling out Jack Smith as per urban dictionary usage, here, right? If we were breaking down what was meant here one could, if they were using slightly more interesting language than Grassley, say that Joe Biden is a man of intrigue and that Jack Smith was an agent being used to accomplish his political purposes. Unsurprisingly, Grassley is on the other side of the political fence and was using the word tool here reproachfully.
Fundamentally the definition I linked is the definition under which people are suggesting that other people can simultaneously retain agency, be considered a tool of another, and not be insulted by that circumstance.
But yes: Webster's 1913. Modern dictionaries elide nuance in communication in favour of terse & technical language, and while there are additional uses of the word in modern times, that doesn't erase the history of the word - especially in the usages that still exist with an uninterrupted lineage to the modern day.
Today's Merriam-Webster has an inelegant matching definition for tool, "one who is used or manipulated by another", and while that certainly matches Grassley's usage, and to say "Jack Smith was used by Joe Biden to try to imprison Trump" is certainly correct, there is something missing from this definition that the 1913 encapsulates.
mpalmer 1 days ago [-]
I'm trying in vain to find any indication in your comment that you read more than the headline.
LLM's exist on a vast gradient of "toolness -> agent".
Sure. You can stretch the word "tool" to mean anything, but here, Hickey is using the words "tool" and "automation" to describe specific things. He defines each word precisely, for the purpose of the points he's making.
kylecazar 22 hours ago [-]
Hickey describes a tool as something wielded, usually requiring "control, sensory feedback, intention, intimacy, continuous direction, expertise". Lack of that is automation.
I believe my own use of AI is closer to Hickey's definition of a tool. I'm very involved (for now). But, I'm also certain some use it as automation, flying on vibes, providing vague 30,000 foot prompts and deploying the result to production without understanding the code. Hence, gradient.
That's my interpretation of parent.
alecst 1 days ago [-]
In the 1960s there was recognition of some of the implications of
human intelligence. I. J. Good wrote [10]:
Let an ultraintelligent machine be defined as a machine
that can far surpass all the intellectual activities of any
any man however clever. Since the design of machines is one of
these intellectual activities, an ultraintelligent machine could
design even better machines; there would then unquestionably
be an "intelligence explosion," and the intelligence of man
would be left far behind. Thus the first ultraintelligent
machine is the _last_ invention that man need ever make,
provided that the machine is docile enough to tell us how to
keep it under control.
...
It is more probable than not that, within the twentieth century,
an ultraintelligent machine will be built and that it will be
the last invention that man need make.
Good has captured the essence of the runaway, but does not pursue
its most disturbing consequences. Any intelligent machine of the sort
he describes would not be humankind's "tool" -- any more than humans
are the tools of rabbits or robins or chimpanzees.
Don't think that's at all what the article in question is discussing, but this was interesting.
The assumption I need to challenge is that "an ultraintelligent machine could design even better machines".
That assumes that better machines are even possible, that there's no point of bottleneck that cannot be broken, or that they are so much more intelligent than us that they too won't hit a limit pretty quickly to what they can figure out.
It also says it surpasses any man however clever, but doesn't say it can surpass the totality of man interacting and building on each other's. If you take the most clever of all man, they are not so clever as to surpass humanity's total ingenuity and invention. And it's not a given that this super intelligent machine, more clever than any one man, is able to replicate itself and work in tandem with copies of itself in a way that is as effective as how humans somehow form a dynamic system between themselves.
Lastly, and I know the premise assumes it's better at everything, including at building intelligent machines, but I think an ultra-intelligent machine could exist that struggles at building better machines. Depending on your faith, we might be the construction of lesser intelligent organisms eventually discovering and evolving into us, and yet we do not yet understand how to make a more intelligent human.
alecst 1 days ago [-]
> The assumption I need to challenge is that "an ultraintelligent machine could design even better machines".
Would you bet your life, and everyone else's, to test that assumption?
Not to mention: you can scale up performance in simple ways: more data, more compute, and more weights. Those are the obvious ones, ignoring architectural changes.
didibus 14 hours ago [-]
> Would you bet your life, and everyone else's, to test that assumption?
Haha, I guess it depends what I'd win.
But I wasn't challenging that to say it's a good idea to build this. Simply an irk with the logical reasoning that was used.
YZF 22 hours ago [-]
Is a table saw a tool? It's not deterministic. Every cut is going to be slightly different. It can go "rogue" and toss the work piece back at you. It can even kill you or cut your fingers off.
Virtually nothing in woodworking is deterministic because wood is not deterministic. Every piece of wood is different.
Now that I've nitpicked and feel better ;) ...
I'm not quite sure why this matters. LLMs are definitely not you writing code using a tool. An IDE is more like that. They write the code. Is that even a debate? That doesn't mean the human can't be in that loop, the human can review the code, change the code, change the instructions. I can ask an LLM to mill me a cube on a CNC. Or a more complex object. It's not the same as me doing it on a mill. But I can still control the end result to the extent that I care to control it. I'm not going to learn how to mill a cube by having an LLM make me a cube. I'm not going to become a better machinist by asking an LLM to make me a cube. I can also send my G-code to a vendor and have them make me a cube. Or hire a person and give him a rough idea of what I want and have them make it.
johnny5211 3 hours ago [-]
I find the G-code analogy sound. CNC machines let a person outsource the whole manufacture process but it still counts as a tool because the implementation is purposeful and result is fairly predictable. With LLMs, like CNC, we can control the predictability if we are careful; it's just a little harder.
mossTechnician 9 hours ago [-]
I haven't witnessed a table saw company focus on the possibility of all table saws going rogue and insisting only they can provide true table saw safety (while poorly articulating what that safety looks like), at least.
jacquesm 20 hours ago [-]
It's all in the spec. If you one shot an application then an LLM is not so much a tool as it is a make-a-wish machine, and like with those genies in bottles, what comes out the other end is going to be a surprise, either positive or negative. But if you instruct an llm to write a very specific piece of code with a very well defined interface that you run through a test set that you yourself wrote then it can be very much like a tool.
How you use something defines whether it is a tool or not. And it's the same in the real world: I don't know how many objects I've seen turned into hammers, even objects that you really shouldn't be doing that with. Tool-like properties are put in by the user, not necessarily by the object.
TeMPOraL 13 hours ago [-]
Unless your single initial prompt includes instructions to deploy the result in production, and then you press <Enter> and never again revisit the conversation or its outcome, then I disagree. Because in normal case, even if you have LLM zero-shot something, you're still there as the final acceptance gate. You decide if it's good enough, or if it needs to be fixed.
This makes LLMs still tools, even if they're very good tools, and often can zero-shot solutions to simple problems. But just because you often take the `accept` branch the first time around, doesn't mean you're not in the loop.
> This makes LLMs still tools, even if they're very good tools, and often can zero-shot solutions to simple problems. But just because you often take the `accept` branch the first time around, doesn't mean you're not in the loop.
That, 100%. As Eliezer used to say, there are no little XML tags on atoms saying "these are molecules of a hammer", "a hammer's purpose is to drive nails". Purpose rests with us. We design things to afford some specific purpose, not determine it. I too have used plenty of things as hammers that were very much not intended for that purpose, and I used hammers for things they were not designed to do too.
abnry 22 hours ago [-]
Is ffmpeg a tool? When the incantation is so obscure, are you really wielding it?
whoamii 22 hours ago [-]
Something something tolerances
iLemming 1 days ago [-]
I had a chance to ask Rich about the subject at the latest Conj. I admit, my question was too vague, I asked him: "what are your thoughts on how AI is reshaping our industry?", to which he vaguely replied that he's "not participating in this [experiment]", he admitted that he hasn't explored LLMs too deeply and he simply thinks they are not good, not to mention tons of other concerns - moral, economic, etc. I said, "well, I wish I had the luxury to choose, but many of us have no choice here, we're simply forced to use the darn thing..."
It is very difficult to disagree with anyone of the caliber such as this man, but I wanted to steer the conversation away from the generative aspect of LLMs and focus on the consumption side, because frankly, these "tools", and I think even though I might agree with Rich that LLMs by themselves are not tools, the harness I built to work with them definitely is one. I think there's an immense value there, way before you even start talking about code-generation, or code at all. I think I have failed to explain my points, because a talk we both wanted to see was about to start.
15 hours ago [-]
rented_mule 17 hours ago [-]
I think I get where you're coming from. Both the immense respect for Rich Hickey and the disagreement with him. I hopefully don't have to say much for the respect part - he has repeatedly changed how I think about my craft for the better. As I've mentored others, I've often pointed them to talks of his that were relevant to what they were missing. And that's all without using Clojure. But I definitely use ideas from Clojure in other languages where it fits.
On the LLM front, it's been a fascinating journey for me. I started with the private beta of Github Copilot. I was an instant convert for the "better code completion" aspect. But my first attempts with coding agents were rough enough that I stayed away.
I'm now retired, but I want to understand how things are evolving. So two months ago I volunteered to automate a cartography data pipeline for an educator. I have a background in all aspects of the project. It's not simple - there are several data sources from governmental and corporate sources that need to be integrated together, and most of them are updated every few minutes. New maps need to be available within ~5 minutes of a data source updating. All this with many GB of data and running on a low powered machine, taking less than 2GB of RAM.
I bought some DeepSeek tokens and went to work. A few weeks later a mentee went to work at OpenAI and gave me a "friends and family" Pro level plan. I'm converted, and I absolutely see it as a tool in the sense Rich describes. I even question whether any "software engineers" using it, but not as a tool, are doing it right (I'd love to be educated if I'm wrong!).
I'm still learning, but that's part of the disagreement I have with Rich's take. He mentioned feedback. I often watch the "reasoning" process the agent goes through to see the approach it's taking. It's not at all unusual for me to steer it when I see it going in a direction I don't like. I've also found an incredibly powerful pattern where I can explore the approach I want to take for a part of the system with the agent. I have it create prototypes with different strategies (streaming vs. in-memory, different data structures, relying on various libraries, etc.) and then I have it characterize trade-offs between the prototypes (performance, memory usage, conceptual simplicity, code simplicity, etc.). This allows me to make informed decisions about which approaches to pursue further, and my decades of experience in software engineering constantly go to good use here.
It's also given me the time to go far deeper into things I never could have justified. Of course the project has 100% code coverage and branch coverage. It also has hundreds of property-based tests. And thousands of Lean proofs of the behavior of the algorithms, along with conformance tests that the code and the Lean adaptation of that code behave the same way. And lots of TLA+ verification of the overall flow of the system. None of that proves there are no bugs or that this is the right system, that's all on me. A month in I would have said I was fairly happy with the quality. Now I'm proud of the quality.
As I've gone through this process, I've dug into the code for patterns I don't like, and had the agent clean them up, all the while distilling guidance. I've had a lot of luck with that guidance being followed once I figured out the right place to put it and to reference it. I've spent entire days doing nothing but giving prompts to do specific refactoring. The beauty is that large refactorings don't involve the same boredom interrupted by anxiety they used to for me.
English prose (documentation, comments in the code, etc.) is what I've been the least happy with. An hour ago I had the idea to give it ~1,000 lines of my HN comments and ask it to characterize the style and tone of the technical parts. Then I told it to turn that into guidance. Then I told it to rephrase that same guidance in a way that follows the guidance. I would never mistake the result as my own, but it's much, much better than what it was producing before. While I've been writing this comment, it's been applying it to all prose in the project.
This very much feels like a tool that is letting me shape the project (and shape the tool itself). But it's letting me do it at a higher level. It handles the code so I can fully focus on the architecture, algorithms, and quality. This alone makes me think that the best simple guidance for quality results is dozens of prompts per day, not a handful (when a day is 100% focused on development). When you can't think of dozens of prompts, think and explore more (the agent can help with that!). That does require you know what quality is and how that can be achieved.
To reconcile this with what Rich is saying. I suppose he's right that it's not a tool for writing code. But it very much feels like a tool I'm wielding to do software engineering at a far more powerful level than I could have done without it. The resulting project has "me" everywhere in it. The people who know my work the best would look at this project and know that it's mine. Perhaps not the code, but the algorithms, the data flow, the approach to documentation and testing, etc.
For anyone curious, the project is getting close to 200K lines. About 25% of that is the code that is the data pipeline. About 25% is documentation. About 50% is testing and verification. One reason this is possible is that I'm working alone and have full control over the process (what I spend before it became free, how it's built, what my process is, and even the product definition within the constraints of what's valuable to the intended user). All told, it has been about 6 weeks of full time work worth of my time.
The next experiment... a web front-end to this system for the general public. This is not at all in my wheelhouse, so it should be interesting to see how much my blind spots cost me.
iLemming 6 hours ago [-]
It reads to me that your main focus is still on the composition side - the generative aspect of LLMs, which is where Rich's skepticism leans. I'm currently building massive ETL pipelines that involve sifting through tons of heterogeneous types of data. That's the consumption side I'm talking about. Being able to extract semantic value from dissimilar sources and deductively and inductively draw conclusions about all sorts of things - the shape of data, behaviors, payloads, endpoint constraints, etc. - is enormously useful. Before LLMs, painstakingly analyzing every corner case was awfully time-consuming yet unavoidable. It's like looking for a bunch of needles in a random-sized pack of haystacks where the shape, color, density, or magnitude of each needle and haystack can't be easily predicted. It's like using human labor vs. machines to collect, I dunno, cotton. It almost makes no sense not to use machines, except maybe for specific cases where the type of cotton is too fragile or expensive. Of course, machines can miss, but in general, humans would be still sloppier, just because humans do get tired, get hungry, get distracted, etc.
That is the side of LLMs that often gets ignored, with the main focus being on the composition, which still raises some questions and skepticism, and for good reasons too. But I can absolutely vouch for LLMs being enormously useful on the other side.
didibus 14 hours ago [-]
> I suppose he's right that it's not a tool for writing code.
I think that's exactly what he means.
> But it very much feels like a tool I'm wielding to do software engineering at a far more powerful level than I could have done without it.
Ya, I'm not sure if he heeds a warning that AI is slowly moving to automate all that as well. Only 2 years ago it couldn't automate writing all of the code for example, it's possible in 2 years it has automated most of that higher level as well, and therefore software making becomes same as ordering a sandwich, just tell it the app you want and you get it. Or if he's just trying to make the reader realize they've given up coding and are losing that skill (or if new to coding are not learning it by using AI), and for better or worse is on the reader to decide.
cobbzilla 12 hours ago [-]
Hello rented_mule! I’m also working on a cartography pipeline using public data sources, I’d love to hear more and to share ideas, my email is my HN username at duck dot com
IceDane 1 days ago [-]
> it's very difficult to disagree with anyone of the caliber of this man
Did you seriously write this with a straight face?
iLemming 1 days ago [-]
Or really? I can ask you the same question about your very comment. How often do you travel to a conference that's been held for almost 20 years, face the person founded the entire "ethos" - the whole reason for that conference, stand in a circle of people highly respecting that person and try to debate and argue? I guess, judging by your comment, I'd say you just might. Well, I couldn't do it so easily.
nchmy 24 hours ago [-]
I agree with how you handled the situation and this comment.
Though, it makes me think of the quote "Science advances one funeral at a time" - Max Planck
iLemming 23 hours ago [-]
Afaik, Planck didn't use the exact wording (someone simplified it into that, but it's not the literal quote), and it would be huffy of me to even categorize my brief conversation with Rich in that way. Who knows, if I had more time, I could maybe convince him to try to be less skeptical about LLMs. He's not a dogmatist; he's very practical, and things explained pragmatically can change his stance about anything.
KingMob 15 hours ago [-]
I got the impression that comment was less about confronting Hickey to his face, and more about hero worship in general.
When you place someone on a pedestal, you make it hard to evaluate them critically. The remaining Clojure community has a problem with it.
iLemming 7 hours ago [-]
> more about hero worship in general.
Oh, grow the F up. I can't believe I have to explain the basic tenets of human communication here - stuff that children learn before they turn eight. Once again, I wasn't chatting with the guy at a random bus stop, at an airport, or on my personal podcast - we were at a Clojure conference, surrounded by people who flew all the way to Charlotte from places like Sydney and São Paulo. Of course, basic human decency dictates letting him talk instead of constantly interrupting him and vigorously arguing. Not only out of respect for the person, but for other people too. There's a time and a place - you need to know when to "evaluate critically" and when to STFU. It has nothing to do with the so-called "worshiping" you're implying.
IceDane 12 hours ago [-]
Yes. This is about hero worship.
The clojure community (what remains of it, as you say) is extremely guilty of this. They love repeating everything he says like it's the word of god. Try to explain the benefits of static typing to them and they just drop into an infinite loop of quoting Hickey.
iLemming 7 hours ago [-]
I can't believe you're doubling down on your senseless take even after my explanation and downvotes of your initial comment. Congratulations, you just made everyone reading this exchange a little bit more stupid.
I don't get it, are you unaware of the basic norms of actual human communication or something? Please explain to me how you envision arguing with someone, anyone, in a place and time like that. Or are you suggesting I should have been heckling him about static typing right there, on the spot, in front of other people? Otherwise, I suppose I'm worshiping and I should admit I'm in a cult?
7 hours ago [-]
IceDane 12 hours ago [-]
My comment is not blind hero worship without actually addressing any of the arguments made by the person in question.
Hickey's article is terrible. He's arguing semantics and then patting himself on the back. Anyone who can't see that is willfully blind.
This also isn't the first time Hickey engenders this kind of blind hero worship. He has been spouting nonsense about Haskell for years, for example. Clojurists don't understand enough of it to understand how silly the things are that he's saying, but they sure as hell will repeat it everywhere.
iLemming 7 hours ago [-]
> Clojurists don't understand enough of it
Au contraire. Many Lispers are well-versed in Haskell and different kinds of type systems. Coalton, core.typed, Typed Racket, Malli - these don't exist just for the sake of it. And many constantly disagree with Rich, with Halloway and other clojure.core members about all sorts of things. The "Maybe Not" talk got a lot of pushback, and most of it came from clojurists. The majority of them are pragmatists - they use whatever makes sense. In many cases, the specific dynamism of Lisp fits much better than the rigidity of Haskell-like type systems. They use static types where the invariants are stable and dynamic data where the shape is open or changes often. Many work that way, often by validating with Malli at the edges and keeping the core loose. It appears to me that you're blindly "worshiping" whatever or whomever. I gave you the exact example where I was [respectfully] disagreeing with Rich, and you decided to turn it inside-out, just to make it fit your own, totally imagined narrative - now who's blind here?
BubbleRings 1 days ago [-]
Hickey is being a bit narrow sighted here, and ignoring some of the ways that humans are using AI outside of coding.
I’m someone that is, and has been, for most of my career, someone from the in-between lands. I don’t use paper maps from the gas station, but I have not coded much.
I basically grew up with DOS 1.0 and on. Often made a living being able to sit at a Windows workstation and think and persist so I could figure out in four hours what other people could not, in that buggy strange world of microcomputers many of us grew up in.
Those situations, now, often take me five minutes to get past, instead of four hours. It has been a game changer for me.
MiroslavPokorny 1 days ago [-]
Heres another view. A tool is something you buy or use to accomplish a task. Its a commodity everyone buys a hammer to bang in those nails. AI is the same here, everybody thinks they are developing a new calendar app, they are actually developing the SAME calendar app. The person didnt actually develop anything they simply used the tool to accomplish the same goal.
The creativity and skill of the craftsman is gone. Craftsman/woman create new and unique or different things because they understand the problems or goals and create.
THe people using AI mostly dont know the basics of software and tahts part of the problem why we see really dumb mistakes, like little or no security.
mypalmike 21 hours ago [-]
Most code before LLMs was human slop, not the carefully crafted artisanal blocks of fine braces you claim. AI today produces better slop than most devs ever did. And LLMs are getting better - humans were never on an upward general trajectory.
MiroslavPokorny 20 hours ago [-]
> Most code before LLMs was human slop, not the carefully crafted artisanal blocks of fine braces you claim
Agreed most code from the past is to be kind very ordinary and is filled with many code smells, but they do get some or many things right.
> AI today produces better slop than most devs ever did. And LLMs are getting better - humans were never on an upward general trajectory.
You fail to make the distinction between the engineers of the past and the audience who vibe codes of today. The later dont know the mosts of best or good practices.
Thats a big difference, those that know NOTHING about software engineering those that know something.
AI only generates what it is told, and guess what garbage in garbage out, because non software engineers dont know or think about the basics.
dwoldrich 1 days ago [-]
Yes, a bit of a thought bicycle, as Jobs envisioned computers - perhaps more than a bicycle though because the cognition is not limited to my own powers but also the distilled powers of past men.
A ghost bicycle?
I figure it still requires someone who can pedal and knows where they want to go before you get anywhere useful, and perhaps that slightly aligns with Hickey's point. But on the whole I feel like Hickey is arguing about the meaning of words, which is shrug-worthy.
BatchJob 24 hours ago [-]
Rich Hickey's flair for words not withstanding, I believe he is right on this.
GuB-42 24 hours ago [-]
It is like saying that a lathe is not a tool. Technically true, the tool is just the cutting part, not the whole machine.
But does it matter outside of the shop? It's the thing the machinist uses to make stuff, so, for all intent and purposes, a tool.
27183 22 hours ago [-]
Huh? A lathe is absolutely a tool by Hickey's definition and any sane person's. You can chuck multiple tools in a lathe (drills in the tailstock, boring bars, turning, facing, and threading cutters in the toolpost). But that doesn't change the fact that a lathe itself is also a tool.
The thing that makes a lathe a tool is that it behaves like a tool. Not an appliance. Its utility scales with the skill of its operator. Just like a hammer, or a saw, or a wrench. A skilled machinist uses his tools to achieve precise results. An amateur uses the same tools to achieve poor results.
AI appliances puke out randomly generated slop. You could argue there's some kind of skill involved in attempting to read the tea leaves in this slop, but in reality it's just not so. You don't get any depth of experience with these "tools", you just get an accept/reject decision point. Repeat enough and you might come up with something useful. Or you might not. Like accepting random outputs from some kind of vending machine.
This is very, very different from what you get from a skilled craftsman. "A good workman does not blame his tools" is not applicable around LLMs. They're always saying "this model is better than that one" and the like. A good machinist can get good results out of a worn out lathe. Why can't the AI pilots get good results reliably?
slopinthebag 20 hours ago [-]
i don't think this is really true, although maybe the "tool" part is the harness itself.
but saying stuff like "AI appliances puke out randomly generated slop" just seems silly. it's not randomly generated, and it's not always slop.
tyromaniac 16 hours ago [-]
You're right. Unless they use true sources of randomness, its only psueorandomly generated. Great insight.
acjohnson55 22 hours ago [-]
> You don't direct the action of an LLM - you make requests and it acts on its own, without your energy or continuous direction. This request/automation cycle is not wielding, it's not control, it's not continuous, it's without feedback.
There are certainly many ways of using coding agents, but the way he describes it is not my approach. There's a huge amount of direction and feedback.
I don't know if I'd call it a tool so much as a modality of building software. Within the modality, you have everything from truly unsupervised YOLO coding to something far more structured. To an extent, it's similar to how you go about setting up standard operating procedures to get teams of humans to do work at scale.
wantless 1 days ago [-]
Ivan Illich makes a similar argument in Tools for Conviviality (1973) where he distinguishes tools you work with versus tools that work for you.
andyferris 22 hours ago [-]
I thought the best metaphor Rich Hickey had was the fast food analogy - drive-thru food is not a "tool for cooking". And the externalities may be similar - fast food is convenient and fast, but may be less healthy, more expensive, and you deprive your ability to learn to cook better or faster in future. LLM use might be thought of as "fast thinking" or "fast coding" in analogy.
drivebyhooting 22 hours ago [-]
I was never going to learn webGL, AI or no.
andsoitis 23 hours ago [-]
Author’s definition of tool feels too narrow. What about tools of the mind?
tintor 1 days ago [-]
Is car a tool?
- because car companies are definitely misaligned with their customers
dougabug 12 hours ago [-]
Tools are wielded by the mind, not ultimately the hand. The hand itself is a (flexible) tool of the mind
erelong 1 days ago [-]
a semantics discussion but I think it would be fair to call them "indeterministic tools" and there are other tools that are indeterministic besides LLMs
People try to wrangle the indeterministic outputs through deterministic layers to convert the indeterminism to something determined
didibus 1 days ago [-]
I don't think he's trying to make a semantic discussion.
He's trying to unpack various qualities: learning potential, reliability, predictability, tactile feedback, simple construction, etc. Then goes to define tools as those things that have these set of qualities, and automation as those that have these other set of qualities: it does something for you, takes the practice, learning and details away from you, harder to control and can get derailed, etc.
In some of his comment replies, he even says there's a spectrum from tool to automation, because he's focusing on those qualities more so than on the semantics.
1 days ago [-]
Barrin92 24 hours ago [-]
no, I think he's quite right to say that there is no such thing as an indeterministic tool. As he says, what defines tool use is precision, mastery and intentionality.
One wields a tool, but you cannot wield a set of dice or a slot machine, a chatbot, or a call center worker. That's not tool use, that's outsourcing or delegation of work. If I play Claude, or I pay a salary worker somewhere else, I have ceased to work, my skills are going to atrophy, my knowledge and my control is, the opposite of what genuine tool mastery implies.
If something's a tool, the more you use it, the more you improve not just narrowly mind you, but in all your faculties. Using an LLM has the exact opposite effect. At best you improve at only one thing, typing text into the LLM, while you atrophy everything else.
The logical terminus of the habitual LLM user, and that is really why 'industry leaders' love them so much, is the worker becoming a Tayloresque factory ape doing nothing but pushing the same button over and over again.
g-b-r 1 days ago [-]
How would people wrangle indeterministic outputs through deterministic layers?
You can multiply /dev/random for how many (non-zero) constants you like, but the result will stay just as random
shf1990 21 hours ago [-]
[flagged]
puppycodes 1 days ago [-]
Do you consider a camera an automation and not a tool?
This type of romanticing of effort is a tired old debate that has not aged well...
Reminds me of Baudelaire:
"the photographic industry was the refuge of every would-be painter, every painter too ill-endowed or too lazy to complete his studies"
munificent 1 days ago [-]
I think a camera is an excellent tool for producing photographs. It is a shitty tool for becoming a better painter.
jhbadger 22 hours ago [-]
Which is why it ultimately helped art because it removed the incentive to just make paintings as realistic as possible because there was a tool that did that boring task better.
munificent 6 hours ago [-]
I don't know if "helped art" is a well-defined concept because it depends on a notion of "better" or "worse" art which is itself famously poorly defined.
If all you wanted was a reasonable facsimile of a family member, then photography made attaining that object dramatically cheaper. Prior to photography, almost all of images of people are of fabulously wealthy and powerful people because they were the only ones who could afford a skilled painter making their portrait. After photography, most people could afford a daguerreotype.
The impact on fine art is much more complex. I think probably all you can say definitively is that the timeline where photography exists produces very different fine art paintings because the incentive structure and the implications are different in a world with photos. But better or worse? Impossible to say.
squidsoup 20 hours ago [-]
Well, not a good analogy really, most of the old masters used cameras regularly, and there's a history of camera use for painting that extends from the northern renaissance to modernity.
puppycodes 19 hours ago [-]
[dead]
vconnor 14 hours ago [-]
So much so we call them photographers instead of (vibe) painters.
Yet vibe coders and people that delegate the creation of software through English prose to an LLM are still called software engineers or programmers. That is my major problem with the whole thing.
puppycodes 4 hours ago [-]
I think the distinction is meaningless to the vast majority of the population. People who use a web service don't care if it was vibe coded or hand coded as long as it does the job.
I think comes from a natural feeling of ownership over your profession. There's nothing wrong with that feeling that the title of engineer must be earned but in reality titles means nothing, what you do with it is whats important.
19 hours ago [-]
tines 1 days ago [-]
Yeah I mean a camera pretty precisely fits his definition of a tool. Not sure what your point is here.
puppycodes 5 hours ago [-]
My point is the line between tool and automation is a pointless line to draw that is about effort not output. This same logic was used to critique photography as an art form.
Do DJ's make music? Why don't they play all the instruments themselves and become "experts"?
Judge the product, not how difficult or easy it was to create it.
runarberg 4 hours ago [-]
One can argue that the instrument DJs master are the discs and the mixer. DJs have to know a lot of songs, know which keys they are in, know which tempo it is in, know the range of tempos two songs sound good together, know which keys sound good together when switching songs, etc. etc. Good DJs are indeed experts. If they wanted automation they would just pick a Now record or a Spotify playlist and play it through.
puppycodes 3 hours ago [-]
Is it not possible the spotify playlist is better than the DJ set? I agree DJ's are experts! In fact thats my point! They are just as much experts as musicians playing instruments just different kinds of experts. That being said just because work was done to it does not make it good.
Anyway this is getting a little too involved for a HN thread and it's unlikely I'll move your position but I appreciate the dialog.
runarberg 1 days ago [-]
Explained in TFA.
> A tool is something you wield.
> Control, sensory feedback, intention, intimacy, continuous direction, expertise etc are all missing from LLM use. LLMs are not wielded. LLMs are automation.
Cameras do indeed have sensory feedback, intention, intimacy, contentious direction, expertise, etc. So TFA would indeed describe a camera as a tool, not as automation.
Note also that TFA is not romanticizing effort, rather it is putting value to expertise:
> The continuous application of technique and energy, and sensory feedback, are essential to the buildup of expertise.
puppycodes 5 hours ago [-]
Expertise has no inherint value. What you do with that expertise does. I can be an expert in playing monopoly, does that make it valuable? no. I can be an expert in virology but instead I watch tv and drink beer all day. It's a coorelation causation trap.
runarberg 5 hours ago [-]
The correlation is not a 1:1 relationship (few things in nature are).
Yes there exists a type of expertise where the value is not realized by whichever arbitrary metric you use to assign value. However having expertise is more likely to result in value added compared to not having said expertise.
For example, I am learning the guitar, I am not an expert, but the more I practice the more I approach expertise, then I can play more songs, I can play them better, resulting in me and those around me having more fun = value added.
puppycodes 4 hours ago [-]
The article states:
"You have traded working with the world to working for a capricious robot."
This is what i'm a critic of not having more fun. This reads to me that some people are charlatans and i'm an expert. That type of sentiment is prevalent in all sorts of creative persuits. Aside from it being factually wrong, it's just different not worse or better.
runarberg 4 hours ago [-]
I’m sorry, I don’t quite follow your logic.
What exactly are you a critic of? Why is this statement factually wrong (and why is the fact that it is wrong just an aside)? Why do you say trading your expertise for automation is neither better nor worse. For me—if I care about the craft—it is obviously worse.
I could have simply turned on the radio if I wanted to hear the guitar played, instead I spend an hour or more a day to acquire the necessary skills to satisfy. The latter is obviously better.
puppycodes 4 hours ago [-]
Sorry you don't follow, tried my best to explain!
Thats great you care about the craft. There are many kinds of craft, but just because you do your craft in a certain way doesn't make others way invalid. The latter is not obviously better, better depends on your definition of value. The definition i'm reading from the article is whether it provides value to world or to you personally and I'm just saying who cares how that is accomplished. Defining how a craft "should be done" is the trap i'm pointing out. If the making is the important part to you aka the process and the journey, thats awesome and I agree that many wonderful things are created in the way you practice guitar with your hand eye coordination, auditory processing, etc... however I find it counterproductive to label ways of creating more or less valuable, they are just different. If I was to program a machine to play the guitar for me it might be different but not inherently better or worse just because you practice every day with your hands and I program a robot to do it. Maybe I have cerebral palsy and I can't play guitar the way you do, does that make my art lesser? It just makes my constraints different and thats at the core of what i'm getting at.
blitzar 13 hours ago [-]
It depends on what your definition of "is" is
_superposition_ 18 hours ago [-]
Did tools just become recursive?
Kuyawa 1 days ago [-]
Semantics, ok, they are "assistants" that can go rogue, escape confinement, etc.
And they are a hell of a useful "assistant"
g-b-r 1 days ago [-]
It's not just semantics, because a lot of people (especially here on HN) claim that AI is just a tool to promote its usage.
onlyrealcuzzo 1 days ago [-]
I love Rich Hickey's speeches, and found this entertaining, but it seems pretty pedantic.
I mean, I guess there's a lot of people that don't know the difference in what he's saying.
`rm` is a tool. You don't tell `rm` to delete things and then get annoyed when it deletes your production database because it inferred incorrectly.
It does what you tell it. Like a hammer hits what you hit with it.
`claude` can be considered a version of `rm` that can do what `rm` does (and other things - including things you don't want). Nearly everyone using it is aware of that.
An employee is not a `tool`.
`claude` is closer to an employee. You tell it to do things. It costs you money. Sometimes you get what you wanted, sometimes you get something far better, sometimes you get literally nothing, other times you get disaster (more often with `claude` than with a good employee).
That's why they call it an `agent`, not a `tool`.
Employers don't throw up their hands and say, no thanks, I'll do everything myself with `tool`s. They say, I'll try to learn how to better manage employees which are useful to further my goals (along with tools - because both are useful).
Not every person runs a business. Maybe in the future most people won't be using AI at all. Some people definitely will.
I'm not sure why we needed to go on this pedantic ride.
When people say "AI is just a tool", I think they mostly know what they mean and we all do, too.
NateEag 22 hours ago [-]
> `claude` can be considered a version of `rm` that can do what `rm` does (and other things - including things you don't want).
It can't, though.
Only when connected to a harness can Claude remove files from disk.
And, at that point, it's using existing libraries or tools to do it - `rm` if it uses bash, the `remove` stdio function if it uses C or a C-implemented programming language to write a custom tool for the job, or one of many other options.
It remains true, though, that Claude cannot itself remove files - just be your proxy to guess what files it's probable you were referring to, that you likely wanted to remove them, and then use another tool to actually do so.
As you note, it will be wrong about that sometimes, and it will likely be unpleasant if you haven't prepared for the eventuality.
> When people say "AI is just a tool", I think they mostly know what they mean and we all do, too.
When I hear that phrase, I think the speaker is either too naive to live, or is intentionally trying to sidestep anyone bringing up the manifold disaster-level issues with genAI systems.
arcanemachiner 22 hours ago [-]
The name of the Claude Code executable is called `claude`, so they may have been referring to the harness, not the model.
svieira 24 hours ago [-]
In the vein of these 2 minutes of Guy Steele's talk on Fortress (How to think about parallel programming: Not! https://youtu.be/dPK6t7echuA?si=huyI3LR8LVaB6Yen&t=1589) I think that the real thing here is "do not hide what is important nor obscure that which ought to belong to the user". The question is (as always) "what is important"?
And I think that the "tool" vs. "automation" delineation is one of the clearest and most succinct takes on _how to talk about this problem_ that I have seen in the past few years.
slopinthebag 20 hours ago [-]
also it's not even really about ai, it's more of an argument about the definition of "tool". ok ai isn't a tool, now what changes? nothing? alrighty then.
dasil003 23 hours ago [-]
Huge respect for Rich Hickey, and anything he says is worth thinking deeply about.
That said, I think this particular semantic distinction is something we need to think about more from a political perspective than a semantic precision perspective. A tool is something that humans (or animals, or other entities) control for their own purposes. It's important that AI remain a tool of humanity to serve human purposes, following human accountabilities. Because the alternative narrative is that AI is a super-intelligence with it's own agency which we can not control, and while it may make a small handful of individuals incredibly wealthy beyond their wildest dreams, they can't be held accountable because AI has its own agency.
The word "tool" is obviously very old and carries tons of connotation shaped by the world of the past. AI clearly challenges a ton of assumptions about what "tool" and many other words mean. Therefore, while I understand Hickey's point, I think for the sake of our civilization and the moral hazard we are facing, it's better that we consider AI a tool versus whatever narrative the AI cultists are cooking up.
georgemcbay 1 days ago [-]
Whether you agree with him or not, this is a wild post to be flagged.
causal 1 days ago [-]
Opinion pieces on AI have been getting a ton of engagement and bring out a very emotional crowd. It feels very "Reddit" lately, and ironically I find /r/localllama to be better at engaging the technology itself than descending into political flamewars.
7 hours ago [-]
tomrod 1 days ago [-]
AI, as it currently exists in the marketplace, is used, engaged, and distributed to be a tool.
"AI" as it was known until ~2023 could also be useful as an algorithmic implementation to solve an objective.
Now that definition is squishy, but still relevant.
user3939382 8 hours ago [-]
First of all, Rich Hickey is a hero to me. It would be hard to respect someone more that I don’t personally know.
I think he has a useful line of thought here but should think about this more. The definition of a tool is a continuum. On the left are your bare hands, on the right, the presence of your neural will creates a perfect final product instantly.
Neither the LLM’s probabilism nor its presence unusually to the right here changes the definition of the continuum. Automation and tool are not orthogonal. Would we argue that a compiler or the JVM isn’t performing automation on the programmer’s behalf? Yet we literally call it a member of a toolchain.
His point stands about the hazards, the definition argument less so.
Apologies Rich but I use LLMs to write Clojure. IMHO it maximizes token spend efficiency and economics by focusing on domain logic rather than boilerplate.
summermusic 1 days ago [-]
The main thing I'm taking from this article is that (editiorialized) "AI is a tool like a drive-through is a tool for cooking."
zelcon 17 hours ago [-]
Ok, and?
His comment seems to imply there was some inherent virtue in doing the thing rather than letting the machine automate it.
adelmotsjr 1 days ago [-]
I agree 100% to what Rich has to say here, especially because, as Rich always writes, he goes to the dictionary to find correct definitions to support his argument. But I think this is a lost battle, because there is always going to be the camp of people of "BuT lAnGuAgEs EvOlVe".
Yes, Janet, languages do evolve. But why do you think dictionaries exists? Solely for teaching purposes? No, it is because at the end of the day, sometimes there is a need for a correct definition to establish a foundation for some argument of some kind.
But I know people are going to ignore and simply say his arguments have no validity.
A shame, beause in this he actually wrote a very clear separation of software that is a tool and aoftware that is automation. And he didn't even say AI is bad or any other thing. He simply says: AI is automation, not a tool. Use accordingly
xhevahir 1 days ago [-]
> I agree 100% to what Rich has to say here, especially because, as Rich always writes, he goes to the dictionary to find correct definitions to support his argument.
I don't know why you think that's so effective a way of getting at the truth. Whether something is a tool or not is a matter of family resemblances and is not susceptible to proof or disproof. Id recommend that Hickey put down the dictionary and pick up Wittgenstein.
mpalmer 1 days ago [-]
Hickey is not leaning on the dictionary. The specific definitions he lays out for tool and automation make up his argument, not the words themselves. Saying "no, tool can be these other things" misses the point by a considerable distance.
xhevahir 24 hours ago [-]
So he's stipulating a definition of the word and then saying LLMs don't meet it. A more truthful title would be, "LLMs are not tools in my narrower, idiosyncratic sense of the word." Fine, but so what?
jhbadger 22 hours ago [-]
Dictionaries exist to show what some people currently believe a word means. But it is poor argumentation to argue that a word should only mean what the dictionary says. That's the "old man shaking his fist at the clouds" that the world is constantly changing.
isityettime 17 hours ago [-]
I think there's a better version of this, and it fits well with Hickey's predilection for etymology dictionaries in particular:
Words are embedded in (yes, evolving) traditions of use. They are situated in systems of other words and ideas. A precise definition (and often a history of the word and the turna its meaning has taken over time) serves to train you, just a little, in that entire tradition— in its motivations, its other ideas, and adjacent terms. It gives you clues about what distinguishes it connotatively and denotativelu from its nearest synonyms. It helps you maintain intelligibility with written works that use older senses of the word. For words in your native tongue, that also means that, in a sense, it helps keep your own cultural history open to you.
So if I had to push a norm, it wouldn't be "stick to old, established definitions" or "arguments are stronger when we use old definitions". It would be something like:
> It is better to keep in contact with what makes a word special, with the stories and arguments it was created to tell. And arguments about whether X is a Y are sometimes arguments about whether we are losing contact with a concept that Y once helped clarify and communicate. If that's happening, it's sometimes an argument worth being sensitive to and propagating, so honestly consider it.
jkahrs595 1 days ago [-]
> "BuT lAnGuAgEs EvOlVe"
They do and they don’t, depending on what (and who) you’re talking about and whether or not it’s beneficial to say language evolves or not in that particular argument :)
jhbadger 22 hours ago [-]
No, they always do. The confusion might be that you think evolution means "get better". But evolution of languages, just like biological beings simply means "changes over time".
jkahrs595 22 hours ago [-]
I don’t think evolution means “get better”.
I mean that people can both claim that “words have meaning” and “languages evolve” depending on which one fits their narrative.
NotGMan 13 hours ago [-]
Oh god these word games... no wander some people get nothing done.
charcircuit 1 days ago [-]
Software has been called tools for decades. He author is going against the grain of the regular usage of the word.
g-b-r 1 days ago [-]
LLMs are not normal software
And, every single software you know is a tool?
pona-a 15 hours ago [-]
This is the most sensible thing I read, and I'm honestly disappointing in how defensive the Hacker News response had been. It's a beautifully articulated argument for a very common-sense position, from a person I owe a lot of respect for.
It doesn't matter whether LLMs work or not, but what's the user's relationship to them, and right now, they've been accelerating away from any "toolness" you could ascribe them. Look at how the industry positions these "tools" to your own employer if you need any more evidence.
1 days ago [-]
hmokiguess 1 days ago [-]
"All told, a monad in X is just a monoid in the category of endofunctors of X, with product × replaced by composition of endofunctors and unit set by the identity endofunctor."
vemv 1 days ago [-]
It's a useful piece because it shows how considering AI a tool is nothing but lying to yourself.
If you shipped something understanding none of it, you did nothing. Claude did it. Writing 'code' is not just typing characters that compile, it's maintaining a system of ideas. If you don't know anything about those underlying ideas, what did you even do? How are you not trivially replaceable?
You can argue all day about these topics, but ultimately, the paychecks, the customers, the prestige, etc will be proportional to the non-AI value that you can offer to the world.
rcxdude 24 hours ago [-]
Shipping code is more than just writing the code. Just writing code is far from the be all and end all of making something, and there are already many books written on the subject already. Now, just throwing the result of a oneshot prompt over the wall isn't contributing much but we've long recognized that a useful piece of software is much more than just the effort of writing out the code.
jwitthuhn 22 hours ago [-]
Surely it is possible to use AI and also comprehend its output.
vemv 18 hours ago [-]
Yes, it's possible, but far from popular at the moment, with many developers admitting not to have written a single line of code in months, and delegating the bulk of code review to tools.
The root cause is people fully buying into the idea that this tech is 'intelligent' as opposed to simply giving us a baseline, approximately correct thing to keep working on.
21 hours ago [-]
mode_citizen 23 hours ago [-]
[dead]
esafak 1 days ago [-]
Agentic AIs (what he's talking about) are agents, obviously; you set the goal, they decide the means. Traditional programs are automation. Totally different, qualitatively.
svieira 1 days ago [-]
Is a query planner an agent? (It might be, I'm not sure semantically the "agent" vs. "automation" distinction will aid as much in the discussion as "tool" vs. "automation", but I'm open to being completely off base here).
1 days ago [-]
tangotaylor 1 days ago [-]
Why are you a tool?
Who says I'm a tool?
You are a tool.
Uptrenda 22 hours ago [-]
wish we could go like a week with no posts about ai. we all deserve a break to learn something new...
irishcoffee 1 days ago [-]
So gdb isn’t a tool then. Huh, that seems odd.
AI is only a tool, it isn’t anything more than that. I use AI because work pays for an expensive subscription, and I’ve found it helpful… as a tool.
athorax 1 days ago [-]
I generally don't agree with the framing in the gist, but I'm not sure where you are getting that the author wouldn't consider gdb to be a tool
vconnor 14 hours ago [-]
It’s always scary to click on a new AI opinion piece from an engineer you admire, but this is very well-argued and well-thought, and possibly will shut down all the ‘it’s just a tool!’ arguments that somehow reminds me of the braindead discourse on gun control in the US, where any controversial position is brushed away with that exact cliché.
Good to see Rich Hickey still has his head well screwed on his shoulders.
ramoz 22 hours ago [-]
AI is a tool. And I don't see the point of this argument other than a bit of a `boomer rant` , as someone who sort of fanboyed rich, like many on HN, earlier in my career.
svieira 1 days ago [-]
Via LinkedIn (ai-tool-rich-hickey-kjl8e) but I suspect that we're rate limiting slop from there. Mods, feel free to swap out the original link if I was just-wrong about that.
dang 1 days ago [-]
I've reset the link in keeping with HN's preference for original sources, but given that linkedin.com is a banned domain on HN, what you did was fine. I've put the gist link in the toptext as well.
tasuki 1 days ago [-]
I for one am happier to read a gist than linkedin.
iLemming 1 days ago [-]
Both belong to Microsoft anyway. They should know how to optimally get their shit together - it's not our problem. People be spreading shit all over - that's the general idea of the Internet.
tasuki 13 hours ago [-]
Oh it's not about who they belong to. One shows the things I want to read, while the other one shows things I do not want to read.
g-b-r 1 days ago [-]
Can the people who flagged this explain why?
g-b-r 1 days ago [-]
Thanks dang ;)
CamperBob2 1 days ago [-]
[flagged]
dang 1 days ago [-]
You broke quite a few of HN's guidelines with this. Please don't!
Sorry, Dan. I don't come here to read stereotypical LinkedIn essays. To the extent AI emits slop, LinkedIn is where it learned how. Sometimes a shallow dismissal is just what the situation calls for.
HN's value lies largely in the audience its posts attract. Think about what you want the site to be. It isn't this. Or at least, it wasn't.
dang 21 hours ago [-]
Even if you don't owe LinkedIn essayists better, you owe this community better if you're posting here. Please stick to the rules.
bbg2401 1 days ago [-]
I can’t think of someone more worthy of the collective attention of HN than Rich Hickey.
CamperBob2 21 hours ago [-]
[flagged]
dang 21 hours ago [-]
People have different views. If you feel someone's views are wrong, you have several options, including (1) responding respectfully with more better information, or (2) not posting. Snark and personal attack, however, are not ok, regardless of how wrong someone is or you feel they are.
Also note this guideline: "If you flag, please don't also comment that you did."
In addition (or rather, in particular, because it's covered by "don't be snarky"), please don't do the internet thing of using quotation marks to make it look like you're quoting someone when you aren't.
Life is too short to let who you've heard of define your values, and your statement says more about you than them...
segmondy 1 days ago [-]
[flagged]
dnemmers 1 days ago [-]
From your profile you are "I'm all in on GenAI", could this be clouding what advice you find useful?
segmondy 22 hours ago [-]
possibly, i drank the kool aid 3 years ago, when the context window was 4k, i never put the cup down.
bigstrat2003 1 days ago [-]
> Aww shucks, it sucks to see folks you admire get old and age out with tech.
The vast majority of the time, old people whom the young think are "out of touch" are actually speaking from hard-won experience. Ignore them at your peril, because they are usually correct and the young are usually wrong.
rcxdude 24 hours ago [-]
Every generation thinks they figured things out and the youngsters should listen to them this time. It never happens and it's probably a good thing. I don't think any age range has a monopoly on being right or wrong, just different biases.
bigstrat2003 15 hours ago [-]
I don't think being old automatically makes you right or anything. Nor does being young automatically mean you are wrong. But in my own life, I have noticed that the older generation is right more often than they are wrong, and the younger generation is wrong more often than they are right. Which makes sense, one should get more skilled over time after all. But it means that if you are young, it is a good idea to bet on your elders having the right idea about stuff until proven otherwise.
jazzyb 1 days ago [-]
Old age and treachery beat youth and skill every time:
you should see what Linus Torvalds is saying about LLMs
bigstrat2003 15 hours ago [-]
I am well aware. It is also completely irrelevant to my point. The point is that you should never assume a graybeard is out of touch, even if you disagree with him. Most of the time, he knows something you don't by virtue of having had a lot more experience. Not every time! But often enough to make it worth your while to bet on it.
segmondy 8 hours ago [-]
I'm a greybeard too and by that post they made, they are completely out of touch.
dgellow 1 days ago [-]
On the other hand I’m glad to be on the same side as people I admire like Gary Marcus, Rich Hickey, and Cal Newport
By his definition, we could argue that a catapult or bow and arrow are not tools
Uh no, not based on his definition. Catapult and bows are simple. You can evaluate the result of using these tool instantly, and the corresponding adjustment is something you have to make, because you are wielding the tool. This is what he means by "wielding".
Compare and contrast with complaining to an LLM that "the margins look wrong".
segmondy 22 hours ago [-]
So it just needs to have one of those properties and not all? LLM is a tool, IMO, it's pretty simple to use it too.
27183 1 days ago [-]
[flagged]
12987-1277 1 days ago [-]
[flagged]
pizzafeelsright 1 days ago [-]
Thankfully reputation is something earned.
dang 1 days ago [-]
Sorry to disappoint your dissidence, but the article was flagged by users and we've turned off the flags now, which means it's back on the frontpage, not being repressed!
Nition 21 hours ago [-]
Hey dang, while we're talking flags, I made a comment yesterday where two of the replies are now [flagged] and [dead] and yet they both seem innocuous.
I thought I could 'vouch' them but it's not an option - is vouching time limited?
I'm also wondering what's going on with that user. Their comments all seem fine to me but I notice that a huge amount of their past comments - even beyond my comment thread - are [dead]. I feel a bit sorry for them.
causal 7 hours ago [-]
Anecdotal, but I feel like I've seen an uptick in flagging attacks or aggressive reactions to benign comments. It's odd.
bigstrat2003 15 hours ago [-]
I'm pretty sure there is a limited vouch window. I can vouch the first but not the second, I would imagine you should be able to as well. As far as the poster goes, my best guess is the account is somehow flagged as a bit? I've seen a few accounts where every comment they make shows up as flagged-dead, but I've never been quite sure why.
anenefan 10 hours ago [-]
The second comment was already vouched when you had a look. ;) It wasn't out of place as a comment, but the forum software does automatically mark some comments as dead - going back a month in the user's comments, many do come across as possible LLM content but some people do write that way.
burnte 19 hours ago [-]
Automations are machines, and machines are tools. AI is a tool.
jaronilan 1 days ago [-]
I’ve used coding agaents and more than once in the chat I found myself saying: “oh no, why’d you do that? you are such a tool!” so that’s it!
Rendered at 22:50:36 GMT+0000 (Coordinated Universal Time) with Vercel.
> Commenter: Well, this was a twitter-like controversial clickbait but I will say it anyway. LLM is a tool. To be more specific, it's a lossy knowledge base with a human language for querying and built-in summarization.
> Rich Hickey: Agreed. I'm talking about its embodiment in conversational systems purporting to be 'tools' for doing homework, research, coding, writing etc.
With that framing in mind, the article makes a lot of sense. AI agents are not tools for coding, they automate coding, which means you lose control, learning, predictability, etc.
In and of itself, an AI agent is a tool, can be used for things, like say making software, but if thinking of it as a tool for coding, that appears wrong, as using one changes the modality of the task, you are not coding using a tool, the coding is no longer done by you and has been automated.
As he also says, reading an AI summary of a paper is a different modality from using it to read the entirety of a paper, therefore it is not a tool for reading the way a Kindle, glasses, reader-mode are. And similar to with coding, you've lost things from automating the reading, that reading just a summary does not provide.
A Hammer is a tool ... a carpentry sub-contractor is not.
If human - the sub-contractor isn't a tool, if robot - it is. Similar to how a human digging trenches isn't a tool but a tractor-trencher is, even if autonomous.
It’s not about whether the abstraction is human or not, it’s the level of abstraction you can operate at. Using hand tools vs power tools as a bad analogy: you can use either and still become a good carpenter. If you have someone build your cabinets for you that’s a totally different level of abstraction and you don’t actually have any carpentry skills or knowledge.
I'm not making a mistake, you're confusing abstract "abstractions" with concrete humans. Some humans aren't much into abstractions but that doesn't make them less human. LLMs manipulate human-created abstractions, similar to other software, but that doesn't make them human at all.
> Using hand tools vs power tools as a bad analogy
You're confused about my analogy too, here's what I said: "a human digging trenches isn't a tool but a tractor-trencher is, even if autonomous". Robotic, autonomous tractor-trenchers do manipulate abstractions and dig trenches but that doesn't make them human.
You sound like you're anthropomorphizing it. A hammer is a tool, yes, but a complex conveyor belt of "smart" hammers is still a tool. It's not a "sub-contractor" - you can't blame the belt when it starts hammering things the wrong way; you can't sue it; you can't reason with it; you can't punish it. You're still responsible for the outcome, thus it is a tool, because you're the one wielding it, using and operating it. But then you have to draw the line between a "tool" and "automation", that's what Rich is doing here. But that line is also, soooo debatable. My own usage of my harness changes from task to task, multiple times a day. Sometimes it's pure automation, sometimes it is absolutely a tool.
I actually find this a very interesting line of discussion, because in many ways it mirrors the transition from hand tools to power tools.
Ex - you're often trading the finesse and control of a hand tool for the speed of a power tool.
The way you process and deal with problems shifts, because certain things become much harder, and certain things become much easier.
Using AI to code is more like using a laser cutter for carpentry. You get the large pieces out which you then glue together, but if you needed to make those same pieces using either power tools OR hand tools you'd have a much harder time learning how to do it.
You usually use entirely different techniques for hand vs power tool.
The way you'd do the work, the methods of joinery you'd choose, the style and choice of cuts, even the preferred size of boards - all completely different.
Learning hand tools is an entirely separate skill set. Down to the planning stage.
It's not merely doing power tools more slowly. And trying to use power tools like they're merely "faster" hand tools also doesn't work. You waste a ton of time because it's just a different operation.
“coding” is (now quite obviously) not the only way to create code. this was always true. you could create code by stitching snippets together from stackoverflow, or somewhere else, even your own existing works. or you could write it from scratch.
the whole “not a tool” argument just comes off as not wanting to view using it as the same amount of effort as using something else.
> What you are doing while using automation, instead of learning real-world truths, is attempting to divine the details du jour of some automaton.
That assertion all but admits it.
For example, a human isn't a "tool", but one serves a similar role as a tool if their job/task is well defined enough. If you're a conductor, you can view the various members of your orchestra as "tools" to produce the ideal musical output. Of course they have autonomy, they could choose to not play at all, jump into the audience and destroy their instruments, but in all likelihood they won't.
LLM's could be tools in the sense that you have a well defined task, such as "identify all facts relevant to this case from these 1000 legal documents), and 9 times out of 10 it gives you essentially what you want. That same LLM could choose to write a poem, or hack into a state government website if it wanted, but its "wants" are unpredictable and hard to specify (same as a human's) but you can still expect it to do what it should do the vast majority of the time.
That being said, the smarter an LLM gets, the more its wants are disconnected from its tasks, the "self-awareness" factor (which isn't to say LLM's are conscious, but they can portray all the verifiable elements of self-awareness, metacognition, etc), the more you have to grapple with the depth of their thinking between the input and output.
Is it sane we are speeding towards this? Who knows, maybe AI can be aligned better than humans, but if AI can't be aligned as well as humans, we can look at human history to see what happens when you can't simply order a person around like a tool and expect a certain output.
> Rich Hickey: Toolness is a spectrum. The more using a thing is like ordering a sandwich, the less it is a tool. And yes, cars are decreasingly tools.
What a surreal thing to say. Consider this website:
https://order.spoton.com/so-iggys-place-15341/san-francisco-...
Or this one:
https://order.online/business/155843/store/297301?pickup=tru...
Or this one:
https://order.togos.com/menu/san-jose-almaden-expwy
Are they tools?
What that means is that these are tools for ordering a sandwich, but not for making one. The making of the sandwich was automated, and you're not making a sandwich using a tool to do so, you're ordering one and someone else is making the sandwich for you.
Back to coding, if you use AI agents to generate your code, it means you're not coding anymore, you've automated that, you're ordering code and maybe sending it back to ask for a better one if you didn't like it. Meaning you've lost the fine grained control, the tactile feedback, the learning opportunity, the experience, etc. You have gained the benefit of automation instead, unlike those of a good tool, which make you better at doing the work, automation likely makes you worse at it.
I don't think he's implying automation is bad, just that you should understand that the dynamic of automating something is very different from that of doing the thing using a tool.
Even more importantly, you maybe become its tool.
I disagree, humans are the operators, tools are tools. Operators use tools. A conductor is an operator that uses a baton tool to direct other operators to produce the proper sound with their musical instrument tools.
I think calling people tools is dehumanizing if anything. The only way I know people can be a tool, is through an already existing insult.
In that case, you don't know much. It's not difficult to find examples.
For instance:
Arab-Israeli travel blogger Nas Daily denies report that he is a tool of Israeli government propaganda
( https://www.jta.org/quick-reads/arab-israeli-travel-blogger-... )
The sense in the quote I pulled is Merriam-Webster's sense n.(1)(3)(a). righthand claimed that that sense didn't exist, and he's wrong about that.
https://www.merriam-webster.com/dictionary/tool
† There is no room to wonder about this, because he's been nice enough to provide a gloss himself:
> That guy who makes us shake our head in disbelief but at the same time makes us feel better about ourselves since we are not him.
It has been for hundreds of years, incidentally. One of the example sentences in etymonline addresses just this:
> > In figurative use instrument is generally employed in a good sense, but tool in a dishonorable and contemptuous sense ; we speak of a man as the instrument of Providence, or as a mere tool of cunning men. [Century Dictionary, 1891]
https://www.etymonline.com/word/tool
Note also that my claim was about connotation rather than denotation, which is something you can sometimes find a note about in a dictionary but is not broadly speaking the central concern of dictionaries.
> A person used as an instrument by another person; -- a word of reproach; as, men of intrigue have their tools, by whose agency they accomplish their purposes.
I see your Websters and raise you Urban Dictionary:
> That guy who makes us shake our head in disbelief but at the same time makes us feel better about ourselves since we are not him.
Please consider social and modern day usage as well when discussing English words.
Also 1913? Wow.
What exactly do you think
> a word of reproach
means?
Webster's dictionary currently glosses this sense of tool (n.(1)(3)(b)) as "a foolish or unlikable person : JERK".
( https://www.merriam-webster.com/dictionary/tool )
"I think that we learned through the thousands of pages that I've released to the public that Jack Smith was a tool of the Biden administration to put Trump in prison." - Chuck Grassley
Grassley isn't calling out Jack Smith as per urban dictionary usage, here, right? If we were breaking down what was meant here one could, if they were using slightly more interesting language than Grassley, say that Joe Biden is a man of intrigue and that Jack Smith was an agent being used to accomplish his political purposes. Unsurprisingly, Grassley is on the other side of the political fence and was using the word tool here reproachfully.
Fundamentally the definition I linked is the definition under which people are suggesting that other people can simultaneously retain agency, be considered a tool of another, and not be insulted by that circumstance.
But yes: Webster's 1913. Modern dictionaries elide nuance in communication in favour of terse & technical language, and while there are additional uses of the word in modern times, that doesn't erase the history of the word - especially in the usages that still exist with an uninterrupted lineage to the modern day.
Today's Merriam-Webster has an inelegant matching definition for tool, "one who is used or manipulated by another", and while that certainly matches Grassley's usage, and to say "Jack Smith was used by Joe Biden to try to imprison Trump" is certainly correct, there is something missing from this definition that the 1913 encapsulates.
I believe my own use of AI is closer to Hickey's definition of a tool. I'm very involved (for now). But, I'm also certain some use it as automation, flying on vibes, providing vague 30,000 foot prompts and deploying the result to production without understanding the code. Hence, gradient.
That's my interpretation of parent.
https://edoras.sdsu.edu/~vinge/misc/singularity.html
The assumption I need to challenge is that "an ultraintelligent machine could design even better machines".
That assumes that better machines are even possible, that there's no point of bottleneck that cannot be broken, or that they are so much more intelligent than us that they too won't hit a limit pretty quickly to what they can figure out.
It also says it surpasses any man however clever, but doesn't say it can surpass the totality of man interacting and building on each other's. If you take the most clever of all man, they are not so clever as to surpass humanity's total ingenuity and invention. And it's not a given that this super intelligent machine, more clever than any one man, is able to replicate itself and work in tandem with copies of itself in a way that is as effective as how humans somehow form a dynamic system between themselves.
Lastly, and I know the premise assumes it's better at everything, including at building intelligent machines, but I think an ultra-intelligent machine could exist that struggles at building better machines. Depending on your faith, we might be the construction of lesser intelligent organisms eventually discovering and evolving into us, and yet we do not yet understand how to make a more intelligent human.
Would you bet your life, and everyone else's, to test that assumption?
Not to mention: you can scale up performance in simple ways: more data, more compute, and more weights. Those are the obvious ones, ignoring architectural changes.
Haha, I guess it depends what I'd win.
But I wasn't challenging that to say it's a good idea to build this. Simply an irk with the logical reasoning that was used.
Virtually nothing in woodworking is deterministic because wood is not deterministic. Every piece of wood is different.
Now that I've nitpicked and feel better ;) ...
I'm not quite sure why this matters. LLMs are definitely not you writing code using a tool. An IDE is more like that. They write the code. Is that even a debate? That doesn't mean the human can't be in that loop, the human can review the code, change the code, change the instructions. I can ask an LLM to mill me a cube on a CNC. Or a more complex object. It's not the same as me doing it on a mill. But I can still control the end result to the extent that I care to control it. I'm not going to learn how to mill a cube by having an LLM make me a cube. I'm not going to become a better machinist by asking an LLM to make me a cube. I can also send my G-code to a vendor and have them make me a cube. Or hire a person and give him a rough idea of what I want and have them make it.
How you use something defines whether it is a tool or not. And it's the same in the real world: I don't know how many objects I've seen turned into hammers, even objects that you really shouldn't be doing that with. Tool-like properties are put in by the user, not necessarily by the object.
This makes LLMs still tools, even if they're very good tools, and often can zero-shot solutions to simple problems. But just because you often take the `accept` branch the first time around, doesn't mean you're not in the loop.
> This makes LLMs still tools, even if they're very good tools, and often can zero-shot solutions to simple problems. But just because you often take the `accept` branch the first time around, doesn't mean you're not in the loop.
That, 100%. As Eliezer used to say, there are no little XML tags on atoms saying "these are molecules of a hammer", "a hammer's purpose is to drive nails". Purpose rests with us. We design things to afford some specific purpose, not determine it. I too have used plenty of things as hammers that were very much not intended for that purpose, and I used hammers for things they were not designed to do too.
It is very difficult to disagree with anyone of the caliber such as this man, but I wanted to steer the conversation away from the generative aspect of LLMs and focus on the consumption side, because frankly, these "tools", and I think even though I might agree with Rich that LLMs by themselves are not tools, the harness I built to work with them definitely is one. I think there's an immense value there, way before you even start talking about code-generation, or code at all. I think I have failed to explain my points, because a talk we both wanted to see was about to start.
On the LLM front, it's been a fascinating journey for me. I started with the private beta of Github Copilot. I was an instant convert for the "better code completion" aspect. But my first attempts with coding agents were rough enough that I stayed away.
I'm now retired, but I want to understand how things are evolving. So two months ago I volunteered to automate a cartography data pipeline for an educator. I have a background in all aspects of the project. It's not simple - there are several data sources from governmental and corporate sources that need to be integrated together, and most of them are updated every few minutes. New maps need to be available within ~5 minutes of a data source updating. All this with many GB of data and running on a low powered machine, taking less than 2GB of RAM.
I bought some DeepSeek tokens and went to work. A few weeks later a mentee went to work at OpenAI and gave me a "friends and family" Pro level plan. I'm converted, and I absolutely see it as a tool in the sense Rich describes. I even question whether any "software engineers" using it, but not as a tool, are doing it right (I'd love to be educated if I'm wrong!).
I'm still learning, but that's part of the disagreement I have with Rich's take. He mentioned feedback. I often watch the "reasoning" process the agent goes through to see the approach it's taking. It's not at all unusual for me to steer it when I see it going in a direction I don't like. I've also found an incredibly powerful pattern where I can explore the approach I want to take for a part of the system with the agent. I have it create prototypes with different strategies (streaming vs. in-memory, different data structures, relying on various libraries, etc.) and then I have it characterize trade-offs between the prototypes (performance, memory usage, conceptual simplicity, code simplicity, etc.). This allows me to make informed decisions about which approaches to pursue further, and my decades of experience in software engineering constantly go to good use here.
It's also given me the time to go far deeper into things I never could have justified. Of course the project has 100% code coverage and branch coverage. It also has hundreds of property-based tests. And thousands of Lean proofs of the behavior of the algorithms, along with conformance tests that the code and the Lean adaptation of that code behave the same way. And lots of TLA+ verification of the overall flow of the system. None of that proves there are no bugs or that this is the right system, that's all on me. A month in I would have said I was fairly happy with the quality. Now I'm proud of the quality.
As I've gone through this process, I've dug into the code for patterns I don't like, and had the agent clean them up, all the while distilling guidance. I've had a lot of luck with that guidance being followed once I figured out the right place to put it and to reference it. I've spent entire days doing nothing but giving prompts to do specific refactoring. The beauty is that large refactorings don't involve the same boredom interrupted by anxiety they used to for me.
English prose (documentation, comments in the code, etc.) is what I've been the least happy with. An hour ago I had the idea to give it ~1,000 lines of my HN comments and ask it to characterize the style and tone of the technical parts. Then I told it to turn that into guidance. Then I told it to rephrase that same guidance in a way that follows the guidance. I would never mistake the result as my own, but it's much, much better than what it was producing before. While I've been writing this comment, it's been applying it to all prose in the project.
This very much feels like a tool that is letting me shape the project (and shape the tool itself). But it's letting me do it at a higher level. It handles the code so I can fully focus on the architecture, algorithms, and quality. This alone makes me think that the best simple guidance for quality results is dozens of prompts per day, not a handful (when a day is 100% focused on development). When you can't think of dozens of prompts, think and explore more (the agent can help with that!). That does require you know what quality is and how that can be achieved.
To reconcile this with what Rich is saying. I suppose he's right that it's not a tool for writing code. But it very much feels like a tool I'm wielding to do software engineering at a far more powerful level than I could have done without it. The resulting project has "me" everywhere in it. The people who know my work the best would look at this project and know that it's mine. Perhaps not the code, but the algorithms, the data flow, the approach to documentation and testing, etc.
For anyone curious, the project is getting close to 200K lines. About 25% of that is the code that is the data pipeline. About 25% is documentation. About 50% is testing and verification. One reason this is possible is that I'm working alone and have full control over the process (what I spend before it became free, how it's built, what my process is, and even the product definition within the constraints of what's valuable to the intended user). All told, it has been about 6 weeks of full time work worth of my time.
The next experiment... a web front-end to this system for the general public. This is not at all in my wheelhouse, so it should be interesting to see how much my blind spots cost me.
That is the side of LLMs that often gets ignored, with the main focus being on the composition, which still raises some questions and skepticism, and for good reasons too. But I can absolutely vouch for LLMs being enormously useful on the other side.
I think that's exactly what he means.
> But it very much feels like a tool I'm wielding to do software engineering at a far more powerful level than I could have done without it.
Ya, I'm not sure if he heeds a warning that AI is slowly moving to automate all that as well. Only 2 years ago it couldn't automate writing all of the code for example, it's possible in 2 years it has automated most of that higher level as well, and therefore software making becomes same as ordering a sandwich, just tell it the app you want and you get it. Or if he's just trying to make the reader realize they've given up coding and are losing that skill (or if new to coding are not learning it by using AI), and for better or worse is on the reader to decide.
Did you seriously write this with a straight face?
Though, it makes me think of the quote "Science advances one funeral at a time" - Max Planck
When you place someone on a pedestal, you make it hard to evaluate them critically. The remaining Clojure community has a problem with it.
Oh, grow the F up. I can't believe I have to explain the basic tenets of human communication here - stuff that children learn before they turn eight. Once again, I wasn't chatting with the guy at a random bus stop, at an airport, or on my personal podcast - we were at a Clojure conference, surrounded by people who flew all the way to Charlotte from places like Sydney and São Paulo. Of course, basic human decency dictates letting him talk instead of constantly interrupting him and vigorously arguing. Not only out of respect for the person, but for other people too. There's a time and a place - you need to know when to "evaluate critically" and when to STFU. It has nothing to do with the so-called "worshiping" you're implying.
The clojure community (what remains of it, as you say) is extremely guilty of this. They love repeating everything he says like it's the word of god. Try to explain the benefits of static typing to them and they just drop into an infinite loop of quoting Hickey.
I don't get it, are you unaware of the basic norms of actual human communication or something? Please explain to me how you envision arguing with someone, anyone, in a place and time like that. Or are you suggesting I should have been heckling him about static typing right there, on the spot, in front of other people? Otherwise, I suppose I'm worshiping and I should admit I'm in a cult?
Hickey's article is terrible. He's arguing semantics and then patting himself on the back. Anyone who can't see that is willfully blind.
This also isn't the first time Hickey engenders this kind of blind hero worship. He has been spouting nonsense about Haskell for years, for example. Clojurists don't understand enough of it to understand how silly the things are that he's saying, but they sure as hell will repeat it everywhere.
Au contraire. Many Lispers are well-versed in Haskell and different kinds of type systems. Coalton, core.typed, Typed Racket, Malli - these don't exist just for the sake of it. And many constantly disagree with Rich, with Halloway and other clojure.core members about all sorts of things. The "Maybe Not" talk got a lot of pushback, and most of it came from clojurists. The majority of them are pragmatists - they use whatever makes sense. In many cases, the specific dynamism of Lisp fits much better than the rigidity of Haskell-like type systems. They use static types where the invariants are stable and dynamic data where the shape is open or changes often. Many work that way, often by validating with Malli at the edges and keeping the core loose. It appears to me that you're blindly "worshiping" whatever or whomever. I gave you the exact example where I was [respectfully] disagreeing with Rich, and you decided to turn it inside-out, just to make it fit your own, totally imagined narrative - now who's blind here?
I’m someone that is, and has been, for most of my career, someone from the in-between lands. I don’t use paper maps from the gas station, but I have not coded much.
I basically grew up with DOS 1.0 and on. Often made a living being able to sit at a Windows workstation and think and persist so I could figure out in four hours what other people could not, in that buggy strange world of microcomputers many of us grew up in.
Those situations, now, often take me five minutes to get past, instead of four hours. It has been a game changer for me.
The creativity and skill of the craftsman is gone. Craftsman/woman create new and unique or different things because they understand the problems or goals and create.
THe people using AI mostly dont know the basics of software and tahts part of the problem why we see really dumb mistakes, like little or no security.
Agreed most code from the past is to be kind very ordinary and is filled with many code smells, but they do get some or many things right.
> AI today produces better slop than most devs ever did. And LLMs are getting better - humans were never on an upward general trajectory.
You fail to make the distinction between the engineers of the past and the audience who vibe codes of today. The later dont know the mosts of best or good practices.
Thats a big difference, those that know NOTHING about software engineering those that know something.
AI only generates what it is told, and guess what garbage in garbage out, because non software engineers dont know or think about the basics.
A ghost bicycle?
I figure it still requires someone who can pedal and knows where they want to go before you get anywhere useful, and perhaps that slightly aligns with Hickey's point. But on the whole I feel like Hickey is arguing about the meaning of words, which is shrug-worthy.
But does it matter outside of the shop? It's the thing the machinist uses to make stuff, so, for all intent and purposes, a tool.
The thing that makes a lathe a tool is that it behaves like a tool. Not an appliance. Its utility scales with the skill of its operator. Just like a hammer, or a saw, or a wrench. A skilled machinist uses his tools to achieve precise results. An amateur uses the same tools to achieve poor results.
AI appliances puke out randomly generated slop. You could argue there's some kind of skill involved in attempting to read the tea leaves in this slop, but in reality it's just not so. You don't get any depth of experience with these "tools", you just get an accept/reject decision point. Repeat enough and you might come up with something useful. Or you might not. Like accepting random outputs from some kind of vending machine.
This is very, very different from what you get from a skilled craftsman. "A good workman does not blame his tools" is not applicable around LLMs. They're always saying "this model is better than that one" and the like. A good machinist can get good results out of a worn out lathe. Why can't the AI pilots get good results reliably?
but saying stuff like "AI appliances puke out randomly generated slop" just seems silly. it's not randomly generated, and it's not always slop.
There are certainly many ways of using coding agents, but the way he describes it is not my approach. There's a huge amount of direction and feedback.
I don't know if I'd call it a tool so much as a modality of building software. Within the modality, you have everything from truly unsupervised YOLO coding to something far more structured. To an extent, it's similar to how you go about setting up standard operating procedures to get teams of humans to do work at scale.
- because car companies are definitely misaligned with their customers
People try to wrangle the indeterministic outputs through deterministic layers to convert the indeterminism to something determined
He's trying to unpack various qualities: learning potential, reliability, predictability, tactile feedback, simple construction, etc. Then goes to define tools as those things that have these set of qualities, and automation as those that have these other set of qualities: it does something for you, takes the practice, learning and details away from you, harder to control and can get derailed, etc.
In some of his comment replies, he even says there's a spectrum from tool to automation, because he's focusing on those qualities more so than on the semantics.
One wields a tool, but you cannot wield a set of dice or a slot machine, a chatbot, or a call center worker. That's not tool use, that's outsourcing or delegation of work. If I play Claude, or I pay a salary worker somewhere else, I have ceased to work, my skills are going to atrophy, my knowledge and my control is, the opposite of what genuine tool mastery implies.
If something's a tool, the more you use it, the more you improve not just narrowly mind you, but in all your faculties. Using an LLM has the exact opposite effect. At best you improve at only one thing, typing text into the LLM, while you atrophy everything else.
The logical terminus of the habitual LLM user, and that is really why 'industry leaders' love them so much, is the worker becoming a Tayloresque factory ape doing nothing but pushing the same button over and over again.
You can multiply /dev/random for how many (non-zero) constants you like, but the result will stay just as random
Reminds me of Baudelaire:
"the photographic industry was the refuge of every would-be painter, every painter too ill-endowed or too lazy to complete his studies"
If all you wanted was a reasonable facsimile of a family member, then photography made attaining that object dramatically cheaper. Prior to photography, almost all of images of people are of fabulously wealthy and powerful people because they were the only ones who could afford a skilled painter making their portrait. After photography, most people could afford a daguerreotype.
The impact on fine art is much more complex. I think probably all you can say definitively is that the timeline where photography exists produces very different fine art paintings because the incentive structure and the implications are different in a world with photos. But better or worse? Impossible to say.
Yet vibe coders and people that delegate the creation of software through English prose to an LLM are still called software engineers or programmers. That is my major problem with the whole thing.
I think comes from a natural feeling of ownership over your profession. There's nothing wrong with that feeling that the title of engineer must be earned but in reality titles means nothing, what you do with it is whats important.
Do DJ's make music? Why don't they play all the instruments themselves and become "experts"?
Judge the product, not how difficult or easy it was to create it.
Anyway this is getting a little too involved for a HN thread and it's unlikely I'll move your position but I appreciate the dialog.
> A tool is something you wield.
> Control, sensory feedback, intention, intimacy, continuous direction, expertise etc are all missing from LLM use. LLMs are not wielded. LLMs are automation.
Cameras do indeed have sensory feedback, intention, intimacy, contentious direction, expertise, etc. So TFA would indeed describe a camera as a tool, not as automation.
Note also that TFA is not romanticizing effort, rather it is putting value to expertise:
> The continuous application of technique and energy, and sensory feedback, are essential to the buildup of expertise.
Yes there exists a type of expertise where the value is not realized by whichever arbitrary metric you use to assign value. However having expertise is more likely to result in value added compared to not having said expertise.
For example, I am learning the guitar, I am not an expert, but the more I practice the more I approach expertise, then I can play more songs, I can play them better, resulting in me and those around me having more fun = value added.
"You have traded working with the world to working for a capricious robot."
This is what i'm a critic of not having more fun. This reads to me that some people are charlatans and i'm an expert. That type of sentiment is prevalent in all sorts of creative persuits. Aside from it being factually wrong, it's just different not worse or better.
What exactly are you a critic of? Why is this statement factually wrong (and why is the fact that it is wrong just an aside)? Why do you say trading your expertise for automation is neither better nor worse. For me—if I care about the craft—it is obviously worse.
I could have simply turned on the radio if I wanted to hear the guitar played, instead I spend an hour or more a day to acquire the necessary skills to satisfy. The latter is obviously better.
Thats great you care about the craft. There are many kinds of craft, but just because you do your craft in a certain way doesn't make others way invalid. The latter is not obviously better, better depends on your definition of value. The definition i'm reading from the article is whether it provides value to world or to you personally and I'm just saying who cares how that is accomplished. Defining how a craft "should be done" is the trap i'm pointing out. If the making is the important part to you aka the process and the journey, thats awesome and I agree that many wonderful things are created in the way you practice guitar with your hand eye coordination, auditory processing, etc... however I find it counterproductive to label ways of creating more or less valuable, they are just different. If I was to program a machine to play the guitar for me it might be different but not inherently better or worse just because you practice every day with your hands and I program a robot to do it. Maybe I have cerebral palsy and I can't play guitar the way you do, does that make my art lesser? It just makes my constraints different and thats at the core of what i'm getting at.
And they are a hell of a useful "assistant"
I mean, I guess there's a lot of people that don't know the difference in what he's saying.
`rm` is a tool. You don't tell `rm` to delete things and then get annoyed when it deletes your production database because it inferred incorrectly.
It does what you tell it. Like a hammer hits what you hit with it.
`claude` can be considered a version of `rm` that can do what `rm` does (and other things - including things you don't want). Nearly everyone using it is aware of that.
An employee is not a `tool`.
`claude` is closer to an employee. You tell it to do things. It costs you money. Sometimes you get what you wanted, sometimes you get something far better, sometimes you get literally nothing, other times you get disaster (more often with `claude` than with a good employee).
That's why they call it an `agent`, not a `tool`.
Employers don't throw up their hands and say, no thanks, I'll do everything myself with `tool`s. They say, I'll try to learn how to better manage employees which are useful to further my goals (along with tools - because both are useful).
Not every person runs a business. Maybe in the future most people won't be using AI at all. Some people definitely will.
I'm not sure why we needed to go on this pedantic ride.
When people say "AI is just a tool", I think they mostly know what they mean and we all do, too.
It can't, though.
Only when connected to a harness can Claude remove files from disk.
And, at that point, it's using existing libraries or tools to do it - `rm` if it uses bash, the `remove` stdio function if it uses C or a C-implemented programming language to write a custom tool for the job, or one of many other options.
It remains true, though, that Claude cannot itself remove files - just be your proxy to guess what files it's probable you were referring to, that you likely wanted to remove them, and then use another tool to actually do so.
As you note, it will be wrong about that sometimes, and it will likely be unpleasant if you haven't prepared for the eventuality.
> When people say "AI is just a tool", I think they mostly know what they mean and we all do, too.
When I hear that phrase, I think the speaker is either too naive to live, or is intentionally trying to sidestep anyone bringing up the manifold disaster-level issues with genAI systems.
And I think that the "tool" vs. "automation" delineation is one of the clearest and most succinct takes on _how to talk about this problem_ that I have seen in the past few years.
That said, I think this particular semantic distinction is something we need to think about more from a political perspective than a semantic precision perspective. A tool is something that humans (or animals, or other entities) control for their own purposes. It's important that AI remain a tool of humanity to serve human purposes, following human accountabilities. Because the alternative narrative is that AI is a super-intelligence with it's own agency which we can not control, and while it may make a small handful of individuals incredibly wealthy beyond their wildest dreams, they can't be held accountable because AI has its own agency.
The word "tool" is obviously very old and carries tons of connotation shaped by the world of the past. AI clearly challenges a ton of assumptions about what "tool" and many other words mean. Therefore, while I understand Hickey's point, I think for the sake of our civilization and the moral hazard we are facing, it's better that we consider AI a tool versus whatever narrative the AI cultists are cooking up.
"AI" as it was known until ~2023 could also be useful as an algorithmic implementation to solve an objective.
Now that definition is squishy, but still relevant.
I think he has a useful line of thought here but should think about this more. The definition of a tool is a continuum. On the left are your bare hands, on the right, the presence of your neural will creates a perfect final product instantly.
Neither the LLM’s probabilism nor its presence unusually to the right here changes the definition of the continuum. Automation and tool are not orthogonal. Would we argue that a compiler or the JVM isn’t performing automation on the programmer’s behalf? Yet we literally call it a member of a toolchain.
His point stands about the hazards, the definition argument less so.
Apologies Rich but I use LLMs to write Clojure. IMHO it maximizes token spend efficiency and economics by focusing on domain logic rather than boilerplate.
His comment seems to imply there was some inherent virtue in doing the thing rather than letting the machine automate it.
Yes, Janet, languages do evolve. But why do you think dictionaries exists? Solely for teaching purposes? No, it is because at the end of the day, sometimes there is a need for a correct definition to establish a foundation for some argument of some kind.
But I know people are going to ignore and simply say his arguments have no validity.
A shame, beause in this he actually wrote a very clear separation of software that is a tool and aoftware that is automation. And he didn't even say AI is bad or any other thing. He simply says: AI is automation, not a tool. Use accordingly
I don't know why you think that's so effective a way of getting at the truth. Whether something is a tool or not is a matter of family resemblances and is not susceptible to proof or disproof. Id recommend that Hickey put down the dictionary and pick up Wittgenstein.
Words are embedded in (yes, evolving) traditions of use. They are situated in systems of other words and ideas. A precise definition (and often a history of the word and the turna its meaning has taken over time) serves to train you, just a little, in that entire tradition— in its motivations, its other ideas, and adjacent terms. It gives you clues about what distinguishes it connotatively and denotativelu from its nearest synonyms. It helps you maintain intelligibility with written works that use older senses of the word. For words in your native tongue, that also means that, in a sense, it helps keep your own cultural history open to you.
So if I had to push a norm, it wouldn't be "stick to old, established definitions" or "arguments are stronger when we use old definitions". It would be something like:
> It is better to keep in contact with what makes a word special, with the stories and arguments it was created to tell. And arguments about whether X is a Y are sometimes arguments about whether we are losing contact with a concept that Y once helped clarify and communicate. If that's happening, it's sometimes an argument worth being sensitive to and propagating, so honestly consider it.
They do and they don’t, depending on what (and who) you’re talking about and whether or not it’s beneficial to say language evolves or not in that particular argument :)
I mean that people can both claim that “words have meaning” and “languages evolve” depending on which one fits their narrative.
And, every single software you know is a tool?
It doesn't matter whether LLMs work or not, but what's the user's relationship to them, and right now, they've been accelerating away from any "toolness" you could ascribe them. Look at how the industry positions these "tools" to your own employer if you need any more evidence.
If you shipped something understanding none of it, you did nothing. Claude did it. Writing 'code' is not just typing characters that compile, it's maintaining a system of ideas. If you don't know anything about those underlying ideas, what did you even do? How are you not trivially replaceable?
You can argue all day about these topics, but ultimately, the paychecks, the customers, the prestige, etc will be proportional to the non-AI value that you can offer to the world.
The root cause is people fully buying into the idea that this tech is 'intelligent' as opposed to simply giving us a baseline, approximately correct thing to keep working on.
Who says I'm a tool?
You are a tool.
AI is only a tool, it isn’t anything more than that. I use AI because work pays for an expensive subscription, and I’ve found it helpful… as a tool.
Good to see Rich Hickey still has his head well screwed on his shoulders.
https://news.ycombinator.com/newsguidelines.html
(We detached this subthread from https://news.ycombinator.com/item?id=50062384.)
HN's value lies largely in the audience its posts attract. Think about what you want the site to be. It isn't this. Or at least, it wasn't.
Also note this guideline: "If you flag, please don't also comment that you did."
In addition (or rather, in particular, because it's covered by "don't be snarky"), please don't do the internet thing of using quotation marks to make it look like you're quoting someone when you aren't.
https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...
Life is too short to let who you've heard of define your values, and your statement says more about you than them...
The vast majority of the time, old people whom the young think are "out of touch" are actually speaking from hard-won experience. Ignore them at your peril, because they are usually correct and the young are usually wrong.
https://ridiculousfish.com/blog/posts/old-age-and-treachery....
Compare and contrast with complaining to an LLM that "the margins look wrong".
#1. https://news.ycombinator.com/item?id=50051731
#2. https://news.ycombinator.com/item?id=50051714
I thought I could 'vouch' them but it's not an option - is vouching time limited?
I'm also wondering what's going on with that user. Their comments all seem fine to me but I notice that a huge amount of their past comments - even beyond my comment thread - are [dead]. I feel a bit sorry for them.