TLWI Golang #86
thelastweekin.dev
Greetings, folks! It's time for our weekly dose of tech news and insights. This week, our picks include 🔥 a Lodash-style Go library based on Go 1.18+ Generics (map, filter, contains, find...), fancy stream processing made operationally mundane, a network-wide ads & trackers blocking DNS server, choosing between importing a c++ library or writing code instead, in an existing golang project and finally, experiences of using a Golang webservice in production.
First up, let's talk about the Lodash-style Go library. We know how useful Lodash has been in converting those complicated JavaScript tasks into concise and legible code. Similarly, this library, based on Go 1.18+ Generics, allows you to perform complex operations on slices and maps, like filter, map, find and contains methods in a more succinct manner.
Next up is fancy stream processing
Have you ever tried to access a website, only to be bombarded with ads and trackers? Well, now a network-wide ads & trackers blocking DNS server
Have you ever found yourself in a situation where you need to choose between importing a C++ library or writing your own code in an existing Go project? Well, worry no more, we've got you covered.
Last but not least, let's talk about experiences of using Golang webservice in production.
That's it for this week's newsletter! We hope you find our picks intriguing and can't wait to see how you will utilise these tools and resources. See you next week!
Dennis
Hot Go Articles This Week On Reddit
Our Article Picks
- Camila Lenis: I graduated, now what? Camila Coded in 2022
- Farhan: Writing a simple in-memory key-value Database in Go
- Aarush Goyal: Git Hooks for your Golang project
- Matheus Mina: Automatizando tarefas com Go
- 42Atomys: ✨ How will Go Generics in Go 1.18 change your life? 💜
- Chris Noring: Go from the beginning - your first program
- Chris Noring: Go from the beginning - working with loops
- Jacob Kim: Watch Out for These Tricky Things in Go
- Ushakov Michael: String formatting in Golang
- Chris Noring: Go from the beginning - using variables
- Karan Pratap Singh: GraphQL subscriptions at scale with NATS
- Chris Noring: Go from the beginning - applying boolean logic
- Deepto: Semblance - Azure Trial Hackathon Submission
- Lucifer25x: Text Editor using Go(lang)
- Chris Noring: Go from the beginning - converting between types
- Will Velida: Setting up our Go Development Environment
- Senthil Raja Chermapandian: GitHub Actions workflow for Go Continuous Integration
- Marco A.: Install buffalo.io ( go) - part 1 (Requirements)
- Himali Kansara: Companies using Golang
- Colin Duggan: Compiling a Go Program
- Sahan: Building a gRPC Client in Go
- manuel: Shamazing
- たふみ: Migrate to discordgo v0.24.0 from v0.23.2
- Frédéric G. MARAND: CLI commands with google/subcommands
- LTV Co. Engineering: Implementing an Error Factory in Go
- Will Velida: Types in Go
- Pandademic: Printing Characters at a certain font size in go
- Anuraag Gupta: Introducing Golang Masking Tool To Mask Away your sensitive information
Our Repo Picks
- Arriven/db1000n (Go): undefined
- YaoApp/yao (Go): Yao A low code engine to create web services and dashboard.
- italiaremote/awesome-italia-remote (Go): A list of remote-friendly or full-remote companies that targets Italian talents.
- avelino/awesome-go (Go): A curated list of awesome Go frameworks, libraries and software
- gin-gonic/gin (Go): Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.
- tharsis/evmos (Go): Evmos is the Ethereum Virtual Machine (EVM) Hub on the Cosmos Network. It is the flagship implementation of the Ethermint library that prioritizes interoperability and novel economics.
- kubernetes/kubernetes (Go): Production-Grade Container Scheduling and Management
- Xhofe/alist (Go): 🗂️A file list program that supports multiple storage, powered by Gin and React. / 一个支持多存储的文件列表程序,使用 Gin 和 React 。
- grpc-ecosystem/grpc-gateway (Go): gRPC to JSON proxy generator following the gRPC HTTP spec
- benthosdev/benthos (Go): Fancy stream processing made operationally mundane
- gogs/gogs (Go): Gogs is a painless self-hosted Git service
- hashicorp/raft (Go): Golang implementation of the Raft consensus protocol
- hashicorp/terraform (Go): Terraform enables you to safely and predictably create, change, and improve infrastructure. It is an open source tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned.
- go-kratos/kratos (Go): Your ultimate Go microservices framework for the cloud-native era.
- gogf/gf (Go): GoFrame is a modular, powerful, high-performance and enterprise-class application development framework of Golang.
- quii/learn-go-with-tests (Go): Learn Go with test-driven development
- authelia/authelia (Go): The Single Sign-On Multi-Factor portal for web apps
- ethereum-optimism/optimism (Go): The Optimism monorepo
- photoprism/photoprism (Go): Photos App powered by Go and Google TensorFlow 🌈 ✨
- AdguardTeam/AdGuardHome (Go): Network-wide ads & trackers blocking DNS server
- aws/copilot-cli (Go): The AWS Copilot CLI is a tool for developers to build, release and operate production ready containerized applications on AWS App Runner, Amazon ECS, and AWS Fargate.
- rancher/rancher (Go): Complete container management platform
- samber/lo (Go): 💥 A Lodash-style Go library based on Go 1.18+ Generics (map, filter, contains, find...)
- projectdiscovery/subfinder (Go): Subfinder is a subdomain discovery tool that discovers valid subdomains for websites. Designed as a passive framework to be useful for bug bounties and safe for penetration testing.
- external-secrets/external-secrets (Go): External Secrets Operator reads information from a third-party service like AWS Secrets Manager and automatically injects the values as Kubernetes Secrets.
Forum Topics
- jpeg.Decode fails on many images
- Order of Operations (OO)
- Multiple services from one server/ port
- Go Webservice in production
- -modfile flag usage
- Function by parameter, generic parameter type
- Avast detects Win64:Evo-gen virus infected goimports(a.out.exe)
- Trouble with unbuffered channel in Go
- Choosing between importing a c++ library or writing code instead, in an existin golang projectg
Gopher Gold is a weekly roundup for all things Go! If you have more suggestions for resources, submit them below! Follow me on Twitter for more projects @dennisokeeffe92
Subscribe to my personal newsletter to get updates on TheLastWeekIn.Dev + more! 🦄