Heydon Pickering

heydonworks.com · Personal blog · on HN since 2012

Heydon Pickering writes about front-end web development, accessibility, CSS, progressive enhancement, and writing less code.

What HN saysHN commenters link his 'Poisoning Well' piece, the poisoned version of an article aimed at scrapers, and his critique of ARIA's aria-controls and screen reader support.
45HN people shared it
10linked it in comments
45stories submitted
1.4Kstory points
10 months agolast shared
2012people per year2026

Most-shared posts

  1. 1
    Testing HTML with Modern CSS
    6 people · 10 points · first shared 2024 · discussion on HN
  2. 2
    The Problem with Full Stack
    5 people · 45 points · first shared 2018 · 22 comments on HN
  3. 3
    Writing Less Code
    3 people · 587 points · first shared 2016 · 200 comments on HN
  4. 4
    Please disable JavaScript to view this site
    3 people · 252 points · first shared 2020 · 268 comments on HN
  5. 5
    Aria-Controls is Poop
    3 people · 3 points · first shared 2016 · discussion on HN
  6. 6
    Poisoning Well
    2 people · 120 points · first shared 2025 · 127 comments on HN
  7. 7
    Progressive Enhancement Makes Me Sad
    2 people · 59 points · first shared 2016 · 60 comments on HN
  8. 8
    Developer Fallacies
    2 people · 23 points · first shared 2016 · 2 comments on HN
  9. 9
    Font Hacking
    2 people · 10 points · first shared 2013 · discussion on HN
  10. 10
  11. 11
    Confessions of a CSS Expert
    2 people · 4 points · first shared 2014 · discussion on HN
  12. 12
    What Is a Single-Page Application?
    2 people · 4 points · first shared 2024 · discussion on HN
  13. 13
    Shit Yourself
    2 people · 2 points · first shared 2023 · discussion on HN
  14. 14
    Poisoning well
    2 people · first shared 2025
  15. 15
    Tetris and The Power Of CSS
    1 people · 220 points · first shared 2013 · 46 comments on HN

What HN people wrote when they linked it

robocat · 2025-09-06
Humans have been refining their gibberish for centuries. I admire your idealism that "the real thing" is coherently different from good gibberish. The poisoned version of the same article is great: https://heydonworks.com/nonsense/poisoning-well/ (I love me some surrealism so gibberish is something I sometimes choose to input into my own model in my head). The scary part of AI is that it shows how crappy most of the training material is.
g5095 · 2020-11-29
currently exploring view-source:https://heydonworks.com/ by deconstructing the rendered source and injecting the output back into the body..
1vuio0pswjnm7 · 2022-10-09
"In some cases, however, these banners can serve as trackers themselves, as they engage in a privacy-breaching data exchange before the user even has a chance to opt out." See, e.g., https://arxiv.org/abs/2102.08779v1 Blocking the banners, which generally require Javascript to function, is enough to stop consent, but keeping Javascript enabled still enables and/or strengthens the ability to track. No doubt JS is on by default in Brave. Can it be disabled globally for all websites or only on a site-by-site basis. The project was co-founded by the creator of Javascript. There will be people who make statements such "Disabling Javascript breaks every website." What they will not admit is that it breaks various tactics, including but not limited to cookie banners, used in tracking. And it breaks online advertising as a "business model". "Tech" companies have vested interests in Javascript remaining enabled. Dark patterns are used to ensure it stays on. This is unfortunate for all the legitimate uses of JS and the websites who only use JS responsibly. https://heydonworks.com/ The above website "breaks" if Javascript is enabled. It demonstrates that so-called "modern" browsers running Javascript allow website developers to play games with website visitors. They can try to make visitors enable or disable Javascript by causing them to believe something will not "work". Meanwhile, I use a 1.3MB static binary text-only browser that does not run Javascript, store cookies,…
isleyaardvark · 2025-10-31
Screen readers have and continue to lag in implementing standards designed specifically for accessibility, so I would say they are obviously not sophisticated enough. (One example: https://heydonworks.com/article/aria-controls-is-poop)
nvader · 2025-09-05
A link to the poisoned version of the same article: https://heydonworks.com/nonsense/poisoning-well/
scandox · 2019-01-04
He's quoting someone else though he is agreeing with them. The full quote is: > We need to address the undervaluing of HTML and CSS for what it is: gender bias. Even though we wouldn’t have computer science without pioneering women, interloping men have claimed it for themselves. Anything less than ‘real programming’ is now considered trivial, silly, artsy, female. That attitude needs to eat a poisoned ass. And it's from this link: http://www.heydonworks.com/article/reluctant-gatekeeping-the-problem-w… I admit I don't understand the point. I haven't experienced this perception of HTML/CSS as something "trivial, silly, artsy, female". It's possible though that this does exist? In some places? I mean people do have a tendency to think of what they're good at as superior to the things they're bad at...and loads of programmers are really bad at HTML/CSS.
technojunkie · 2016-08-29
When you fork a Github project, you'll have to examine the code to see what it's doing and how. With HTML and CSS, it's mostly visual but you can find improvements on semantics or simplifying what's there. If you can improve performance by rewriting a javascript function into CSS, such as animations, submit a pull request with your suggestions. With Javascript, look for bugs and improve the code that's written. Javascript easily becomes a mess and is often referred to as spaghetti code when it becomes hard to manage. Overall, look for ways to simplify the code, even if it means more code overall although usually it means less code. Two examples: https://philipwalton.com/articles/untangling-deeply-nested-promise-cha… http://www.heydonworks.com/article/on-writing-less-damn-code
heydonworks · 2012-09-04
My two icon font sets (a generic set and a complementary set for app designers) have been hinted using Font Squirrel's algorithm. You may find these of some use: http://www.heydonworks.com/article/an-app-icon-font

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close