Go contribution workshop in Russia

Go contribution workshop in Russia
 
For a long time we planned to send a patch to Go, but always postponed?
 
Faced with difficulties, did not know where to start?
 
In this article I will describe how we conducted the Go contribution workshop in Kazan,
 
about its results, as well as about the lessons that the organizers have learned.
 
Spoiler: It is planned to repeat this event when Go goes into the active development phase (exits the code freeze state). See the details under the cut.
GopherCon .
 
Someone comes to help others understand the work process, pick up the problem and solve it, then go through the review and, ideally...
+ 0 -

4 ways to import the package into Go

The declarative part of the import of packages in Go is quite boring and mundane. Just specify the directive
import and list the imported packages. Modern IDEs do this work for you - they themselves put packages into this section, which is very convenient. In addition, they fold this block so that it does not interfere with viewing the code. I advise you to deploy this block, and study it carefully - maybe you will find there something unusual:
 
    package main
import (
"github.com/vigo5190/goimports-example/a"
foo "github.com/vigo5190/goimports-example/a"
"github.com/vigo5190/goimports-example/b"
...
+ 0 -

How to prepare mysql binlog from go

How to prepare mysql binlog from go  
 
My name is Artem, I work for Rambler Group in the Potok project as a Go lead developer.
 
We spent a lot of time taming mysql binlog. In this article, a story about how quickly and with a minimum of pitfalls to implement the mechanism of working with the bin on Go.
 
here or here .
 
 
The article has two parts:
 
 
1. How to quickly start the processing of records that come to the log.
 
2. How to tune and expand what's under the hood.
 
 


Part 1. We start as soon as possible.


 
To work with binlog we will use the library github.com/siddontang/go-mysql ...[/h]
+ 0 -

We study multi-threaded programming in Go through pictures

We study multi-threaded programming in Go through pictures  
Most likely, you've already heard about the Go programming language, its popularity is constantly growing, which is quite reasonable. This language is simple, fast and relies on a wonderful community. One of the most interesting aspects of the language is the multithreaded programming model. Primitives, based on it, allow you to create multi-threaded programs easily and simply. This article is intended for those who want to study these primitives: gorutins and channels. And, through the illustrations, I will show how to work with them. I hope this will be of great help to you in further study.
 
...
+ 0 -

The entire Backend Conf: from microservices to infinite data

Last time, at the festival RIT ++ reports on server programming are less than on client. Whether this is due to the popularity of noBackend approaches, the general shift of focus towards the frontend, or simply the traditions of the conference, is difficult to say.
 
 
Nevertheless, in the program Backend Conf the whole
25 reports
, and we decided to make a full guide to them all. Because it's still two threads, and still have to choose where to go.
 
 
The entire Backend Conf: from microservices to infinite data  
...
Python / PHP / Go
+ 0 -

Go: speed up the selection of large tables from MySQL

I've been using Go to write an ad network for almost a year now. The development I lead on the server Intel i7-770? 16Gb RAM, 256Gb SSD. And in the script that runs once a day, the task appeared to select all the impressions for the past day and to count on this basis statistics for the day at once on several objects (site, campaign, banner).
 
 
According to Go's idioms everything is quite trivial:
 
RawBytes which ensures that the bytes from the database driver will be transferred to the user without copying. What. We will try to extract Scan into the intermediate structure with the sql.RawBytes ...
+ 0 -

We write an open source messenger

Why are we writing?
 
We write an open source messenger
 
Once upon a time in one distant country was the company America Online . And she had an amazing private Internet behind the fence, where instead of the URLs there were "keywords": something in between the web page address and the purchased keyword in the advertisement. Companies fought for interesting keywords, as they are now fighting for domains, and the advertisement looked like this: "visit us on the World Wide Web at www.example.com, or dial AOL Keyword: 'banking'."
 
History has the property of repeating itself. Now the role of America Online is played by the main messengers: ...
+ 0 -

Guide to Assembler Go

Guide to Assembler Go  
 
Before implementing the implementation of runtime and learning the standard library, you need to master the abstract assembler Go. I hope this guide will help you quickly master the necessary knowledge.
 
"Pseudo-assembler"
 
Decomposition of a simple program
 
 
Let's analyze add
 
Analyzing the main
 
 
A couple of words about gorutins, stacks and partitions
 
 
Stacks
 
...
+ 0 -

Another option for generating thumbnails for images using AWS Lambda & golang + nodejs + nginx

Hello dear users of Habra!
 
My name is Nikita, at the moment I'm working as a backend developer in a mobile application startup. Finally, I have a truly non-trivial and rather interesting task whose solution I want to share with you.
 
 
What actually will the conversation go on? In the mobile application being developed, there is work with images. How can you easily guess: where there are pictures, there are likely to appear previews. Another condition, almost the first common task that was set for me: to make it work and scale in the cloud on the Amazon. If there were a few lyrics: there was ...
+ 0 -

Backend United # 1. Vinaigrette - video, photo report, presentations and feedback of listeners

On April 1? the first Mitap devoted to cross-language solutions for the development of the server part was held in our office. "Vinaigrette", judging by our impressions and reviews of the guests of the Mitap, was a success. So, we will continue the practice of combining backenders, meet and discuss common approaches and tools for different languages ​​more often. Well, for now, publish videos, slides, reviews and photos. All this - under the cut.
 
Backend United # 1. Vinaigrette - video, photo report, presentations and feedback of listeners Presentation
 
Reviews:
 
 
Great report! ...
+ 0 -