---
title: "A new fully-featured, embeddable Go interpreter"
publication: "Go Weekly"
issue: 272
published_at: "2019-07-25"
canonical_url: "https://golangweekly.com/issues/272"
---

The latest Go development news       

#272 — July 25, 2019 

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

[GopherCon](https://www.gophercon.com/), the biggest Go conference, is taking place right now in California — hope you're having a great time if you're there! 👋  

Golang Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/asud0s9f0hx6cun0emep.jpg)](https://blog.containo.us/announcing-yaegi-263a1e2d070a)   

[Yaegi: Announcing 'Yet Another Go Interpreter'](https://blog.containo.us/announcing-yaegi-263a1e2d070a) — Containous, the company behind Traefik, has built a Go interpreter to enable Go to be used for scripting within other apps, interactive shells, or for quick prototyping. You can use it as a REPL or embed it into your own apps. [GitHub repo.](https://github.com/containous/yaegi) You can also [play with it in the Go Playground](https://play.golang.org/p/P--lUj4Vbax). 

Marc Vertes   

[Safely Rewriting Mixpanel’s Highest Throughput Service in Go](https://engineering.mixpanel.com/2019/07/24/safely-rewriting-mixpanels-highest-throughput-service-in-golang/) — The tale of migrating a busy service from Python to Go where they used [Diffy](https://github.com/opendiffy/diffy) to test and compare the old and new APIs. 

Evan Noon   [![\](https://copm.s3.amazonaws.com/dcc4ecc0.png)](https://www.ardanlabs.com/training/?utm_source=Cooperpress%20Primary) 

[Do You Need Golang or Kubernetes Training?](https://www.ardanlabs.com/training/?utm_source=Cooperpress%20Primary) — We offer on-site corporate training for engineers that want to learn Go (Golang) or Kubernetes. Having trained over 4,000 engineers since 2013, we have carefully crafted these classes for students to get as much value as possible. 

Ardan Labs sponsor   

[TinyGo 0.7 Released: Helping Go Be Big in Small Places](https://github.com/tinygo-org/tinygo/releases/tag/v0.7.0) — This release has some support for a `tinygo test` subcommand and garbage collection on “most platforms” (which includes WebAssembly). Also of interest is the introduction of the [TinyGo Playground](https://play.tinygo.org/) which [can simulate real hardware](https://aykevl.nl/2019/07/tinygo-plaground-simulator) in your browser such as an LED or an e-paper display (see the examples via the drop-down selector). 

TinyGo   

▶[13 Talks from GopherCon Europe 2019](https://www.youtube.com/playlist?list=PLtoVuM73AmsKzmYldmSvMlGQ8gF4knX0F#gopherconeurope) — While GopherCon is taking place in California right now, [GopherCon _Europe_](https://www.gophercon.es/) took place in the similarly sunny Canary Islands 8 weeks ago and (nearly) all of the talk videos are now available. Some highlights: 

- Here’s how Mat Ryer [writes HTTP web services after 8 years.](https://www.youtube.com/watch?v=8TLiGHJTlig&list=PLtoVuM73AmsKzmYldmSvMlGQ8gF4knX0F&index=15&t=0s)
- Ellen Körbes taught us [about neural networks](https://www.youtube.com/watch?v=jb-12DOr5y4&list=PLtoVuM73AmsKzmYldmSvMlGQ8gF4knX0F&index=7&t=0s) using Go, not math.
- Julie Qiu shows us [how to find dependable Go packages](https://www.youtube.com/watch?v=gyNhMsFuwQg&list=PLtoVuM73AmsKzmYldmSvMlGQ8gF4knX0F&index=13&t=0s)
- Cassandra Sailsbury covered [The State of Go](https://www.youtube.com/watch?v=xC9nd2ZPqxI&list=PLtoVuM73AmsKzmYldmSvMlGQ8gF4knX0F&index=2) in a high-level community-oriented keynote.  

💻 Jobs  

[Golang Developer at X-Team (Remote)](https://x-team.com/remote-go-developer-jobs/?utm_source=cooperpress&utm_medium=email-ad&utm_campaign=go) — Join the most energizing community for developers. Work from anywhere with the world's leading brands. 

X-Team   

[Find a Job Through Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-golangweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-77582) — Vettery matches top tech talent with growing companies. Create a profile to get started. 

Vettery  

📘 Articles & Tutorials  

[Faster XML Stream Processing in Go](https://eli.thegreenplace.net/2019/faster-xml-stream-processing-in-go/) — XML may no longer be the trendy ‘go to’ format it was in the early 2000s but it still has its uses. Here, Eli looks at the performance of stream-processing large files in Go and reaches a C-based approach to speed things up. 

Eli Bendersky   

[How to Use Google's Tink from Go](https://github.com/google/tink/blob/master/docs/GOLANG-HOWTO.md) — [Tink](https://github.com/google/tink) is a multi-language, cross-platform library developed at Go that provides cryptographic APIs in an easier to use way than the popular alternatives. Damian Gryski [says](https://twitter.com/dgryski/status/1153767223846043648) that Tink’s Go support _“is now complete”_ so it’s worth a look. 

Google   

[Instantly Know When Go Errors Occur & How to Fix Them](https://rollbar.com/error-tracking/go/?utm_source=cooperpress&utm_medium=newsletter&utm_campaign=Go_July_newsletter) — With Go error tracking from Rollbar you get exception & crash reports in real-time. Try Rollbar for free today. 

Rollbar sponsor   

▶[Discussing Go Approaches to Web Development](https://changelog.com/gotime/92) — Mat Ryer, Mark Bates, Johnny Boursiquot, and Aaron Schlesinger discuss the current state of play of building Web services and apps using Go. They cover tools and technologies such as [Buffalo](https://gobuffalo.io/en), Goa and WebAssembly. _(1 hour.)_ 

Go Time podcast   

[Working with `.tar` and `.tar.gz` Files](https://t.co/IU3w3qWEi0) — The [`archive/tar` package](https://golang.org/pkg/archive/tar/) makes it all relatively easy. 

Vladimir Vivien   

[A Practical Guide to Securing GRPC Connections with TLS](https://itnext.io/practical-guide-to-securing-grpc-connections-with-go-and-tls-part-1-f63058e9d6d1) 

Nicolas Leiva   

[Writing Delightful HTTP Middlewares in Go](https://doordash.engineering/2019/07/22/writing-delightful-http-middlewares-in-go/) 

Zohaib Sibte Hassan  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/uvrzfbyv9fovg8eqb0d0.jpg)](https://github.com/vbauerster/mpb)   

[Multiple Progress Bar: Progress Bars for Your CLI Apps](https://github.com/vbauerster/mpb) — Straightforward textual progress bars with support for rendering _multiple_ bars at the same time (such as for tasks running concurrently). 

Vladimir Bauer   

[MemGuard: A Place to Store Sensitive Information in Memory](https://github.com/awnumar/memguard) — Sensitive data is now encrypted and authenticated in memory. If you’re into crypto, [here’s how the encryption works](https://spacetime.dev/encrypting-secrets-in-memory). 

Awn   

[Trace Requests from Go Apps End-To-End to Identify Errors and Latency](https://www.datadoghq.com/dg/apm/go-performance-monitoring/?utm_source=Advertisement&utm_medium=CooperPress&utm_campaign=CooperPress-GoWeeklyB) 

Datadog APM sponsor   

[Task 2.6: A Task Runner / `make` Alternative Written in Go](https://taskfile.dev/) 

Andrey Nering   

[UniPDF: A Library for Creating and Processing PDF Files](https://github.com/unidoc/unipdf) — A pure Go PDF generation _and_ processing library. Take care over the licensing though, it’s AGPL for open source usage but a commercial option for everything else. 

UniDoc   

[SFTPGo: A Full Featured SFTP Server Built in Go](https://github.com/drakkan/sftpgo) — Supports password and public key auth, is database driven, includes a REST API for user and quota management, and more. 

GitHub   

[Ferret: A Declarative Web Scraping System](https://github.com/MontFerret/ferret) — It’s built in Go but you write scripts in its own BASIC-esque declarative language. Can be used standalone or within Go itself. 

MontFerret         

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
