Skip to content

Latest commit

 

History

History
1093 lines (684 loc) · 37.4 KB

macOS.md

File metadata and controls

1093 lines (684 loc) · 37.4 KB

Setup instructions

You will find below the instructions to set up you computer for Le Wagon Data Science course

Please read them carefully and execute all commands in the following order. If you get stuck, don't hesitate to ask a teacher for help 🙋

Let's start 🚀

Zoom

To be able to interact when we are not in the same physical room, we will be using Zoom, a video conferencing tool.

⚠️ If you already have Zoom installed, please make sure that the version is at least 5.6.

  • Go to https://zoom.us/download
  • Under Zoom Client click the Download button
  • Open the file you have just downloaded to install the app
  • Open the Zoom app
  • If you already have a Zoom account, sign in using your credentials
  • If not, click on the Sign Up Free link:

Sign Up Free to Zoom

You will be redirected to Zoom's website to complete a form.

When it's done, go back to the Zoom app and sign in using your credentials.

You should then see a screen like this:

Zoom Home Screen

You can now close the Zoom app.

GitHub account

Have you signed up to GitHub? If not, do it right away.

👉 Upload a picture and put your name correctly on your GitHub account. This is important as we'll use an internal dashboard with your avatars. Please do this now, before you continue with this guide.

GitHub picture

Apple Silicon Chips

If you bought your computer after late 2020, chances are it has a new Apple silicon chip instead of an Intel processor: let's find out.

Open a new terminal window from Applications > Utilities or search for it with Spotlight:

Open Terminal on macOS

Copy-paste the following command in the terminal and hit ENTER to execute.

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/setup/master/utils/macos_list_processor_type.sh)"

☝️ The result of the command should indicate whether your computer uses Apple Silicon.

If your computer uses Apple Silicon, expand the paragraph below and go through it. Otherwise ignore it.

👉  Setup for Apple Silicon 👈

Uninstall Homebrew

We need to uninstall Homebrew in case a native version was installed.

Execute the following command in the terminal:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"

If brew was not installed you will get the message brew: command not found!

Configure Terminal for Rosetta

Open the Finder app (or search for it with Spotlight).

Go to Applications > Utilities.

Duplicate the terminal app (select it, then CMD + C, CMD + V), and rename a copy as Terminal Rosetta.

Press CMD + I on the Terminal Rosetta app, then check the box "Open using Rosetta".

⚠️ From now on during the bootcamp, whenever you are asked to open a Terminal, you will use the Terminal Rosetta app.

A note about quitting apps on a Mac

Clicking the little red cross in the top left corner of the application window on a Mac does not really quit it, it just closes an active window. To quit the application for real either press CMD + Q when the application is active, or navigate to APP_NAME -> Quit in the menu bar.

Quit Terminal on macOS

During this setup you will be asked to quit and re-open applications multiple times, please make sure you do it properly 🙏

Command Line Tools

Open a new terminal, copy-paste the following command and hit ENTER:

xcode-select --install

If you receive the following message, you can just skip this step and go to next step.

# command line tools are already installed, use "Software Update" to install updates

Otherwise, it will open a window asking you if you want to install some software: click on "Install" and wait.

Install xcode-select on macOS

✔️ If you see the message "The software was installed" then all good 👍

❌ If the command xcode-select --install fails try again: sometimes the Apple servers are overloaded.

❌ If you see the message "Xcode is not currently available from the Software Update server", you need to update the software update catalog:

sudo softwareupdate --clear-catalog

Once this is done, you can try to install again.

Homebrew

On Mac, you need to install Homebrew which is a Package Manager. It will be used as soon as we need to install some software. To do so, open your Terminal and run:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

This will ask for your confirmation (hit Enter) and your macOS user account password (the one you use to log in when you reboot your Macbook). :warning: When typing a password in the Terminal, you will not get a visual feedback (something like *****), this is normal!! Type the password and confirm by typing Enter.

