Work in progress: 181,232 of 181,233 sites checked so far, more every week · updated 2 Nov 2026Missing a blog? Tell us

Top all-time · #494

G

Gregory Szorc

Personal blog · gregoryszorc.com/blogprogrammingsystems

Gregory Szorc's personal blog at gregoryszorc.com covers programming and systems. Since 2012, 119 different Hacker News readers have linked it 174 times, most often “Surprisingly Slow”. It is still writing: the last post was on 2024-12-03, and you can follow it by feed.

Visit the blog
174mentions?
7recommend?
119HN people?
2012–2026first – last linked?
Links on Hacker News per year · peak 23 in 2024

Sometimes recommended · 7 of 40 sampled comments recommend it?

Why HN links it

HN readers link Gregory Szorc's posts on Mercurial, zstd compression, CI design, and Python standalone builds, usually to back a point or to recommend a read.

Recommended for · 7 comments
One commenter calls a CI article 'the best' read; another calls a zstd article 'good' and a piece 'well written'.1234567

Summarised by Claude from a sample of 40 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.

Most-linked posts?

  1. Surprisingly Slow
    8 people · 10 mentions · first linked 2021-04-06
  2. Mercurial’s journey to and reflections on Python 3
    7 people · 9 mentions · first linked 2020-01-13
  3. Absorbing commit changes in Mercurial 4.8
    7 people · 8 mentions · first linked 2018-11-05
  4. Self-contained highly-portable Python distributions
    7 people · 8 mentions · first linked 2024-04-15
  5. Modern CI is too complex and misdirected (2021)
    6 people · 9 mentions · first linked 2021-04-07
  6. Problems with Pull Requests and How to Fix Them
    6 people · 7 mentions · first linked 2020-01-08
  7. /blog/2017/03/07/better-compression-with-zstandard/
    6 people · 7 mentions · first linked 2021-05-14
  8. Pure Rust Implementation of Apple Code Signing
    5 people · 5 mentions · first linked 2021-04-14
  9. High-Level Problems with Git and How to Fix Them
    4 people · 5 mentions · first linked 2017-12-11
  10. Comparing the Security and Privacy of Browser Syncing
    4 people · 4 mentions · first linked 2012-04-09

