Explaining Go's WebAssembly System Interface support

Plus a simple Go static server, looking at JSON with 'fx', and gocron springs back into life. |

#​476 — September 19, 2023

Unsub  |  Web Version

Together with  Fusion Auth

Go Weekly

fx 30: The Go-Powered Terminal JSON Viewerfx has long been a useful tool for looking at JSON files, but Anton has taken the opportunity to rewrite it from the ground up with a new themed TUI look, regex search, better wrapping, fuzzy search, and support for “even the most massive JSON files.” A fantastic tool that's a great example of what Go excels at.

Anton Medvedev

On WASI Support in Go — Recent versions of Go have introduced the ability to target WebAssembly and the WebAssembly System Interface (WASI) that enables WASM to interact with the outside world. This post covers the basics and shares where things stand with Go’s still-nascent support.

Brandhorst-Satzkorn, Fabre, Gryski, et al.

Add Fully-Featured Auth to Your Go App with Two Lines of Code — Easy, secure, and affordable: pick three. FusionAuth is auth built for devs, by devs.

FusionAuth sponsor

QUICK BITS:

  • If you use ChatGPT to help you with your Go code at all, its training cut-off date has changed to January 2022. A side effect of this, I've noticed, is it now recognizes that Go has generics and will emit code using them.

  • If you're a fan of JetBrains' GoLand IDE and are working with Rust too, they've unveiled RustRover, a similar IDE targeting Rust developers.

  • Did you know there's a Go-specific community on X/Twitter? There are about 1600 members so far.

  • Awesome Slog is an attempt to bring together links and resources about Go's new structured logging (slog) feature.

  • 🐘 PostgreSQL 16 was released late last week.

Crafting a Language Server in Go: A VSCode LSP for Lama2Lama2 (not to be confused with Meta’s Llama 2 LLM) is a plain-text-driven API manager and REST API client. The team behind this post used Go to create an LSP for Lama2 and have explained how it came together and why Go was a good fit.

Athreya aka Maneshwar

Use Your Database to Power State Machines — How to build a state machine using Go and your database to have clear states and transitions with concurrency-safe code, along with a consistent audit trail.

Lawrence Jones

A Developer’s Guide to Getting Started with Temporal — Use this Go SDK guide to see how Temporal OSS delivers durable execution for your services and applications.

Temporal Technologies sponsor

▶  Discussing Go Templating using Templ
The Go Time Podcast podcast

🛠 Code & Tools

PTerm: A TUI Framework for Go — An extensive library packed with components for improving the output of your command line apps, including things like charts, lists, trees, fancy logging, spinners, and more. Documentation site.

pterm project

static-server: An HTTP Server in Go for Static Content — Eli’s made it as simple as just running a single go run command to start serving up your current directory for local testing purposes. He explains more about the how and why in this post.

Eli Bendersky

Encore: The Developer Productivity Platform for Go Backend Development — Encore automates development tasks to shorten feedback loops, help collaboration, improve quality, and 2x productivity.

Encore sponsor

Maroto 1.0: Generate Entire PDFs within Go — Uses a particularly fluent, grid-based approach. Here’s a thorough code example of creating an invoice PDF, along with the resulting output.

Johnathan Fercher da Rosa

u: Adding an 'Unset' State to Go's Types — For when you want to know if a value has been set or not.

Lea Anthony

Goyave: An Elegant Go REST Framework — Provides structure, routing, a configuration system, and, importantly, pretty extensive documentation and sample code. GitHub repo.

Jérémy Lambert

  • Resty 2.8
    ↳ Simple HTTP / REST client library.

  • tproxy 0.8
    ↳ CLI tool to proxy & analyze TCP connections.

  • zap 1.26
    ↳ Fast, structured, leveled logging library.

  • Skipper 0.18
    ↳ HTTP router and reverse proxy for service composition.

  • Lux 0.20
    ↳ Video download library and CLI tool.

  • gocron 1.34
    ↳ A Go job scheduling package comes back to life.

  • compress 1.17
    ↳ Implements several compression algorithms.

  • rueidis 1.0.18
    ↳ High performance Redis client library.

