An open API service indexing awesome lists of open source software.

https://github.com/digitalcrab/gochapter

Go Language Chapter
https://github.com/digitalcrab/gochapter

Last synced: 2 months ago
JSON representation

Go Language Chapter

Awesome Lists containing this project

README

        

# Go language chapter

This repository is used to provide documentation, source code and learning
materials for the [Go language](https://golang.org/) chapter inside the [Rocket Internet](https://www.rocket-internet.com/) company
and ventures.

If you have no idea about Rocket and you interested in learning Go language,
please feel free to discover this repository and grab some useful information.

This repository will be incrementally updated (approx. once a week) until
we finish the chapter.

## What is it about?

This chapter is for anyone interested in learning Go language from scratch.
Together, we will build a micro service step-by-step.

We will build a travel service for generating the most optimal route for
holiday destinations. Imagine, you want to rent a car and go from Berlin to
Amsterdam, Brugge, and Bremen but you also want to save on gasoline.

The service would provide you the best route split by days in order to reach
the minimum distance and pay the minimum for gasoline and the rented car.

## Motivation

Join this chapter if you want to:
- Learn a new programming language by building a real micro service;
- Understand the architecture of micro services;
- Use the proper infrastructure for local development and production deployment.

## Concept

At each chapter meeting, we will cover new topics to go deeper into Go language.
After the meeting, everyone receives a homework task, which will be shared on
Github the day before the next meeting.

We encourage every chapter member to present learnings and share insights from
homework tasks. In the beginning, however, the meetings will be facilitated by
Maksim Naumov ([@digitalcrab](https://github.com/digitalcrab)).

## Prerequisites

You should have middle or senior level experience in any programming language.
A basic understanding of Golang is not required. [Go Tour](https://tour.golang.org/) is highly recommended.

## Program

Approximately the program will look like:
- Overview and environment setup;
- Working with the database;
- Working with a 3rd party API;
- Writing algorithms
- Tests
- Design REST API
- Application MVP
- Production, deployment and monitoring