from Hacker News

I hate screenshots of text

by paulmooreparks on 11/11/25, 1:36 AM with 224 comments

  • by gyomu on 11/11/25, 2:16 AM

    Like other commenters point out, automatic OCR on Apple platforms is a godsend, and it's such a great use of our modern AI capabilities that it should be a standard feature in every document viewer on every platform.

    Another thing I wish was more common is metadata in screenshots, especially on phones. Eg if I take a screenshot of a picture in Instagram, I wish a URL of the picture was embedded (eg instagram.com/p/ABCD1234/). If I take a screenshot in the browser, include the URL that's being viewed (+ path to the DOM element in the viewport). If I take a screenshot in a maps app, include the bounding coordinates. If I take a screenshot in a PDF viewer, include a SHA1 hash of the document being viewed + offset in the document so that if I send the screenshot to someone else with the same document, it can seamlessly link to it. Etc etc.

    There are probably privacy concerns to solve here, but no idea is new in computer science and I'm pretty sure some grad student somewhere has already explored the topic in depth (it just never made it to mainstream computing platforms).

    It feels like screenshots have become the de facto common denominator in our mobile computing era, since platforms have abstracted files away from us. Lots of people who have only ever used phones as their main computing devices are confused when it comes to files, but everyone seems to understand screenshots.

    Also, necessary shout out to Screenshot Conf! https://screenshot.arquipelago.org

  • by crazygringo on 11/11/25, 2:07 AM

    I disagree. I use screenshots all the time, because it:

    - Preserves the full 80 character width without line-wrapping, which destroys readability

    - Guarantees monospace, so tabular data doesn't get all misaligned

    - Preserves a good coding font, so it doesn't come out as some hairline-width Courier on the other end

    - Preserves syntax highlighting, very helpful

    Obviously if somebody needs a whole file or whole log, then send the whole thing as an attachment. But very often I'll still include a screenshot of the relevant part. With line numbers, it's not difficult to jump to the right part of the attached file.

    Screenshots are incredibly useful for keeping code and terminal output looking like code and terminal output, and not getting completely mangled in an e-mail or chat message being read on a mobile device or in a narrow column.

  • by sen on 11/11/25, 2:05 AM

    The ability to highlight/copy/etc text on Macs/iOS these days is such a killer feature. I use it almost every day, both for copying/translating text in screenshots or taking photos of text to then copy it into my notes later (eg school notice boards or event posters etc).
  • by romaniitedomum on 11/11/25, 2:15 AM

    Screenshots of text! Luxury! In my day, the screenshots were embedded in a Word document too.

    But I can't be the only one appalled at the suggestion to use an LLM to parse the text. The sheer, prodigious waste of computing power, just to round-trip text to an image and back to text, when what's really missing is a computer user interface that makes it as simple to send text or other snippets as it is to send screenshots.

  • by thundergolfer on 11/11/25, 3:19 AM

    This is rule 7 of 10 in my post 'How to Ask for help in Slack'[1]

    1. I have ‘rubber duck debugged’ my own question.

    2. I checked that this question hasn’t been asked before.

    3. I have noted in my message what I’ve tried.

    4. I have avoided the ‘XY problem’ by clearly detailing the core problem, X.

    5. I have provided specifics of my issue, not vague references or descriptions.

    6. I have provided URL links to relevant content, and where possible the URL links are immutable.

    7. I have not included screenshots of text in my message.

    8. I have not used obscure acronyms or abbreviations.

    9. I have formatted my message well, particularly paying attention to code formatting and headings.

    10. I have not just said “hi” and waited for a reply.

    Like other posters, I don't think Apple OCR is sufficient to make up for screenshotting. The biggest problem is search.

    1. https://thundergolfer.com/communication/slack/2021/02/24/how...

  • by VladVladikoff on 11/11/25, 2:56 AM

    Pretty much every new programmer I’ve ever hired has done this in their first few weeks. Every time I have to tell them why it’s so unhelpful to share screenshots of text instead of just pasting the text. Usually they learn. When they don’t I usually end up firing them, not for that reason but for others.

    The reason I personally hate it is I am often working from my phone. And it’s much easier to read text rendered properly than pinch zooming text in an image. What’s worse is slack will downgrade images for mobile and you can’t even pinch zoom in fully.

  • by albert_e on 11/11/25, 2:21 AM

    My preference -- Link or attachment to the full document or code in context (if needed) ... along with screenshot of a relevant portion. (Many times the former is optional because there is enough context already.)

    It is extra work to do both but I like to be through even when asking for help. Even if the other side doesn't need it -- because I myself might not remember all the nuances when I refer to that conversation later.

    Also screenshot preserves (before any fixes) the exact way things looked when I confronted a certain situation. The visual of the screenshot serves as a much stronger reminder of that situation and my thinking ...way better than mere copy pasted text.

  • by kjellsbells on 11/11/25, 3:37 AM

    Thing is, screenshots are fast, and the same technique works across every app. If you work in a field where you might be filing trouble reports from web app A, native app B, website C,... its just easier to use the same technique across the board. Win+S or CMD Shift 4, and move on with your life.

    Not nice for the recipient maybe, but hella efficient for everyone else, and there are many more people in the latter camp than the former.

  • by pavon on 11/11/25, 2:02 AM

    I mostly see this in Teams, and I can't really blame the sender because Teams' support for code blocks is so horrible.
  • by Grom_PE on 11/11/25, 5:59 AM

    On my Linux system, I hooked up xfce4-screenshooter's "custom action" to a shell script (ocr.sh %f) with tesseract like so:

        #!/bin/sh
        set -o pipefail
        lang=${2:-eng}
        if tesseract "$1" - -l $lang | xclip -selection clipboard ; then
          notify-send "Text copied"
        else
          notify-send "Could not copy text"
        fi
    
    It works great most of the time along with the xfce4-screenshooter's ability to select a rectangle.

    When the text is especially difficult for tesseract, I can use Gemma3-4B via llama.cpp's llama-mtmd-cli, but that takes a minute.

  • by asdfman123 on 11/11/25, 2:59 AM

    Saving this for later: https://imgur.com/a/4sLznnY
  • by Footprint0521 on 11/11/25, 2:58 AM

    Don’t even get me started. A colleague of mine made me screenshot a .env on a video call “for security” and I spent 30 min correcting OCR on it until it worked
  • by jasonlotito on 11/11/25, 3:17 AM

    Please send screenshots. Also include links to the actual source where you got it, or if you can't sure, also share the text. But a screenshot is a perfect starting point as I may not always be in a position to follow a URL or deal with text that some chat program is having difficulty formating properly, and a screnshot can go a long way if I see what I need to see.

    Screenshots are fine. Just don't ONLY send screenshots.

  • by resonious on 11/11/25, 5:10 AM

    I find the argument a bit weak. The actual problem is not the screenshot but the lack of information. Even if you got the "C:\Users\Paul\whatever\whatever" text pasted in your inbox, what would you do with it? Also, are you manipulating these text? If I'm asked to find a bug in some code, looking at it is all I can really do. (Okay maybe you want to compile it or run it, that's fair)
  • by wenderen on 11/11/25, 2:05 AM

    This article is a specific case of a more general piece of advice: ask questions well (provide context like clickable links, trim down your query to the minimal reproducible case, pose high-precision questions, etc.).
  • by Ucalegon on 11/11/25, 3:53 AM

    Qwen3-VL-8B is quite amazing and has made translating screenshots of text so much easier via LM Studio. Does have some issues and edge cases, but being able to take a screenshot of text or some website doesn't have copyable text, thats a solvable issue for less than 16GBs of VRAM or unified memory.
  • by conductr on 11/11/25, 2:12 AM

    My response is usually “need context”. No shame in making them fill in the gaps they created in the first place

    Nothing against screenshots unless they are lacking context

  • by ddxv on 11/11/25, 2:00 AM

    Agreed! The one that I really don't like is that social platforms promote / prefer screenshots of text. Search engines promote sites that link to themselves. All the good parts of URLs are missing. How often I see something interesting, just to realize it's a screenshot and I have to go dig around myself figuring out where it came from.
  • by al_be_back on 11/11/25, 3:27 AM

    Couldn't agree more, if posting on coding sites/forums, they usually have code highlighting.

    However, a screenshot acts like a print-out / pdf, and very handy for sharing in other platforms e.g social media, mobile devices.

    Like many others I like the use of ai for OCR in imagery. Won't be long before ai tool can copy the style + content from an image, or video.

  • by nicodjimenez on 11/11/25, 2:13 AM

    Note that Mathpix Snip can quickly convert such screen shots to markdown code via keyboard shortcut. Disclaimer: I’m the founder.
  • by jv22222 on 11/11/25, 3:28 AM

    > I receive a lot of screenshots like this from well-meaning colleagues:

    That says all you need to know. The reason they send those screenshots is they believe the full context is more helpful. Code formatting, indentation etc.

    Personally I agree with that sentiment. There is a lot of context in the full visual of the original text in situ.

  • by shortformblog on 11/11/25, 2:33 AM

    This poor man is in a losing battle with modern computing.
  • by tim333 on 11/12/25, 12:35 AM

    I have to say, although people hate on it, google lens in chrome is very handy. They move the icon around but assuming you can find you just highlight the image and then it ocrs it, tells you where it came from, lists similar images, and when I tried it on the image in the article the AI analysed it a bit:

    >The image shows a code snippet, likely written in C#, that retrieves and processes data from a WordPress API. The code checks for an empty slug, makes an HTTP GET request to a specific URL, and then attempts to parse the JSON response. It includes error handling for both HTTP failures and invalid JSON.

    >The code uses C# and is designed to interact with the WordPress REST API...

  • by bnj on 11/11/25, 2:04 AM

    I agree that screenshots of text that are cut off from essential context are enough to make me pull my hair out, it creates so much extra work— but the modern feature of automatic text recognition in screenshots and images that allows for copy and paste has been incredible. Along with indexing that allows it to be searched, regular screenshots have become one of the most robust and future proof ways for me to preserve context from my workspace. When I look back into archived screenshots it helps me to recapture all kinds of things that I wouldn’t have thought to explicitly record.
  • by cnees on 11/11/25, 3:10 AM

    We use Slack and GitHub, so it's trivial to send formatted text or a file/line link and I basically never have to deal with screenshots of text. I guess this is just a nice reminder for me to be grateful.
  • by LandenLove on 11/11/25, 4:10 AM

    I don't know if it has been mentioned already, but powertoys for windows has a text extraction tool/shortcut. It also supports multiple languages.

    https://learn.microsoft.com/en-us/windows/powertoys/

    https://learn.microsoft.com/en-us/windows/powertoys/text-ext...

  • by cammil on 11/11/25, 4:29 AM

    Screenshots preserve exactly what the user sees, and for this reason i believe they are the best format for evidence. They also preserve their look when your messaging software starts doing funny things with it. They are immune to accidental edits. They are reliable in the sense that if the original source ever changed, no one would argue that you didnt see what you saw with a screenshot. They wont degrade when the content of a url changes.

    We do use screenshots extensively, but alongside links and copied text when necessary

  • by benrutter on 11/11/25, 6:22 AM

    I just want to offer a counter ti the comments that, I really don't mind!

    If it's some new greenfield project, I definitely want a script rather than a screenshot, but if you're saying "i think this line is the issue", "here's my error stack" or "what if we added something here?" then I'll happily recieve screenshots if it's easier for you!

    (just please, please, semd me something and not just "there's am issue with x because it is throwing me an error")

  • by lunias on 11/11/25, 2:00 PM

    "Hey, got a second for a question about this code?" Sends screenshot with no context.

    Don't ask to ask, just ask; and post a link and a line number.

  • by pigeons on 11/11/25, 4:51 AM

    OMG me too. I know we aren't supposed to add low quality comments like that, but I have actually been waiting my whole life for someone else to say this!
  • by gwbas1c on 11/11/25, 2:15 AM

    When I get these, there's usually enough context that I can find the actual text.

    That being said, I've had to twist some arms in a previous job for new employees attaching screenshots of a log viewer instead of the whole logs. The big problem was training: Once I made it very clear to the entire team that unedited logs were critical to solving problems, management made sure that all newcomers knew how to attach unedited logs.

  • by machomaster on 11/11/25, 4:32 AM

    Just use something like NormCap ( https://dynobo.github.io/normcap/ ), an "OCR-powered screenshot tool to capture text instead of images".

    Often, the screenshot of the code is exactly what I need, because it shows code syntax highlighted and I don't need to copy and paste it in the editor.

  • by dietr1ch on 11/11/25, 2:39 AM

    It seems there's great OCR available on Apple platforms, but to me it seems that we are giving ourselves a problem by properly attaching metadata where necessary.

    I honestly thought this was going to be solved in the 2010s with the rise of comic-like memes, but we just kept sharing images with ever increasing compression artifacts as things were shared around and used to create new memes.

  • by dheera on 11/11/25, 2:22 AM

    > I have to either very carefully type some of the code into a search box or (these days) get my coding agent to find the relevant module for me.

    Your coding agent is not very smart if it can't deal with something as simple as OCR'ing an image and processing all the references in it, or letting you just select text from an image and searching or copying to the clipboard.

  • by tcdent on 11/11/25, 2:00 AM

    This is essentially a solved problem. Whenever someone sends me a screenshot that contains any text information (tables, etc), I pass it to an LLM and it correctly interprets the content of it. On modern versions of macOS you can just select text in images relatively painlessly, too.

    Linux desktop users will get there one day.

  • by elzbardico on 11/11/25, 2:17 AM

    Some people are too proud for their own good about their aesthetic choices in editor colors, typography and fonts.
  • by ZeWaka on 11/11/25, 2:23 AM

    This is why I send both a screenshot for easy conveyance of syntax highlighting and such, and a link to the code.
  • by clbrmbr on 11/11/25, 2:53 AM

    I’m one of the people sending these screenshots, and glad to receive them. It helps jog my memory to see a screenshot from the original context, with syntax highlighting or especially log output from our besoke logging system for firmware. It’s very hard to read without the colors!
  • by GolDDranks on 11/11/25, 4:46 AM

    What I usually do to share code, is send a link to GitHub or whatever VCS portal we are using. Of course, this doesn't work with local, new code, but that's why we also use liberally draft pull requests to share unfinished code.
  • by bluedino on 11/11/25, 2:10 AM

    I secretly enjoyed the lectures out people would get on StackOverflow when they did this.
  • by alexsmirnov on 11/11/25, 8:02 PM

    I saw it more and more recent times, but worse is coming: With my teenage daughter ( and her friends ), I see that they even do not bother with screenshots, and take pictures by phone...
  • by mat_b on 11/11/25, 3:17 AM

    It's not always easy to copy text out of tmux or a VM. Screenshots are easy to create and it's not as hard as you make it sound to type a name into the search bar in the IDE...
  • by furyofantares on 11/11/25, 2:03 AM

    > I have to either very carefully type some of the code into a search box or (these days) get my coding agent to find the relevant module for me.

    What about just asking them what file that is?

  • by elzbardico on 11/11/25, 2:25 AM

    I think that Slack may be partially responsible for that.

    If I copy code from PyCharm or VS Code and paste it into fucking Microsoft Word, even spawn-of-Satan-MS-Word-for-Mac respects most of my formatting. Plenty of web text editors are also able to do that.

    But Slack, "The King of Useless Features Nobody Asked For", can't bother themselves to implement such a useful feature for their primary market.

  • by SoftTalker on 11/11/25, 3:09 AM

    This is a lost cause, one of many that modern GUIs are responsible for. Just suck it up and deal with it because users are not going to stop sending you screenshots.
  • by dangus on 11/11/25, 2:12 PM

    This blog post could have been an email?

    Has OP tried communicating?

    "Thanks for sending me this screenshot. Can you also send over the link to this code block in our source control?"

  • by chasil on 11/11/25, 2:53 AM

    On Microsoft Teams, I will use alt-prtscn to share an image of a terminal.

    I am hyper-sensitive to emailing terminal screenshots in MS Outlook, as they cannot be searched.

  • by ivanjermakov on 11/11/25, 7:48 AM

    I see so many people struggle with providing context of what they're asking. It's easy to forget that other person is not sitting in your head.
  • by jesse__ on 11/11/25, 2:19 AM

    This made me chuckle multiple times. Strong agree, Paul.
  • by Oddmonkey on 11/11/25, 4:37 AM

    I had a guy send me a screenshot instead of code snippet because our company slack was rejecting the message due to sensitive information...
  • by Departed7405 on 11/11/25, 9:07 PM

    The link doesn't work. I get Cloudlfare error 1033 (Please don't mention Web Archive, they now block my VPN)
  • by zem on 11/11/25, 6:26 AM

    what we need is a "rich text box" file format, classed as an image for embedding purposes and supported everywhere images are, but formattable and selectable text internally. would solve the issue of people using images of text on various social media sites too.
  • by nippoo on 11/11/25, 2:02 AM

    Preview on Mac does automatic OCR. I'm sure other tools exist that are similarly friction-free on other platforms, but it took me under 5 seconds (drag the image from the webpage into my downloads folder, click on it, and then select the relevant snippet and CMD+C to copy it).

    I imagine I'd have similar frustrations if I couldn't copy-paste the text easily though!

  • by ewgoforth on 11/11/25, 12:33 PM

    For those of you running Windows, OneNote will allow you to text from images pretty easily.
  • by satisfice on 11/11/25, 7:28 PM

    No one has ever sent me a screenshot of code. Am I missing out on this life experience?
  • by 1vuio0pswjnm7 on 11/11/25, 5:34 PM

    The author's resume lists HTTP 1.0 and 1.1 but not HTTP/2 or HTTP/3
  • by internetter on 11/11/25, 2:29 AM

    > or (these days) get my coding agent to find the relevant module for me

    ????? Just OCR a line and paste it into the IDE’s search field???? Or, if for some baffling reason you don’t have the ability to OCR, just pick out a function declaration in the screenshot and search for that? We’re so doomed as a profession.

  • by est on 11/11/25, 2:16 AM

    we need a way to make screenshot while make text copy-pastable.

    SVG maybe?

  • by ggirelli on 11/11/25, 8:00 AM

    This has happened to me so many times...
  • by lutusp on 11/11/25, 3:12 AM

    This is astonishing. A screenshot is not only the least useful representation of a subject under discussion, it also requires more bandwidth than text.

    I see two possible reasons for this -- the sender has no technical experience, or they're focused on making things more difficult for the recipient.

    But when trying to decide between these two, I'm reminded of the saying, "Never attribute to malice that which can be adequately explained by stupidity."

    This actually happened. A client wrote me, saying, "First, don't treat me like an idiot -- I have years of computer experience."

    "Okay, I promise," I replied. "What's the problem?"

    "Your program doesn't work."

    "Can you be more specific?"

    "I followed your instructions to the letter, but I see an error message."

    "Okay, what is the error message?"

    "It says, 'User [Enter your name here] is not found'."

  • by procaryote on 11/11/25, 7:40 AM

    If you don't want screenshots of text, say: "hey, could you send me that as text instead?"
  • by hinkley on 11/11/25, 5:04 AM

    Stack trace or GTFO
  • by amid11 on 11/11/25, 9:13 AM

    Tell that to my father! he seems obsessed with taking screenshots.
  • by softgrow on 11/11/25, 5:04 AM

    Worse still, I loathe screenshots of text on a website. Please make text is text so it works with a screen reader, can cut and paste etc.

    Less of it about now but used for multilingual websites for the secondary language, particularly if non-latin alphabet. Will no-one think of Unicode!

  • by drewg123 on 11/11/25, 2:12 AM

    I personally hate screenshots of kernel panics. Or anything else where you might be dealing with 64-bit hex addresses like "0xffffffff81b7ed80" Typing that from a picture is infinitely more error prone than just cut/paste.
  • by wyldfire on 11/11/25, 3:18 AM

    "what did you do to make this appear, and what were you expecting to happen?"
  • by raffael_de on 11/11/25, 7:33 AM

    the whole post is entirely missing the point. screenshots do have its merit for reasons already mentioned here. beyond that the optimal method would be a link to the line or section into the respective source control system.
  • by chzblck on 11/11/25, 2:34 AM

    just a dumb sales guy - but I assumed when people were asking about code they would always copy paste it.

    ... Is this really common?

  • by artisin on 11/11/25, 4:15 AM

    I always thought a screenshot of code was just an iPeople flex. Like, "look at my code, framed in this glassy macOS window with a $29.99 drop shadow." Kinda like how Nix or Arch users can't resist mentioning they use Nix or Arch. (btw i use arch)