Jobs

Find a Job Through Hired — Hired makes job hunting easy-instead of chasing recruiters, companies approach you with salary details up front. Create a free profile now.
Hired

n

Older messages

Let's get optimizing

Tuesday, September 12, 2023

Plus some love for the Go gopher, and Go takes 8th place in IEEE's language roundup. | #​475 — September 12, 2023 Unsub | Web Version Together with Ardan Labs Go Weekly Profile-Guided Optimization

'Cgo performance is good actually'

Tuesday, September 5, 2023

Plus how Go 1.21 enables truly reproducible builds. | #​474 — September 5, 2023 Unsub | Web Version Together with Teleport logo Go Weekly Perfectly Reproducible, Verified Go Toolchains — Go 1.21

'There will not be a Go 2 that breaks Go 1 programs.'

Tuesday, August 29, 2023

Plus RIP to AWS Lambda's Go runtime, a big TinyGo update, and an official introduction to 1.21's structured logging. | #​473 — August 29, 2023 Unsub | Web Version 👋 We're back! Well, almost

Go 1.21 released

Tuesday, August 8, 2023

Plus cross-platform sound from Go, a new dependency security tool, and we're off for a few weeks. | #​472 — August 8, 2023 Unsub | Web Version ⛱ I'm taking two weeks off and will be back on

The Go team's new project templating tool

Tuesday, August 1, 2023

Plus the Go survey is back, a 400 line Go git client, and Google Cloud Functions gets Go 1.21. | #​471 — August 1, 2023 Unsub | Web Version Together with Ardan Labs Go Weekly Experimenting with Project

You Might Also Like

Daily Coding Problem: Problem #1708 [Medium]

Tuesday, March 4, 2025

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Indeed. Given a 32 -bit positive integer N , determine whether it is a power of four in

Underscore Naming, Flask-SQLAlchemy, Kivy, and More

Tuesday, March 4, 2025

Single and Double Underscore Naming Conventions in Python #671 – MARCH 4, 2025 VIEW IN BROWSER The PyCoder's Weekly Logo Single and Double Underscore Naming Conventions in Python In this video

Dial An Advertiser ☎️

Tuesday, March 4, 2025

Things like phone books existed before phone books. Here's a version for your browser. Hunting for the end of the long tail • March 4, 2025 I've decided to stop being so unfair to myself with

Ranked | The World's Top 20 Economies by GDP Growth (2015-2025) 📊

Tuesday, March 4, 2025

Halfway through the 2020s, here's a report card on the top 20 economies and their progress since 2015. View Online | Subscribe | Download Our App Presented by Hinrich Foundation NEW REPORT:

Open Source Isnt Dead...Its Just Forked

Tuesday, March 4, 2025

Top Tech Content sent at Noon! Augment Code: Developer AI for real eng work. Start for free Read this email in your browser How are you, @newsletterest1? 🪐 What's happening in tech today, March 4,

LW 172 - How to Make Compare at Pricing Show at Checkout    

Tuesday, March 4, 2025

How to Make Compare at Pricing Show at Checkout ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ Shopify Development news and articles Issue 172 -

Issue 165

Tuesday, March 4, 2025

💻🖱️ A single click destroyed this man's entire life. Fake murders get millions of YouTube views. Zuckerberg can now read your silent thoughts. ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

This top multitool is under $30

Tuesday, March 4, 2025

Thinnest phone ever?📱; ArcoPlasma; Siri alternatives 🗣️ -- ZDNET ZDNET Tech Today - US March 4, 2025 GOTRAX 4 electric scooter I finally found a high-quality multitool for under $30 Compact and durable

Post from Syncfusion Blogs on 03/04/2025

Tuesday, March 4, 2025

New blogs from Syncfusion ® Stacked vs. Grouped Bar Charts in Blazor: Which is Better for Data Visualization? By Gowrimathi S Learn the difference between the stacked and grouped bar charts and choose

⚙️ GenAI Siri

Tuesday, March 4, 2025

Plus: TSMC's hundred billion dollar investment ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