You're the Top Gopher! GoCenter Badges Honor Amazing Go Modules

In the holiday spirit, we’re bringing a little cheer to the Golang community by celebrating the achievements of some noteworthy Go module authors. We’re excited to launch a new program within JFrog GoCenter that honors select “Top Gophers.” Using key metrics of success such as number of downloads and imports, quality metrics, and usage in GoCenter, we aim to highlight projects that we think are really helping improve software development for the Go developer community.


Top 6 security best practices for Go

Golang’s adoption has been increasing over the years. Successful projects like Docker, Kubernetes, and Terraform have bet heavily on this programming language. More recently, Go has been the de facto standard for building command-line tools. And for security matters, Go happens to be doing pretty well in their reports for vulnerabilities, with only one CVE registry since 2002.


How GoCenter Connects Go Modules Authors With Consumers

There’s no longer any doubt, Go modules are an accepted part of Golang. The over 300,000 versioned Go modules in JFrog GoCenter shows how they have been embraced for package management by the Go community. With Go modules now enabled by default in Golang 1.13, the number of publicly available modules will grow even more rapidly — and some of them may be contributed by you. But once you share a Go module project with the community, what happens to it? Does it get used?


How we tracked down (what seemed like) a memory leak in one of our Go microservices

The backend developer team at Detectify has been working with Go for some years now, and it’s the language chosen by us to power our microservices. We think Go is a fantastic language and it has proven to perform very well for our operations. It comes with a great tool-set, such as the tool we’ll touch on later on called pprof. However, even though Go performs very well, we noticed one of our microservices had a behavior very similar to that of a memory leak.


Good to Go: Getting Started with AWS Lambda and Go

Go is undoubtedly one of the fastest-growing languages today. Since its 1.0 release in March 2012, it has seen adoption in a vast number of industries, but particularly in the cloud computing space. From microservices to the tools and components that power some of the largest cloud infrastructures, it’s hard to ignore Go’s contribution.


Introducing: Sentry's Unified Go SDK

According to Stack Overflow’s Developer Survey 2019, Go is the third most wanted language to learn, as well as the third-best paid technology in the field. It is not a surprise, as it is one of the languages used for writing critical parts of a lot of large systems. The language design and syntax are simple, but developing in Go is far from easy.


Reproducing a Flaky Test in Go

Oftentimes, a test that occasionally fails in CI can be reproduced locally with a simple go test -count=N ./path/to/flaky/package… but once in a while, it just doesn’t repro locally. Or maybe the full test suite for that package takes too long, and the test fails so rarely, that you need a more precise way of zeroing in on the bad test. It’s much better to confidently fix the test failure, than to make a good guess and hope for the best.


Golang Ingestion Library for Unomaly's Ingest HTTP API

Logs are generated everywhere, ranging from the printer in the corner of your office to your new application architecture running docker containers on top of Kubernetes — Regardless, to analyze any of those logs, you need to send these logs over your network to Unomaly. Traditionally, shipping logs over the network involved using the syslog protocol. While syslog still is a great standard.


Developing a Go app with Docker Compose

Writing Go applications in an isolated environment with Docker comes with some great advantages. You get a clean GOPATH, the bare essentials for developing, and you can easily change which Go version you’re developing against. In this quick tutorial, we’re going to show you how to structure a Go application with Docker Compose as your development environment.


How to instrument your Go app with the Elastic APM Go agent

Elastic APM (application performance monitoring) provides rich insights into application performance and visibility for distributed workloads, with official support for a number of languages including Go, Java, Ruby, Python, and JavaScript (Node.js and real user monitoring (RUM) for the browser).