Twelve Years of Go
A good twelve years.  Go really changed the way I think about programming.  I used to be excited by programming language features instead of what problem I was actually trying to solve with programming.  I&#x27;d spend hours condensing 10 lines of perfectly working code into 1 line of the most concise text possible; huffman encoded better than even gzip could imagine.  And I&#x27;d feel great about it.  I&#x27;d imagine people reading it and thinking &quot;wow, there&#x27;s no way I&#x27;ll ever be as smart as jrockway, I should nominate him for Extreme Excellence And Awesomeness award!&quot;  Sadly, there is no such thing.  Go taught me that it&#x27;s just structs, for loops, and if statements, and if you want someone to be impressed, they should be impressed by what the program does for them, not what language features you used to implement it.<p>It has also ruined other programming languages for me.  &quot;go get&quot; doesn&#x27;t print 30 lines of text telling me that a new minor version of &quot;go get&quot; is available, and that I should stop what I&#x27;m doing, rm -rf node_modules, upgrade it, and then resume what I&#x27;m doing.  It just pauses for a bit, and then I have the library.  (I also love reading about the node community&#x27;s push to make installing libraries not run arbitrary code on your machine.  Yeah, I&#x27;ve been doing that for years with Go.  It&#x27;s great.  I can use a library and it can&#x27;t print a &quot;hire me!!!&quot; ad at install time.  What an innovation!)<p>I also remember struggling for years with not being able to run other people&#x27;s software.  There was an RPM package, but not a Debian package, so I have to build it from source.  .&#x2F;configure; make; oh no, the c compiler I have can&#x27;t compile this code.  With Go, you can just emit a binary for every supported platform dump the binary somewhere, and everyone in the world can download it and run it.  No installing packages, no finding the right version of Go (that doesn&#x27;t exist in your Linux distribution because they never ship up to date versions of programming languages).  Just software, running, forever.<p>It&#x27;s really good stuff.  Go is the tool that lets me make software, and not worry about bullshit.  And that&#x27;s revolutionary, even 12 years later.