Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    E

    Eric Holscher

    ericholscher.com · Personal blog · on HN since 2007

    Eric Holscher, co-founder of Read the Docs, writes about documentation, open source funding, and web development.

    Visit blogRSSHN submissions
    Open Source & LinuxProgrammingWeb Development
    What HN says

    Commenters cite his posts arguing for reStructuredText over Markdown, his criteria for judging documentation quality, and a Django deployment guide using Chef.

    Stats for nerds
    60HN people shared it
    67linked in comments
    995story points
    Jun 2024last shared
    2008people per year2024

    Top posts on HN

    1. 1
      How I Judge the Quality of Documentation
      5 people · 226 points · first shared 2014 · 73 comments on HN
    2. 2
      Don’t Use Markdown for Documentation
      11 people · 205 points · first shared 2016 · 75 comments on HN
    3. 3
      “My Code is Self-Documenting”
      2 people · 87 points · first shared 2017 · 99 comments on HN
    4. 4
      Required Reading (for pythonistas)
      1 person · 83 points · first shared 2010 · 5 comments on HN
    5. 5
      Large Problems in Django, Mostly Solved: Delayed Execution
      1 person · 58 points · first shared 2010 · 14 comments on HN
    6. 6
      Help fund Read the Docs
      2 people · 53 points · first shared 2012 · 13 comments on HN
    7. 7
      Hacker Book Club
      1 person · 32 points · first shared 2009 · 10 comments on HN
    8. 8
      You should stay for the sprints.
      1 person · 30 points · first shared 2009 · 2 comments on HN
    9. 9
      Announcing Django Crawler and django-test-utils
      2 people · 27 points · first shared 2008 · 4 comments on HN
    10. 10
      One Percent for Open Source
      4 people · 25 points · first shared 2018 · 3 comments on HN

    What HN people wrote when they linked it

    • whit537Sep 2012

      > Most developers have high-end salaries, IMO.

      David Glick and I are currently the top two on Gittip, and neither of us have high-end salaries right now:

      http://blog.gittip.com/post/27072581481/i-believe-in-gittip

      http://glicksoftware.com/blog/goodbye-groundwire

      #3 is Eric Holscher, and he's specifically using his gittips to host ReadTheDocs.org:

      http://ericholscher.com/blog/2012/sep/20/help-fund-read-docs/

      #5, Alex Gaynor, has a high-end salary (I'm assuming). So far it sounds like he's planning to use his gittips to attend an extra conference or two this year:

      http://news.ycombinator.com/item?id=4438937

      #7, Mike Bayer, has also said that his gittips are covering his infrastructure costs, for SQLAlchemy:

      http://www.reddit.com/r/Python/comments/10a32v/gittip_is_the_future/c6bvho1

      > Gittip also lacks focus, it doesn't commit a developer to work on something, it's merely a thank you, a donation.

      Not sure where you're coming from on this. It sounds like you're talking about the focus and drive of someone receiving money on Gittip. The idea is that people worth giving money to on Gittip are people with a history of productive self-motivation, people that don't depend on coercive economic relationships to stay focused.

      Honestly, for me, there's nothing more humbling and motiving to get me out of bed in the morning than knowing that 100+ people believe in me enough to freely give me $1+ this week. That keeps me way more focused than a corporate salary ever did.

      >…

    • TuringTestMar 2019

      > I think it's time Markdown should be supported natively by browsers.

      I'd rather have AsciiDoc become the default lightweight documentation format. Markdown suffers from competing standards regarding extensibility beyond basic formating, whereas AsciiDoc is a quite direct translation of the solid standard Docbook.

      Extending Markdown to anything more complex than bold, italic or headers requires deciding among a number of competing tools with different syntax and installing them as extensions. AsciiDoc has features as tables, references, images or metadata integrated in the standard, and it has been designed for extensibility, while Markdown was not.

      There is an advantage of using Markdown over AsciiDoc, which is that it is currently supported by a larger variety of tools. But that advantage is somewhat negated by its different and slightly incompatible flavors.

      https://asciidoctor.org/docs/asciidoc-vs-markdown/

      https://www.ericholscher.com/blog/2016/mar/15/dont-use-markdown-for-technical-docs/

    • btbuildemFeb 2014

      Next time you come across a project documented solely in Lithuanian / Japanese / Swahili, I hope you will refer to http://ericholscher.com/blog/2014/feb/27/how-i-judge-documentation-quality/#language for insight.

      English is the de-facto language of the Internet (let's not discuss here how damaging that is to English as a language in general). I strongly believe that public-facing software projects should be documented in English first and foremost, with translations to other languages added as resources allow.

      I work for a small company in Quebec (that's the Canadian province that has a Language Police) - despite most of the team being Francophone, all our internal documentation and code docs are in English. Why would that be? Because everyone realizes, without ever really having discussed it, that it is the only efficient way to do it, if we want to collaborate with others, if we want to grow, if we want others to contribute, having everything in French would be creating unnecessary hurdles.

    • ivan_ahMar 2018

      ReST is really big in the Python ecosystem, thanks to Sphinx (docs generator), and the read-the-docs website.

      The main advantage for ReST is that it is well defined and consistent. It's a bit heavier than .md, but I think it will pay off for large projects.

      Here are some articles about it:
      https://eli.thegreenplace.net/2017/restructuredtext-vs-markdown-for-technical-documentation/
      http://ericholscher.com/blog/2016/mar/15/dont-use-markdown-for-technical-docs/

      I've written docs for personal projects in markdown, but now that I work on larger collaborative projects I feel like ReST is the way to go.

      PS: If you're using Sphinx, you can actually support both .md and .rst in the same project, and slowly transition from one to the other, see https://github.com/ivanistheone/ricecooker/blob/docs/improve/docs/conf.py#L447

    • badhombresApr 2018

      I've always found that documentation is a skill on it's own. You need to learn how to say something efficiently while answering as many questions as you can. If it's too much people won't read it, if it's too little then it's not useful.

      Also learn how to ask questions, you know your project inside and out, try to go to someones position of not knowing anything. I always find stuff that seems so simple at first but then later realize that most people wouldn't know it or connect the dots because they don't know the project.

      Here are some resources I've looked at.

      https://jacobian.org/writing/what-to-write/

      http://ericholscher.com/blog/2014/feb/27/how-i-judge-documentation-quality/

      https://www.braintreepayments.com/blog/api-where-to-begin/

      http://warpspire.com/talks/documentation/

    • tdavisNov 2008

      I didn't file a bug report because I'm not entirely sure what I would file it as; "Excessive use of magic?".

      What happened in my case is that when using multiprocessing with Django, if a database connection is opened by the main process to make a query that connection is kept open and workers end up using it instead of spawning their own. If I manually close the connection, they all make their own. This isn't sufficient, however, because global imports related to transaction support still manage to step on each other when queries are run concurrently. This turns out to be a pretty rare race condition, but it does happen.

      You can read more at the comment here, including my workarounds: http://ericholscher.com/blog/2008/nov/10/announcing-django-crawler-test-utils/#c211

    Related

    Jacob Kaplan-Mossjacobian.org196 people

    Embrace the Grind

    Jacob Kaplan-Moss
    Personal · last shared 2026
    DaedTech (Erik Dietrich)daedtech.com196 people

    How Developers Stop Learning: Rise of the Expert Beginner (2012)

    DaedTech (Erik Dietrich)
    Personal · last shared 2026
    Eric Sinkericsink.com149 people

    Great Hacker != Great Hire (2004)

    Eric Sink
    Personal · last shared 2025
    Eric S. Raymondesr.ibiblio.org381 people

    Eric Raymond: Why I think RMS is a fanatic, and why that matters

    Eric S. Raymond
    Personal · last shared 2026
    Adrian Holovatyholovaty.com65 people

    Adding a feature because ChatGPT incorrectly thinks it exists

    Adrian Holovaty
    Personal · last shared 2025
    Coding Horrorblog.codinghorror.com2.1k people

    Farewell Stack Exchange

    Coding Horror
    Personal · last shared 2026
    Ian Bickingblog.ianbicking.org107 people

    Firefox Was Always Enough

    Ian Bicking
    Personal · last shared 2026
    Eric Lawrencetextslashplain.com130 people

    The Line of Death

    Eric Lawrence
    Personal · last shared 2026