What Hacker News says?

  1. Obviously not? But there are trustworthy people working with and integrating that code, there's a good chance they'll notice a hinky commit, and they're very close to having completely reproducible builds—which means that there can be verification that the shipped binary matches the inspected source. https://gregoryszorc.com/blog/2018/06/20/deterministic-firef...

    Comment linking /blog/2018/06/20/deterministic-firefox-builds/

    on “All extensions disabled due to expiration of intermediate signing cert”
  2. Submitted Surprisingly Slow as a story · 559 points

    HN discussion
  3. > There's three "versions" of the code at play, if you will: > * the most recent commit > * the staged files > * the working directory This is weird. The staging area is like a commit but not a commit. They're changes that git is aware of and has a record of but not quite a permanent record. Why not just make it a commit? You can always keep editing commits, or throw them out, or whatever. That's what I do with Merc…

    Comment linking /blog/2017/12/11/high-level-problems-with-git-and-how-to-fix-them/

    on “Oh shit, git: Getting myself out of bad situations”
  4. Submitted Mercurial’s journey to and reflections on Python 3 as a story · 411 points

    HN discussion
  5. I certainly recognized several Mercurial features and concepts in Sapling. For example, I use Mercurial’s absorb command [1] and was pleased to see it in Sapling. Overall this looks promising. [1]: https://gregoryszorc.com/blog/2018/11/05/absorbing-commit-ch...

    Comment linking /blog/2018/11/05/absorbing-commit-changes-in-mercurial-4.8/

    on “Sapling: A new source control system with Git-compatible client”
  6. Submitted High-Level Problems with Git and How to Fix Them as a story · 391 points

    HN discussion
  7. Not sure if it's better or not, but Mercurial has a concept called the RevLog[0]. A basic overview of it is here[1]. It sounds like the revlog format can become corrupted from time-to-time, but it's pretty rare now adays. [0] http://mercurial.selenic.com/wiki/RevlogNG [1] http://ericsink.com/vcbe/html/repository_structure.html EDIT: another blog explaining revlog format: http://gregoryszorc.com/blog/2014/02/05/the-m…

    Comment linking /blog/2014/02/05/the-mercurial-revlog/

    on “Go is moving to GitHub”
  8. Submitted Achieving an open-source implementation of Apple Code Signing and notarization as a story · 309 points

    HN discussion
  9. The reason is due to file system filters, of which Windows Defender is always there. There is a significant delay from Defender when performing CloseFile()[0]. > As I was looking at the raw system calls related to I/O, something immediately popped out: CloseFile() operations were frequently taking 1-5 milliseconds whereas other operations like opening, reading, and writing files only took 1-5 microseconds. That's a…

    Comment linking /blog/2015/10/22/append-i/o-performance-on-windows/

    on “Windows NT vs. Unix: A design comparison”
  10. Submitted Better Compression with Zstandard as a story · 250 points

    HN discussion
  11. rtpg · 2022-08-22Recommends
    But _we don't need to ask users to do this_. We can just do "the obvious thing". We're talking about usability here, of course the fundamental features are available in Git. It's Git! Here [0] is a more well written out version of this idea (by a developer of Mercurial). [0] https://gregoryszorc.com/blog/2020/01/07/problems-with-pull-...

    Comment linking /blog/2020/01/07/problems-with-pull-requests-and-how-to-fix-them/

    on “Brian Kernighan adds Unicode support to Awk”
  12. Submitted Modern CI is too complex and misdirected (2021) as a story · 212 points

    HN discussion
  13. The thing that put me off of Rye is that it strongly encourages you to use non-standard Python builds. From their philosophy page: https://rye.astral.sh/philosophy/ > No Python Binary Distributions: CPython builds from python.org are completely inadequate. On some platforms you only get an .msi installer, on some you literally only get tarballs. The various Python distributions that became popular over the years are…

    Comment linking /docs/python-build-standalone/main/

    on “Rye: A Hassle-Free Python Experience”
  14. Submitted Modern CI is too complex and misdirected as a story · 208 points

    HN discussion
  15. Replacing lz4 with zstd will give you half the speed, with just better compression. https://gregoryszorc.com/blog/2017/03/07/better-compression-...

    Comment linking /blog/2017/03/07/better-compression-with-zstandard/

    on “Porting my JavaScript game engine to C for no reason”
  16. Submitted Building Standalone Python Applications with PyOxidizer as a story · 179 points

    HN discussion
  17. Details here: - https://gregoryszorc.com/blog/2024/12/03/transferring-python... - https://astral.sh/blog/python-build-standalone

    Comment linking /blog/2024/12/03/transferring-python-build-standalone-stewardship-to-astral/

    on “Uv's killer feature is making ad-hoc environments easy”
  18. Submitted Notes from Facebook's Developer Infrastructure at Scale F8 Talk as a story · 162 points

    HN discussion
  19. No problem. That's not to say they aren't downsides. https://gregoryszorc.com/docs/python-build-standalone/main/q... documents them. As an example I had to add the https://pypi.org/project/gnureadline/ package to a work project that had its own auto completing shell because by default the builds replaces the gnu readline package with lived it/edit line and they're far from a drop in replacement.

    Comment linking /docs/python-build-standalone/main/quirks.html

    on “Uv's killer feature is making ad-hoc environments easy”
  20. Submitted An open-source implementation of Apple code signing and notarization (2022) as a story · 149 points

    HN discussion
  21. Its not from some random github project its from a trusted member of open source community. Same as other libraries you use and install. It was used by rye before rye and uv sort of merged and is used by pipx and hatch and mise (and bazel rules_python) https://x.com/charliermarsh/status/1864042688279908459 My understanding is that the problem is that psf doesnt publish portable python binaries (I dont think they eve…

    Comment linking /blog/2024/12/03/transferring-python-build-standalone-stewardship-to-astral/

    on “Uv's killer feature is making ad-hoc environments easy”
  22. Submitted Avoid Git LFS if possible as a story · 143 points

    HN discussion
  23. uv is great, but downloading and installing base python interpreter is not a good feature as it doesn’t fetch that from PSF but from a project on GitHub, that very same project says this is compiled for portability over performance, see https://gregoryszorc.com/docs/python-build-standalone/main/

    Comment linking /docs/python-build-standalone/main/

    on “Uv's killer feature is making ad-hoc environments easy”
  24. Submitted Global Kernel Locks in APFS as a story · 141 points

    HN discussion
  25. I would avoid using this feature! It downloads a compiled portable python binary from some random github project not from PSF. That very same github project recommends against using their binary as the compilation flags is set for portability against performance. See https://gregoryszorc.com/docs/python-build-standalone/main/

    Comment linking /docs/python-build-standalone/main/

    on “Uv's killer feature is making ad-hoc environments easy”
  26. Submitted Mercurial 3.5 Released as a story · 140 points

    HN discussion
  27. markdog12 · 2022-08-20Recommends
    Good article on zstd: https://gregoryszorc.com/blog/2017/03/07/better-compression-...

    Comment linking /blog/2017/03/07/better-compression-with-zstandard/

    on “AWS switch from gzip to zstd – about 30% reduction in compressed S3 storage”
  28. Submitted Rust is for Professionals as a story · 138 points

    HN discussion
  29. NTFS is perfectly fine at handling small files and performs on-par with other modern file systems. The issue is Defender in sync mode/other AV/other file system filters. DevDrive as noted by default uses an async scanning technique as well as ReFS. ReFS will suffer the exact same performance issues with Defender (or other AV/other file system filters) doing its thing when running in sync mode, which it does by defau…

    Comment linking /blog/2021/04/06/surprisingly-slow/

    on “SQLite: 35% Faster Than the Filesystem”
  30. Submitted PyOxidizer 0.8 as a story · 133 points

    HN discussion

Search all of HN for gregoryszorc.com

Linked by the same people?