One Year with EdgeDB

Continue reading


@divan.dev | 1 year ago

Data transfer with animated QR codes (2019?)

Continue reading


@divan.dev | 2 years ago

War

Continue reading


@divan.dev | 2 years ago

Visualizing Concurrency in Go (2016)

Continue reading


@divan.dev | 2 years ago

How to Complain about Go

Continue reading


@divan.dev | 3 years ago

I Still ️ You, Gopath

Continue reading


@divan.dev | 4 years ago

Visualizing Concurrency in Go (2016)

Continue reading


@divan.dev | 4 years ago

Rethinking Visual Programming with Go

Continue reading


@divan.dev | 4 years ago

Rethinking Visual Programming with Go

Continue reading


@divan.dev | 4 years ago

Thought Experiment: Flutter in Go

I’ve recently discovered Flutter – a new Google’s framework for mobile development – for myself and even had an experience of teaching Flutter basics to the person who has never been doing programming at all. Flutter is written in Dart – programming language born in a Chrome brow … | Continue reading


@divan.dev | 5 years ago

Creating WebGL apps with Go

TL;DR In this article I’ll share my experience building an interactive 3D WebGL-based application for peer-to-peer messaging protocol simulation without writing any single line in JS. You’ll learn how GopherJS and Vecty framework can dramatically lower the complexity of building … | Continue reading


@divan.dev | 5 years ago

Fountain codes and animated QR

(source: Anders Sune Berg) In the previous article I’ve described a weekend project called txqr for unidirectional data transfer using animated sequence of QR codes. The straightforward approach was to repeat the encoded sequence over and over until the receiver gets complete dat … | Continue reading


@divan.dev | 5 years ago

WakeMeUpInTheMiddleOfTheNight log level

On the last Golang Barcelona meetup we decided to try new format of conversation and after the talk started open discussion on logging, tracing and metrics. The idea was to encourage people to read a very nice blog post by Peter Bourgon on this subject - “Metrics, Tracing and Log … | Continue reading


@divan.dev | 6 years ago

Misusing error interface

I used to think that misunderstanding interfaces in Go can lead, at most, to not very readable code and worse maintainability. From my observations misusing interfaces becomes visible usually during refactorings, where you questioning what this type or abstraction actually repres … | Continue reading


@divan.dev | 7 years ago

How to avoid Go gotchas

TL;DR by learning internals a gotcha is a valid construct in a system, program or programming language that works as documented but is counter-intuitive and almost invites mistakes because it is both easy to invoke and unexpected or unreasonable in its outcome (source: wikipedia) … | Continue reading


@divan.dev | 7 years ago

My GopherCon experience

A couple of weeks ago I gave a talk at the largest Go conference, GopherCon, in Denver. It was the first time I attended GopherCon at all, and the first time ever I spoke in English in front of 1400+ people, and it was an absolutely incredible experience. Here is my story. My jou … | Continue reading


@divan.dev | 7 years ago

go get for private repos in docker

As Go community slowly moving towards established and well understood patterns and practices of dependency management, there are still some confusing moments. One of them is automating repeatable build process using containers along with using dependencies in private repositories … | Continue reading


@divan.dev | 7 years ago

LeftPad and Go: can tooling help?

You’ve probably heard that story about NPM community and LeftPad package, that broke thousands JavaScript projects worldwide. There was a nice follow-up article titled “Have We Forget How To Program” and one guy even created left-pad.io - Left-Pad As A Service web service. People … | Continue reading


@divan.dev | 8 years ago

Integration testing in Go using Docker

Note: this post was originally written for the Go Advent 2015 series, but I discovered that a post with almost exactly the same subject (and even similar code!) already planned :) That’s amazing. Golang is often used for writing microservices and various backends. Often these typ … | Continue reading


@divan.dev | 8 years ago

Explaining Go error handling

I recently translated great article — Errors are values by Rob Pike — and we discussed it in our podcast Golangshow (in russian). One thing I was surprised about is that even experienced Go developers sometimes do not understand the core idea of that article. Looking back, I reme … | Continue reading


@divan.dev | 8 years ago