Twelve Years of Go

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • SonarLint - Deliver Cleaner and Safer Code - Right in Your IDE of Choice!
  • Scout APM - Less time debugging, more time building
  • OPS - Build and Run Open Source Unikernels
  • GitHub repo pyright

    Static type checker for Python

  • GitHub repo go

    The Go programming language

    Have a look at some of the bugs related to struct tags (420 open ones) - they interact in odd ways and have lots of little directives in them like omitempty,attr,-,set plus they combine too (for xml,json,asn1 etc) and you can stuff your own little language in too if you want, the possibilities are endless! They are a set of limited yet unvalidated translation DSLs stuffed into a string.

    https://github.com/golang/go/search?p=4&q=struct+tags&type=i...

    Re build directives - the complaint is they are comments which do things and change code/compilation, the syntax I don't care about, but I do care that they've abused comments to do this.

    I agree, these problems are pretty trivial, I don't lose sleep over them.

  • SonarLint

    Deliver Cleaner and Safer Code - Right in Your IDE of Choice!. SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.

  • GitHub repo cost-model

    Cross-cloud cost allocation models for Kubernetes workloads

    > No inheritance - no more digging through the massive world-tree of objects to find the code that actually does things.

    That's not 100% accurate; as a concrete example, tell me which files (to say nothing of the actual downstream types!) contain the implementations of this interface method: https://github.com/kubecost/cost-model/blob/v1.88.0/pkg/clou... (err, without using github's fancy new SourceGraph-lite integration, of course, that'd be cheating)

    I find the sibling "No declared interfaces - they are defined at the point of use, not declared elsewhere" similarly suspicious, but suspect we'd having a nomenclature mismatch

  • GitHub repo Quarkus

    Quarkus: Supersonic Subatomic Java.

  • GitHub repo dat

    Go Postgres Data Access Toolkit (by mgutz)

    There are ORMs available for Golang, but my experience has been better with packages like sqlx [1] or dat [2]. We've since been using SQLX for pretty much all DBMS related work, and regret nothing. In my experience SQLX gave us the right balance between abstraction and control.

    [1] http://jmoiron.github.io/sqlx/

    [2] https://github.com/mgutz/dat

  • GitHub repo sqlx

    general purpose extensions to golang's database/sql

    There are ORMs available for Golang, but my experience has been better with packages like sqlx [1] or dat [2]. We've since been using SQLX for pretty much all DBMS related work, and regret nothing. In my experience SQLX gave us the right balance between abstraction and control.

    [1] http://jmoiron.github.io/sqlx/

    [2] https://github.com/mgutz/dat

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