#292 — Decemeber 13, 2019 |
Golang Weekly |
Introducing Kyle Conroy |
Using Makefile(s) with Go — We’ve seen a few articles around using Danish Prakash |
Adding Application and Image Scans to Your CI/CD Pipeline — Security should be the highest priority when developing and operating software - but it shouldn't slow you down. This blog will demonstrate how to adopt DevSecOps and implement security processes in CI/CD pipelines. CircleCI sponsor |
Versioning with Branching Strategy — The Go team recently recommended copying different versions of your library into different directories. Here is an alternate (and, seemingly, better) approach based on Git tags and branches. Eyal Posener |
Dynamically Scoped Variables in Go? — “This is a bad idea, no argument there. This is not a pattern you should ever use in production code. But, this isn’t production code, it’s a test, and perhaps there are different rules that apply to test code.” An interesting experiment, even if it doesn’t smell quite right.. Dave Cheney |
Bill Kennedy's Go Reading List — Whenever esteemed Go trainer Bill Kennedy comes across a significant interview, blog, historical piece, book, or similar thing about Go, he puts it in this list. If you’re looking for some Go-related Xmas reading, this could be ideal. William Kennedy |
💻 Jobs |
Are You a Go Developer? Stream Has a Job for You — Stream is looking for a talented Go developer with a passion for building scalable infrastructure. Apply now. Stream |
Sr. Software Engineer at CrowdStrike (Remote) — CrowdStrike is the leader in cloud-delivered endpoint protection, which helps protect our customers from cybersecurity attacks. CrowdStrike |
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 |
Dependency Injection with Wire — Wire is a compile-time DI solution built by Google themselves that uses code generation and reflection to produce injection code. Tit Petric |
The Go Runtime Scheduler's Clever Way of Dealing with System Calls — When scheduling goroutines onto processors, Go has an optimistic and an pessimistic approch. In other words, is your processor half full or half empty? Chris Siebenmann |
Processing Parquet Files in Go — Parquet is a binary format that stores data in a columnar fashion and is commonly associated with Hadoop. Elton Minetto |
Sell Your API to Millions of Developers with One Integration — Manifold helps API-first products distribute their services on the fastest growing cloud platforms. Manifold sponsor |
Go Advanced Concurrency Patterns: Channels — To prove the power of using Roberto Clapis |
Discussing Concurrency, Parallelism, and Async Design — If you’ve ever felt intimidated by Go features like goroutines and channels or just concurrency in general, this will be 50 minutes well spent. Go Time Podcast |
David Chapman |
Going Serverless with OpenFaaS and Go - Building Optimized Templates Martin Heinz |
Parsing 18 Billion Lines JSON with Go — While this isn’t all about Go, the problem is interesting and using Go at that scale is impressive. Roffe |
🛠 Code & Tools |
Slog: Minimal Structured Logging Library — Features first class Coder |
go-locale: Cross Platform Locale Detection — Checks a variety of things from environment variables on Linux to using the Win32 API and more. Xuanwo |
Measure and Improve Go Code Performance With Blackfire.io Blackfire.io sponsor |
golicense: Analyze OSS Dependencies and Licenses from Go Binaries — If you need to check licensing compliance, this tool could be invaluable. Mitchell Hashimoto |
MongoDB Go Driver 1.2: The Official MongoDB Driver — The big feature here is support for MongoDB’s new client-side field level encryption (as supported in MongoDB 4.2+) MongoDB, Inc. |
ghw: A Go Hardware Discovery/Inspection Library — Find out things about the memory, CPU, storage, network support, and similar things about the host computer. Aimed at Linux, with partial support for macOS. Jay Pipes |
go-circuitbreaker: A Context Aware Circuit Breaker Library Mercari, Inc. |
DockerSlim: A Tool to Slim Down Docker Containers — A tool that aims to ‘throw away what you don’t need’ both reducing the attack surface of your containers and their size too. docker-slim |