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

    ESLint Blog

    eslint.org · Company blog · on HN since 2014

    The ESLint team's official blog, with release announcements, project funding updates, and postmortems for the JavaScript linter.

    Visit blogHN submissions
    Web DevelopmentProgrammingOpen Source & Linux
    What HN says

    HN commenters name ESLint as their favorite JS linting tool, and link its post deprecating formatting rules in favor of Prettier and dprint.

    Stats for nerds
    112HN people shared it
    54linked in comments
    1.1Kstory points
    Jun 2026last shared
    2014people per year2026

    Top posts on HN

    1. 1
      Postmortem for Malicious Packages Published on July 12th, 2018
      7 people · 329 points · first shared 2018 · 155 comments on HN
    2. 2
      Future of TypeScript on ESLint
      2 people · 234 points · first shared 2019 · 85 comments on HN
    3. 3
      ESLint 7.0
      2 people · 207 points · first shared 2020 · 90 comments on HN
    4. 4
      ESLint v9.0
      2 people · 99 points · first shared 2024 · 47 comments on HN
    5. 5
      ESLint – The pluggable linting utility for JavaScript
      8 people · 55 points · first shared 2014 · 15 comments on HN
    6. 6
      What's Coming Next for ESLint
      1 person · 32 points · first shared 2024 · 18 comments on HN
    7. 7
      Welcoming JSCS to ESlint
      3 people · 25 points · first shared 2016 · Discussion on HN
    8. 8
      ESLint v2.0.0 released
      3 people · 9 points · first shared 2016 · Discussion on HN
    9. 9
      ESLint v3.0.0 released
      5 people · 8 points · first shared 2016 · Discussion on HN
    10. 10
      A year of ESLint paying contributors: Review
      4 people · 6 points · first shared 2020 · 1 comments on HN

    What HN people wrote when they linked it

    • leipertJul 2017

      Not books per se, but you are probably interested in frontend specific stuff, as you mentioned Angular and Vue. (Not directly inner workings, but somewhat linked):

      Coding Style: As a quick reference and to learn about some bad patterns (and how to avoid them), I can recommend the airbnb style guide [1]. They also link to eslint rules, which always have a reasoning why a rule is considered, e.g. the no new object rule [2]. A really interesting thing in the code style corner is prettier, which auto-formats source code pretty [3].

      References: The Mozilla Developer Reference Manual, e.g. for String.match [4]. It also has explanations for browser APIs. To check if you already can use a certain browser feature, I recommend caniuse [5]

      Now, as you also mentioned your an "old Java Programmer". I think it's quite interesting what goes on the JavaScript space and which features are ~~stolen~~ borrowed from which language. Good search queries to understand the language and it's features (especially the new ones) would be

      - Javascript Classes vs Prototype

      - Javascript Decorators

      - Javascript Arrow Functions (Lambda)

      - Node.JS Streams

      - Reactive Extensions

      - Flow vs. TypeScript

      Well I hope that some of that info is usable for you, if you have any detail questions, please just comment :)

      [1]: https://github.com/airbnb/javascript

      [2]: http://eslint.org/docs/rules/no-new-object.html

      [3]: https://github.com/prettier/prettier

      [4]:…

    • suzzer99Jul 2024

      The weird hostile attitude ESLint has about using global config really bums me out. Not everyone wants to install ESLint in every package.json. I work in more than 30 active repos. I want global eslint to just work for most of them, and specific ESLint to work for a few. This used to work fine, now it doesn't.

      https://eslint.org/docs/latest/use/getting-started

      > It is also possible to install ESLint globally, rather than locally, using npm install eslint --global. However, this is not recommended, and any plugins or shareable configs that you use must still be installed locally if you install ESLint globally.

      Which means that simple stuff like just adding the airbnb or eslint recommended settings can now only be done locally.

      More discussion here: https://github.com/eslint/eslint/issues/11914

      And here: https://github.com/jsx-eslint/eslint-plugin-react/issues/2339

      Not everyone works on giant teams where global settings that aren't part of the project become a nightmare for compatibility. We have a very small team with often just one developer doing most of the work on a project.

    • btmillsNov 2023

      > I find it frustrating that the eslint recommended presets don't document why they are recommended.

      That’s a good point. While this doesn’t address the root problem, I can share some context here as a former maintainer: browsing the core rules [1], you should see that recommended rules flag cases that are highly likely to be bugs or unnecessary constructs. Recommended rules should have false positives only in exceptional cases and be objective or near-universal consensus opinions.

      Plugins, of course, are free to choose their own threshold for their recommended configs.

      > Why isn't it in the "recommended" preset of lints?

      It will be added to recommended in v9! [2] The rule was written during one of the v8 minor versions, and adding to the recommended config is always a breaking change.

      [1]: https://eslint.org/docs/latest/rules/

      [2]: https://github.com/eslint/eslint/issues/17596

    • susamMar 2026

      Thank you. This makes a lot of sense. I need to think it through since 'let' is one of the things about modern JavaScript that I quite like, so I need to decide whether I really want to go back to using 'var' again.

      To be honest, I resisted adopting ES6 features for quite a long time because I was concerned about exactly this kind of situation, where a modern feature might not work in an older browser that is still in use. However, in 2022, prompted by ESLint's no-var rule [1], I began using ES6 features in my code [2]. Now I find myself wondering whether my earlier, more conservative approach to JavaScript might have been the better approach.

      In any case, thank you very much for following up on this thread. It has given me something to think about.

      [1] https://eslint.org/docs/latest/rules/no-var

      [2] https://codeberg.org/susam/texme/commit/8e31dbf

    • CGamesPlayNov 2023

      This is pretty compelling. Why isn't it in the "recommended" preset of lints?

      In general, I find it frustrating that the eslint recommended presets don't document why they are recommended. I disable several of the rules in all my projects because they seem to be arbitrary stylistic choices (e.g. [0], [1], [2]).

      [0] https://typescript-eslint.io/rules/no-empty-function/

      [1] https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/no-children-prop.md

      [2] Specifically checkLoops of https://eslint.org/docs/latest/rules/no-constant-condition

      [edit] In looking up no-empty-function, I saw a stack overflow post that provides a compelling alternative of using `() => undefined` instead of `() =>
      {}`, which suppresses the error. That should be shown as an example on the eslint page!

    • egorfineMay 2025

      > BiomeJS started its life as a fork of the now-defunct Rome project

      Looking at the pace of frontend development tooling I cannot help but loose trust and confidence with every step and every new release. Major ecosystem player decides to break all previous compatibility with the vast infrastructure accumulated over the years [1]; the main officially recommended linter released under a major brand goes silently abandoned [2]; etc, etc. I didn't even knew Rome died.

      A wise queen once said, "it takes all the running you can do, to keep in the same place" [3]. She meant frontend web development.

      [1] https://eslint.org/blog/2023/10/flat-config-rollout-plans/

      [2] https://github.com/airbnb/javascript/issues/2961

      [3] https://en.wikipedia.org/wiki/Red_Queen%27s_race

    Related

    Next.js Blognextjs.org271 people

    Next.js 12

    Next.js Blog
    Company · last shared 2026
    TypeScript Blogblogs.msdn.microsoft.com/typescript47 people

    Announcing TypeScript 2.0

    TypeScript Blog
    Company · last shared 2019
    Node.js Blogblog.nodejs.org97 people

    Node.js v0.8.0 [stable] is out

    Node.js Blog
    Company · last shared 2015
    V8 Blogv8project.blogspot.com98 people

    WebAssembly Browser Preview

    V8 Blog
    Company · last shared 2018
    Rust Blogblog.rust-lang.org533 people

    Announcing Rust 1.0

    Rust Blog
    Company · last shared 2026
    npm Blogblog.npmjs.org221 people

    Npm operational incident, 6 Jan 2018

    npm Blog
    Company · last shared 2025
    Open Collective Blogmedium.com/open-collective18 people

    Funding Open Source: How Webpack Reached $400k+/year

    Open Collective Blog
    Company · last shared 2021
    LogRocket Blogblog.logrocket.com242 people

    The easiest way to keep your web apps accessible: Just use text

    LogRocket Blog
    Company · last shared 2026