Amazon Web Services (AWS) is deprecating the go1.x runtime on Lambda, this is currently scheduled for December 31, 2023. Customers need to migrate their Go based lambda functions to the al2.provided runtime, which uses Amazon Linux 2 as the execution environment. I think this is a bad thing for a couple of reasons:
There is no automated migration path from existing Go Lambda functions to the new custom runtime. Customers will need to manually refactor and migrate each function to this new runtime, which this is time-consuming and error-prone.
Go is built for grug brained programmers like me.
grug brain developer not so smart, but grug brain developer program many long year and learn some things although mostly still confused
This page contains the data that is available to the go list command, we use golang templates to extract subsets of this data below Get imports for the current directory package go list -f '{{range β¦
How do you test a database without a database? Don't worry, this isn't one of those Zen puzzles. I have something more practical, but equally enlightening, in mind. Letβs use the adapter pattern to solve the riddle.
In many languages, on of the things I find myself doing is maping over a list to extract some field. For example, coverting a []Person to []Name.
Most languages these days have ways to do this pretty easily:
Kotlin:
people.map { it.Name } JavaScript:
people.map(p => p.Name) Rust:
people.map(|p| p.Name) Scala:
people.map(_.Name) With generics, Go finally can do this in a type safe manner:
Map(people, func(t Person) string { return t.
Last week AWS published a blog post advising that the go1.x Lambda runtime will be deprecated and people should migrate to provided.al2. I was already using the newer runtime, but I also learned from the blog post that AWS SAM can now build Go Lambda functions for the newer runtime - no more Makefiles required!
A beautiful program to read your RSS/Atom feeds right in the terminal! - GitHub - TypicalAM/goread: A beautiful program to read your RSS/Atom feeds right in the terminal!
Learn about the upcoming go1.21 performance improvements that reduce the overhead of execution tracing from up to 20% to less than 1% for most applications.
A tool to show what AWS account and identity you're using. - GitHub - benkehoe/aws-whoami-golang: A tool to show what AWS account and identity you're using.
A simple, fast, and fun package for building command line apps in Go - GitHub - urfave/cli: A simple, fast, and fun package for building command line apps in Go
Importable package that parses version info from debug.ReadBuildInfo(). - GitHub - carlmjohnson/versioninfo: Importable package that parses version info from debug.ReadBuildInfo().
The difference between nil and empty slices are a common point of confusion for newbies to Go. This post discusses how they differ and when to use each one.