If you already have Homebrew, it will tell you so, that's fine, go on.

Then install some useful software:

brew update
👉 If you get a `/usr/local must be writable` error 👈

Just run this:

sudo chown -R $USER:admin /usr/local
brew update
👉 If you get a `Error: Not a valid ref: refs/remotes/origin/master` error 👈

The full error would be:

Error: Not a valid ref: refs/remotes/origin/master :
fatal: ambiguous argument 'refs/remotes/origin/master': unknown revision or path not in the working tree.

Run the following commands to solve it:

rm -fr $(brew --repo homebrew/core)  # because you can't `brew untap homebrew/core`
brew tap homebrew/core

Proceed running the following in the terminal (you can copy / paste all the lines at once).

brew upgrade git         || brew install git
brew upgrade gh          || brew install gh
brew upgrade wget        || brew install wget
brew upgrade imagemagick || brew install imagemagick
brew upgrade jq          || brew install jq
brew upgrade openssl     || brew install openssl
brew upgrade tree        || brew install tree
brew upgrade ncdu        || brew install ncdu
brew upgrade xz          || brew install xz
brew upgrade readline    || brew install readline

Chrome - your browser

Install the Google Chrome browser if you haven't got it already and set it as a default browser.

Follow the steps for your system from this link 👉 Install Google Chrome

Why Chrome?

We recommend to use it as your default browser as it's most compatible with testing or running your code, as well as working with Google Cloud Platform. Another alternative is Firefox, however we don't recommend using other tools like Opera, Internet Explorer or Safari.

Visual Studio Code

Installation

Let's install Visual Studio Code text editor.

Copy (CMD + C) the command below then paste it in your terminal (CMD + V):

brew install --cask visual-studio-code

Then launch VS Code by running the following command in your terminal:

code

✔️ If a VS Code window has just opened, you're good to go 👍

❌ Otherwise, please contact a teacher

VS Code Extensions

Installation

Let's install some useful extensions to VS Code.

☝️ If you are on Windows, install them manually one-by-one from within VS code (Ctrl-Shift-X)

If you are on Mac or Linux, you can install them by running the following command from your terminal:

code --install-extension ms-vscode.sublime-keybindings
code --install-extension emmanuelbeziat.vscode-great-icons
code --install-extension MS-vsliveshare.vsliveshare
code --install-extension ms-python.python
code --install-extension KevinRose.vsc-python-indent
code --install-extension ms-python.vscode-pylance
code --install-extension ms-toolsai.jupyter

Live Share configuration

Visual Studio Live Share is a VS Code extension which allows you to share the code in your text editor for debugging and pair-programming: let's set it up!

Launch VS Code from your terminal by typing code and pressing ENTER.

Click on the little arrow at the bottom of the left bar 👇

VS Code Live Share

  • Click on the "Share" button, then on "GitHub (Sign in using GitHub account)".
  • A popup appears asking you to sign in with GitHub: click on "Allow".
  • You are redirected to a GitHub page in you browser asking you to authorize Visual Studio Code: click on "Continue" then "Authorize github".
  • VS Code may display additional pop-ups: close them by clicking "OK".

That's it, you're good to go!

Oh-my-zsh

Let's install the zsh plugin Oh My Zsh.

In a terminal execute the following command:

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

If asked "Do you want to change your default shell to zsh?", press Y

At the end your terminal should look like this:

Ubuntu terminal with OhMyZsh

✔️ If it does, you can continue 👍

❌ Otherwise, please ask for a teacher

GitHub

Already configured?

Then try this command:

ssh -T git@github.com

If it returns the following:

# Hi <your_github_nickname>! You've successfully authenticated, but GitHub does not provide shell access

It means git is already configured on your laptop, you can skip the section below!

Configuring your first SSH key

We need to generate SSH keys which are going to be used by GitHub and Heroku to authenticate you. Think of it as a way to log in, but different from the well known username/password couple. If you already generated keys that you already use with other services, you can skip this step.

Open a terminal and type this, replacing the email with yours (the same one you used to create your GitHub account). It will prompt for information. Just press enter until it asks for a passphrase.

mkdir -p ~/.ssh && ssh-keygen -t ed25519 -o -a 100 -f ~/.ssh/id_ed25519 -C "TYPE_YOUR_EMAIL@HERE.com"

NB: when asked for a passphrase, put something you want (and that you'll remember), it's a password to protect your private key stored on your hard drive. You'll type, nothing will show up on the screen, that's normal. Just type the passphrase, and when you're done, press Enter.

Then you need to give your public key to GitHub. Run:

cat ~/.ssh/id_ed25519.pub

It will prompt on the screen the content of the id_ed25519.pub file. Copy that text, then go to github.com/settings/ssh. Click on Add SSH key, fill in the Title with your computer name, and paste the Key. Finish by clicking on the Add key green button.

To check that this step is completed, in the terminal run this. You will be prompted a warning, type yes then Enter.

ssh -T git@github.com

If you see something like this, you're done!

# Hi <your_github_nickname>! You've successfully authenticated, but GitHub does not provide shell access

Don't be in a rush, take time to read this StackOverflow Q&A to get a better understanding of what those keys are used for.

GitHub CLI

CLI is the acronym of Command-line Interface.

In this section, we will use GitHub CLI to interact with GitHub directly from the terminal.

It should already be installed on your computer from the previous commands.

First in order to login, copy-paste the following command in your terminal:

⚠️ DO NOT edit the email

gh auth login -s 'user:email' -w

You will get the following output:

! First copy your one-time code: 0EF9-D015
- Press Enter to open github.com in your browser...

Select and copy the code (0EF9-D015 in the example), then press ENTER.

Your browser will open and ask you to authorize GitHub CLI to use your GitHub account. Accept and wait a bit.

Come back to the terminal, press ENTER again, and that's it.

To check that you are properly connected, type:

gh auth status

✔️ If you get Logged in to github.com as <YOUR USERNAME> , then all good 👍

❌ If not, contact a teacher.

Then run the following configuration line:

gh config set git_protocol ssh

Dotfiles

There are three options, choose one:

1. I already attended Web Development (FullStack) bootcamp at Le Wagon on the same laptop

This means that you already forked the GitHub repo lewagon/dotfiles, but at that time the configuration was maybe not ready for the new Data Science bootcamp.

Open your terminal and go to your dotfiles project:

cd ~/code/<YOUR_GITHUB_NICKNAME>/dotfiles
code . # Open it in VS Code

In VS Code, open the zshrc file. Replace its content with the newest version of that file that we provide. Save to disk.

Back to the terminal, run a git diff and ask a TA to come and check about this configuration change. You should see stuff about Python and pyenv.

Once this is good, commit and push your changes:

git add zshrc
git commit -m "Update zshrc for Data Science bootcamp"
git push origin master

2. I did not attend the Web Dev bootcamp at Le Wagon

Hackers love to refine and polish their shell and tools. We'll start with a great default configuration provided by Le Wagon, stored on GitHub. As your configuration is personal, you need your own repository storing it, so you first need to fork it to your GitHub account.

➡️ Click here to fork the lewagon/dotfiles repository to your account (you'll need to click again on your picture to confirm where you do the fork).

Forking means that it will create a new repo in your GitHub account, identical to the original one. You'll have a new repository on your GitHub account, your_github_username/dotfiles. We need to fork because each of you will need to put specific information (e.g. your name) in those files.

Now this is done, go on with the following instructions under in the 3. section right below. ⚠️ DO NOT SKIP IT!

3. I already attended Web Development (FullStack) bootcamp at Le Wagon but I have a new laptop

Open your terminal and run the following command:

export GITHUB_USERNAME=`gh api user | jq -r '.login'`
echo $GITHUB_USERNAME

You should see your GitHub username printed. If it's not the case, stop here and ask for help. There seems to be a problem with the previous step (gh auth).

Time to fork the repo and clone it on your laptop:

mkdir -p ~/code/$GITHUB_USERNAME && cd $_
gh repo fork lewagon/dotfiles --clone

Run the dotfiles installer.

cd ~/code/$GITHUB_USERNAME/dotfiles && zsh install.sh

Check the emails registered with your GitHub Account. You'll need to pick one at the next step:

gh api user/emails | jq -r '.[].email'

Run the git installer:

cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh

☝️ This will prompt you for your name (FirstName LastName) and your email. Be careful you need to put one of the email listed above thanks to the previous gh api ... command. If you don't do that, Kitt won't be able to track your progress.

Please now quit all your opened terminal windows.

Installing Python (with pyenv)

Before installing Python, please check your xz version with:

brew info xz

It should be more than 5.2.0, if not you should run:

sudo rm -rf /usr/local/opt/xz
brew upgrade
brew install xz

Then run:

brew install readline

macOS comes with an outdated version of Python that we don't want to use. You might already have installed Anaconda or something else to tinker with Python and Data Science packages. All of this does not really matter as we are going to do a professional setup of Python where you'll be able to switch which version you want to use whenever you type python in the terminal.

First let's install pyenv with the following Terminal command:

brew install pyenv

Then quit all your opened terminal windows (Cmd + Q) and restart one.

Let's install the latest stable version of Python supported by Le Wagon's curriculum:

pyenv install 3.8.12

This command might take a while, this is perfectly normal. Don't hesitate to help other students seated next to you!

🛠 Troubleshooting

If you encounter an error installing Python with pyenv about zlib:

zipimport.ZipImportError: can't decompress data; zlib not available

Install zlib with:

brew install zlib
export LDFLAGS="-L/usr/local/opt/zlib/lib"
export CPPFLAGS="-I/usr/local/opt/zlib/include"

Then try to install Python again:

pyenv install 3.8.12

It could raise another error about bzip2, you can ignore it and continue to the next step.


OK once this command is complete, we are going to tell the system to use this version of Python by default. This is done with:

pyenv global 3.8.12

Once again, quit all your opened terminal windows (Cmd + Q) and restart one.

To check if this worked, run python --version. If you see 3.8.12, perfect! If not, ask a TA that will help you debug the problem thanks to pyenv versions and type -a python (python should be using the .pyenv/shims version first).

Python Virtual Environment

Before we start installing relevant Python packages, we will isolate the setup for the Bootcamp into a dedicated virtual environment. We will use a pyenv plugin called pyenv-virtualenv.

First let's install this plugin:

git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv

Once again, quit all your opened terminal windows (Cmd + Q) and restart one.

Let's create the virtual environment we are going to use during the whole bootcamp:

pyenv virtualenv 3.8.12 lewagon

Let's now set the virtual environment with:

pyenv global lewagon

Great! Anytime we'll install Python package, we'll do it in that environment.

Python packages

Now that we have a pristine lewagon virtual environment, it's time to install some packages in it.

First, let's upgrade pip, the tool to install Python Packages from pypi.org. In the latest terminal where the virtualenv lewagon is activated, run:

pip install --upgrade pip

Then let's install some packages for the first weeks of the program:

pip install -Ur https://raw.githubusercontent.com/lewagon/data-runner/py-3.8.12-pandas-1.3-async-v2/requirements.txt

Finally, more Data Science packages:

pip install -U yapf jupyterlab seaborn plotly nbconvert xgboost statsmodels pandas-profiling dtale jupyter-resource-usage jupyter_contrib_nbextensions

TensorFlow

Install TensorFlow:

Setup for Intel chips (default)
pip install -U 'tensorflow<2.6'
Setup for Apple Silicon chips
pip install -U tensorflow-macos<2.6

Python setup check up

Check your Python version with the following commands:

zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.8.12

Run the following command to check if you successfully installed the required packages:

zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.sh)"

Now run the following command to check if you can load these packages:

python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)"

Make sure you can run Jupyter:

jupyter notebook

And open a Python 3 notebook.

Make sure that you are running the correct python version in the notebook. Open a cell and run :

import sys; sys.version

That's it for today. During the bootcamp, we'll install more packages but we'll talk about that later.

jupyter notebook extensions

Pimp your jupyter notebooks with awesome extensions:

# install nbextensions
pip install jupyter_contrib_nbextensions
pip install jupyter_nbextensions_configurator
jupyter contrib nbextension install --user
jupyter nbextension enable toc2/main
jupyter nbextension enable collapsible_headings/main
jupyter nbextension enable spellchecker/main
jupyter nbextension enable code_prettify/code_prettify

Custom CSS

Improve the display of the details disclosure elements in your notebooks.

Open custom/custom.css in the config directory:

cd $(jupyter --config-dir)
mkdir -p custom
touch custom/custom.css
code custom/custom.css

Edit custom.css with:

summary {
    cursor: pointer;
    display:list-item;
}
summary::marker {
    font-size: 1em;
}

You can close VS Code.

jupyter check up

Quit and restart your terminal first.

Then, check you can launch a notebook server on your machine:

jupyter notebook

Your web browser should open on a jupyter window:

jupyter.png

Click on New:

jupyter_new.png

A tab should open on a new notebook:

jupyter_notebook.png

nbextensions check up

Perform a sanity check for jupyter notebooks nbextensions. Click on Nbextensions:

jupyter_nbextensions.png

Untick "disable configuration for nbextensions without explicit compatibility" then check that the nbextensions are enabled:

nbextensions.png

You can close your web browser then terminate the jupyter server with CTRL + C.

Docker 🐋

Docker is an open platform for developing, shipping, and running applications.

if you already have Docker installed on your machine please update with the latest version

Install Docker

Go to Docker website and choose your operating system:

Then follow the setup instructions, you are going to install a desktop application.

Once done and launched, check Docker is up and running:

docker info

You should get:

gcloud CLI

Before Setting up our Google Cloud Platform account let's configure the gcloud CLI (A command line interface for Google Cloud Platform). Run the below and follow the terminal prompts to update your $PATH and enable shell command completion for the .zshrc file:

brew install --cask google-cloud-sdk

Then you can:

/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/install.sh

Google Cloud Platform setup

GCP is a cloud solution that you are going to use in order to deploy your Machine Learning-based products to production.

🚨 If you are a student of the Part-Time Bootcamp, SKIP THIS SECTION FOR NOW! GCP offers $300 worth of free credits for a duration of 3 months. You do not want to activate your GCP account too soon 🙅‍♂️

Project setup

  • Go to Google Cloud and create an account if you do not already have one
  • In the Cloud Console, on the project list, select or create a Cloud project

  • Give it a name such as Wagon Bootcamp for example
  • Notice the ID automatically created for the project, e.g. wagon-bootcamp-123456

Account language

In order to facilitate the following of the instructions during the bootcamp, open your GCP account preferences:

https://myaccount.google.com/language

If the preferred language is not:

  • English
  • United States

Then switch the language to english:

  • Click on the edit pen logo
  • Select English
  • Select United States
  • Click on Select

Billing account

You will now link your account to your credit card. This step is required or you will not be able to use the services provided by GCP. Do not worry, you will be able to consume most GCP services through free credits throughout the bootcamp.

  • Click on Billing
  • Click on MANAGE BILLING ACCOUNTS
  • Click on ADD BILLING ACCOUNT
  • Give a name to your billing account, e.g. My Billing Account
  • Click on "I have read..." and agree the to the terms of service
  • Click on CONTINUE
  • Select your account type: Individual
  • Fill your name and address

