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
    J

    Josh on Design

    joshondesign.com · Personal blog · on HN since 2011

    Josh Marinacci, a software developer and designer, writes about user interfaces, desktop operating systems, programming languages and GUI toolkits.

    Visit blogRSSHN submissions
    Design & UXProgrammingLanguages & Compilers
    What HN says

    HN commenters link it for his Ideal OS posts, the Ohm parser work, and Swing and language design discussions.

    Stats for nerds
    32HN people shared it
    52linked in comments
    1.6Kstory points
    Mar 2026last shared
    2013people per year2026

    Top posts on HN

    1. 1
      Ideal OS: Rebooting the Desktop Operating System
      3 people · 739 points · first shared 2017 · 340 comments on HN
    2. 2
      Why You Can't Build a Smartphone
      3 people · 245 points · first shared 2013 · 173 comments on HN
    3. 3
      Why You Should Hire an Old Programmer
      1 person · 217 points · first shared 2017 · 184 comments on HN
    4. 4
      Why don't we have Wayland on Raspberry Pi yet? (2018)
      2 people · 185 points · first shared 2019 · 250 comments on HN
    5. 5
      Typographic Programming Language
      3 people · 107 points · first shared 2014 · 73 comments on HN
    6. 6
      iframe, you are dead to me
      1 person · 11 points · first shared 2012 · 11 comments on HN
    7. 7
      60sec Review: Rust Language – why it is so popular
      1 person · 11 points · first shared 2015 · Discussion on HN
    8. 8
      Over 40 Years, Has Software Gotten Better or Worse?
      1 person · 10 points · first shared 2015 · 6 comments on HN
    9. 9
      An open letter to language designers: Kill your sacred cows.
      1 person · 8 points · first shared 2012 · 9 comments on HN
    10. 10
      HTML Canvas: Deep Dive
      2 people · 5 points · first shared 2021 · Discussion on HN

    What HN people wrote when they linked it

    • sysdyneAug 2017

      Meant 0.90 cents.
      "Why isn't the internet more simple?"

      I guess it's the same reason why we don't use modularity in operating systems and applications. We have gotten used to how things have been done until now.
      Recommend reading this article since this ideas have been in my head for some time.

      https://joshondesign.com/2017/08/18/idealos_essay

      Disclaimer: this isn't my article.

      Doesn't mean that this things can't be disrupted.

      "Indexing data is hard. There isn't enough value for every given website to do it."

      Well a lot of websites have their own search feature and a modular FOSS search engine wouldn't be out of the question. The database would need to figure out what is the context of the content and then tag those contents.
      The data could be feed to a repository or pass around different computers if we would use a decentralized protocol.

      Given the modular nature of the system you could be hooked to more than one repository and your application would only need to figure out if the data feed is a duplicate and sort the content by metadata.

      I'm curious to what would the web look like if a large numbers of websites decided that they don't want Google. A verification system would also be need to verify that no one website tempers with it's data in order to rank higher in the results.

      Then again this would be a very modular experience so you would have a lot of choices regarding verification systems,wall crawlers, database repositories.
      True, the last part is true,…

    • pjmlpAug 2017

      A bit, yes.

      Like in any GUI toolkit, one needs to have the taste and knowledge how to make into reality the wishes of a designer, or be a designer themselves.

      On Swing's case taking the effort of reading books like "Filthy Rich Clients" and "Swing Hacks: Tips and Tools for Killer GUIs".

      http://filthyrichclients.org/

      https://joshondesign.com/c/writings

      And be aware of cool 3rd party components like http://www.jgoodies.com/

      The biggest problem with Swing is that Sun wasn't that good understanding the desktop, so although Swing is quite capable it has lousy defaults, like requiring the native look and feel to be explicitly configured, or making it too easy to run everything on the main thread.

      On JavaFX's case, it is easier to use, but similar to using QML, XAML or the Web.

      Following blogs like FX Experience http://fxexperience.com/ helps discovering cool components.

      For those that care about UI/UX, GUI programming is graphics programming.

      There is only so much that the default controls can do in any toolkit, extending them, customizing how they behave, or even creating them from scratch requires knowledge of graphics programming, because in the end you are putting pixels into the screen.

    • turtletontineJun 2021

      Update: I'm skimming here (https://jaredforsyth.com/posts/whats-cool-about-unison/) and here (https://joshondesign.com/2012/04/09/open-letter-language-designers) and I see Unison is serious about not having raw text source code as the ground truth. I'm intrigued but don't totally understand yet.

      I'm sure this analogy is technically incorrect but: This reminds me of Smalltalk and old Lisps on mainframes shared by many researchers where the main thing was the VM image, not an object file. Though the probably kept the source code around? At a gut level getting rid of source code makes me uncomfortable but I'm ready to learn more.

      PS sorry for the ugly raw links I'm on my phone

    • hawskiMar 2017

      Does implementing TCP/IP stack using the RFC (as in parsing diagrams straight from RFC) counts?

      Then it was done in OMeta [1].

      Previous discussion: A full TCP/IP stack in under 200 LoC (and the power of DSLs) [2].

      There's also a PNG parser (but it is not parsing any documentation) in 20 lines of OMeta [3].

      [1] http://www.moserware.com/2008/04/towards-moores-law-software-part-3-of-3.html

      [2] https://news.ycombinator.com/item?id=846028

      [3] http://joshondesign.com/2013/03/18/ConciseComputing

    • kylebrownJul 2014

      This looks super interesting, thanks for including so many demos and docs. I'm pretty new to PL theory, but was recently reading about OMeta - another "language for pattern matching". For example, here's a png parser in OMeta.[1]

      Maybe you could help me understand how Egison compares to OMeta? thanks.

      1. http://www.joshondesign.com/2013/03/18/ConciseComputing

    • joshmarinacciMar 2026

      I’ve been following the Ohm project for years and it’s the best way to build parsers I’ve ever seen. I’ve used it to parse many program languages and even markdown. I’m happy to see it get even faster.

      https://joshondesign.com/2021/07/16/ohm_markdown_parser

    Related

    GNOME Blogsblogs.gnome.org490 people

    AirPods fast connect security vulnerability

    GNOME Blogs
    Company · last shared 2026
    Jared Forsythjaredforsyth.com19 people

    Making a cross-platform mobile game in Reason/OCaml

    Jared Forsyth
    Personal · last shared 2026
    Joshua Porterbokardo.com78 people

    Principles of UI design

    Joshua Porter
    Personal · last shared 2025
    Programming Zenprogrammingzen.com29 people

    On the Usability of Codecademy

    Programming Zen
    Personal · last shared 2025
    Rigsomelightrigsomelight.com16 people

    The Frameless Geodesic Dome I currently live in

    Rigsomelight
    Personal · last shared 2025
    Ignore the Codeignorethecode.net112 people

    Oberon (2009)

    Ignore the Code
    Personal · last shared 2026
    Marco Armentmarco.org644 people

    Shame on Y Combinator

    Marco Arment
    Personal · last shared 2026
    Nibble Stewnibblestew.blogspot.com74 people

    Apple of 2019 is the Linux of 2000

    Nibble Stew
    Personal · last shared 2026