---
title: "💭 Using stderr/stdout correctly - YouTube"
description: "!https://youtu.be/XDAfpzjBYJQ?t=353"
date: 2025-12-22
published: true
tags:
  - dev
  - cli
  - thought
template: link
---


<div class="embed-card embed-card-external embed-card-provider-youtube">
  <div class="embed-card-rich">
<lite-youtube videoid="XDAfpzjBYJQ" title="Jeff Dickey - Mise, Usage, and Pitchfork and the Future of Polyglot Tools" playlabel="Play: Jeff Dickey - Mise, Usage, and Pitchfork and the Future of Polyglot Tools"></lite-youtube>
  </div>
</div>


> Yeah there's some basics, you know things you might expect like using standard error and standard out correctly. One thing I'll say on that because I think this is commonly misunderstood, standard error is not for errors, it's for any information that isn't part of the normal output. So you know often times that's warnings and errors, but it might just be progress information. You know anytime that you just need to have something go to the user that's what it's there for." (6:15 - 6:42)

I've definitely done this sin in my own tooling before, and it does make things harder to use.  I think I still take err/out at face value.  I really like the translation Jeff gave here, one is for normal output, i.e. what the user asked for and the other is extra information.  So if I wanted to list something and pipe it into something else, stdout only captures the list, thats it.  if you have a bunch of information about config warnings, showing environment, are you sure questions, none of that is captured.

!!! note

    This post is a <a href="/thoughts/" class="wikilink" data-title="Thoughts" data-description="These are generally my thoughts on a web page or some sort of url, except a rare few don&#39;t have a link. These are dual published off of my..." data-date="2024-04-01">thought</a>. It's a short note that I make
    about someone else's content online <a href="/tags/thoughts/" class="hashtag-tag" data-tag="thoughts" data-count=2 data-reading-time=3 data-reading-time-text="3 minutes">#thoughts</a>
