Nicholas C. Zakas

humanwhocodes.com · Personal blog · on HN since 2018

Nicholas C. Zakas, a software engineer and author of JavaScript books, writes about JavaScript, engineering careers, and his own experience.

What HN saysHN commenters thank him for his JavaScript books, cite his essay on why engineers are grumpy, and point to his Lyme disease post and AI programming approach.
32HN people shared it
9linked it in comments
32stories submitted
1.1Kstory points
5 months agolast shared
2018people per year2026

Most-shared posts

  1. 1
  2. 2
    Fsx: A modern filesystem API for JavaScript
    4 people · 10 points · first shared 2024 · discussion on HN
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
    I have lyme disease
    2 people · first shared 2018
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
    Mentoss: The Fetch Mocker
    1 people · 2 points · first shared 2025 · discussion on HN
  13. 13
  14. 14
  15. 15
    Someone temporarily took over my subdomain
    1 people · 2 points · first shared 2024 · discussion on HN

What HN people wrote when they linked it

TimTheTinker · 2019-06-25
Shout-out to Nicholas Zachas (@slicknet, https://humanwhocodes.com). Thanks for the great JavaScript books, and praying you feel better!
MangoCoffee · 2025-08-14
LOL. I just want to try out vibe coding on something small with a persona based appoarch described here: https://humanwhocodes.com/blog/2025/06/persona-based-approach-ai-assis…
stefanos82 · 2023-05-20
You reminded me the case of Nicholas Zakas [1]. Please read it carefully and make an appointment to your personal doctor to check you for lyme disease; it matches your case since you have mentioned the number of years you are dealing with this chronic issue. https://humanwhocodes.com/blog/2014/04/02/i-have-lyme-disease/
jayflux · 2021-11-26
These APIs didn’t all come out the same time, so they weren’t designed to differ. Instead they decided against doing live node lists in future but couldn’t change how the older methods work as that would break websites. In the world of DOM/JS you can’t really make breaking changes. https://humanwhocodes.com/blog/2010/09/28/why-is-getelementsbytagname-… Has more context
mhagmajer · 2020-05-25
eval( <javascript> ) is terrible at ensuring security. Query programs are executed against the same environment as your own programs! ask { <askscript> } runs on AskVM which is a separate execution context that you define yourself with the exact set of resources, values and limits the each incoming program needs. AskVM is currently implemented in JavaScript. We plan to port it to Python, C and AskScript very soon. Check out https://humanwhocodes.com/blog/2010/10/26/wanted-dynamic-execution-con… to learn more about this subject. Sorry to have taken almost an hour to get back to you, we're talking with a few people at the moment. The code is live for 6 hours already. Marcin Hagmajer ~ AskQL Core Team, xFAANG
9wzYQbTYsAIc · 2019-09-05
> 1) Make it their time 2) Mentor the whole person 3) Don’t give answers, provide strategies 4) Give homework 5) Don’t prevent all mistakes, just horrible ones 6) Don’t try to create a you-clone https://humanwhocodes.com/blog/2014/01/07/how-to-be-a-mentor/
HFE_C282Y · 2018-10-31
He remarks here (https://humanwhocodes.com/blog/2014/04/02/i-have-lyme-disease/) that his health has been poor for the last (now) 19 years. Having contracted Lyme roughly 9 years ago myself, I can empathize with him. The effects never truly go away.
1vuio0pswjnm7 · 2023-07-30
"By analogy: right now, you can tell your browser to change its User-Agent string to anything you want." You can also not send this header. By default I do not send it. The RFCs do not require it^1 and very rarely do I find sites that do. When I do find such sites,^2 I just add them to the proxy config so that a UA is added on the way out. Almost invariably these sites will accept a made-up UA, so long as it is well-formed, which is interesting.^3 It suggests no one knows what new UA strings will appear. The origin of changing the User-Agent header dates back to one of the earliest browsers, written in part by a well-known Silicon Valley VC.^4 It was always possible for the user to control HTTP headers such as UA and the designers knew it. Later in the "browser wars" on Microsoft changed its UA header to match Mozilla.^5 1. https://towardsdatascience.com/the-user-agent-that-crazy-string-underp… 2. For example, www.federalregister.com and sec.gov. 3. Many users want to "blend in" and use common strings so perhaps use of made-up strings remains largely untested. 4. https://raw.githubusercontent.com/alandipert/ncsa-mosaic/master/mosaic… 5. https://webaim.org/blog/user-agent-string-history/comment-page-1/ https://humanwhocodes.com/blog/2010/01/12/history-of-the-user-agent-st… As for WEI, I'm inclined to think that the terms "abuse" and "fraud" in the spec may actually refer to ad fraud,…

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