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

    Aaron Schlesinger

    medium.com/@arschles · Personal blog · on HN since 2017

    Aaron Schlesinger writes Medium posts about Go and Kubernetes, including the Athens module proxy and a report on generics.

    Visit blogHN submissions
    Languages & CompilersProgrammingDevOps & Cloud
    What HN says

    HN links his Go experience report on generics in Kubernetes as an example of how the lack of generics led Kubernetes to build workarounds.

    Stats for nerds
    18HN people shared it
    9linked in comments
    38story points
    Jul 2023last shared
    2018people per year2023

    Top posts on HN

    1. 1
      Go Experience Report: Generics in Kubernetes
      14 people · 33 points · first shared 2017 · 7 comments on HN
    2. 2
      The Doors Go Has Opened – Aaron Schlesinger – Medium
      2 people · 3 points · first shared 2018 · Discussion on HN
    3. 3
      Athens and Microsoft
      1 person · 1 points · first shared 2018 · Discussion on HN
    4. 4
      Project Athens – now with more working
      1 person · 1 points · first shared 2018 · Discussion on HN

    What HN people wrote when they linked it

    • silasdavisJul 2019

      Probably yes: https://medium.com/@arschles/go-experience-report-generics-in-kubernetes-25da87430301

      Many smaller projects would benefit too. I would like to build a typesafe tree for an efficient sorted map, and to be able mergsort over multiple trees of different types. It would allow some extremely useful channel combinators for doing rather common things like safely shutting down a service with some background processing. Often these things leak and a often I find myself spawning more go routines just to map between types or to stop generic interface types infecting the rest of the API.

    • willtimNov 2020

      > Yeah it's hard to write weirdly complicated code in Go

      Just because Go lacks many forms of abstraction, doesn't mean complex code will not be created with it. Quite the opposite. It's lack of expressiveness will encourage "frameworks", elaborate encodings, code generation and various productivity aids. Look at what the lack of generics has done to the Kubernetes code base:

      "The core team replaced a compile-time language feature that was missing (Generics) with their home-built runtime system"

      https://medium.com/@arschles/go-experience-report-generics-in-kubernetes-25da87430301

    • jasonwatkinspdxAug 2018

      > A bunch of pioneer project like docker, kubernetes, etcd, prometheus etc. has been built with go and I don't believe that the maintainers suffered lack of generics and error handlers.

      Here's an experience report from k8s: https://medium.com/@arschles/go-experience-report-generics-in-kubernetes-25da87430301

      They've been using a code generator as a work around: https://github.com/google/gvisor/tree/master/tools/go_generics

    • ben_jonesSep 2018

      I would argue while Kubernetes is a great piece of software, and its definitely practical to go in with relatively little experience and tweak a single line or function, Kubernetes is not easy to grok or reproduce in its entirety for example it has its own implementation of generics and a custom type system [1].

      [1]: https://medium.com/@arschles/go-experience-report-generics-in-kubernetes-25da87430301

    • zmanianSep 2018

      It's impossible to defend the lack of generics in golang in the face of the fact that two of the larger open source projects both invented their own generics implementations.

      https://medium.com/@arschles/go-experience-report-generics-in-kubernetes-25da87430301

      https://github.com/google/gvisor/blob/master/tools/go_generics/generics.go

    • littlestymaarJul 2023

      That particular example of course no, but people writing overengineered beasts to overcome go's limitation happens all the time.

      Another famous example is how k8s, dealt with the lack of generics: https://medium.com/@arschles/go-experience-report-generics-in-kubernetes-25da87430301

    Related

    Linkerd Bloglinkerd.io38 people

    Topology-Aware Service Routing on Kubernetes with Linkerd

    Linkerd Blog
    Company · last shared 2026
    Code Adventuresmedium.com/code-adventures31 people

    Farewell Node.js

    Code Adventures
    Publication · last shared 2021
    John A. De Goesdegoes.net81 people

    Twitter's Fucked

    John A. De Goes
    Personal · last shared 2026
    JT Oldsjtolio.com22 people

    Problems with Go channels (2016)

    JT Olds
    Personal · last shared 2026
    Go Blogblog.golang.org529 people

    Go 2, here we come

    Go Blog
    Company · last shared 2026
    Russ Coxresearch.swtch.com554 people

    Timeline of the xz open source attack

    Russ Cox
    Personal · last shared 2026
    Google Cloud Platform Blogcloudplatform.googleblog.com349 people

    Introducing Cloud Spanner, a Global Database Service

    Google Cloud Platform Blog
    Company · last shared 2026
    Chris Siebenmannutcc.utoronto.ca/~cks388 people

    Go is Google's language, not ours

    Chris Siebenmann
    Personal · last shared 2026