The Golang proposal to add generics has now been accepted.

This page summarizes the projects mentioned and recommended in the original post on

Our great sponsors
  • Sonar - Write Clean Java Code. Always.
  • InfluxDB - Build time-series-based applications quickly and at scale.
  • Scout APM - Truly a developer’s best friend
  • Zigi - Delete the most useless function ever: context switching.
  • go

    The Go programming language

    I'm not fully sure what is meant by this; is this the popularity of value receivers over pointer receivers, of structs over interfaces, or something else? If it's the former, then I don't agree; the default that I've experienced in codebases is for people to use pointer receivers (CodeReviewComments: "when in doubt, use a pointer receiver"). Finally, a quick glance at some of the most fundamental standard packages, such as io, net/http, encoding/json, shows a lot of pointer recievers, paving the way for the same old nil issues. Of course, that may be as a result of the kind of codebases that I'm used to looking at; more low-level projects might use value receivers a lot more.

  • NullAway

    A tool to help eliminate NullPointerExceptions (NPEs) in your Java code with low build-time overhead

    An in Java, you hopefully use something like

  • Sonar

    Write Clean Java Code. Always.. Sonar helps you commit clean code every time. With over 600 unique rules to find Java bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts