/backend

:octocat: Kottans backend course 🎓

MIT LicenseMIT

MIT Licensed Awesome       

Backend Course UNDER CONSTRUCTION!

The course contains basics of backend development: fundamentals of NodeJS or Golang and backend frameworks as well as necessary computer science basics, network and protocols, database fundamentals etc.

You can use these materials for self-education as well.

Admission

  1. The course is free of charge.
  2. Course consists of two phases: remote (online) phase and traditional (offline) lecture phase.
  3. Remote phase is free to join for anyone.
  4. Offline part will be accessible for students who have successfully finished remote phase and passed the interview.
  5. Remote phase starts on September 9th 2019 and will finish in app. 3 months.

If you have any questions you can ask us in one of our chats.

What you will learn

  1. Git, GitHub basics, writing good commit messages
  2. Linux, command line basics
  3. What computer memory is and how to properly deal with it
  4. Network basics
  5. Program Input/Output interaction. Basics of file system management
  6. JS or Golang programming fundamentals
  7. Relational Databases, SQL

Apart from this we plan to build a bunch of test projects and have fun together.

General Requirements

  1. English knowledge: a lot of the materials will be in English. If you do not feel confident in your technical English, you may want to take one of free online English courses.

  2. Repository on GitHub to save your progress. More about repositories in Task 0.

  3. Formatting: style of texts in your repository is up to you but remember to make it readable. Using markdown is a good idea.

  4. Reading: for each article you are required to read please post the answers to the following questions in your repo. Don't worry, your answers will not be graded. It's just a way to reflect on what you have learned.

    • name (at least) one thing that was new to you
    • name (at least) one thing that surprised you
    • name (at least) one thing you intend to use in the future
  5. Online courses: finish all tasks, add some reflection about them into README.

  6. Videos: same as for the reading; watch the video — answer three questions.

  7. Programming assignments: detailed submission instructions will be provided for each assignmnent.

Programming Language Path Disclaimer

Node.js Python Golang

  • This course contains general task and specific tasks for python, nodejs and golang. You don't need to do all of them, just pick either python, nodejs or golang tasks depending on course you've enrolled.
  • Nodejs-only tasks will be marked with prefix 🚦Node.js🚦
  • Python-only tasks will be marked with prefix 🚦Python🚦
  • Golang-only tasks will be marked with prefix 🚦Golang🚦

Operating Systems Disclaimer

  • This course assumes that you have up and running UNIX-based OS on your machine. If you're a Windows user consider to use VM for UNIX-system related tasks.

Chats

For your comfort we have created several chats in the telegram:

  1. BE Students | Kottans - chat for students, where you can discuss anything related to the current course
  2. Kottans Radio - our channel with usefull links and awesome articles ;)

Do you have any questions?

Please see our FAQ. If you have more questions - we will be happy to answer in our chats.

Ready?

➡️ Lets begin! Go forward to Git and GitHub Intro

➡️ Read course plan in Contents


P.S. You should know

If you are willing to participate in the course, you need to understand that you’ll spend a lot of time building something big together — a new way of learning and collaborating. You’ll become part of a small family and should prepare yourself to find new friends and to invest a lot in this friendship (as you should in any friendship).

Final task of this course will be to split into groups and create new courses like that (and we’ll never stop).

Our basic rules

  • Respect each other.
  • There is no such thing as a stupid question.
  • Each person learns with their own speed, has different background and personality, please respect this.
  • Communicating and understanding people that are different from you can be beneficial to both parties, provided mutual respect.
  • We are against any discriminations by gender, age, the color of skin, disabilities or any other.
  • We respect intellectual property - there is hard work of an author or a group of authors behind all materials that we use.

Ideas and useful links