#290 — November 29, 2019 |
Golang Weekly |
Chroma: A Pure Go General Purpose Syntax Highlighter — Chroma brings most of the features of Pygments, pretty much the Python-based standard in the syntax highlighting field, to Go and can even use the lexers and styles already created for Pygments. Alec Thomas |
Why American Express Has Chosen Go — A look at why American Express decided to use Go for some of its most critical applications. They’ve also written up a case study for the new go.dev site. Benjamin Cane |
Start 2020 Strong. Ultimate Go Training: Charlotte, NC - January 27-29, 2020 — Take advantage of the early bird pricing and attend Bill Kennedy's Ultimate Go Training in Charlotte, North Carolina in January 2020. If you have a team of 5 or more engineers request a group discount here. Ardan Labs sponsor |
Oracle Pits GraalVM Against Google Go? — This seems like a bit of an unusual gauntlet to throw down, but apparently Oracle are positioning GraalVM (a multi-language supporting, polyglot VM they’ve been building) as being better than Go because you get interoperability with the Java ecosystem.. OK, then.. 😬 Paul Krill |
▶ Discussing Compilers and Interpreters with Thorsten Ball and Tim Raymond — What are the roles of compilers and interpreters, what do they do, and what’s involved with writing them in Go? As Thorsten is author of the popular Writing an Interpreter in Go book, this is an interesting episode if you have the time. Go Time Podcast podcast |
macOS Go Binaries and Installer Identifiers Are Changing — The macOS Go package identifier namespace is changing from Andrew Bonventre |
💻 Jobs |
Enjoy Building Scalable Infrastructure in Go? Stream Is Hiring — Like coding in Go? We do too. Stream is hiring in Amsterdam. Apply now. Stream |
Find a Job Through Vettery — Make a profile, name your salary, and connect with hiring managers from top employers. Vettery is completely free for job seekers. Vettery |
📘 Articles & Tutorials |
Simple Dependency Injection in Go with Fx — You don’t see much about dependency injection in Go, but its concepts can apply nicely. Fx is a handy tool to make DI easy. Yage Hu |
What Tracking Down Missing TCP Keepalives Taught Me About Docker, Go, and GitLab — An in-depth recap of debugging a bug in the Docker client library. Stan Hu (GitLab) |
Creating a Bloom Filter with Go — If you’ve never encountered a Bloom filter before, I recommend having a play as they’re not complicated but are rather interesting in how they let you store data in a performance and memory efficient way, at the price of false positives. Here’s another example of how they work. Dylan Meeus |
The Art of PostgreSQL: A Book to Learn How to Best Use SQL from Your Go Application — The book that teaches SQL to developers: learn to replace thousands of lines of Go code with simple SQL queries. The Art of PostgreSQL sponsor |
A Closer Look at The Teiva Harsanyi |
▶ How to Shrink a Go Executable by 70% in 30 Seconds — This old tutorial goes into more depth. Peter Cooper |
GraphQL Observability with Go Using Open-Source Tools — IBM’s Watson Media division reveals their GraphQL observability stack that’s built around Go, Prometheus, Jaeger and Grafana. Szabolcs Gelencsér |
Damian Gryski on Twitter |
▶ From Java to Go, One Team's Journey — Nexuzhealth is a Belgian healthcare software company who provide software to 30 hospitals in Belgium. After 20 years on Java, they did a big rebuild in Go – here’s the how and why. Dylan Meeus |
🛠 Code & Tools |
Secure: HTTP Middleware for Some 'Quick Security Wins' — Covers areas like content security policy, SSL redirects, allowing certain hosts, setting a referrer policy, etc. Cory Jacobsen |
TinyGo 0.10 Released: The Go Compiler for 'Small Places' — LLVM 9, improved CGo support, blocking select support, plus support for some new boards like the Adafruit Feather M4 and the X9 Pro and PineTime smartwatches. TinyGo |
Hugo 0.60: The Fast Go Framework for Statically Building Sites — Hugo has switched to a new Markdown library Goldmark. Hugo Team |
Speed Up Frontend Development with FaunaDB's Auth and Native GraphQL FaunaDB sponsor |
go-sqlbuilder: A Flexible SQL String Builder Library — Focused mostly on MySQL and Postgres. Includes basic ORM type support via structs. Huan Du |
Gin 1.5: The Popular Go HTTP Web Framework Gin-Gonic |
gtrace: An Experimental System Call Tracer for Linux x86-64 Agis Anastasopoulos |
PNGR: Dockerized (Postgres + Nginx + Go + React) — Starter kit for a web app that includes user and session management, JWT authentication, and a basic CRUD example. Karl Keefer |