You should see that you have a free credit of "$300 credits over the next 90days".

  • Click on card details
  • Enter your credit card info
  • Click on START MY FREE TRIAL

Once this is done, verify that your billing account is linked to your GCP project.

  • Select your project
  • Go to Billing
  • Select LINK A BILLING ACCOUNT
  • Select My Billing Account
  • Click on SET ACCOUNT

You should now see:

Free trial status: $300 credit and 91 days remaining - with a full account, you'll get unlimited access to all of Google Cloud Platform.
👉 If you do not own a credit card 👈

If you do not own a credit card, an alternative is to setup a Revolut account. Revolut is a financial app that will allow you to create a virtual credit card linked to your mobile phone billing account.

Skip this step if you own a credit card and use your credit card for the setup.

Download the Revolut app, or go to revolut and follow the steps to download the app (enter your mobile phone number and click on Get Started).

  • Open the Revolut app
  • Enter your mobile phone number
  • Enter the verification code received by SMS
  • The app will ask for your country, address, first and last name, date of birth, email address
  • The app will also ask for a selfie and request your profession
  • The app will require a photo of your identification card or passport

Once this is done, select the standard (free) plan. No need to add the card to Apple pay, or ask for a the delivery of a physical card, or add money securely.

You now have a virtual card which we will use for the GCP setup.

In the main view of the Revolut the app

  • Click on Ready to use
  • Click on the card
  • Click on Show card details
  • Note down the references of the virtual credit card and use them in order to proceed with the GCP setup
👉 If you receive an email from Google saying "Urgent: your billing account XXXXXX-XXXXXX-XXXXXX has been suspended" 👈

This may happen especially in case you just setup a Revolut account.

  • Click on PROCEED TO VERIFICATION
  • You will be asked to send a picture of your credit card (only the last 4 digits, no other info)
  • In case you used Revolut, you can send a screenshot of your virtual credit card (do not forget to remove the validity date from the screenshot)
  • Explain that you are attending the Le Wagon bootcamp, do not own a credit card, and have just created a Revolut account in order to setup GCP for the bootcamp using a virtual credit card

You may receive a validation or requests for more information within 30 minutes.

Once the verification goes through, you should receive an email stating that "Your Google Cloud Platform billing account XXXXXX-XXXXXX-XXXXXX has been fully reinstated and is ready to use.".

Enabling GCP services

  • Make sure that billing is enabled for your Google Cloud project

ℹ️ You have a $300 credit to use for Google Cloud resources, which will be more than enough for the bootcamp.

Configure Cloud sdk

  • Authenticate the gcloud CLI with the google account you used for GCP
gcloud auth login
  • Login to your Google account on the new tab opened in your web browser
  • List your active account and check your email address you used for GCP is present
gcloud auth list
  • Set your current project (replace PROJECT_ID with the ID of your project, e.g. wagon-bootcamp-123456)
gcloud config set project PROJECT_ID
  • List your active account and current project and check your project is present
gcloud config list

Create a service account key 🔑

Now that you have created a GCP account and a project (identified by its PROJECT_ID), we are going to configure the actions (API calls) that you want to allow your code to perform.

TL;DR Since API calls are not free, it may be important to define these with caution, but for the purpose of the bootcamp this will not be an issue and we are going to allow our code to use all API without any restrictions (see the project owner part later).

As there may be several projects associated with a GCP account, a project may be composed of several services (any bundle of code, whatever its form factor, that requires the usage of GCP API calls in order to fulfill its purpose).

GCP requires that the services of the project using API calls are registered on the platform and their credentials configured.

Here we will only need to use a single service and will create the corresponding service account.

Since the service account is what identifies your application (and therefore your GCP billing account and ultimately your credit card) when it comes to bill the performed API calls, you are going to want to be cautious with the next steps. Basically, do not let your service account json file by the coffee machine, do not send it as a tweet, do not store it in your git codebase (even if your git repository is private).

  • Go to Service Account key page

  • Create a new Service Account key :

    • Give a name to that account
    • Set Role as project > owner
  • Download the JSON file

  • Give it a name without any spaces (something like le-wagon-data-123456789abc.json)

  • Store the service account json file somewhere you'll remember, for example:

