Size: a a a

2018 January 15
4gophers
Working with forks in Go
https://t.co/yrSlzMSyFU

How to work on a forked repository of an open-source Go package
#golang #git
источник
2018 January 16
4gophers
Announcing Go Support for AWS Lambda
Today, we’re excited to announce Go as a supported language for AWS Lambda.

As someone who’s done their fair share of Go development (recent projects include AWS SAM Local and GoFormation), this is a release I’ve been looking forward to for a while. I’m going to take this opportunity to walk you through how it works by creating a Go serverless application, and deploying it to Lambda.
https://t.co/KAaKeIfpgA

#golang #aws
источник
4gophers
источник
4gophers
Application Tuning in Go: Benchmarks  
https://t.co/hmliy6H9pc

One of the best parts about writing and maintaining software with go is that it comes with “batteries included” for developing scalable applications. Beyond just verifying the correctness of your code using go’s testing package, you can just as easily measure and track the performance of your code, using more or less the same paradigms and constructs. To illustrate the power and simplicity of benchmarks, this post walks through an example, real-world, tuning scenario.

#golang #benchmark
источник
4gophers
Why are there nil channels in Go? A practical example  
https://medium.com/justforfunc/why-are-there-nil-channels-in-go-9877cc0b2308

Everybody that has written some Go knows about channels. Most of us also know that the default value for channels is nil. But not many of us know that this nil value is actually useful.
#golang #chanel
источник
2018 January 17
4gophers
Twirp - a sweet new rpc framework for go
https://t.co/Tk06ZaMVkx

Today Twitch is releasing an RPC framework we use for communication between backend servers written in Go. It’s called Twirp, and it’s available now under an Apache 2 open source license.
#golang #rpc
источник
4gophers
Building an Interpreter in Go - step by step  
https://t.co/LPN7qPd6vP

Something I’ve wanted to know more about, having missed out on the usual opportunity during a CS degree, is the process of a compiler. How we get from source code to running byte code on the other end.
#golang #Interpreter
источник
4gophers
Unpacking git packfiles with Go
https://t.co/2zkeduIG2V

While working on Gitgo, an implementation of Git in pure Go, I encountered a puzzling issue. Gitgo tests its own dogfood, which means the tests for parsing objects use the git repository for Gitgo itself. This worked fine for a few days, until my pairing partner wanted to work on his computer instead of mine.
#golang #git
источник
4gophers
Considering the Community Effects of Introducing an Official MongoDB Go Driver  
https://t.co/TCZOfT1NtQ

What do you do when an open-source project you rely on no longer meets your needs?  When your choice affects not just you, but a larger community, what principles guide your decision?
#golang #mongodb #mgo
источник
2018 January 18
4gophers
Post-mortem debugging of Go Programs  
https://t.co/Kta2wOzjtb

Even if you write tests and those tests are perfect, effective and everything you will face production issues. Sometimes everything will just crash and when that’ll happen you’ll need some debugging skills. Here I’m putting some flow examples, notes and resources around post-mortem debugging of Go programs, including, but not limited to, those running inside a Kubernetes cluster.
#golang
источник
4gophers
Как мы выбирали между Elastic и Tarantool, а сделали свою (самую быструю) inmemory БД. С Join и полнотекстовым поиском
https://habrahabr.ru/post/346884/

С середины 2016 года мы проектируем и разрабатываем новое поколение платформы. Принципиальное отличие от первого поколения — поддержка API "тонкого" клиента. Если старая платформа предполагает, что на клиента при запуске загружается метаинформация о всем контенте, который доступен для абонента, то новая платформа должна отдавать срезы данных отфильтрованные и отсортированы для отображения на каждом экране/странице.

#golang #db #inmemory
источник
4gophers
Creating a Microservice with Golang and Goa
https://t.co/mcqueLOpW7

Microservices are very popular these days, there are lots f interest in breaking apart monoliths into small pieces for easier deployment and smaller, more understandable codebases. Golang is one of the top languages for making microservices, its high performance and readable syntax is making it a no-brainer for many organizations.
#golang #microservice
источник
4gophers
Speed and Stability: Why Go Is a Great Fit for Lambda
https://t.co/rgTwiPxzzv

A few days ago in a move foreshadowed by a hint at Amazons’ re:Invent conference late last year, AWS released support for Go on its Lambda platform.
#golang #aws #lambda
источник
4gophers
Graven: Build management for Go projects.  
https://t.co/KTIKzfJAd4

Graven is a build management tool for Go projects. It takes light cues from projects like Maven and Leiningen, but given Go's much simpler environment and far different take on dependency management, little is shared beyond the goals.
#golang #build
источник
4gophers
OpenCensus: A Stats Collection and Distributed Tracing Framework
https://opensource.googleblog.com/2018/01/opencensus.html

Today we’re pleased to announce the release of OpenCensus, a vendor-neutral open source library for metric collection and tracing. OpenCensus is built to add minimal overhead and be deployed fleet wide, especially for microservice-based architectures.
#golang #metrics #google
источник
4gophers
GolangShow. Выпуск 110. Go или Golang от Лёши и Артёма
http://golangshow.com/episode/2017/10-11-110/

#golang #podcast
источник
2018 January 19
4gophers
5 Gotchas and Tricks of Defer - Part III  
https://t.co/WEqMnTl4gp

This article is more about tricks rather than gotchas of defer.
#golang #tutor
источник
4gophers
Avoiding Memory Leak in Golang API
https://hackernoon.com/avoiding-memory-leak-in-golang-api-1843ef45fca8

You must read this before releasing your Golang API into production. Based on our true story at Kurio, how we struggling for every release because we are not doing it in the right ways.
#golang #memory
источник
4gophers
The gophers have been busy curating the latest Golang Weekly, and here it is - Issue #194 📬 
https://golangweekly.com/issues/194

#golang #news
источник
2018 January 20
4gophers
Грузите апельсины бочках. Релизы в Golang проектах
https://habrahabr.ru/post/347094/

Данная статья является продолжением инструментальной темы затронутой в прошлой публикации. Сегодня мы постараемся разобраться со сборкой релизов Golang приложений в виде единого исполняемого файла, включающего ресурсные зависимости, и вопросом оптимизации размера итоговой сборки.
#golang #develop
источник