Code Monkey home page Code Monkey logo

gocodelaben's Introduction

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

gocodelaben's People

Contributors

gen1us2k avatar zoxon470 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.