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

    John Resig

    ejohn.org · Personal blog · on HN since 2007

    John Resig, creator of jQuery and former Khan Academy engineer, writes about JavaScript, programming education, and developer habits.

    Visit blogHN submissions
    ProgrammingWeb DevelopmentProductivity
    What HN says

    Commenters repeatedly credit his "Write Code Every Day" post for building a daily coding habit, and cite his JavaScript and trie analyses as worth reading.

    Stats for nerds
    275HN people shared it
    221linked in comments
    9.5Kstory points
    Nov 2016last shared
    2009people per year2016

    Top posts on HN

    1. 1
      Write Code Every Day
      9 people · 1K points · first shared 2014 · 216 comments on HN
    2. 2
      Learning Advanced JavaScript
      36 people · 990 points · first shared 2008 · 55 comments on HN
    3. 3
      John Resig joins the Khan Academy
      2 people · 585 points · first shared 2011 · 73 comments on HN
    4. 4
      John Resig: Redefining the Introduction to Computer Science at Khan Academy
      11 people · 480 points · first shared 2012 · 119 comments on HN
    5. 5
      10th Anniversary of JQuery
      1 person · 403 points · first shared 2016 · 100 comments on HN
    6. 6
      Eulogy to _why
      4 people · 318 points · first shared 2009 · 92 comments on HN
    7. 7
      John Resig: JavaScript as a First Language
      4 people · 309 points · first shared 2011 · 216 comments on HN
    8. 8
      Google Groups is Dead
      4 people · 259 points · first shared 2009 · 67 comments on HN
    9. 9
      WebKit is the jQuery of Browser Engines
      4 people · 252 points · first shared 2013 · 204 comments on HN
    10. 10
      Using Waifu2x to Upscale Japanese Prints
      2 people · 245 points · first shared 2015 · 64 comments on HN

    What HN people wrote when they linked it

    • khalilravannaJan 2015

      Practice as a habit.

      Practicing something repeatedly, preferably every day, is the best way to get better at something. I started programming every day after being inspired by a blog post by John Resig that got posted to HN [1]. I started a game that I've been working on for 245 days straight. I started with almost no knowledge of game programming and now have, I dare say, a playable game. Github really helped with this because you get a nice display of your commit history over the past year that gives an incentive to not break the chain [2].

      I've been able to apply this to other skills I've wanted to get better at: relearning how to play the piano, making music, working out, etc. and have seen great results.

      1. [http://ejohn.org/blog/write-code-every-day/]
      2. [http://i.imgur.com/6zq1IbJ.png]

    • EdSharkeyDec 2013

      In my opinion, a zen master should be able to declare classes, extend them, do mixins, construct one off instances and synthetic classes, access super class' methods the old school way, etc without helper functions like the ones listed in the article. Be able to use and master the tools the language gives you.

      Don't be afraid of the language; but do acknowledge that it is a toy language with lots of invisible death traps. Establish a coding convention that lets your team build and test large scale applications effectively. If that includes helpers and tools, (I like Resig's class.js myself, http://ejohn.org/blog/simple-javascript-inheritance/) then great! Just please make sure the team can do it all without the helpers so that they understand all that is possible.

    • jones1618Oct 2012

      Just because a problem has been "solved" for one platform (Fast PC's w/ Gigabytes of ram/disk) doesn't mean it is solved for all platforms (Web apps for phones/tablets, etc).

      John Resig (of jQuery and Khan Academy fame) had a really interesting thread on creating a fast-loading (i.e. small, efficient) dictionary for a JavaScript app. http://ejohn.org/blog/revised-javascript-dictionary-search/

      The comments have some really clever ideas for encoding the dictionary and Resig weighs in on his favorite solution with informative data. There's an interesting "Succinct Trie" data structure that turns a 620K dictionary into a 220K string that doesn't need to be decoded to be searched.
      http://stevehanov.ca/blog/index.php?id=120

    • scottyallenDec 2012

      This would be a great demo to see running in a responsive programming environment, ala Bret Victor's amazing Inventing on Principle talk (http://vimeo.com/36579366). I want to be able to click on hex values and get a color picker that updates the demo in realtime, and be able to click on various magic numbers and drag a slider to change them.

      Incidentally, Bret Victor's talk was the starting point for Khan Academy's CS curriculum that John Resign led (http://ejohn.org/blog/introducing-khan-cs/).

      Edit: I managed to get this running in livecoding.io, which does some of what Bret Victor was talking about (basic sliders and color pickers): http://livecoding.io/4191583. Not sure why it's running so much slower though...

    • dschoonJul 2009

      I have great admiration for the amount of time and precision put into this article--as well as Amazon's relentless, cold, uncool devotion to optimization.

      These meditations on A/B optimization reminded me of a genetic algorithm-based A/B testing framework mentioned not too long ago: http://ejohn.org/blog/genetic-ab-testing-with-javascript/ (I'd link to Genetify itself, but there's no homepage, just the demo)

      An interesting thought: Why hasn't this caught on? Machines are good at exactly the things A/B testing aims at: measuring performance, permuting a test-matrix, and reporting on the results. This is not to say Genetify is the answer, but rather that I rarely hear of conversion optimization from developers.

    • invisibleMar 2010

      I don't know - I love PHP classes but I'd love to see PHP with prototype-style inheritance (if PHP had classes for strings, etc. in respect to basic variable types). I think the "everything is an object" route is great and coupling that with prototypes exemplifies that decision's greatness.

      However, I really do think that JavaScript needs all of the great things ECMA 5 displays first and foremost (such as strict mode, getters/setters/enumerable/configurable/writable for property descriptors).

      John Resig does an excellent job of summing up ECMA 5 pragmatically (it truly must be great to work on JavaScript stuff as a day job): http://ejohn.org/blog/ecmascript-5-objects-and-properties/

    Related

    Andrew Kelleyandrewkelley.me155 people

    Statically Recompiling NES Games into Native Executables with LLVM and Go

    Andrew Kelley
    Personal · last shared 2026
    Jonoscriptjonoscript.wordpress.com23 people

    GMail: designer arrogance and the cult of minimalism

    Jonoscript
    Personal · last shared 2021
    Chas Emerickcemerick.com35 people

    100% time

    Chas Emerick
    Personal · last shared 2025
    Code of Robcodeofrob.com35 people

    You have ruined JavaScript

    Code of Rob
    Personal · last shared 2022
    Ben Almanbenalman.com35 people

    JQuery BBQ: Back Button & Query Library

    Ben Alman
    Personal · last shared 2025
    Nihilogicblog.nihilogic.dk23 people

    Genetic algorithms, Mona Lisa and JavaScript + Canvas

    Nihilogic
    Personal · last shared 2014
    John D. Cookjohndcook.com648 people

    Organizing complexity is the most important skill in software development

    John D. Cook
    Personal · last shared 2026
    John Regehrblog.regehr.org401 people

    Teaching C

    John Regehr
    Personal · last shared 2026