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
    N

    Nihilogic

    blog.nihilogic.dk · Personal blog · on HN since 2008

    Jacob Seidelin writes about JavaScript and HTML5 canvas experiments, including games, image tricks, and a ray casting engine.

    Visit blogHN submissions
    Web DevelopmentProgramming
    What HN says

    HN links it for the technique of compressing JavaScript into PNG images, and for canvas demos like Super Mario Kart.

    Stats for nerds
    23HN people shared it
    22linked in comments
    375story points
    Feb 2014last shared
    2008people per year2014

    Top posts on HN

    1. 1
      Genetic algorithms, Mona Lisa and JavaScript + Canvas
      1 person · 93 points · first shared 2013 · 21 comments on HN
    2. 2
      Playable Mario Game as a blog background
      2 people · 67 points · first shared 2009 · 20 comments on HN
    3. 3
      HTML5 Canvas Cheat Sheet
      3 people · 57 points · first shared 2009 · 3 comments on HN
    4. 4
      Play Super Mario in 14kb Javascript
      1 person · 51 points · first shared 2008 · 13 comments on HN
    5. 5
      2008 - A Year of JavaScript
      1 person · 33 points · first shared 2009 · 6 comments on HN
    6. 6
      Javascript Super Mario Kart
      2 people · 29 points · first shared 2008 · 6 comments on HN
    7. 7
      Reading EXIF data with Javascript
      1 person · 10 points · first shared 2008 · Discussion on HN
    8. 8
      House of Canvas: Radiohead meets JavaScript
      1 person · 8 points · first shared 2008 · Discussion on HN
    9. 9
      JavaScript Compression using Canvas and PNG-embedded data
      5 people · 4 points · first shared 2008 · Discussion on HN
    10. 10
      JuicyDrop: Canvas music visualization
      1 person · 4 points · first shared 2009 · Discussion on HN

    What HN people wrote when they linked it

    • e1venAug 2009

      The CANVAS tag allows per pixel placement. It's what makes things like this possible.

      From the Source-

      This file is part of the article series by Jacob Seidelin about
      creating a ray casting engine with JavaScript, DOM and Canvas.

      If you have questions or comments, please contact the author at
      either jseidelin@nihilogic.dk or http://blog.nihilogic.dk/

      The code samples here are freely available under the MIT license.
      See: [http://www.nihilogic.dk/licenses/mit-license.txt]

      The graphics for sprites and walls are property of id Software.

    • rsxziFeb 2014

      This technique has been around since prior to 2008 at least, the biog entry below introduced the code[1], along with providing a tool to compress your js into an image using ruby [2].

      The technique has a legitimate use as a suave compression method and was termed "super packing" in 2011 [3]

      [1]http://blog.nihilogic.dk/2008/08/imageinfo-reading-image-metadata-with.html

      [2]http://www.nihilogic.dk/labs/canvascompress/

      [3]http://daeken.com/superpacking-js-demos

    • ohwpMay 2013

      Also: setting up a webserver with over 1TB of storage is probably simpler, faster and more reliable.

      I also think in this case the hack is a little useless. But I've seen examples where they use it to transfer a lot of 3D data for use in WebGL. And the author of this script is also linking to a nice usecase where is is used for game data:
      http://blog.nihilogic.dk/2008/05/compression-using-canvas-and-png.html

    • sjsAug 2010

      Of course not! But if there's no use case then this is getting an awful lot of buzz for no real reason other than Ajaxian running a story on it, considering that it's not that new. http://blog.nihilogic.dk/2008/05/compression-using-canvas-and-png.html

      It's been on reddit or hacker news before, this year iirc.

    • icebrainingJan 2012

      Well, in this case the information is a JPEG file, so it should look good as a PNG image ;)

      But more to the point, there's a guy who stored JS code in PNG images[1], and any binary string could be used instead.

      [1]: http://blog.nihilogic.dk/2008/05/compression-using-canvas-and-png.html

    • psawayaFeb 2010

      If you're interested in HTML canvas, and want to get started quickly, you should look into processing.js: http://processingjs.org/

      Otherwise, this "cheat sheet" helped me the most: http://blog.nihilogic.dk/2009/02/html5-canvas-cheat-sheet.html

    Related

    Jacob Seidelinnihilogic.dk22 people

    JavaScript Super Mario Kart

    Jacob Seidelin
    Personal · last shared 2014
    Jonoscriptjonoscript.wordpress.com23 people

    GMail: designer arrogance and the cult of minimalism

    Jonoscript
    Personal · last shared 2021
    jwzjwz.org880 people

    Watch a VC use my name to sell a con

    jwz
    Personal · last shared 2026
    Jake Archibaldjakearchibald.com191 people

    I discovered a browser bug

    Jake Archibald
    Personal · last shared 2026
    Wolfram Blogblog.wolfram.com225 people

    The solution of the Zodiac killer’s 340-character cipher

    Wolfram Blog
    Company · last shared 2026
    Scirra Blogscirra.com46 people

    Bitcoin's UK future looks bleak

    Scirra Blog
    Company · last shared 2021
    Code Incompletecodeincomplete.com20 people

    How to build a racing game

    Code Incomplete
    Personal · last shared 2023
    PhobosLabphoboslab.org123 people

    QOI: Lossless Image Compression in O(n) Time

    PhobosLab
    Personal · last shared 2026