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
    I

    Isaac Yager

    yager.io · Personal blog · on HN since 2014

    Isaac Yager writes about programming languages, Haskell, FPGAs, embedded Rust, computational photography, and hardware projects like keyboards and audio meters.

    Visit blogRSSHN submissions
    Languages & CompilersHardware & ElectronicsProgramming
    What HN says

    HN links it for his critique of Go and his analysis of iPhone computational photography, with commenters discussing both the Go argument and the photo pipeline.

    Stats for nerds
    28HN people shared it
    21linked in comments
    1.4Kstory points
    Jul 2025last shared
    2014people per year2025

    Top posts on HN

    1. 1
      Why Go Is Not Good
      15 people · 963 points · first shared 2014 · 453 comments on HN
    2. 2
      Distributed Systems in Haskell
      3 people · 229 points · first shared 2016 · 18 comments on HN
    3. 3
      Designing and building a keyboard
      2 people · 142 points · first shared 2014 · 58 comments on HN
    4. 4
      Music Visualizer – Using Python and Numpy for DSP
      1 person · 49 points · first shared 2014 · 8 comments on HN
    5. 5
      Building a CPU with Haskell, part 1
      3 people · 33 points · first shared 2017 · 1 comments on HN
    6. 6
      HaSKI: An FPGA-based SKI calculus evaluator written in Haskell/Cλash
      3 people · 6 points · first shared 2016 · Discussion on HN
    7. 7
      Nixie Tube Audio Meter – Embedded Rust
      2 people · 3 points · first shared 2020 · Discussion on HN
    8. 8
      The Limits of Computational Photography
      3 people · 2 points · first shared 2023 · Discussion on HN
    9. 9
      Training Neural Audio Networks
      1 person · 2 points · first shared 2025 · Discussion on HN
    10. 10
      Haskell Crash Course
      1 person · 2 points · first shared 2024 · Discussion on HN

    What HN people wrote when they linked it

    • aftabhDec 2015

      I might have taken the content of this article more seriously if it had been titled something like "Why Go Is Not Good for Embedded System Programming" since the original author of the article seems to have more experience in embedded system's domain[1].

      Also, the article say "Go is a regression from other modern programming languages" and I find it amusing that a significant numbers of people here taking the article and its claim seriously when it is coming from a student[1] who just finished his 'Computer Programming' university course in Fall 2014[1] (one of the reason, other reason is mentioned in the next paragraph). Don't get me wrong here: I'm not saying that you can't say anything significant when you're a student; what I mean here is that one needs to come up with more detailed explanations and with many more examples which are valid for a wide range of scenarios and use-cases when you make a general statement about a programming language which has been created by some of the highly-respected experts in the field of programming language. The list of problems mentioned in the article are important but they're not very critical for the kind of the system development that Go language has been designed/developed for[2].

      Since Go language has been developed for system programming, the term 'system programming' is not restricted to embedded system only (as few people have already mentioned it in different threads here) which are mostly limited to one component (or small…

    • AdieuToLogicJul 2015

      > Go began with Robert Griesemer, Rob Pike, and Ken Thompson. “What should a modern programming language look like” (the story goes as they were waiting for some C++ to compile).

      Cute. Nice to keep a dig[1] going. Since that horse has been kicked quite a few times over the years, how about those in the Go community address these language criticisms:

      http://yager.io/programming/go.html

      For specific examples from the aforementioned link:

      The "correct" way to build generic data structures
      in Go is to cast things to the top type and then
      put them in the data structure. This is how Java
      used to work, circa 2004.

      And:

      Go has the null pointer (nil). I consider it a
      shame whenever a new language, tabula rasa,
      chooses to re-implement this unnecessary
      bug-inducing feature.

      Of which the latter has been regretted by its inventor[2] for years.

      1 - "[C++] certainly has its good points. But by and large I think it's a bad language." (source: https://en.wikiquote.org/wiki/Ken_Thompson)

      2 - http://www.wisdomandwonder.com/link/2015/tony-hoare-sorry-for-inventing-the-null-pointer

    • kjksfNov 2014

      You should ponder why Erlang or Haskell achieved a fraction of Go's adoption despite being on the market 20+ years longer.

      Some people see languages as a bag of features (immutability! generic programming! laziness! operator overloading! algebraic types! hindley-miller type inference! pattern matching! exceptions! manual memory management!). See http://yager.io/programming/go.html for an example of that line of thinking.

      Those people won't get Go.

      Designing a language is not about cramming every feature you can think of. It's about making good trade offs.

      A trade off is: you get something but you also loose something.

      I use Go because it made the biggest number of good trade offs.

      Or to put it differently: I program in Go because when writing code, it irritates me less than other languages.

      If you want a longer explanation of that: http://commandcenter.blogspot.com/2012/06/less-is-exponentially-more.html

    • lambdasquirrelMar 2023

      Saying that gear doesn't matter is like old fogey programmers saying that programming languages don't matter. A good programmer can wrangle code in anything reasonably practical. And I say that as one of those old fogey programmers.

      I mean c'mon, look at Golang. It is not a good language[0][1]. And yet, folks built k8s with it, and many other things.

      It's like that with photographic gear too. Just like the best camera is the one you have, the best language is the one that all your domain experts can use. And if they're good at knowledge and design, but shitty at programming, golang it will be.

      But it's also worth noting that k8s was not written in C++. Tools matter.

      [0] https://yager.io/programming/go.html
      [1] https://xetera.dev/thoughts-on-go/

    • istvan__Apr 2015

      Thanks this video is just too funny. I was aware of the quirkiness of C++ but this is very insightful.

      On the Go note, I like it but I think the target of Go is system programming with great concurrency support. More about Go here:
      http://yager.io/programming/go.html

      Rust seems to incorporate all of the academic research about programming languages and also moves towards memory safety and correctness, and that is a good start. See what happens in the next 10 years! :)

    • dual_basisJun 2018

      I did check out go. I was surprised to see that it had null, and aside from the emphasis on concurrency I didn't find anything new or interesting. This was recently posted here, and I findyself agreeing with most of the points (though I'm not quite as strongly in favor of pure functional programming as the author seems to be):

      http://yager.io/programming/go.html

    Related

    Alexis Kinglexi-lambda.github.io172 people

    Parse, Don’t Validate

    Alexis King
    Personal · last shared 2026
    Scattered Thoughtsscattered-thoughts.net186 people

    Against SQL

    Scattered Thoughts
    Personal · last shared 2026
    Andrew Kelleyandrewkelley.me155 people

    Statically Recompiling NES Games into Native Executables with LLVM and Go

    Andrew Kelley
    Personal · last shared 2026
    FP Complete Blogfpcomplete.com201 people

    Monads and GATs in Nightly Rust

    FP Complete Blog
    Company · last shared 2025
    Gergő Érdigergo.erdi.hu22 people

    Rust on the MOS 6502: Beyond Fibonacci

    Gergő Érdi
    Personal · last shared 2026
    Niko Matsakissmallcultfollowing.com221 people

    Towards a Rust Foundation

    Niko Matsakis
    Personal · last shared 2026
    fasterthanli.mefasterthanli.me236 people

    A half-hour to learn Rust

    fasterthanli.me
    Personal · last shared 2026
    Raphael Possscience.raphael.poss.name34 people

    Rust for functional programmers

    Raphael Poss
    Personal · last shared 2021