/gocodelaben

Building simple database for geospatial data using Go programming language workshop

Primary LanguageGo

Making a simple database for geo-data

Hello, gopher. Well, if you are not a gopher and want to become one, hello too. I propose to combine two things in this codelab: to learn Go, as a programming language, and, maybe, to learn a couple of new things for yourself.

The evironment

You will need the following:

  1. Installed Go Programming Language
  2. Configured GOPATH :trollface: (For 1.8 not relevant)
  3. You are familiar with basic things in Go. “Go” tour can help you with this

Purpose of laboratory work

This laboratory work has two purposes:

  1. Get an experience in Go
  2. Learn how does the key-value of the repository work (redis, memcached)
  3. How some indexes work.

Eventually, the database will be able to do the following things:

  • Quick search by the key;
  • Search for places near you;
  • HTTP interface to the database;
  • LRU / expire mechanisms for data storage;

By Go you will get the following knowledge:

  • How does concurrency work;
  • Work with basic syntactic things;
  • Test experience in go;
  • Basic things with Makefile;

Table of contents

The workshop contains these steps

Community and resources

There are several places where you can find information about Go:

One of the most remarkable qualities of Go is its community.

Communities and channels in Telegram

  1. @bishkekgophers - Bishkek Gophers
  2. @devkg - Developers of Kyrgyzstan
  3. @maddevsio - The channel of our company, where we share all kinds of interesting things. We often speak about Go

Communities in Slack

  1. golang-ru.slack.com - The Russian-speaking community of gophers
  2. gophers.slack.com - The English-speaking community of gophers. Invitation to get here https://invite.slack.golangbridge.org/

Podcasts

  1. GolangShow - Russian-language podcast about Go-language
  2. Gotime - English-language podcast about Go-language

Остальное

Благодарности

  1. Francesc Campoy for his workshop Building Web Applications with Go
  2. Ashley McNamara for the picture in the 10th step. You can see other works in repo
  3. Elena Grahovac for the review and feedback