it's written in golang. 12MB barely gets you "hello world" since everything is statically linked. With that in mind, the size is impressive.

golang doesn't statically link everything by default (anymore?), this is from FreeBSD:

    $ ls -l axe
    -rwxr-xr-x  1 root wheel 12830781 Mar 12 22:38 axe*
    
    $ ldd axe
    axe:
        libthr.so.3 => /lib/libthr.so.3 (0xe2e74a1d000)
        libc.so.7 => /lib/libc.so.7 (0xe2e74c27000)
        libsys.so.7 => /lib/libsys.so.7 (0xe2e75de6000)
        [vdso] (0xe2e7366b000)

I know off topic, but is that mostly coming from the Go runtime (how large is that about?)

The excessive size of Go binaries is a common complain. I last recall seeing a related discussion on Lobsters [1]. Who knows, maybe the binary could be shrunk a bit? IMHO 12mb binary size is not that big of a deal.

--

1: https://lobste.rs/s/tzyslr/reducing_size_go_binaries_by_up_7...