---
title: "Handling errors the Go way"
publication: "Go Weekly"
issue: 239
published_at: "2018-11-29"
canonical_url: "https://golangweekly.com/issues/239"
---

The latest Golang development news       

#239 — November 29, 2018 

[Read on the Web](https://golangweekly.com/issues/239)   

Golang Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/su082g9tl837un9cjfyy.jpg)](https://evilmartians.com/chronicles/errors-in-go-from-denial-to-acceptance)  

[Errors in Go: From Denial to Acceptance](https://evilmartians.com/chronicles/errors-in-go-from-denial-to-acceptance) — Could also be called the ‘five stages of Go error grief’. Practical advice on getting the most out of handling errors ‘the Go way’ from the creator of imgproxy and Overmind. 

Sergey Alexandrovich   

[TinyGo: A Go Compiler for Microcontrollers](https://jaxenter.com/go-tinygo-microcontrollers-152348.html) — _“TinyGo uses LLVM internally instead of emitting C, which… leads to smaller and more efficient code”._ It doesn’t support everything, though. 

Sarah Schlothauer   [![\](https://copm.s3.amazonaws.com/69e116ed.png)](https://www.jetbrains.com/go/whatsnew/?utm_source=cooperpress&utm_medium=cpc&utm_campaign=goland-2018-3) 

[Go Productive with New GoLand IDE 2018.3](https://www.jetbrains.com/go/whatsnew/?utm_source=cooperpress&utm_medium=cpc&utm_campaign=goland-2018-3) — Change Signature refactoring, Google App Engine debugger, Go core dumps support, Testify and Mozilla rr, improved code completion, support for diagrams, updates for VCS, Docker, and Kubernetes, and much more. Try free for 30 days. 

JetBrains sponsor   

[GoCV 0.18.0: Go Computer Vision Now with OpenCV 4 Support](https://gocv.io/blog/2018-11-28-opencv-4-support-and-custom-profiling/) — [GoCV](https://gocv.io/) is a package for performing computer vision related tasks in Go that leans on the popular [OpenCV](https://opencv.org/) library which has recently hit [version 4.0](https://opencv.org/opencv-4-0-0.html). 

The Hybrid Group   

[6 Tips for Using Strings in Go](https://www.calhoun.io/6-tips-for-using-strings-in-go/) — Covers topics like how to write multiline strings, concatenate strings efficiently, convert various data types into strings, check for prefixes, and converting strings to byte slices. 

Jon Calhoun  

💻 Jobs  

[Mid-level & Senior Backend Go Engineers - North America (Remote)](https://www.ardanlabs.com/my/careers/?utm_source=Cooperpress%jobs) — Help us build and deliver reliable solutions for our clients. We are a high-performance software development firm. 

Ardan Labs   

[Join Our Career Marketplace & Get Matched With A Job You Love](https://www.hired.com/gonews) — Through Hired, software engineers have transparency into salary offers, competing opportunities, and job details. 

Hired  

📘 Tutorials  

[How to Build A Photo Feed with Go and Vue.js](https://medium.freecodecamp.org/how-to-build-a-photo-feed-with-go-and-vue-js-9d7f7f39c1b4) — The end result uses the Pusher service for a real-time user experience. 

Neo Ighodaro   

[Building a Web App with Go, Gin and React](https://hakaselogs.me/2018-04-20/building-a-web-app-with-go-gin-and-react/) — How to build a web application with Go and the [Gin framework](https://gin-gonic.github.io/gin/) and add authentication to it. 

Francis Sunday   

[Making a (Very) Simple DNS Server in Go](https://medium.com/@owlwalks/build-a-dns-server-in-golang-fec346c42889) 

Khoa Pham   

[How to Optimize Software by Efficiently Comparing Strings](https://blog.digitalocean.com/how-to-efficiently-compare-strings-in-go/?utm_medium=display&utm_source=cooperpress&utm_campaign=2018_Brand_Businesses100&utm_content=golang+weekly+11-29) 

DigitalOcean sponsor   

[How to Build and Deploy a Secure REST API with Go, PostgreSQL, JWT and GORM](https://medium.com/@adigunhammedolalekan/build-and-deploy-a-secure-rest-api-with-go-postgresql-jwt-and-gorm-6fadf3da505b) 

Adigun Hammed Olalekan   

[From X to Go](https://github.com/golang/go/wiki/FromXToGo) — A running list of links to articles about moving from various programming languages to Go. 

Go Wiki  

🔧 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/afvp40ocmlktnz7hneoa.jpg)](https://github.com/liamg/aminal)  

[Aminal: A Modern Terminal Emulator for Mac/Linux](https://github.com/liamg/aminal) — It’s implemented using Go and OpenGL, but not quite ready for everyday use. 

Liam Galvin   

[DNS: A Library to Work with DNS from Go](https://github.com/miekg/dns) — The [docs](https://github.com/miekg/dns/blob/master/doc.go) aren’t super thorough but the library itself is and supports an incredible amount of DNS related RFCs and DNS features. 

Miek Gieben   

[Simplify Data Collection with a Single API](https://segment.com/product/connections?utm_source=gonl&utm_medium=email&utm_content=ss) — Collect data once with Segment and send it to 200+ tools. Get a free developer account. 

Segment sponsor   

[Machinery: Async Job Queue Based on Distributed Message Passing](https://github.com/RichardKnop/machinery) 

Richard Knop   

[Fastcache: A Fast, Thread-Safe In-Memory Cache](https://github.com/VictoriaMetrics/fastcache) 

VictoriaMetrics   

[treeprint: Simple ASCII Tree Composition and Rendering](https://github.com/xlab/treeprint) 

Maxim Kupriianov   

[checkmail: An Email Address Validation Package](https://github.com/badoux/checkmail) — Supports three levels of checks - format, valid domain, and checking the user exists via SMTP. 

Florian Carrere   

[sso: A Single Sign-On (SSO) Solution for Securing Internal Services](https://github.com/buzzfeed/sso) — [More info here.](https://tech.buzzfeed.com/unleashing-the-a6a1a5da39d6) 

BuzzFeed   

[GoBGP: BGP (Border Gateway Protocol) Implementation in Go](https://github.com/osrg/gobgp) — One for the networking and TCP/IP crowd. If you need this, you’ll know. 

osrg     

Submit a link to us to (potentially) win a cute Go gopher! [![\](https://res.cloudinary.com/cpress/image/upload/v1542060907/hca6dagfdkxaz6babq7i.gif)](https://gopher.golangmarket.com/products/gopher-plush) 

[Golang Market](http://www.golangmarket.com/) has kindly given us 20 Go gophers (inspired by Renee French's design) and we're giving one away each week to a random person who submits a link. You can [submit your link here](https://cooperpress.typeform.com/to/zEQZOv). Good luck. 

Alternatively, [you can get your own gopher here](https://gopher.golangmarket.com/products/gopher-plush) if you simply can't wait. 😃 

This week's winner is Francis Sunday who submitted [Building a Web App with Go, Gin and React](https://hakaselogs.me/2018-04-20/building-a-web-app-with-go-gin-and-react/) - congratulations.          

Curated by [Glenn Goodrich](https://twitter.com/ruprict) and [Peter Cooper](https://twitter.com/peterc) 

[Change your email address](https://golangweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://golangweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
