be-course-18-19

Backend - Getting Started

Table of Contents

Prerequisites

Text Editor

If you don’t have one yet, install a text editor. Atom, Sublime and VSCode are good choices.

Be ware that lecturers may not be able to help you with problems in some editors.

GitHub

If you haven’t already, sign up for GitHub.

Take some time to set up your GitHub profile. Include your name, a profile picture, and a URL to your homepage. You’re allowed to stay anonymous online for this course by omitting sensitive information, but a good looking GitHub profile can help you get an internship or job later.

Installation

CLI

Windows:
If you’re on Windows, you should upgrade to Windows 10 (64 bit) and install the Windows Subsystem for Linux using this guide (takes about 15 minutes). Follow it until you see “Installation successful”. Now, open CMD (hit Start, type cmd, and press Enter), and type bash (and press Enter) to start Bash.

Be ware that lecturers may not be able to help you with problems on Windows.

MacOS:
Apple already has a terminal emulator by default to provide a command line interface. Just search for terminal in spotlight or find it in your applications folder.

Git

Windows:
If you installed the Windows Subsystem for Linux just now, install Git by running apt-get install git in Bash.

MacOS:
Install Git from their website, by downloading the latest release.

Connect Git and GitHub together inside of the terminal like so:

git config --global user.name "Mona Lisa"
git config --global user.email "mona@lisa.com"

Use the same email for Git as you used to sign up for GitHub.

Node

Open your terminal, and install nvm like so:

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

Close and re-open your terminal and now run the following:

nvm install stable

Node is now installed (and npm with it). You can check it by running:

node -v # Should print 9.4.0 (or a higher version)
npm -v # Something like 5.6.0 (or a higher version)

You can use nvm to update Node in the future. npm can update itself (npm install -g npm).

You might encouter an eaccess problem if you installed Node using the installer. We do not recommend using a Node installer but the Node version manager (nvm) as stated above, since the Node installation process installs npm in a directory with local permissions and can cause permissions errors when you run npm packages globally.

MongoDB

Follow the official manual for installation on macOS and Windows.

Check your installation and version with:

mongod --version # Should print 3.6 (or a higher version)

Communication

Slack

Sign up for our Slack workspace on cmda-tech.slack.com. Get invited by clicking on the invite link on our class page on Moodle. Join the #backend channel in our workspace.

Get your Slack set up properly, and then send your lecturer a direct message including your real name, student number, class, and GitHub username. We’ll use this info to link your GitHub and Slack to our administration files.

If you have technical questions feel free to ask them in Slack but keep the following in mind:

Introduction

Introduce yourself to your teacher and class! Open an issue on our GitHub issue tracker. You can pick what are called issue templates. Each assignment has a different template in which you can hand in your assignments for that week. This is also the place where Teachers and Student-Asistants will give you feedback.

Questions

If you have questions (in this order):