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
    A

    Ariya Hidayat

    ariya.ofilabs.com · Personal blog · on HN since 2011

    Ariya Hidayat, creator of PhantomJS and Esprima, writes about JavaScript engines, web performance, API design, and developer tooling.

    Visit blogHN submissions
    Web DevelopmentProgrammingLanguages & Compilers
    What HN says

    HN links it mostly for his 'boolean trap' API design post, plus pieces on ES6 syntax, V8 TurboFan, and Nix on OS X.

    Stats for nerds
    37HN people shared it
    51linked in comments
    503story points
    May 2016last shared
    2012people per year2016

    Top posts on HN

    1. 1
      Nix as OS X Package Manager
      2 people · 357 points · first shared 2016 · 204 comments on HN
    2. 2
      WebKit project hit its monumental 100,000-th check in.
      1 person · 35 points · first shared 2011 · 24 comments on HN
    3. 3
      The boolean trap or how to design bad API
      7 people · 25 points · first shared 2011 · 2 comments on HN
    4. 4
      Cloud PhantomJS on Amazon EC2
      1 person · 11 points · first shared 2012 · Discussion on HN
    5. 5
      PhantomJS 1.8 Blue Winter Rose released
      1 person · 7 points · first shared 2012 · Discussion on HN
    6. 6
      Optimizing CSS3 for GPU Compositing
      2 people · 6 points · first shared 2013 · Discussion on HN
    7. 7
      Lazy Parsing in JavaScript Engines
      1 person · 4 points · first shared 2012 · Discussion on HN
    8. 8
      Isolated Development Environment Using Nix
      1 person · 3 points · first shared 2016 · Discussion on HN
    9. 9
      Most popular JavaScript keywords
      1 person · 3 points · first shared 2012 · Discussion on HN
    10. 10
      The evolution of PhantomJS build workflow
      1 person · 3 points · first shared 2012 · Discussion on HN

    What HN people wrote when they linked it

    • e1gAug 2014

      Thank you!

      TLDR: JSX transformer makes the following ES6 features compatible with old browsers (IE8+)
      * arrow functions [http://tc39wiki.calculist.org/es6/arrow-functions/]
      * classes [https://github.com/esnext/es6-class]
      * destructuring [http://fitzgeraldnick.com/weblog/50/]
      * object concise methods [http://ariya.ofilabs.com/2013/03/es6-and-method-definitions.html]
      * rest parameters [http://tc39wiki.calculist.org/es6/rest-parameters/]
      * template strings [http://tc39wiki.calculist.org/es6/template-strings/]
      * object literal property shorthand [http://tc39wiki.calculist.org/es6/object-literal-enhancements/]

      Notably absent: default parameter values and block scoping ("let")

    • yourad_ioDec 2014

      I thought you were being facetious! In case anyone else also thought that, turbofan is a real thing: " [1]

      > Recently, Google engineers landed a new optimizing JavaScript compiler for V8, codenamed TurboFan. As the name implies, this is supposed to further improve JavaScript execution speed, likely to be better than its predecessor, Crankshaft. While TurboFan is still in its early stage, that doesn’t mean we can’t take a look at it.

      I imagine that it has to get stable for v8 first before it is even considered, but that's exactly the example of potential "more performance" in io.js

      [1] http://ariya.ofilabs.com/2014/08/javascript-and-v8-turbofan.html

    • andrewstuart2Feb 2015

      Absolutely they do. That's the major benefit of object orientation: named properties and methods.

      Otherwise, we fall into exactly the "boolean trap" that the author links away to. [1]

      [1] http://ariya.ofilabs.com/2011/08/hall-of-api-shame-boolean-trap.html

    • regularfryMay 2016

      That's not the only thing you have to trust.

      http://ariya.ofilabs.com/2016/05/nix-as-os-x-package-manager.html is served over HTTP. Saying "Copy and paste this `curl | sh` command" allows this attack: http://thejh.net/misc/website-terminal-copy-paste

    • illamintJul 2012

      I think they're both using Nitro (depending on who you ask: http://ariya.ofilabs.com/2012/06/nitro-javascriptcore-and-jit.html), but UIWebViews don't have JIT compilation turned on (no executable memory pages allowed in iOS apps), so they're slower.

    • insinFeb 2015

      It's ES6 shorthand literal syntax [1], equivalent to:

      module.exports = { route: route, routes: routes };

      [1] http://ariya.ofilabs.com/2013/02/es6-and-object-literal-property-value-shorthand.html

    Related

    SurviveJSsurvivejs.com35 people

    Interview with the author of React-like Inferno about JavaScript optimisations

    SurviveJS
    Personal · last shared 2023
    Atlassian Developer Blogdeveloper.atlassian.com115 people

    A better pull request

    Atlassian Developer Blog
    Company · last shared 2026
    Vyacheslav Egorovmrale.ph102 people

    Maybe you don't need Rust and WASM to speed up your JS

    Vyacheslav Egorov
    Personal · last shared 2026
    Artima Developerartima.com464 people

    Google Groups Data To Be Destroyed

    Artima Developer
    Publication · last shared 2026
    codeburst.iocodeburst.io174 people

    Google’s Flutter = React and Java Swing

    codeburst.io
    Publication · last shared 2023
    V8 Blogv8.dev272 people

    The cost of parsing JSON

    V8 Blog
    Company · last shared 2026
    Subbu Allamarajusubbu.org43 people

    Don't build private clouds

    Subbu Allamaraju
    Personal · last shared 2026
    leafoleafo.net73 people

    Lapis – A Lua, Moonscript Framework built on OpenResty

    leafo
    Personal · last shared 2025