/Users/MACOS_USERNAME/code/GITHUB_NICKNAME/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json
  • Store the absolute path to the JSON file as an environment variable:
echo 'export GOOGLE_APPLICATION_CREDENTIALS=/path/to/the/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.aliases
ℹ️ How to find the absolute path of a file? You can drag and drop the file in your terminal.

Restart your terminal and run:

echo $GOOGLE_APPLICATION_CREDENTIALS

The ouptut should be the following:

/some/absolute/path/to/your/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json

Now let's verify that the path to your service account json file is correct:

cat $(echo $GOOGLE_APPLICATION_CREDENTIALS)

👉 This command should display the content of your service account json file. If it does not, ask for a TA 🙏

Your code and utilities are now able to access the resources of your GCP account.

Let's proceed with the final steps of configuration...

  • List the service accounts associated to your active account and current project
gcloud iam service-accounts list
  • Retrieve the service account email address, e.g. SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
  • List the roles of the service account from the cli (replace PROJECT_ID and SERVICE_ACCOUNT_EMAIL)
gcloud projects get-iam-policy PROJECT_ID \
--flatten="bindings[].members" \
--format='table(bindings.role)' \
--filter="bindings.members:SERVICE_ACCOUNT_EMAIL"
  • You should see that your service account has a role of roles/owner
Troubleshooting

🏁 You are done with the GCP setup!

Kitt

⚠️ If you have received an email from Le Wagon inviting you to sign up on Kitt (our learning platform), you can safely skip this step. Instead, please follow the instructions in the email you received if you haven't done so already.

If you are unsure about what to do, you can follow this link. If you are already logged in, you can safely skip this section. If you are not logged in, click on Enter Kitt as a Student. If you manage to login, you can safely skip this step. Otherwise ask a teacher whether you should have received an email or follow the instructions below.

Register as a Wagon alumni by going to kitt.lewagon.com/onboarding. Select your batch, sign in with GitHub and enter all your information.

Your teacher will then validate that you are indeed part of the batch. You can ask him to do it as soon as you completed the registration form.

Once the teacher has approved your profile, go to your email inbox. You should have 2 emails:

  • One from Slack, inviting you to the Le Wagon Alumni slack community (where you'll chat with your buddies and all the previous alumni). Click on Join and fill the information.
  • One from GitHub, inviting you to lewagon team. Accept it otherwise you won't be able to access the lecture slides.

Slack

Slack is a communcation platform pretty popular in the tech industry.

Installation

Download the Slack app and install it.

⚠️ If you are already using Slack in your browser, please download and install the desktop app which is fully featured.

Settings

Launch the app and sign in to lewagon-alumni organization.

Make sure you upload a profile picture 👇

How to upload a profile picture on Slack

The idea is that you'll have Slack open all day, so that you can share useful links / ask for help / decide where to go to lunch / etc.

To ensure that everything is working fine for video calls, let's test your camera and microphone:

  • Open the Slack app
  • In any channel message bar type /call --test and press ENTER
  • Click on the "Start test" green button

Check microphone and webcam with Slack

✔️ When the test is finished, you should see green "Succeed" messages at least for your microphone and camera. 👍

❌ If not, contact a teacher.

You can also install Slack app on your phone and sign in lewagon-alumni!

(Bonus) Kata

If you are done with your setup, please ask around if some classmates need some help with theirs (macOS, Linux, Windows). We will have our first lectures at 2pm and will talk about the Setup you just did + onboard you on Kitt.

If you don't have a lot of experience with git and GitHub, please (re-)watch this workshop (1.25 playback speed is fine).

If you do, then you can wait for the first lecture working on this Tic-Tac-Toe Kata