Always Bet on Text

(graydon2.dreamwidth.org)

80 points | by jesseduffield 3 hours ago

21 comments

  • smj-edison 1 hour ago
    I have mixed feelings about this. On the one hand, I agree: text is infinitely versatile, indexable, durable, etc. But, after discovering Bret Victor's work[1], and thinking about how I learned piano, I've also started to see a lot of the limitations of text. When I learned piano, I always had a live feedback loop: play a note, and hear how it sounds, and every week I had a teacher coach me. This is a completely different way to learn a skill, and something that doesn't work well with text.

    Bret Victor's point is why is this not also the approach we use for other topics, like engineering? There are many people who do not have a strong symbolic intuition, and so being able to tap into their (and our) other intuitions is a very powerful tool to increase efficiency of communication. More and more, I have found myself in this alternate philosophy of education and knowledge transmission. There are certainly limits—and text isn't going anywhere, but I think there's still a lot more to discover and try.

    [1] https://dynamicland.org/2014/The_Humane_Representation_of_Th...

    • dkarl 52 minutes ago
      I think the downside, at least near-term, or maybe challenge would be the better word, is that anything richer than text requires a lot more engineering to make it useful. B♭ is text. Most of the applications on your computer, including but not limited to your browser, know how to render B♭ and C♯, and your brain does the rest.

      Bret Victor's work involves a ton of really challenging heavy lifting. You walk away from a Bret Victor presentation inspired, but also intimidated by the work put in, and the work required to do anything similar. When you separate his ideas from the work he puts in to perfect the implementation and presentation, the ideas by themselves don't seem to do much.

      Which doesn't mean they're bad ideas, but it might mean that anybody hoping to get the most out of them should understand the investment that is required to bring them to fruition, and people with less to invest should stick with other approaches.

  • Lucent 8 minutes ago
    It's easy to be a text maximalist now we're in the LLM era, but I disagree that ideas are a separate, nonphysical realm that cannot otherwise be described. https://lucent.substack.com/p/one-map-hypothesis
  • socketcluster 1 hour ago
    I've also become something of a text maximalist. It is the natural meeting point in human-machine communication. The optimal balance of efficiency, flexibility and transparency.

    You can store everything as a string; base64 for binary, JSON for data, HTML for layout, CSS for styling, SQL for queries... Nothing gets closer to the mythical silver-bullet that developers have been chasing since the birth of the industry.

    The holy grail of programming has been staring us in the face for decades and yet we still keep inventing new data structures and complex tools to transfer data... All to save like 30% bandwidth; an advantage which is almost fully cancelled out anyway after you GZIP the base64 string which most HTTP servers do automatically anyway.

    Same story with ProtoBuf. All this complexity is added to make everything binary. For what goal? Did anyone ever ask this question? To save 20% bandwidth, which, again is an advantage lost after GZIP... For the negligible added CPU cost of deserialization, you completely lose human readability.

    In this industry, there are tools and abstractions which are not given the respect they deserve and the humble string is definitely one of them.

    • yegle 11 minutes ago
      As someone who's daily job is to move protobuf messages around, I don't think protobuf is a good example to support your point :-)

      AFAIKT, binary format of a protobuf message is strictly to provide a strong forward/backward compatibility guarantee. If it's not for that, the text proto format and even the jaon format are both versatile, and commonly used as configuration language (i.e. when humans need to interact with the file).

    • handfuloflight 30 minutes ago
      I marvel at the constraint and freedom of the string.
    • the8472 1 hour ago
      shipping base64 in json instead of a multipart POST is very bad for stream-processing. In theory one could stream-process JSON and base64... but only the json keys prior would be available at the point where you need to make decisions about what to do with the data.
      • socketcluster 58 minutes ago
        Still, at least it's an option to put base64 inline inside the JSON. With binary, this is not an option and must send it separately in all cases, even small binary...

        You can still stream the base64 separately and reference it inside the JSON somehow like an attachment. The base64 string is much more versatile.

        • zzo38computer 53 minutes ago
          Even with binary, you can store a binary inline inside of another one if it is a structured format with a "raw binary data" type, such as DER. (In my opinion, DER is better in other ways too, and (with my nonstandard key/value list type added) it is a superset of the data model of JSON.)

          Using base64 means that you must encode and decode it, but binary data directly means that is unnecessary. (This is true whether or not it is compressed (and/or encrypted); if it is compressed then you must decompress it, but that is independent of whether or not you must decode base64.)

    • whatevermom5 1 hour ago
      [dead]
  • scosman 10 minutes ago
    This also leads to the unreasonable effectiveness of LLMs. The models are good because they have thousands of years of humans trying to capture every idea as text. Engineering, math, news, literature, and even art/craftmanship. You name it, we wrote it down.

    Our image models got good when we started making shared image and text embedding spaces. A picture is worth 1000 words, but 1000 words about millions of images are what allowed us to teach computers to see.

  • vacuity 12 minutes ago
    I was going to disagree, along the lines of the people bringing up Bret Victor or other modes of communication and learning, but I have long accepted that the written word has been one of the largest boons for learning in human history, so I guess I agree. Still, it'll be an interesting and worthwhile challenge to make a better medium with modern technology.
  • Ferret7446 36 minutes ago
    Text is just bytes, and bytes are just text. I assume this is talking about human readable ASCII specifically.

    I think the obsession with text comes down to two factors: conflating binary data with closed standards and poor tooling support. Text implies a baseline level of acceptable mediocrity for both. Consider a CSV file will millions of base64 encoded columns and no column labels. That would really not be any friendlier than a binary file with a openly documented format and suitable editing tool, e.g. sqlite.

    Maybe a lack of fundamental technical skills is another culprit, but binary files really aren't that scary.

  • didip 36 minutes ago
    I agree. As a simple exercise, look at all software tools that’s GUI only. They become a large walled garden unable to be penetrated by LLM.

    Tools that are mostly text or have text interfaces? Greatly improved by LLM.

    So all of those rich multimedia and their players/editors really need to add text representations.

    • tombert 29 minutes ago
      People make fun of it, but I think the fact that Unixey stuff can use tools that have existed since the 70's [1] can be attributed to the fact that they're text based. Every OS has its own philosophy on how to do GUI stuff and as such GUI programs have to do a lot of bullshit to migrate, but every OS can handle text in one form or another.

      When I first started using Linux I used to make fun of people who were stuck on the command line, but now pretty much everything I do is a command line program (using NeoVim and tmux).

      [1] Yes, obviously with updates but the point more or less still stands.

  • jackschultz 42 minutes ago
    Reread Story of Your Life again just now, and all it made me want to do is learn Heptapod B and their senagram style of written communication.

    Reading “Mathematica - A secret world of intuition and curiosity” as well and a part stuck out in a section called The Language Trap. Example author gives is about for a recipe for making banana bread, that if you’re familiar with bananas, it’s obvious that you need to peel them before mashing. Bit of you haven’t seen a banana, you’d have no clue what to do. Does a recipe say peel a banana or should that be ignored? Questions like these are clear coming up more with AI and context, but it’s the same for humans. He ends that section saying most people prefer a video for cooking rather than a recipe.

    Other quote from him:

    “The language trap is the belief that naming things is enough to make them exist, and we can dispense with the effort of really imagining them.”

  • zephen 1 hour ago
    I agree 99%.

    The 1% where something else is better?

    Youtube videos that show you how to access hidden fasteners on things you want to take apart.

    Not that I can't get absolutely anything open, but sometimes it's nice to be able to do so with minimal damage.

    • ilaksh 1 hour ago
      I wonder if some day there will be a video codec that is essentially a standard distribution of a very precise and extremely fast text-to-video model (like SmartTurboDiffusion-2027 or something). Because surely there are limits to text, but even the example you gave does not seem to me to be beyond the reach of a text description, given a certain level of precision and capability in the model. And we now have faster than realtime text to video.
      • egypturnash 58 minutes ago
        This sounds incredibly precarious and prone to breaking when you update to a new model.
        • ilaksh 54 minutes ago
          It would be impossible to change the model. It would be like a codec, like H.264 but with 1-2GB of fixed data attached to that code name. Changing the model is like going to H.265. Different codec.
  • sweetsocks21 38 minutes ago
    For a computer, text is a binary format like anything else. We have decades of tooling built on handling linear streams of text where we sometimes encode higher dimensional structures in it.

    But I can't help feel that we try to jam everything into that format because that's what's already ubiquitous. Reminds me of how every hobby OS is a copy of some Unix/Posix system.

    If we had a more general structured format would we say the opposite?

  • gnabgib 1 hour ago
    (2014) Popular in:

    2021 (570 points, 339 comments) https://news.ycombinator.com/item?id=26164001

    2015 (156 points, 69 comments) https://news.ycombinator.com/item?id=10284202

    2014 (355 points, 196 comments) https://news.ycombinator.com/item?id=8451271

    • socketcluster 1 hour ago
      With LLMs, the text format should be more popular than ever, yet we still see people pushing binary protocols like ProtoBuf for a measly 20% bandwidth advantage which is lost after GZIPing the equivalent JSON... Or a 30% CPU advantage on the serialization aspect which becomes like a 1% advantage once you consider the cost of deserialization in the context of everything else that's going on in the system which uses far more CPU.

      It's almost like some people think human-readability, transparency and maintainability are negatives!

  • calebm 49 minutes ago
    I just recently intentionally made the decision to keep the equation input in FuzzyGraph (https://fuzzygraph.com) plain text (instead of something like stylized latex like Desmos has) in order to make it easy to copy and paste equations.
  • ANarrativeApe 39 minutes ago
    This is one of those irritating articles where one agrees with the gist, but there are serious flaws in the support. There are societies, even now, that don't have text. Yes, they represent a tiny fraction of 1% of the global population, but they do exist. And the beauty of text is that this level of nuance can be conveyed, a simplistic, inaccurate, broad brush approach is not needed. Nor is it the oldest form of communication. Having recently started exploring the cave art record, the text informs me that this is at least an upper middle single digit multiple of the age of text. Yes, a picture paints a thousand words, which can then be interpreted a thousand ways. Text has the ability to convey precise, accurate, objective information, it does not, as this article demonstrates, necessarily do so.
  • jamesgill 2 hours ago
  • skydhash 1 hour ago
    This is one of the core reason I've been focused on building small tools for myself using Emacs and the shell (currently ksh on OpenBSD). HTML and the Web is good, but only in its basic form. A lot of stuff fancies themselves being applications and magazines and they are very much unusable.
  • jesseduffield 3 hours ago
    Post from the creator of Rust, 11 years ago. Highly relevant to today.
  • sixtyj 1 hour ago
    The older I get, the more I appreciate texts (any).

    Videos, podcasts... I have them transcribed because even though I like listening to music, podcasts are best written for speed of comprehension... (at least for me, I don't know about others).

    • awesome_dude 1 hour ago
      Audio is horrible (for me) for information transfer - reading (90% of the time) is where it's at

      Not sure why that is either - because I look at people extolling the virtues of podcasts, saying that they are able to multi task (eg. driving, walking, eat dinner), and still hear the message - which leaves me aghast

      • mr_toad 41 minutes ago
        Podcasts are fine for entertainment, great for tuning out people or the traffic. I don’t expect to absorb information quickly, but try reading anything serious on the train when some guy is non-stop on his phone using his outside voice.
        • awesome_dude 21 minutes ago
          Ha! I used to

          I had a 53 minute (each way) commute on the train, and I found it perfect for reading papers or learning skills - I was always amazed that the background noise would disappear and I could get lost in the text

          Best study time ever.

  • textnotalwabest 56 minutes ago
    Text is not the best medium for the following situations:

    - I want to learn how to climb rock walls

    - I want to learn how to throw a baseball

    - I want to learn how to do public speaking

    - I want to learn how to play piano

    - I want to make a fire in the woods

    - I want to understand the emotional impact of war

    - I want to be involved in my child's life

    • awesome_dude 20 minutes ago
      Why did you create an account just to post that?

      In text format no less

    • cindyllm 51 minutes ago
      [dead]
  • znort_ 44 minutes ago
    > But text wins by a mile.

    white on dark grey with phosphor green around? not really.

  • citbl 1 hour ago
    The last 2 paragraphs were quite poetic.

    PS: 2014

  • benatkin 53 minutes ago
    I was surprised to see something was in text today, until I remembered knowing it at some point - the .har format. Looking at simonw's Claude-generated script [1] to investigate AI agent sent emails [2] by extracting .har archives, I saw that it uses base64 for binary and JSON strings for text.

    It might be a good bet to bet on text, but it feels inefficient a lot of the time, especially in cases like this where all sorts of files are stored in JSON documents.

    1: https://gist.github.com/simonw/007c628ceb84d0da0795b57af7b74...

    2: https://simonwillison.net/2025/Dec/26/slop-acts-of-kindness/