From e848d1b044d68c16a1ab8744971e8969b6524034 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Thu, 17 Sep 2026 20:54:42 +0200 Subject: [PATCH 01/42] Homebrew no-intel --- _partials/es/homebrew.md | 52 ++++++++++------------------------------ _partials/homebrew.md | 48 +++++++++---------------------------- 2 files changed, 24 insertions(+), 76 deletions(-) diff --git a/_partials/es/homebrew.md b/_partials/es/homebrew.md index c9fe407c..122abc7e 100644 --- a/_partials/es/homebrew.md +++ b/_partials/es/homebrew.md @@ -1,59 +1,33 @@ ## Homebrew -### 1. Instálalo: -Si usas Mac tienes que instalar [Homebrew](http://brew.sh/) el cual es un sistema de gestión de paquetes. -Será necesario cuando tengamos que instalar algún programa. -Para instalarlo, abre tu Terminal y ejecuta lo siguiente: + +[Homebrew](http://brew.sh/) es un gestionador de paquetes: es un programa que se usa para instalar otros programas desde la línea de comando. ¡Vamos a instalarlo! + +Abre la terminal y ejecuta lo siguiente: ```bash /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ``` -Te pedirá tu confirmación (presiona `Enter`) y tu **contraseña de usuario macOS** (la que usas para [iniciar sesión](https://support.apple.com/en-gb/HT202860) cuando reinicias tu Macbook). -:warning: Cuando escribas tu contraseña en la Terminal, **no** la verás (sólo verás algo como `*****`). ¡Esto es **normal**! Simplemente escribe tu contraseña y confirma presionando `Enter`. - -
- 🛠 Si aparece un Error: Not a valid ref: refs/remotes/origin/master - +Te pedirá que confirmes (presionando `Enter`) y también te pedirá la **contraseña de tu cuenta de usuario macOS** (la que usas para [iniciar sesión](https://support.apple.com/en-gb/HT202860) cuando reinicias tu Macbook). -El error completo es el siguiente: +:warning: Cuando escribas tu contraseña no verás nada en la pantalla. **Esto es normal**. Es una herramienta de seguridad para ocultar tanto el contenido de tu contraseña como su longitud. Simplemente escribe tu contraseña y presiona `Enter` al terminar. -``` bash -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. -``` - -Ejecuta los siguientes comandos para resolverlo: - -``` bash -rm -fr $(brew --repo homebrew/core) # because you can't `brew untap homebrew/core` -brew tap homebrew/core -``` +Si ya tienes Homebrew instalado, el sistema te lo dirá y puedes continuar. -
- -Si ya tienes Homebrew, el sistema te lo dirá. No hay problema, así que puedes continuar. - -### 2. Asegúrate de tener la versión más reciente: +Una vez que Homebrew haya terminado de instalarse, ejecuta estos dos comandos para agregarlo a tu `PATH`: ```bash -brew update +echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile +eval "$(/opt/homebrew/bin/brew shellenv)" ``` -
- 🛠 Si aparece un error /usr/local must be writable - -Simplemente ejecuta lo siguiente: +Asegúrate de tener la última versión: -``` bash -sudo chown -R $USER:admin /usr/local +```bash brew update ``` -
- -### 3. Luego instala algunos programas útiles: - -Ejecuta lo siguiente en la terminal (puedes copiar / pegar todas las líneas juntas una sola vez). +Luego, instala algunos programas útiles (puedes copiar y pegar todas las líneas de código al mismo tiempo): ```bash brew upgrade git || brew install git diff --git a/_partials/homebrew.md b/_partials/homebrew.md index ef99abf6..3a569b2e 100644 --- a/_partials/homebrew.md +++ b/_partials/homebrew.md @@ -1,59 +1,33 @@ ## Homebrew -### 1. Install: -On Mac, you need to install [Homebrew](http://brew.sh/) 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: + +[Homebrew](http://brew.sh/) is a package manager: it's a software used to install other software from the command line. Let's install it! + +Open a terminal and run: ```bash /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](https://support.apple.com/en-gb/HT202860) 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 get a Error: Not a valid ref: refs/remotes/origin/master error - -The full error would be: - -``` bash -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: - -``` bash -rm -fr $(brew --repo homebrew/core) # because you can't `brew untap homebrew/core` -brew tap homebrew/core -``` - -
+:warning: When you type your password, nothing will show up on the screen, **that's normal**. This is a security feature to mask not only your password as a whole but also its length. Just type your password and when you're done, press `Enter`. If you already have Homebrew, it will tell you so, that's fine, go on. -### 2. Make sure you are on the latest version: +Once Homebrew has finished installing, run these two commands to add it to your `PATH`: ```bash -brew update +echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile +eval "$(/opt/homebrew/bin/brew shellenv)" ``` -
- 🛠 If you get a /usr/local must be writable error - -Just run this: +Make sure you're on the latest version: -``` bash -sudo chown -R $USER:admin /usr/local +```bash brew update ``` -
- -### 3. Then install some useful software: - -Proceed running the following in the terminal (you can copy / paste all the lines at once). +Then install some useful software (you can copy / paste all the lines at once): ```bash brew upgrade git || brew install git From 75b40d4bf50ad4eff23b5f473c72b45f9dfe0b26 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Thu, 17 Sep 2026 21:00:00 +0200 Subject: [PATCH 02/42] Simple check for Apple Silicon --- _partials/es/osx_silicon.md | 35 ++++------------------------------- _partials/osx_silicon.md | 35 ++++------------------------------- 2 files changed, 8 insertions(+), 62 deletions(-) diff --git a/_partials/es/osx_silicon.md b/_partials/es/osx_silicon.md index f945c12b..b09d047a 100644 --- a/_partials/es/osx_silicon.md +++ b/_partials/es/osx_silicon.md @@ -1,34 +1,7 @@ -## Chips Apple Silicon +## Comprueba tu procesador -Si compraste tu computadora después de finales del 2020, es probable que tenga un nuevo chip Apple Silicon en lugar de un procesador Intel: descubrámoslo. +Como se explica en los requisitos de nuestros portátiles, esta configuración solo es compatible con Apple silicon y ya no admite Macs con procesadores Intel. -Abre una nueva ventana de la tarminal desde Aplicaciones > Utilidades o búscala con [Spotlight](https://support.apple.com/es-es/HT204014): +Si compraste tu Mac después de finales de 2020, lo más probable es que tenga un chip Apple silicon en lugar de un procesador Intel. -![Abrir Terminal en macOS](images/macos_open_terminal.png) - -Copia y pega el siguiente comando en la terminal y presiona `Enter` para ejecutarlo. - -``` bash -/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/setup/master/utils/macos_list_processor_type.sh)" -``` - -☝️ El resultado del comando debería indicar si tu computadora usa un chip Apple Silicon. - -Si tu computadora usa **Apple Silicon**, expande el siguiente párrafo y ejecútalo. En caso contrario, ignóralo. - -
- 👉  Setup para Apple Silicon 👈 - -Quieres asegurarte que no estás usando Rosetta, que es una forma de usar tu Terminal como si tuvieras una computadora con Intel. - -Abre la app Finder (o búscala con [Spotlight](https://support.apple.com/es-es/HT204014)). - -Ve a Aplicaciones > Utilidades. - -Ubica la app Terminal (selecciónala). - -Presiona `Cmd` + `I` en la app Terminal, luego verifica que la caja "Abrir usando Rosetta" esté **desmarcada**. -En caso de que no veas esta caja, simplemente continúa. -
- -🚨 Ten esto en mente. Deberás recordarlo más adelante en este setup si tu computadora usa un chip Apple Silicon o Intel. +Si no estás seguro, haz clic en el icono de Apple situado en la esquina superior izquierda de la pantalla y selecciona *"Acerca de este Mac"*. Si el campo *"Chip"* comienza por *"Apple"*, puedes continuar. Si comienza por *"Intel"*, tu Mac no es compatible. diff --git a/_partials/osx_silicon.md b/_partials/osx_silicon.md index ab3ce039..ce596af7 100644 --- a/_partials/osx_silicon.md +++ b/_partials/osx_silicon.md @@ -1,34 +1,7 @@ -## Apple Silicon Chips +## Check your processor -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. +As explained in our laptop requirements, this setup supports only Apple silicon and no longer supports Macs with Intel processors. -Open a new terminal window from Applications > Utilities or search for it with [Spotlight](https://support.apple.com/en-gb/HT204014): +If you bought your Mac after late 2020, it most likely has an Apple silicon chip rather than an Intel processor. -![Open Terminal on macOS](images/macos_open_terminal.png) - -Copy-paste the following command in the terminal and hit `Enter` to execute. - -``` bash -/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 👈 - -You want to make sure that you are **not using** Rosetta, which is a way to use your Terminal as if you had an Intel computer. - -Open the Finder app (or search for it with [Spotlight](https://support.apple.com/en-gb/HT204014)). - -Go to Applications > Utilities. - -Locate the Terminal app (select it). - -Press `Cmd` + `I` on the Terminal app, then verify that the box "Open using Rosetta" is **unchecked**. -In case you don't see this box, just continue. -
- -🚨 Keep this in mind. You will need to remember later on in the setup whether your computer uses an Apple Silicon chip or is an Apple Intel version +If you're unsure, click the Apple icon in the top-left corner of your screen, then select *"About This Mac"*. If the *"Chip"* field starts with *"Apple"*, you're good to go. If it starts with *"Intel"*, your Mac isn't supported. From 3aced2dd6f6c7796b781accff8267ebda69ed0ed Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Thu, 17 Sep 2026 21:01:53 +0200 Subject: [PATCH 03/42] Remove DBeaver --- _partials/dbeaver.md | 4 ---- _partials/es/dbeaver.md | 4 ---- builds/LINUX.yml | 1 - builds/REMOTE_SETUP.yml | 1 - builds/VM.yml | 1 - builds/WINDOWS.yml | 1 - builds/macOS.yml | 1 - 7 files changed, 13 deletions(-) delete mode 100644 _partials/dbeaver.md delete mode 100644 _partials/es/dbeaver.md diff --git a/_partials/dbeaver.md b/_partials/dbeaver.md deleted file mode 100644 index 0ece6411..00000000 --- a/_partials/dbeaver.md +++ /dev/null @@ -1,4 +0,0 @@ - -## DBeaver - -Download and install [DBeaver](https://dbeaver.io/), a free and open source powerful tool to connect to any database, explore the schema and even **run SQL queries**. diff --git a/_partials/es/dbeaver.md b/_partials/es/dbeaver.md deleted file mode 100644 index f031e088..00000000 --- a/_partials/es/dbeaver.md +++ /dev/null @@ -1,4 +0,0 @@ - -## DBeaver - -DDescarga e instala [DBeaver](https://dbeaver.io/), una herramienta poderosa, gratuita y de código abierto para conectar con cualquier base de datos, explorar su esquema e incluso **hacer consultas SQL**. diff --git a/builds/LINUX.yml b/builds/LINUX.yml index 6c7cc11f..8a35c8be 100644 --- a/builds/LINUX.yml +++ b/builds/LINUX.yml @@ -26,7 +26,6 @@ partials: - pip - nbextensions - python_checkup - - dbeaver - ubuntu_docker - gcp_setup - gcp_setup_linux diff --git a/builds/REMOTE_SETUP.yml b/builds/REMOTE_SETUP.yml index 66cfe41f..838c38f1 100644 --- a/builds/REMOTE_SETUP.yml +++ b/builds/REMOTE_SETUP.yml @@ -39,7 +39,6 @@ partials: - pip - nbextensions - python_checkup - - dbeaver - ubuntu_docker # - de_setup/gcp_setup # - kitt diff --git a/builds/VM.yml b/builds/VM.yml index 5b836065..3cdbae58 100644 --- a/builds/VM.yml +++ b/builds/VM.yml @@ -35,7 +35,6 @@ partials: - pip - nbextensions - python_checkup - - dbeaver - ubuntu_docker - kitt - setup/windows_slack diff --git a/builds/WINDOWS.yml b/builds/WINDOWS.yml index 48867b25..984f4838 100644 --- a/builds/WINDOWS.yml +++ b/builds/WINDOWS.yml @@ -33,7 +33,6 @@ partials: - nbextensions - win_jupyter - python_checkup - - dbeaver - setup/windows_settings - win_vs_redistributable - win_docker diff --git a/builds/macOS.yml b/builds/macOS.yml index 535fd42a..88c0df33 100644 --- a/builds/macOS.yml +++ b/builds/macOS.yml @@ -26,7 +26,6 @@ partials: - pip - nbextensions - python_checkup - - dbeaver - docker - gcp_cli_setup - gcp_setup From a3dc202f8d27151f955fabe2806bbb8ba8064884 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Thu, 17 Sep 2026 21:47:57 +0200 Subject: [PATCH 04/42] Simplify dotfiles to base case first We currently give students 3 options depending on if they did a bootcamp before, and on which machine. Students have to unfold one of the options. Too often they miss this step. The large majority has not done a bootcamp before, nor used dotfiles on another machine. So we take that as the base case, with a dropdown for other cases. The dropdown redirects them to a TA with some options. We can improve this in a later phase, or add a Q&A for this specific use case. Low prio at this point. This is inspired by the work already done in DE setup. --- _partials/dotfiles.md | 71 ++++++++++++++++++++++--- _partials/dotfiles_installer.md | 24 --------- _partials/dotfiles_merge_upstream.md | 49 ----------------- _partials/dotfiles_new_laptop.md | 13 ----- _partials/dotfiles_new_student.md | 18 ------- _partials/dotfiles_same_laptop.md | 6 --- _partials/es/dotfiles.md | 70 +++++++++++++++++++++--- _partials/es/dotfiles_installer.md | 24 --------- _partials/es/dotfiles_merge_upstream.md | 50 ----------------- _partials/es/dotfiles_new_laptop.md | 13 ----- _partials/es/dotfiles_new_student.md | 18 ------- _partials/es/dotfiles_same_laptop.md | 6 --- builds/LINUX.yml | 6 --- builds/WINDOWS.yml | 6 --- builds/macOS.yml | 6 --- 15 files changed, 127 insertions(+), 253 deletions(-) delete mode 100644 _partials/dotfiles_installer.md delete mode 100644 _partials/dotfiles_merge_upstream.md delete mode 100644 _partials/dotfiles_new_laptop.md delete mode 100644 _partials/dotfiles_new_student.md delete mode 100644 _partials/dotfiles_same_laptop.md delete mode 100644 _partials/es/dotfiles_installer.md delete mode 100644 _partials/es/dotfiles_merge_upstream.md delete mode 100644 _partials/es/dotfiles_new_laptop.md delete mode 100644 _partials/es/dotfiles_new_student.md delete mode 100644 _partials/es/dotfiles_same_laptop.md diff --git a/_partials/dotfiles.md b/_partials/dotfiles.md index 72590a6f..f024e33b 100644 --- a/_partials/dotfiles.md +++ b/_partials/dotfiles.md @@ -1,19 +1,76 @@ ## Dotfiles -Hackers love to refine and polish their shell and tools. We'll start with a great default configuration provided by [Le Wagon](http://github.com/lewagon/dotfiles), stored on GitHub. +Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. -### Check your GitHub CLI configuration +### Forking the dotfiles -First, let's do a quick check. Open your terminal and run the following command: +To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. + +**Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name. + +
+ If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ + + + You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. + + + **Open a ticket** with a TA and do one of the following: + - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. + - If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. + - If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup. + +
+ +
+ +Run the following command: ```bash 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`). +✔️ You should see your Github username printed. + +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). + +Time to fork the repo and clone it on your computer: + +```bash +mkdir -p ~/code/$GITHUB_USERNAME && cd $_ +gh repo fork lewagon/dotfiles --clone +``` + +### Installing the dotfiles + +Run the `dotfiles` installer with: + +```bash +cd ~/code/$GITHUB_USERNAME/dotfiles && zsh install.sh +``` + +Check the emails registered with your GitHub Account. You'll need to pick one in the next step: + +```bash +gh api user/emails | jq -r '.[].email' +``` + +Run the git installer: + +```bash +cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh +``` + +:point_up: This will **prompt** you for your name (`FirstName LastName`) and your email. -### Fork and/or clone dotfiles +:warning: You **need** to put one of the emails listed above from the previous `gh api ...` command. If you don't do that, Kitt will not be able to track your progress. -There are three options, choose **one**: +💡 Select the `...@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. diff --git a/_partials/dotfiles_installer.md b/_partials/dotfiles_installer.md deleted file mode 100644 index f0e0accc..00000000 --- a/_partials/dotfiles_installer.md +++ /dev/null @@ -1,24 +0,0 @@ -### Run the dotfiles installer - -It's time to run the `dotfiles` installer: - -```bash -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: - -```bash -gh api user/emails | jq -r '.[].email' -``` - -Run the git installer: - -```bash -cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh -``` - -:point_up: This will **prompt** you for your name (`FirstName LastName`) and your email. -:warning: You **need** to put one of the emails listed above thanks to the previous `gh api ...` command. If you don't do that, Kitt won't be able to track your progress. 💡 Select the `@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. - -Please now **quit** all your opened terminal windows. diff --git a/_partials/dotfiles_merge_upstream.md b/_partials/dotfiles_merge_upstream.md deleted file mode 100644 index 879e87f5..00000000 --- a/_partials/dotfiles_merge_upstream.md +++ /dev/null @@ -1,49 +0,0 @@ -Open your terminal and go to your `dotfiles` project: - -```bash -cd ~/code/$GITHUB_USERNAME/dotfiles -``` - -Time to merge the changes from `lewagon/dotfiles` into yours: -1. Commit your current version of your dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Let's bring in the changes from upstream: `git merge upstream/master` - -1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. - -1. Do a `git diff HEAD~1 HEAD` to check what changed. - -1. If nothing seems out of the ordinary, continue - -
- Too many conflicts? - - - Let's just take over the current version from `lewagon/dotfiles`. - - First abort the merge: `git merge --abort`. - - Run `{{ CODE_EDITOR_CMD }} .` - - In {{ CODE_EDITOR }}, open the `zshrc` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Save to disk. - - Still in {{ CODE_EDITOR }}, open the `zprofile` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Save to disk. - - Back in the terminal, run a `git diff` and check if this didn't remove any personal configuration setting that you wanted to keep. - -
- -Time to commit your changes and push them. - -```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master -``` - - diff --git a/_partials/dotfiles_new_laptop.md b/_partials/dotfiles_new_laptop.md deleted file mode 100644 index 386941f9..00000000 --- a/_partials/dotfiles_new_laptop.md +++ /dev/null @@ -1,13 +0,0 @@ -
- - I already attended a Le Wagon coding bootcamp (Web Development or Data Science & AI) but I have a new laptop - - -This means that you already forked the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** - -First, clone your fork on this machine: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo clone $GITHUB_USERNAME/dotfiles -``` diff --git a/_partials/dotfiles_new_student.md b/_partials/dotfiles_new_student.md deleted file mode 100644 index 5191f4d7..00000000 --- a/_partials/dotfiles_new_student.md +++ /dev/null @@ -1,18 +0,0 @@ -
- - I did not attend the Web Dev or Data Science & AI bootcamp at Le Wagon - - - As your configuration is personal, you need your own repository storing it, so you'll need to fork it to your GitHub account. - -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. - -Lets' run this command to fork the repo, and clone it on your laptop: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo fork lewagon/dotfiles --clone -``` - -
diff --git a/_partials/dotfiles_same_laptop.md b/_partials/dotfiles_same_laptop.md deleted file mode 100644 index 541a191c..00000000 --- a/_partials/dotfiles_same_laptop.md +++ /dev/null @@ -1,6 +0,0 @@ -
- - I already did the setup of a Le Wagon coding bootcamp (WebDev or Data Science & AI) on the same laptop before - - -This means that you already forked and cloned the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** diff --git a/_partials/es/dotfiles.md b/_partials/es/dotfiles.md index f1934de2..ab9ce9ab 100644 --- a/_partials/es/dotfiles.md +++ b/_partials/es/dotfiles.md @@ -1,20 +1,76 @@ ## Dotfiles -Los hackers aman mejorar sus shells y sus herramientas. Comenzaremos con una configuración por defecto genial proporcionada por [Le Wagon](http://github.com/lewagon/dotfiles) y almacenada en GitHub. +Mejoremos la experiencia de tu máquina instalando los [dotfiles 🔗](https://github.com/lewagon/dotfiles) preconfigurados de Le Wagon. Son archivos de configuración para tu terminal, zsh, git y VS Code. -### Verifica tu configuración de GitHub CLI +### Hacer un fork de los dotfiles -Primero, hagamos una verificación rápida. Abre tu terminal y ejecuta el comando siguiente: +Para personalizar esta configuración, tendrás que hacer un **fork** del repositorio en tu propia cuenta de Github. + +Al hacer un **fork**, se crea una copia del repositorio en tu cuenta (`your_github_username/dotfiles`), que luego podrás modificar con tu información personal, como tu nombre. + +
+ Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ + + + Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. + + + **Abre un ticket** con un TA y haz una de las siguientes cosas: + - Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. + - Si no te importa perder tus dotfiles existentes (recomendado): + - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. + - Elimina el repositorio local: `rm -rf ~/code//dotifles`. + - Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: + - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. + - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. + - Vuelve a `master`: `git checkout master`. + - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. + - Continúa con la configuración. + +
+ +
+ +Ejecuta el siguiente comando: ```bash export GITHUB_USERNAME=`gh api user | jq -r '.login'` echo $GITHUB_USERNAME ``` -Deberías ver tu usuario GitHub. Si no es así, **no hagas más nada** y pide ayuda. -Parece que hay un problema con el paso anterior (`gh auth`). +✔️ Deberías ver tu nombre de usuario de Github impreso. + +❌ Si no es así, detente aquí y pide ayuda. Puede haber un problema con el paso anterior (`gh auth`). + +Es hora de hacer un fork del repositorio y clonarlo en tu ordenador: + +```bash +mkdir -p ~/code/$GITHUB_USERNAME && cd $_ +gh repo fork lewagon/dotfiles --clone +``` + +### Instalar los dotfiles + +Ejecuta el instalador de `dotfiles` con: + +```bash +cd ~/code/$GITHUB_USERNAME/dotfiles && zsh install.sh +``` + +Comprueba los correos electrónicos registrados en tu cuenta de GitHub. Tendrás que elegir uno en el siguiente paso: + +```bash +gh api user/emails | jq -r '.[].email' +``` + +Ejecuta el instalador de git: + +```bash +cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh +``` +:point_up: Se te pedirá (**prompt**) tu nombre (`Nombre Apellido`) y tu correo electrónico. -### Fork y/o clone los archivos de configuración +:warning: **Debes** introducir uno de los correos electrónicos indicados arriba mediante el comando anterior `gh api ...`. Si no lo haces, Kitt no podrá realizar el seguimiento de tu progreso. -Hay tres opciones, escoge **una**: +💡 Selecciona la dirección `...@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en repositorios públicos a los que contribuyas. diff --git a/_partials/es/dotfiles_installer.md b/_partials/es/dotfiles_installer.md deleted file mode 100644 index d0f96ac3..00000000 --- a/_partials/es/dotfiles_installer.md +++ /dev/null @@ -1,24 +0,0 @@ -### Ejecuta el instalador de dotfiles - -Ejecuta el instalador de `dotfiles`. - -```bash -cd ~/code/$GITHUB_USERNAME/dotfiles && zsh install.sh -``` - -Verifica los emails registrados en tu cuenta GitHub. Deberás seleccionar uno de ellos en el próximo paso: - -```bash -gh api user/emails | jq -r '.[].email' -``` - -Ejecuta el instalador de git: - -```bash -cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh -``` - -:point_up: Esto te **guiará** con tu nombre (`FirstName LastName`) y con tu email. -:warning: Cuidado, **debes** poner uno de los emails de la lista de arriba que te suministra el comando `gh api ...` usado anteriormente. Si haces eso, Kitt no podrá hacerle seguimiento a tu progreso. Cualquier correo que elijas se mostrará **públicamente** en internet. 💡 Selecciona la dirección `@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en los repositorios públicos a los que puedas contribuir. - -Ahora **cierra** todas las ventanas de tu terminal que tengas abiertas por favor. diff --git a/_partials/es/dotfiles_merge_upstream.md b/_partials/es/dotfiles_merge_upstream.md deleted file mode 100644 index 06498340..00000000 --- a/_partials/es/dotfiles_merge_upstream.md +++ /dev/null @@ -1,50 +0,0 @@ -Abre tu terminal y ve a tu proyecto `dotfiles`: - -```bash -cd ~/code/$GITHUB_USERNAME$/dotfiles -``` - -Es hora de fusionar los cambios de lewagon/dotfiles en los tuyos: - -1. Commit la versión actual de tus dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Trae los cambios del repositorio upstream: `git merge upstream/master` - -1. Verifica que no estés en estado MERGING. Si lo estás, resuelve los conflictos. - -1. Haz un `git diff HEAD~1 HEAD` para revisar qué cambió. - -1. Si todo parece estar en orden, continúa. - -
- ¿Demasiados conflictos? - - - Vamos a tomar la versión actual de `lewagon/dotfiles`. - - Primero aborta la merge: `git merge --abort`. - - Ejecuta `{{ CODE_EDITOR_CMD }} .` - - En {{ CODE_EDITOR }}, abre el archivo zshrc. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Luego guárdalo en el disco. - - Aún en {{ CODE_EDITOR }}, abre el archivo `zprofile`. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Luego guárdalo en el disco. - - Regresa a la terminal y ejecuta un `git diff` y verifica que esto no haya eliminado ninguna configuración personal que quisieras conservar. - -
- -Es hora de guardar tus cambios y subirlos. - -```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master -``` - -
diff --git a/_partials/es/dotfiles_new_laptop.md b/_partials/es/dotfiles_new_laptop.md deleted file mode 100644 index 63f43c8b..00000000 --- a/_partials/es/dotfiles_new_laptop.md +++ /dev/null @@ -1,13 +0,0 @@ -
- - Ya hice el bootcamp de Web Development o Data Science & AI de Le Wagon pero tengo una nueva laptop - - -Esto significa que ya has hecho el fork del repositorio GitHub lewagon/dotfiles pero tal vez la configuración para el nuevo bootcamp de Data Science & AI no estaba lista en ese momento.Actualicémoslo. **Pide a un TA que te acompañe en los siguientes pasos.** - -Es hora de clonarlo el repositorio en tu laptop: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo clone lewagon/dotfiles -``` diff --git a/_partials/es/dotfiles_new_student.md b/_partials/es/dotfiles_new_student.md deleted file mode 100644 index 2d7e262a..00000000 --- a/_partials/es/dotfiles_new_student.md +++ /dev/null @@ -1,18 +0,0 @@ -
- - No he hecho el bootcamp de Web Development o Data Science & AI de Le Wagon - - - Tu configuración es personal, así que necesitas tu propio repositorio para almacenarla. Primero tienes que hacer el fork del repositorio en tu cuenta GitHub. - -Hacer un fork significa que crearás un nuevo repositorio en tu cuenta GitHub idéntico al original. Tendrás un nuevo repositorio en tu cuenta GitHub, `your_github_username/dotfiles`. El fork es necesario porque cada uno de ustedes necesitará poner información específica (e.g. tu nombre) en esos archivos. - -Ejecutemos este comando para hacer un **fork** del repositorio `lewagon/dotfiles` y clonarlo: - - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo fork lewagon/dotfiles --clone -``` - -
diff --git a/_partials/es/dotfiles_same_laptop.md b/_partials/es/dotfiles_same_laptop.md deleted file mode 100644 index 86785121..00000000 --- a/_partials/es/dotfiles_same_laptop.md +++ /dev/null @@ -1,6 +0,0 @@ -
- - Ya hice el bootcamp de Web Development o Data Science & AI de Le Wagon en la misma laptop - - -Esto significa que ya has hecho el fork del repositorio GitHub lewagon/dotfiles pero tal vez la configuración para el nuevo bootcamp de Data Science & AI no estaba lista en ese momento. Actualicémoslo. **Pide a un TA que te acompañe en los siguientes pasos.** diff --git a/builds/LINUX.yml b/builds/LINUX.yml index 8a35c8be..6f77972d 100644 --- a/builds/LINUX.yml +++ b/builds/LINUX.yml @@ -13,12 +13,6 @@ partials: - setup/gh_cli - ubuntu_gcloud - dotfiles - - dotfiles_new_student - - dotfiles_new_laptop - - dotfiles_merge_upstream - - dotfiles_same_laptop - - dotfiles_merge_upstream - - dotfiles_installer - setup/ssh_agent - conda_uninstall - ubuntu_python diff --git a/builds/WINDOWS.yml b/builds/WINDOWS.yml index 984f4838..171cc54e 100644 --- a/builds/WINDOWS.yml +++ b/builds/WINDOWS.yml @@ -19,12 +19,6 @@ partials: - setup/gh_cli - ubuntu_gcloud - dotfiles - - dotfiles_new_student - - dotfiles_new_laptop - - dotfiles_merge_upstream - - dotfiles_same_laptop - - dotfiles_merge_upstream - - dotfiles_installer - setup/ssh_agent - conda_uninstall - ubuntu_python diff --git a/builds/macOS.yml b/builds/macOS.yml index 88c0df33..b77856a9 100644 --- a/builds/macOS.yml +++ b/builds/macOS.yml @@ -14,12 +14,6 @@ partials: - direnv - setup/gh_cli - dotfiles - - dotfiles_new_student - - dotfiles_new_laptop - - dotfiles_merge_upstream - - dotfiles_same_laptop - - dotfiles_merge_upstream - - dotfiles_installer - conda_uninstall - osx_python - virtualenv From 03ec4e6172d1786dca8594494d12361022cbf46a Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Thu, 17 Sep 2026 22:23:32 +0200 Subject: [PATCH 05/42] Google Cloud without Service Account --- _partials/es/gcp_account_setup.md | 132 ++++++++++++++++ _partials/es/gcp_setup.md | 217 ++++++------------------- _partials/es/gcp_setup_end.md | 52 ------ _partials/es/gcp_setup_linux.md | 11 -- _partials/es/gcp_setup_mid.md | 20 --- _partials/es/gcp_setup_wsl.md | 67 -------- _partials/gcp_account_setup.md | 132 ++++++++++++++++ _partials/gcp_setup.md | 255 +++++------------------------- _partials/gcp_setup_end.md | 52 ------ _partials/gcp_setup_linux.md | 20 --- _partials/gcp_setup_mid.md | 20 --- _partials/gcp_setup_wsl.md | 76 --------- builds/LINUX.yml | 3 +- builds/WINDOWS.yml | 3 +- builds/macOS.yml | 3 +- 15 files changed, 352 insertions(+), 711 deletions(-) create mode 100644 _partials/es/gcp_account_setup.md delete mode 100644 _partials/es/gcp_setup_end.md delete mode 100644 _partials/es/gcp_setup_linux.md delete mode 100644 _partials/es/gcp_setup_mid.md delete mode 100644 _partials/es/gcp_setup_wsl.md create mode 100644 _partials/gcp_account_setup.md delete mode 100644 _partials/gcp_setup_end.md delete mode 100644 _partials/gcp_setup_linux.md delete mode 100644 _partials/gcp_setup_mid.md delete mode 100644 _partials/gcp_setup_wsl.md diff --git a/_partials/es/gcp_account_setup.md b/_partials/es/gcp_account_setup.md new file mode 100644 index 00000000..215f8043 --- /dev/null +++ b/_partials/es/gcp_account_setup.md @@ -0,0 +1,132 @@ +## Configuración de Google Cloud Platform + +[Google Cloud](https://cloud.google.com/) es una solución en la nube que utilizarás para desplegar tus productos basados en Machine Learning en producción. + +🚨 Si eres estudiante del **Part-Time Bootcamp**, ¡OMITE ESTA SECCIÓN POR AHORA! **Google Cloud** ofrece 300 $ de crédito gratuito durante 3 meses. No querrás activar tu cuenta de Google Cloud demasiado pronto 🙅‍♂️ + +### Configuración del proyecto + +- Ve a [Google Cloud](https://console.cloud.google.com/) y crea una cuenta si aún no tienes una +- En Cloud Console, en la lista de proyectos, selecciona o crea un proyecto de Cloud + +⚠️ **Importante:** Al crear un proyecto nuevo, verás un campo **Organization**. Déjalo como **"No organization"**. No selecciones ni crees una organización. Elegir una organización aplica restricciones que pueden impedirte utilizar los servicios de Google Cloud durante el bootcamp. + +![](images/gcp-create-project.png) + +- Asígnale un nombre, por ejemplo, `Wagon Bootcamp` +- Observa el `ID` que se crea automáticamente para el proyecto, por ejemplo, `wagon-bootcamp-123456` + +![](images/gcp_project.png) + +ℹ️ Anota el **Project ID** (por ejemplo, `wagon-bootcamp-123456`), que **no** es lo mismo que el nombre del proyecto que elegiste (por ejemplo, `Wagon Bootcamp`). Necesitarás el ID más adelante al ejecutar comandos en la terminal, pero no te preocupes: siempre puedes encontrarlo en Google Cloud. + +### Idioma de la cuenta + +Para facilitar el seguimiento de las instrucciones durante el bootcamp, abre las preferencias de tu cuenta de Google Cloud: + +[https://myaccount.google.com/language](https://myaccount.google.com/language) + +Si el *idioma preferido* no es: + +- **English** +- **United States** + +Entonces cambia el idioma a inglés: + +- Haz clic en el icono del lápiz de edición +- Selecciona **English** +- Selecciona **United States** +- Haz clic en **Select** + +### Cuenta de facturación + +Ahora vincularás tu cuenta a tu tarjeta de crédito. Este paso es obligatorio; de lo contrario, no podrás utilizar los servicios proporcionados por Google Cloud. No te preocupes: podrás utilizar la mayoría de los servicios de Google Cloud mediante créditos gratuitos durante el bootcamp. + +⚠️ En algunos casos, Google puede hacer un cargo en tu tarjeta (de unos 10 €) para verificar que es válida. Desafortunadamente, no se reembolsará una vez aprobada, pero se añadirá como crédito en Google Cloud que podrás utilizar cuando hayas usado o hayan caducado tus créditos gratuitos. + +![](images/gcp-billing.png) + +- Haz clic en **Billing** +- Haz clic en **MANAGE BILLING ACCOUNTS** +- Haz clic en **ADD BILLING ACCOUNT** +- Ponle un nombre a tu cuenta de facturación, por ejemplo, `My Billing Account` +- Haz clic en "I have read..." y acepta las condiciones del servicio +- Haz clic en **CONTINUE** +- Selecciona el tipo de cuenta: `Individual` +- Introduce tu nombre y dirección + +Deberías ver que tienes un crédito gratuito de "$300 credits over the next 90days". + +- Haz clic en los datos de la tarjeta +- Introduce los datos de tu tarjeta de crédito +- Haz clic en **START MY FREE TRIAL** + +Una vez hecho esto, verifica que tu cuenta de facturación esté vinculada a tu proyecto de Google Cloud. + +- Selecciona tu proyecto +- Ve a **Billing** +- Selecciona **LINK A BILLING ACCOUNT** +- Selecciona `My Billing Account` +- Haz clic en **SET ACCOUNT** + +Ahora deberías ver: + +```bash +Free trial status: $300 credit and 91 days remaining - with a full account, you'll get unlimited access to all of Google Cloud Platform. +``` + +
+ 👉 Si no tienes una tarjeta de crédito 👈 + +Si no tienes una tarjeta de crédito, una alternativa es crear una cuenta de **Revolut**. +Revolut es una aplicación financiera que te permite crear una tarjeta de crédito virtual vinculada a tu cuenta de facturación del teléfono móvil. + +Omite este paso si tienes una tarjeta de crédito y la utilizas para la configuración. + +Descarga la aplicación Revolut o visita [revolut](https://www.revolut.com/a-radically-better-account) y sigue los pasos para descargar la aplicación (introduce tu número de teléfono móvil y haz clic en Get Started). + +- Abre la aplicación Revolut +- Introduce tu número de teléfono móvil +- Introduce el código de verificación recibido por SMS +- La aplicación te pedirá tu país, dirección, nombre y apellidos, fecha de nacimiento y dirección de correo electrónico +- La aplicación también te pedirá un selfie y tu profesión +- La aplicación requerirá una foto de tu documento de identidad o pasaporte + +Una vez hecho esto, selecciona el plan estándar (gratuito). No es necesario añadir la tarjeta a Apple Pay, solicitar el envío de una tarjeta física ni añadir dinero. + +Ahora tienes una tarjeta virtual que utilizaremos para configurar Google Cloud. + +En la vista principal de la aplicación Revolut + +- Haz clic en Ready to use +- Haz clic en la tarjeta +- Haz clic en Show card details +- Anota los datos de la tarjeta de crédito virtual y utilízalos para continuar con la configuración de Google Cloud + +
+ +
+ 👉 Si recibes un correo de Google que dice "Urgent: your billing account XXXXXX-XXXXXX-XXXXXX has been suspended" 👈 + +Esto puede ocurrir especialmente si acabas de configurar una cuenta de Revolut. + +- Haz clic en PROCEED TO VERIFICATION +- Se te pedirá que envíes una foto de tu tarjeta de crédito (solo los últimos 4 dígitos, sin ninguna otra información) +- Si utilizaste **Revolut**, puedes enviar una captura de pantalla de tu tarjeta de crédito virtual (no olvides eliminar la fecha de caducidad de la captura) +- Explica que estás asistiendo al bootcamp de Le Wagon, que no tienes una tarjeta de crédito y que acabas de crear una cuenta de Revolut para configurar Google Cloud para el bootcamp mediante una tarjeta de crédito virtual + +Puedes recibir una validación o solicitudes de más información en un plazo de 30 minutos. + +Una vez completada la verificación, deberías recibir un correo que indique: "Your Google Cloud Platform billing account XXXXXX-XXXXXX-XXXXXX has been fully reinstated and is ready to use.". + +
+ +### Activación de los servicios de Google Cloud + +- Asegúrate de que la facturación esté activada para tu proyecto de Google Cloud + +ℹ️ Tienes un **crédito de 300 $** para utilizar en recursos de Google Cloud, más que suficiente para el bootcamp. + +- [Activa las API de BigQuery y Compute Engine](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (Este paso puede tardar unos minutos) + +¡Eso es todo para la configuración en el navegador! La configuración de la terminal aparece más adelante en esta guía. diff --git a/_partials/es/gcp_setup.md b/_partials/es/gcp_setup.md index 16ab4058..9c8c1d68 100644 --- a/_partials/es/gcp_setup.md +++ b/_partials/es/gcp_setup.md @@ -1,191 +1,62 @@ -## Configuración de Google Cloud Platform +### Configurar Cloud SDK -[GCP](https://cloud.google.com/) es una solución en la nube que usarás para colocar tus productos basados en Machine Learning en producción. +- Autentica la CLI de `gcloud` con la cuenta de Google que utilizaste para GCP -🚨 Si estás en el grupo de estudiantes del **Bootcamp de Medio Tiempo**, ¡IGNORA ESTA SECCIÓN POR AHORA! **GCP** ofrece $300 en créditos durante 3 meses, así que no es buena idea activar tu cuenta GCP demasiado pronto 🙅‍♂️ + {% if os == "macos" %} + ```bash + gcloud auth login + ``` + {% elsif os == "linux" %} + ```bash + gcloud auth login + ``` + {% elsif os == "windows" %} + ```bash + gcloud auth login --no-launch-browser + ``` + {% endif %} -### Preparación del Proyecto +- Inicia sesión en tu cuenta de Google en la nueva pestaña que se abrió en tu navegador web -- Ve a [Google Cloud](https://console.cloud.google.com/) y crea una cuenta si aún no tienes una -- En la consola de Cloud, en la lista de proyectos, selecciona o crea un proyecto Cloud +- Muestra tu cuenta activa y comprueba que aparece la dirección de correo electrónico que utilizaste para GCP -![](images/gcp-create-project.png) -- Asígnale un nombre como `Wagon Bootcamp` por ejemplo -- ❗ Comprueba que el campo _Location_ esté establecido en _No organization_ ❗ -- Verás que se creará un `ID` automáticamente para el proyecto e. g. `wagon-bootcamp-123456` + ```bash + gcloud auth list + ``` -![](images/gcp_project.png) +- Establece tu proyecto actual (reemplaza `PROJECT_ID` por el `ID` de tu proyecto, por ejemplo, `wagon-bootcamp-123456`) -### Idioma de la cuenta + ```bash + gcloud config set project PROJECT_ID + ``` -Abre las preferencias en tu cuenta GCP para facilitar el seguimiento de las instrucciones durante el bootcamp: +- Muestra tu cuenta activa y tu proyecto actual, y comprueba que aparece tu proyecto -https://myaccount.google.com/language + ```bash + gcloud config list + ``` -Si el *idioma de preferencia* no es: -- **English** -- **United States** +- Ahora vamos a configurar las credenciales predeterminadas de la aplicación para que tu código Python pueda acceder a GCP: -Cámbialo a inglés: -- Haz clic en el logo edición (es una lapicera) -- Selecciona **English** -- Selecciona **United States** -- Haz clic en **Select** + ```bash + gcloud auth application-default login + ``` -### Cuenta de facturación + Esto abrirá una ventana del navegador. Inicia sesión con la misma cuenta de Google que utilizaste para crear tu proyecto de GCP. Tus credenciales se guardarán automáticamente. -Ahora conecta tu cuenta con tu tarjeta de crédito. Este paso es obligatorio para poder usar los servicios que suministra GCP. No te preocupes, podrás utilizar la mayoría de los servicios de GCP por medio de créditos gratuitos durante el bootcamp. +- Verifiquemos que tus credenciales predeterminadas de la aplicación funcionan: -![](images/gcp-billing.png) + ```bash + gcloud auth application-default print-access-token + ``` -- Haz clic en **Billing** -- Haz clic en **MANAGE BILLING ACCOUNTS** -- Haz clic en **ADD BILLING ACCOUNT** -- Asígnale un nombre a tu cuenta de facturación, e. g. `My Billing Account` -- Haz clic en "I have read..." y acepta los términos de uso -- Haz clic en **CONTINUE** -- Selecciona tu tipo de cuenta: `Individual` -- Agrega tu nombre y dirección + Deberías ver una cadena de token larga. Si aparece un error, vuelve a ejecutar `gcloud auth application-default login`. -Verás que tienes créditos gratuitos con un valor de "$300 a utilizar en los próximos 90 días". +
+ Solución de problemas -- Haz clic en los detalles de la tarjeta -- Agrega la información de tu tarjeta de crédito -- Haz clic en **START MY FREE TRIAL**. Esto significa comenzar mi período de prueba. + - `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` + - Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud Platform [https://cloud.google.com/billing/docs/how-to/modify-project](https://cloud.google.com/billing/docs/how-to/modify-project) +
-Cuando termines, verifica que la cuenta de facturación esté conectada con tu proyecto GCP. - -- Selecciona tu proyecto -- Ve a **Billing** -- Selecciona **LINK A BILLING ACCOUNT** -- Selecciona `My Billing Account` -- Haz clic en **SET ACCOUNT** - -Ahora deberías ver lo siguiente: - -``` -Free trial status: $300 credit and 91 days remaining - with a full account, you'll get unlimited access to all of Google Cloud Platform. -``` - -Esto significa Estado de período de prueba: crédito de $300 y 91 días para usarlo - con la full account, tendrás acceso ilimitado a todo lo que ofrece Google Cloud Platform. - -
- 👉 Si no tienes una tarjeta de crédito 👈 - - -Si no tienes una tarjeta de crédito, puedes abrir una cuenta en **Revolut**. -Revolut es una aplicación que funciona como un banco y que te permitirá crear una tarjeta de crédito virtual conectada a la dirección de facturación de tu smartphone. - -Ignora este paso si ya tienes una tarjeta de crédito. Simplemente úsala para hacer la configuración. - -Descarga la app Revolut o ve a [revolut](https://www.revolut.com/a-radically-better-account) y sigue los pasos para descargar la app (introduce tu número de teléfono móvil y haz clic en Get Started). - -- Abre la app Revolut -- Agrega tu número de teléfono móvil -- Agrega el código de verificación que recibiste por SMS -- La app te preguntará por tu país, dirección, primer y segundo nombre, fecha de nacimiento y el email -- La app también te pedirá tu profesión y una selfie -- La app te pedirá una foto de tu documento nacional de identidad o pasaporte - -Cuando termines, selecciona el plan estándar (gratuito). No tienes que agregar la tarjeta a Apple pay, pedir que te envíen una tarjeta a tu domicilio ni tampoco agregar dinero a la cuenta. - -Ahora tienes una tarjeta virtual que podrás usar para hacer la configuración de GCP. - -En la vista principal de la app Revolut -- Haz clic en Ready to use -- Haz clic en the card -- Haz clic en Show card details -- Toma nota de la información de la tarjeta de crédito virtual y úsala para completar la configuración de GCP - -
- -
- 👉 Si recibes un email de Google diciendo "Urgent: your billing account XXXXXX-XXXXXX-XXXXXX has been suspended" 👈 - - -Esto puede pasar justo después de haber creado la cuenta en Revolut. - -- Haz clic en PROCEED TO VERIFICATION -- Te pedirán que envíes una foto de tu tarjeta de crédito (solo los últimos 4 dígitos, nada más) -- Si ya has usado **Revolut**, puedes enviar una captura de pantalla de tu tarjeta de crédito virtual (no olvides quitar la fecha de vencimiento de la captura) -- Explica que estás haciendo el bootcamp de Le Wagon, que no tienes una tarjeta de crédito y que acabas de crear una cuenta en Revolut para poder configurar GCP para el bootcamp con una tarjeta de crédito virtual - -Es posible que te validen la cuenta pero también es posible que te pidan más información en los próximos 30 minutos. - -Cuando la cuenta sea validada recibirás un email diciendo lo siguiente: "Your Google Cloud Platform billing account XXXXXX-XXXXXX-XXXXXX has been fully reinstated and is ready to use.". Esto significa que tu cuenta Google Cloud Platform ha sido restablecida - -
- -### Habilitación de servicios de GCP - -- Asegúrate de que la facturación está habilitada para tu proyecto Google Cloud - -ℹ️ Tienes un **crédito de $300** para usar con recursos de Google Cloud. Esto será más que suficiente para el bootcamp. - -- [Habilita las APIs BigQuery y Compute Engine](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (Esto puede tomar varios minutos) - -### Configuración de Cloud sdk - -- Autentica el CLI de `gcloud` con la cuenta que usaste para GCP -```bash -gcloud auth login -``` -- Inicia sesión en tu cuenta Google en la nueva pestaña que se abrió en tu navegador -- Lista la cuenta que tienes activa y verifica que el email que usaste para GCP está ahí -```bash -gcloud auth list -``` -- Define tu proyecto actual (reemplaza `PROJECT_ID` con el `ID` de tu proyecto e.g. `wagon-bootcamp-123456`) -```bash -gcloud config set project PROJECT_ID -``` -- Lista la cuenta que tienes activa y tu proyecto actual y verifica que tu proyecto está ahí -```bash -gcloud config list -``` - -### Crea una llave 🔑 de cuenta de servicio - -Como ya creaste una cuenta `GCP account` y un `project` (identificado por su `PROJECT_ID`), vamos a configurar las acciones (llamadas API calls) que quieres que tu código ejecute. - -
- 🤔 ¿Por qué necesitamos una clave de cuenta de servicio? - - - Creaste una `cuenta GCP` conectada a una tarjeta de crédito. Te facturarán de acuerdo al uso que les des a los recursos de **Google Cloud Platform**. El cargo se hará si utilizas algo después de que el período de prueba gratuito se haya terminado o si te excedes del límite de consumo que te permite dicho período. - - En tu `cuenta GCP` has creado un solo `proyecto GCP` identificado por su `PROJECT_ID`. Los `proyectos GCP` te permiten organizar y monitorear la manera en que consumes los recursos **GCP** de forma más precisa. En este bootcamp solo crearemos un solo proyecto. - - Ahora necesitamos una manera de saber qué recursos nuestro código podrá consumir dentro de un `GCP project`. Nuestro código consume recursos GCP por medio de llamadas API. - - Ya que las llamadas API no son gratuitas, es importante definir cuidadosamente cómo nuestro código las utilizará. Sin embargo, durante el bootcamp no habrá restricciones. Le permitiremos a nuestro código que utilice todas las API **GCP** sin restricciones. - - Así como pueden haber varios proyectos asociados a una cuenta GCP, un proyecto puede estar compuesto de muchos servicios (cualquier paquete de código, sin importar su formato, que necesite utilizar llamadas a la API de GCP para cumplir con su propósito). - - GCP exige que los servicios de los proyectos que usen llamadas API se registren en la plataforma y que se configuren sus credenciales por medio del acceso concedido a una `service account`. - - Por ahora solo tendremos que usar un solo servicio y crearemos la `service account` correspondiente. -
- -Ya que la [service account](https://cloud.google.com/iam/docs/service-accounts) es lo que identifica tu aplicación (y por ende tu cuenta de facturación GCP y, en última instancia, tu tarjeta de crédito), lo mejor es ser cuidadoso en los próximos pasos. - -⚠️ **No compartas la 🔑 del archivo json de tu cuenta de servicio** ⚠️ No la guardes en tu escritorio ni en tu código base de git (incluso si tu repositorio git es privado). Que no se te olvide en un lugar como la máquina de café y, por supuesto, no la envíes en un tweet. - -- Ve a la [página de las cuentas de servicio](https://console.cloud.google.com/apis/credentials/serviceaccountkey) -- Selecciona tu proyecto en la lista de proyectos recientes si te piden que -- Crees una cuenta de servicio: - - Haz clic en **CREATE SERVICE ACCOUNT** que significa crear une cuenta de servicio: - - Define un `Service account name` para esa cuenta. Esto significa Nombre de cuenta de servicio - - Haz clic en **CREATE AND CONTINUE** que significa crear y continuar - - Haz clic en **Select a role** que significa selecciona un rol. Escoge `Quick access/Basic` luego **Owner**. Esto otorga acceso total a todos los recursos - - Haz clic en **CONTINUE** - - Haz clic en **DONE** -- Descarga la 🔑 del archivo json de la cuenta de servicio: - - Haz clic en la cuenta de servicio recién creada - - Haz clic en **KEYS** - - Haz clic en **ADD KEY** y luego en **Create new key** - - Selecciona **JSON** y haz clic en **CREATE** - -![](images/gcp_create_key.png) - -El navegador acaba de guardar la 🔑 del archivo json de la cuenta de servicio en tu carpeta de descargas (el nombre se le asigna según el nombre de la cuenta de servicio. Es algo como `le-wagon-data-123456789abc.json`) +🏁 ¡Has terminado la configuración de GCP! diff --git a/_partials/es/gcp_setup_end.md b/_partials/es/gcp_setup_end.md deleted file mode 100644 index b4bbd9f3..00000000 --- a/_partials/es/gcp_setup_end.md +++ /dev/null @@ -1,52 +0,0 @@ - -
- ℹ️ ¿Cómo encontrar la ruta absoluta de un archivo? - Puedes arrastrar el archivo a tu terminal. -
- -**Reinicia** tu terminal y ejecuta lo siguiente: - -``` bash -echo $GOOGLE_APPLICATION_CREDENTIALS -``` - -Deberías obtener la siguiente información: - -```bash -/some/absolute/path/to/your/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json -``` - -Ahora verifica si la ruta al archivo json de tu cuenta de servicio es el correcto: - -``` bash -cat $(echo $GOOGLE_APPLICATION_CREDENTIALS) -``` - -👉 Este comando debería mostrar el contenido del archivo json de tu cuenta de servicio. Si no es el caso, pídele ayuda a un TA 🙏 - -Tu código y utilidades ahora pueden acceder a los recursos de tu cuenta GCP. - -Continuemos con los últimos pasos de la configuración... - -- Lista las cuentas de servicio asociadas a tu cuenta activa y a tu proyecto actual -```bash -gcloud iam service-accounts list -``` -- Recupera el email de la cuenta de servicio e. g. `SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com` -- Lista los roles de la cuenta de servicio desde la cli (reemplaza el PROJECT_ID y el SERVICE_ACCOUNT_EMAIL) -```bash -gcloud projects get-iam-policy PROJECT_ID \ ---flatten="bindings[].members" \ ---format='table(bindings.role)' \ ---filter="bindings.members:SERVICE_ACCOUNT_EMAIL" -``` -- Ahora deberías ver que tu cuenta de servicio tiene el rol de `roles/owner` - -
- Resolución de problemas - -- `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.`. Esto significa que el proyecto a facturar está asociado a una cuenta de facturación que no está habilitada - - Asegúrate de habilitar la facturación para tu proyecto https://cloud.google.com/billing/docs/how-to/modify-project -
- -🏁 Listo. ¡Has terminado la configuración de GCP! diff --git a/_partials/es/gcp_setup_linux.md b/_partials/es/gcp_setup_linux.md deleted file mode 100644 index 4485a20b..00000000 --- a/_partials/es/gcp_setup_linux.md +++ /dev/null @@ -1,11 +0,0 @@ -- Guarda el archivo json de la cuenta de servicio en un lugar que recuerdes. Por ejemplo: - -``` bash -/home/LINUX_USERNAME/code/GITHUB_NICKNAME/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json -``` - -- Guarda la **ruta absoluta** al archivo `JSON` como una variable de entorno: - -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/path/to/the/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.aliases -``` diff --git a/_partials/es/gcp_setup_mid.md b/_partials/es/gcp_setup_mid.md deleted file mode 100644 index 9763a8aa..00000000 --- a/_partials/es/gcp_setup_mid.md +++ /dev/null @@ -1,20 +0,0 @@ -- Guarda el archivo json de la cuenta de servicio en un lugar que recuerdes. Por ejemplo: - -``` bash -/Users/MACOS_USERNAME/code/GITHUB_NICKNAME/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json -``` - -- Guarda la **ruta absoluta** al archivo `JSON` como una variable de entorno: - -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/path/to/the/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.zshrc -``` -**Nota:** cada vez que ejecutes este comando, agregará esta línea a tu archivo zshrc sin importar si la línea ya existe en el archivo. Si cometiste un error y necesitas arreglarlo, es preferible que abras el archivo y edites la línea! - -Puedes hacerlo ejecutando - -```bash -code ~/.zshrc -``` - -en la Terminal! 😄 diff --git a/_partials/es/gcp_setup_wsl.md b/_partials/es/gcp_setup_wsl.md deleted file mode 100644 index aec8ba41..00000000 --- a/_partials/es/gcp_setup_wsl.md +++ /dev/null @@ -1,67 +0,0 @@ -Ahora vamos a mover el archivo json de la cuenta de servicio desde tu disco en Windows al disco en Ubuntu. Esto le permitirá a las herramientas de desarrollo en Ubuntu acceder a los recursos de tu cuenta GCP. - -Primero crea un directorio para almacenar el archivo. - -👉 Abre una terminal en Ubuntu y ejecuta los siguiente comandos - -🚨 reemplaza el `GITHUB_NICKNAME` por tu nickname de **GitHub** - -``` bash -cd ~/code/GITHUB_NICKNAME -ls -la -``` - -Si el comando no muestra el directorio `dotfiles`, pídele ayuda a un TA 🙏 - -Si no es el caso, puedes proceder con la configuración: - -``` bash -mkdir gcp -``` - -![](images/wsl-gcp-dir.png) - -Ahora moveremos el archivo json de la cuenta de servicio al directorio `gcp` que acabamos de crear. - -Abre un **Buscador de Archivos** de Windows (Win + E) y localiza el directorio `gcp` en el sistema de archivo de Ubuntu. - -Puedes optar por las siguientes alternativas: -- Usar el enlace de **Acceso rápido** que creamos hace un rato -- O escribir la localización del directorio `gcp` manualmente en la barra de direcciones del sistema de archivos de Ubuntu: - -``` -\\wsl$\Ubuntu\home\UBUNTU_USERNAME\code\GITHUB_NICKNAME -``` - - -🚨 Si optas por la segunda opción: -- reemplaza el `UBUNTU_USERNAME` por el usuario que escogiste durante la configuración de **Ubuntu** -- reemplaza el `GITHUB_NICKNAME` por tu nickname de **GitHub** - -![](images/wsl-gcp-key.png) - -Cuando hayas localizado el directorio `gcp` en el **Buscador de Archivos** de Windows, ponle el archivo json de la cuenta de servicio que descargaste. - -Ahora deberías poder ver el archivo desde el sistema de archivos de Ubuntu. - -👉 Abre una terminal en Ubuntu y verifica que el archivo json de la cuenta de servicio ha sido movido - -``` bash -cd gcp -ls -la -``` - -![](images/wsl-gcp-dir-2.png) - -Si no ves el archivo json de la cuenta de servicio en el directorio `gcp`, pídele ayuda a un TA 🙏 - -Ahora almacenaremos la ruta al archivo json de la cuenta de servicio en una variable de entorno. - -🚨 Haz las siguientes sustituciones en este comando: -- El `UBUNTU_USERNAME` por el usuario que escogiste durante la configuración de **Ubuntu** -- El `GITHUB_NICKNAME` por tu nickname de **GitHub** -- El `SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json` por el nombre del archivo json de tu cuenta de servicio. - -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/home/UBUNTU_USERNAME/code/GITHUB_NICKNAME/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.aliases -``` diff --git a/_partials/gcp_account_setup.md b/_partials/gcp_account_setup.md new file mode 100644 index 00000000..b404c917 --- /dev/null +++ b/_partials/gcp_account_setup.md @@ -0,0 +1,132 @@ +## Google Cloud Platform setup + +[Google Cloud](https://cloud.google.com/) 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! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ + +### Project setup + +- Go to [Google Cloud](https://console.cloud.google.com/) 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 + +⚠️ **Important:** When creating a new project, you will see an **Organization** field. Leave this set to **"No organization"**. Do not select or create an organization. Choosing an organization applies restrictions that can prevent you from using Google Cloud services during the bootcamp. + +![](images/gcp-create-project.png) + +- Give it a name such as `Wagon Bootcamp` for example +- Notice the `ID` automatically created for the project, e.g. `wagon-bootcamp-123456` + +![](images/gcp_project.png) + +ℹ️ Note the **Project ID** (e.g. `wagon-bootcamp-123456`) this is **not** the same as the project name you chose (e.g. `Wagon Bootcamp`). You will need the ID later when running terminal commands, but don't worry, you can always find it in Google Cloud. + +### Account language + +In order to facilitate the following of the instructions during the bootcamp, open your Google Cloud account preferences: + +[https://myaccount.google.com/language](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 Google Cloud. Do not worry, you will be able to consume most Google Cloud services through free credits throughout the bootcamp. + +⚠️ In some cases, Google may charge your card (around €10) to verify that it is valid. This will unfortunately not be refunded once you are approved, but will be added as credit in Google Cloud that you can use once your free credits have been used or expired. + +![](images/gcp-billing.png) + +- 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 Google Cloud project. + +- Select your project +- Go to **Billing** +- Select **LINK A BILLING ACCOUNT** +- Select `My Billing Account` +- Click on **SET ACCOUNT** + +You should now see: + +```bash +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](https://www.revolut.com/a-radically-better-account) 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 Google Cloud setup. + +In the main view of the Revolut 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 Google Cloud 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 Google Cloud 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 Google Cloud 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. + +- [Enable the BigQuery and Compute Engine APIs](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (This step may take a few minutes) + +That's it for the browser setup! Terminal setup comes later in this guide. diff --git a/_partials/gcp_setup.md b/_partials/gcp_setup.md index fb4c6d43..76c233bb 100644 --- a/_partials/gcp_setup.md +++ b/_partials/gcp_setup.md @@ -1,235 +1,62 @@ -## Google Cloud Platform setup - -[GCP](https://cloud.google.com/) 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](https://console.cloud.google.com/) 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 - -![](images/gcp-create-project.png) - -- Give it a name such as `Wagon Bootcamp` for example -- ❗ Check that the field _Location_ is set to _No organization_ ❗ -- Notice the `ID` automatically created for the project, e.g. `wagon-bootcamp-123456` - -![](images/gcp_project.png) - -### 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. - -![](images/gcp-billing.png) - -- 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](https://www.revolut.com/a-radically-better-account) 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. - -- [Enable the BigQuery and Compute Engine APIs](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (This step may take a few minutes) - ### Configure Cloud sdk - Authenticate the `gcloud` CLI with the google account you used for GCP -{% if os == "macos" %} -```bash -gcloud auth login -``` -{% elsif os == "linux" %} -```bash -gcloud auth login -``` -{% elsif os == "windows" %} -```bash -gcloud auth login --no-launch-browser -``` -{% endif %} + {% if os == "macos" %} + ```bash + gcloud auth login + ``` + {% elsif os == "linux" %} + ```bash + gcloud auth login + ``` + {% elsif os == "windows" %} + ```bash + gcloud auth login --no-launch-browser + ``` + {% endif %} - 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 -```bash -gcloud auth list -``` -- Set your current project (replace `PROJECT_ID` with the `ID` of your project, e.g. `wagon-bootcamp-123456`) -```bash -gcloud config set project PROJECT_ID -``` -- List your active account and current project and check your project is present -```bash -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. - -
- 🤔 Why do we need a service account key ? - - - You have created a `GCP account` linked to your credit card. Your account will be billed according to your usage of the resources of the **Google Cloud Platform**. The billing will occur if you consume anything once the free trial is over, or if you exceed the amount of spending allowed during the free trial. - - In your `GCP account`, you have created a single `GCP project`, identified by its `PROJECT_ID`. The `GCP projects` allow you to organize and monitor more precisely how you consume the **GCP** resources. For the purpose of the bootcamp, we are only going to create a single project. - - Now, we need a way to tell which resources within a `GCP project` our code will be allowed to consume. Our code consumes GCP resources through API calls. - - Since API calls are not free, it is important to define with caution how our code will be allowed to use them. During the bootcamp this will not be an issue and we are going to allow our code to use all the API of **GCP** without any restrictions. - - In the same way that 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 projects using API calls are registered on the platform and their credentials configured through the access granted to a `service account`. - For the moment we will only need to use a single service and will create the corresponding `service account`. -
- -Since the [service account](https://cloud.google.com/iam/docs/service-accounts) is what identifies your application (and therefore your GCP billing account and ultimately your credit card), you are going to want to be cautious with the next steps. - -⚠️ **Do not share you service account json file 🔑** ⚠️ Do not store it on your desktop, do not store it in your git codebase (even if your git repository is private), do not let it by the coffee machine, do not send it as a tweet. - -#### Go to the Service Accounts page - -Navigate to the GCP service accounts page at [this link](https://console.cloud.google.com/apis/credentials/serviceaccountkey). - -- Select your project in the list of recent projects if asked to. -- If not asked, make sure the right project is selected in the Project selecter list at the top of the page. - -An alternate way to navigate to the Service Accounts page is from the following: - -01 Go to Service Accounts - -#### Create a service account - -- Click on **CREATE SERVICE ACCOUNT**. - - 02 Create Service Account - -- Give your service account a name, an id and a description, and click on **CREATE AND CONTINUE**. - - 03 Name the service account - -- Click on **Select a role** and choose `Basic` then **`Owner`**, which gives the service account full access to all resources of your GCP project. - - 04 Add BigQuery Job User - -- Click on the blue **DONE** button at the bottom of this window. We don't need to worry about the section *Grant your users access to this service account*. +- List your active account and check your email address you used for GCP is present - 04 Done + ```bash + gcloud auth list + ``` +- Set your current project (replace `PROJECT_ID` with the `ID` of your project, e.g. `wagon-bootcamp-123456`) -#### Create a json key 🔑 for this service account + ```bash + gcloud config set project PROJECT_ID + ``` -- On the service accounts page, click on the email address of the newly created service account. +- List your active account and current project and check your project is present - 05 Select the service account + ```bash + gcloud config list + ``` -- Click on the **KEYS** tab at the top of the page. +- Now let's set up Application Default Credentials so your Python code can access GCP: - 06 Go to Keys + ```bash + gcloud auth application-default login + ``` + This will open a browser window. Log in with the same Google account you used to create your GCP project. Your credentials will be saved automatically. -- Click on **ADD KEY** then **Create new key**. +- Let's verify your Application Default Credentials are working: - 07 Add Key + ```bash + gcloud auth application-default print-access-token + ``` + You should see a long token string. If you see an error, run `gcloud auth application-default login` again. -- Select **JSON** and click on **CREATE**. +
+ Troubleshooting - 08 Choose JSON and Create + - `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` + - Make sure that billing is enabled for your Google Cloud Platform project [https://cloud.google.com/billing/docs/how-to/modify-project](https://cloud.google.com/billing/docs/how-to/modify-project) +
-- The browser has now saved the service account json file 🔑 in your downloads directory (it is named according to your service account name, something like `le-wagon-data-123456789abc.json`). +🏁 You are done with the GCP setup! diff --git a/_partials/gcp_setup_end.md b/_partials/gcp_setup_end.md deleted file mode 100644 index 90d3e122..00000000 --- a/_partials/gcp_setup_end.md +++ /dev/null @@ -1,52 +0,0 @@ - -
- ℹ️ How to find the absolute path of a file? - You can drag and drop the file in your terminal. -
- -**Restart** your terminal and run: - -``` bash -echo $GOOGLE_APPLICATION_CREDENTIALS -``` - -The ouptut should be the following: - -```bash -/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: - -``` bash -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 -```bash -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) -```bash -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 - -- `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` - - Make sure that billing is enabled for your Google Cloud Platform project https://cloud.google.com/billing/docs/how-to/modify-project -
- -🏁 You are done with the GCP setup! diff --git a/_partials/gcp_setup_linux.md b/_partials/gcp_setup_linux.md deleted file mode 100644 index 18ed7cd5..00000000 --- a/_partials/gcp_setup_linux.md +++ /dev/null @@ -1,20 +0,0 @@ -- Store the service account json file somewhere you'll remember, for example: - -``` bash -/home/LINUX_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: - -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/path/to/the/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.zshrc -``` -**Note:** every time you run this command, it will add this line to your zshrc file regardless of whether you already have it. If you made a mistake and need to fix it, preferably open the file and edit the line! - -You can do so by running - -```bash -code ~/.zshrc -``` - -in the Terminal! 😄 diff --git a/_partials/gcp_setup_mid.md b/_partials/gcp_setup_mid.md deleted file mode 100644 index 033d65e9..00000000 --- a/_partials/gcp_setup_mid.md +++ /dev/null @@ -1,20 +0,0 @@ -- Store the service account json file somewhere you'll remember, for example: - -``` bash -/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: - -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/path/to/the/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.zshrc -``` -**Note:** every time you run this command, it will add this line to your zshrc file regardless of whether you already have it. If you made a mistake and need to fix it, preferably open the file and edit the line! - -You can do so by running - -```bash -code ~/.zshrc -``` - -in the Terminal! 😄 diff --git a/_partials/gcp_setup_wsl.md b/_partials/gcp_setup_wsl.md deleted file mode 100644 index 7323eff4..00000000 --- a/_partials/gcp_setup_wsl.md +++ /dev/null @@ -1,76 +0,0 @@ -We will now move the service account json file from your Windows disk to the Ubuntu disk. This will allow the development tools in Ubuntu to access to the resources of your GCP account. - -First, let's create a directory in which we will store the file. - -👉 Open an Ubuntu terminal and run the following commands - -🚨 replace `GITHUB_NICKNAME` by your **GitHub** nickname - -``` bash -cd ~/code/GITHUB_NICKNAME -ls -la -``` - -If the command does not show the `dotfiles` directory, ask for a TA 🙏 - -Otherwise, you can proceed with the setup: - -``` bash -mkdir gcp -``` - -![](images/wsl-gcp-dir.png) - -We will now move the service account json file to the `gcp` directory we just created. - -Open a Windows **File Explorer** (Win + E) and locate the `gcp` directory in the Ubuntu file system. - -You can either: -- Use the **Quick access** link that we created earlier -- manually type the location of the `gcp` directory in the Ubuntu file system in the address bar: - -``` -\\wsl$\Ubuntu\home\UBUNTU_USERNAME\code\GITHUB_NICKNAME -``` - - -🚨 if you opt for the second option: -- replace `UBUNTU_USERNAME` by the username that you choose during the **Ubuntu** setup -- replace `GITHUB_NICKNAME` by your **GitHub** nickname - -![](images/wsl-gcp-key.png) - -Once you have located the `gcp` directory in the Windows **File Explorer**, move the service account json file that you downloaded inside of it. - -The file should now be visible from Ubuntu file system. - -👉 Open an Ubuntu terminal and verify that the service account json file has been moved - -``` bash -cd gcp -ls -la -``` - -![](images/wsl-gcp-dir-2.png) - -If you do not see the service account json file listed in the `gcp` directory, ask for a TA 🙏 - -We will now store the path to your service account json file in an environment variable. - -🚨 in the following command, replace: -- `UBUNTU_USERNAME` by the username that you choose during the **Ubuntu** setup -- `GITHUB_NICKNAME` by your **GitHub** nickname -- `SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json` by the name of your service account json file - -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/home/UBUNTU_USERNAME/code/GITHUB_NICKNAME/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.zshrc -``` -**Note:** every time you run this command, it will add this line to your zshrc file regardless of whether you already have it. If you made a mistake and need to fix it, preferably open the file and edit the line! - -You can do so by running - -```bash -code ~/.zshrc -``` - -in the Terminal! 😄 diff --git a/builds/LINUX.yml b/builds/LINUX.yml index 6f77972d..390836da 100644 --- a/builds/LINUX.yml +++ b/builds/LINUX.yml @@ -21,9 +21,8 @@ partials: - nbextensions - python_checkup - ubuntu_docker + - gcp_account_setup - gcp_setup - - gcp_setup_linux - - gcp_setup_end - kitt - setup/ubuntu_slack - setup/slack_settings diff --git a/builds/WINDOWS.yml b/builds/WINDOWS.yml index 171cc54e..cdc93496 100644 --- a/builds/WINDOWS.yml +++ b/builds/WINDOWS.yml @@ -30,9 +30,8 @@ partials: - setup/windows_settings - win_vs_redistributable - win_docker + - gcp_account_setup - gcp_setup - - gcp_setup_wsl - - gcp_setup_end - kitt - setup/windows_slack - setup/slack_settings diff --git a/builds/macOS.yml b/builds/macOS.yml index b77856a9..b358c178 100644 --- a/builds/macOS.yml +++ b/builds/macOS.yml @@ -22,9 +22,8 @@ partials: - python_checkup - docker - gcp_cli_setup + - gcp_account_setup - gcp_setup - - gcp_setup_mid - - gcp_setup_end - kitt - setup/macos_slack - setup/slack_settings From f6969d42e732225d3e74e346968769e9dbd1a3ea Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Thu, 17 Sep 2026 22:29:53 +0200 Subject: [PATCH 06/42] Remove Windows compiler - no need for WSL --- builds/WINDOWS.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/builds/WINDOWS.yml b/builds/WINDOWS.yml index cdc93496..0253009a 100644 --- a/builds/WINDOWS.yml +++ b/builds/WINDOWS.yml @@ -28,7 +28,6 @@ partials: - win_jupyter - python_checkup - setup/windows_settings - - win_vs_redistributable - win_docker - gcp_account_setup - gcp_setup From f5de8cbdd509592f1052ae1b900ccf6d9a1b06a6 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Thu, 17 Sep 2026 22:31:31 +0200 Subject: [PATCH 07/42] Remove unnecessary instructions We already installed both before. Version 5.2 of xz is around since 2014. Pretty sure we won't run into a fossil. --- _partials/osx_python.md | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/_partials/osx_python.md b/_partials/osx_python.md index 17af7b48..9274c367 100644 --- a/_partials/osx_python.md +++ b/_partials/osx_python.md @@ -1,25 +1,5 @@ ### Install pre-requisites -Before installing Python, please check your `xz` version with: - -```bash -brew info xz -``` - -It should be more than `5.2.0`, **if not** you should run: - -```bash -sudo rm -rf /usr/local/opt/xz -brew upgrade -brew install xz -``` - -Then run: - -```bash -brew install readline -``` - ### Install `pyenv` 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. From 737454464fb43e3234c397875024b6c33045e659 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Thu, 17 Sep 2026 22:33:58 +0200 Subject: [PATCH 08/42] Remove pip install mac intel --- _partials/pip.md | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/_partials/pip.md b/_partials/pip.md index 090cb7a1..1152a048 100644 --- a/_partials/pip.md +++ b/_partials/pip.md @@ -11,25 +11,9 @@ pip install --upgrade pip Then let's install some packages for the first weeks of the program: {% if os == "macos" %} -If your computer uses **Apple Silicon**, expand the paragraph below and go through it. Otherwise ignore it. - -
- 👉  Setup for Apple Silicon 👈 - ``` bash pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs/releases/apple_silicon.txt ``` -
- -If your computer uses **Apple Intel**, expand the paragraph below and go through it. Otherwise ignore it. - -
- 👉  Setup for Apple Intel 👈 - -``` bash -pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs/releases/apple_intel.txt -``` -
{% elsif os == "windows" %} ``` bash pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs/releases/linux.txt From 3b080a82157a5c7819c802c96cc32ab7f075be33 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Thu, 17 Sep 2026 22:41:59 +0200 Subject: [PATCH 09/42] Simplify Python check --- _partials/es/python_checkup.md | 21 ++++++++----------- _partials/python_checkup.md | 38 +++++++++++----------------------- 2 files changed, 21 insertions(+), 38 deletions(-) diff --git a/_partials/es/python_checkup.md b/_partials/es/python_checkup.md index 9fe5ab2e..131b17d6 100644 --- a/_partials/es/python_checkup.md +++ b/_partials/es/python_checkup.md @@ -13,18 +13,6 @@ Verifica tu versión de Python con los siguientes comandos: zsh -c "$(curl -fsSL {{ PYTHON_CHECKER_URL }})" {{ PYTHON_VERSION }} ``` -Ejecuta el comando siguiente para verificar que hayas instalado los paquetes requeridos correctamente: -```bash -zsh -c "$(curl -fsSL {{ PIP_CHECKER_URL }})" -``` - -Ahora ejecuta el siguiente comando para verificar que puedas cargar estos paquetes: -```bash -python -c "$(curl -fsSL {{ PIP_LOADER_URL }})" -``` - -### Chequeo de Jupyter - Ahora verifica que puedas iniciar un servidor de notebook en tu máquina: ```bash @@ -50,6 +38,15 @@ import sys; sys.version Debería mostrar `{{ PYTHON_VERSION }}` seguido de algunos detalles adicionales. Si no es así, consulta con un TA. +En otra celda, ejecuta: + +```python +import pandas as pd +pd.__version___ +``` + +Esto podría tomar algunos minutos en ejecutarse. Debería mostrar un número de versión, `2.2.3`. Si no es así, consulta con un TA. + Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. ¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. diff --git a/_partials/python_checkup.md b/_partials/python_checkup.md index fd8439c3..506d79ae 100644 --- a/_partials/python_checkup.md +++ b/_partials/python_checkup.md @@ -1,7 +1,5 @@ ## Python setup check -### Python and packages check - Let's reset your terminal: ```bash @@ -13,37 +11,17 @@ Check your Python version with the following commands: zsh -c "$(curl -fsSL {{ PYTHON_CHECKER_URL }})" {{ PYTHON_VERSION }} ``` -Run the following command to check if you successfully installed the required packages: -```bash -zsh -c "$(curl -fsSL {{ PIP_CHECKER_URL }})" -``` - -Now run the following command to check if you can load these packages: -```bash -python -c "$(curl -fsSL {{ PIP_LOADER_URL }})" -``` - -### Jupyter check - Make sure you can run Jupyter: ```bash jupyter notebook ``` -Let's open the jupyter app: - -
- - Regular setup - - Your web browser should open on a `jupyter` window. -
- +Your web browser should open on a `jupyter` window.
- Virtual machine setup + Note if you're running the setup on a virtual machine VSCode detects that a jupyter notebook started in your virtual machine and creates a port forward in order to allow you to open the application in your browser. @@ -61,8 +39,6 @@ Let's open the jupyter app:
-You now have access to the `jupyter` window: - ![jupyter.png](images/jupyter.png) Click on `New` and in the dropdown menu select `Python 3 (ipykernel)`: @@ -74,12 +50,22 @@ A tab should open on a new notebook: ![jupyter_notebook.png](images/jupyter_notebook.png) Make sure that you are running the correct python version in the notebook. Open a cell and run: + ``` python import sys; sys.version ``` It should output `{{ PYTHON_VERSION }}` followed by some more details. If not, check with a TA. +In another cell, run: + +```python +import pandas as pd +pd.__version___ +``` + +This might take a few minutes to run. It should output a version number, `2.2.3`. If not, check with a TA. + You can close your web browser then terminate the jupyter server with `CTRL` + `C`. Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. From 7e379df6567bcb37ffdb2bc97ade2d2f3158f02b Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Fri, 18 Sep 2026 00:02:39 +0200 Subject: [PATCH 10/42] No longer used --- _partials/chrome.md | 9 --------- _partials/es/chrome.md | 9 --------- 2 files changed, 18 deletions(-) delete mode 100644 _partials/chrome.md delete mode 100644 _partials/es/chrome.md diff --git a/_partials/chrome.md b/_partials/chrome.md deleted file mode 100644 index 6a698379..00000000 --- a/_partials/chrome.md +++ /dev/null @@ -1,9 +0,0 @@ -## 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 :point_right: [Install Google Chrome](https://support.google.com/chrome/answer/95346?co=GENIE.Platform%3DDesktop&hl=en-GB) - -__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. diff --git a/_partials/es/chrome.md b/_partials/es/chrome.md deleted file mode 100644 index 2487eb77..00000000 --- a/_partials/es/chrome.md +++ /dev/null @@ -1,9 +0,0 @@ -## Chrome - tu navegador - -Instala el navegador Google Chrome si no lo tienes todavía y configúralo como tu __navegador predeterminado__. - -Sigue los pasos en el siguiente enlace :point_right: [Instalación de Google Chrome](https://support.google.com/chrome/answer/95346?co=GENIE.Platform%3DDesktop&hl=en-GB) - -__¿Por qué Chrome?__ - -Lo recomendamos como navegador predeterminado porque es el más compatible con los tests y la ejecución de código. Además trabaja con Google Cloud Platform. Otra opción es Firefox. No recomendamos usar otros navegadores como Opera, Internet Explorer o Safari. From 5cbf4e1b9e222f7f4261faf747560dc5267bded5 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Fri, 18 Sep 2026 00:13:26 +0200 Subject: [PATCH 11/42] Fix dotfiles in VM setups --- builds/REMOTE_SETUP.yml | 6 ------ builds/VM.yml | 6 ------ 2 files changed, 12 deletions(-) diff --git a/builds/REMOTE_SETUP.yml b/builds/REMOTE_SETUP.yml index 838c38f1..bb19902e 100644 --- a/builds/REMOTE_SETUP.yml +++ b/builds/REMOTE_SETUP.yml @@ -26,12 +26,6 @@ partials: # - de_setup/ubuntu_gcloud # - de_setup/gcp_setup_linux - dotfiles - - dotfiles_new_student - - dotfiles_new_laptop - - dotfiles_merge_upstream - - dotfiles_same_laptop - - dotfiles_merge_upstream - - dotfiles_installer - de_setup/zsh_default_terminal - setup/ssh_agent - ubuntu_python diff --git a/builds/VM.yml b/builds/VM.yml index 3cdbae58..41cb1111 100644 --- a/builds/VM.yml +++ b/builds/VM.yml @@ -22,12 +22,6 @@ partials: - de_setup/ubuntu_gcloud - de_setup/gcp_setup_linux - dotfiles - - dotfiles_new_student - - dotfiles_new_laptop - - dotfiles_merge_upstream - - dotfiles_same_laptop - - dotfiles_merge_upstream - - dotfiles_installer - de_setup/zsh_default_terminal - setup/ssh_agent - ubuntu_python From 4fe68e8d00aa909605af2c34bd69a48fc84c3214 Mon Sep 17 00:00:00 2001 From: github-actions Date: Thu, 17 Sep 2026 22:13:43 +0000 Subject: [PATCH 12/42] setup guides generated --- LINUX.es.md | 468 +++++++++--------------------- LINUX.md | 447 +++++++---------------------- LINUX_keep_current.es.md | 21 +- LINUX_keep_current.md | 38 +-- REMOTE_SETUP.md | 220 +++----------- VM.es.md | 208 +++----------- VM.md | 220 +++----------- WINDOWS.es.md | 531 +++++++++------------------------- WINDOWS.md | 510 +++++++-------------------------- WINDOWS_keep_current.es.md | 21 +- WINDOWS_keep_current.md | 38 +-- macOS.es.md | 564 ++++++++++-------------------------- macOS.md | 566 ++++++++----------------------------- macOS_keep_current.es.md | 21 +- macOS_keep_current.md | 38 +-- 15 files changed, 927 insertions(+), 2984 deletions(-) diff --git a/LINUX.es.md b/LINUX.es.md index f215db64..f3213adf 100644 --- a/LINUX.es.md +++ b/LINUX.es.md @@ -279,182 +279,64 @@ sudo apt-get update && sudo apt-get install google-cloud-cli ## Dotfiles -Los hackers aman mejorar sus shells y sus herramientas. Comenzaremos con una configuración por defecto genial proporcionada por [Le Wagon](http://github.com/lewagon/dotfiles) y almacenada en GitHub. +Mejoremos la experiencia de tu máquina instalando los [dotfiles 🔗](https://github.com/lewagon/dotfiles) preconfigurados de Le Wagon. Son archivos de configuración para tu terminal, zsh, git y VS Code. -### Verifica tu configuración de GitHub CLI +### Hacer un fork de los dotfiles -Primero, hagamos una verificación rápida. Abre tu terminal y ejecuta el comando siguiente: - -```bash -export GITHUB_USERNAME=`gh api user | jq -r '.login'` -echo $GITHUB_USERNAME -``` - -Deberías ver tu usuario GitHub. Si no es así, **no hagas más nada** y pide ayuda. -Parece que hay un problema con el paso anterior (`gh auth`). - - -### Fork y/o clone los archivos de configuración - -Hay tres opciones, escoge **una**: +Para personalizar esta configuración, tendrás que hacer un **fork** del repositorio en tu propia cuenta de Github. +Al hacer un **fork**, se crea una copia del repositorio en tu cuenta (`your_github_username/dotfiles`), que luego podrás modificar con tu información personal, como tu nombre.
- - No he hecho el bootcamp de Web Development o Data Science & AI de Le Wagon + Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ - Tu configuración es personal, así que necesitas tu propio repositorio para almacenarla. Primero tienes que hacer el fork del repositorio en tu cuenta GitHub. - -Hacer un fork significa que crearás un nuevo repositorio en tu cuenta GitHub idéntico al original. Tendrás un nuevo repositorio en tu cuenta GitHub, `your_github_username/dotfiles`. El fork es necesario porque cada uno de ustedes necesitará poner información específica (e.g. tu nombre) en esos archivos. - -Ejecutemos este comando para hacer un **fork** del repositorio `lewagon/dotfiles` y clonarlo: - - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo fork lewagon/dotfiles --clone -``` - -
- - -
- - Ya hice el bootcamp de Web Development o Data Science & AI de Le Wagon pero tengo una nueva laptop - - -Esto significa que ya has hecho el fork del repositorio GitHub lewagon/dotfiles pero tal vez la configuración para el nuevo bootcamp de Data Science & AI no estaba lista en ese momento.Actualicémoslo. **Pide a un TA que te acompañe en los siguientes pasos.** - -Es hora de clonarlo el repositorio en tu laptop: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo clone lewagon/dotfiles -``` - - -Abre tu terminal y ve a tu proyecto `dotfiles`: - -```bash -cd ~/code/$GITHUB_USERNAME$/dotfiles -``` - -Es hora de fusionar los cambios de lewagon/dotfiles en los tuyos: - -1. Commit la versión actual de tus dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Trae los cambios del repositorio upstream: `git merge upstream/master` + Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. -1. Verifica que no estés en estado MERGING. Si lo estás, resuelve los conflictos. -1. Haz un `git diff HEAD~1 HEAD` para revisar qué cambió. - -1. Si todo parece estar en orden, continúa. - -
- ¿Demasiados conflictos? - - - Vamos a tomar la versión actual de `lewagon/dotfiles`. - - Primero aborta la merge: `git merge --abort`. - - Ejecuta `code .` - - En VS Code, abre el archivo zshrc. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Luego guárdalo en el disco. - - Aún en VS Code, abre el archivo `zprofile`. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Luego guárdalo en el disco. - - Regresa a la terminal y ejecuta un `git diff` y verifica que esto no haya eliminado ninguna configuración personal que quisieras conservar. + **Abre un ticket** con un TA y haz una de las siguientes cosas: + - Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. + - Si no te importa perder tus dotfiles existentes (recomendado): + - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. + - Elimina el repositorio local: `rm -rf ~/code//dotifles`. + - Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: + - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. + - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. + - Vuelve a `master`: `git checkout master`. + - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. + - Continúa con la configuración.
-Es hora de guardar tus cambios y subirlos. - -```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master -``` - -
- - -
- - Ya hice el bootcamp de Web Development o Data Science & AI de Le Wagon en la misma laptop - - -Esto significa que ya has hecho el fork del repositorio GitHub lewagon/dotfiles pero tal vez la configuración para el nuevo bootcamp de Data Science & AI no estaba lista en ese momento. Actualicémoslo. **Pide a un TA que te acompañe en los siguientes pasos.** +
- -Abre tu terminal y ve a tu proyecto `dotfiles`: +Ejecuta el siguiente comando: ```bash -cd ~/code/$GITHUB_USERNAME$/dotfiles +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME ``` -Es hora de fusionar los cambios de lewagon/dotfiles en los tuyos: - -1. Commit la versión actual de tus dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Trae los cambios del repositorio upstream: `git merge upstream/master` - -1. Verifica que no estés en estado MERGING. Si lo estás, resuelve los conflictos. - -1. Haz un `git diff HEAD~1 HEAD` para revisar qué cambió. - -1. Si todo parece estar en orden, continúa. - -
- ¿Demasiados conflictos? - - - Vamos a tomar la versión actual de `lewagon/dotfiles`. - - Primero aborta la merge: `git merge --abort`. - - Ejecuta `code .` - - En VS Code, abre el archivo zshrc. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Luego guárdalo en el disco. +✔️ Deberías ver tu nombre de usuario de Github impreso. - Aún en VS Code, abre el archivo `zprofile`. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Luego guárdalo en el disco. +❌ Si no es así, detente aquí y pide ayuda. Puede haber un problema con el paso anterior (`gh auth`). - Regresa a la terminal y ejecuta un `git diff` y verifica que esto no haya eliminado ninguna configuración personal que quisieras conservar. - -
- -Es hora de guardar tus cambios y subirlos. +Es hora de hacer un fork del repositorio y clonarlo en tu ordenador: ```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master +mkdir -p ~/code/$GITHUB_USERNAME && cd $_ +gh repo fork lewagon/dotfiles --clone ``` -
- +### Instalar los dotfiles -### Ejecuta el instalador de dotfiles - -Ejecuta el instalador de `dotfiles`. +Ejecuta el instalador de `dotfiles` con: ```bash cd ~/code/$GITHUB_USERNAME/dotfiles && zsh install.sh ``` -Verifica los emails registrados en tu cuenta GitHub. Deberás seleccionar uno de ellos en el próximo paso: +Comprueba los correos electrónicos registrados en tu cuenta de GitHub. Tendrás que elegir uno en el siguiente paso: ```bash gh api user/emails | jq -r '.[].email' @@ -466,10 +348,11 @@ Ejecuta el instalador de git: cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh ``` -:point_up: Esto te **guiará** con tu nombre (`FirstName LastName`) y con tu email. -:warning: Cuidado, **debes** poner uno de los emails de la lista de arriba que te suministra el comando `gh api ...` usado anteriormente. Si haces eso, Kitt no podrá hacerle seguimiento a tu progreso. Cualquier correo que elijas se mostrará **públicamente** en internet. 💡 Selecciona la dirección `@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en los repositorios públicos a los que puedas contribuir. +:point_up: Se te pedirá (**prompt**) tu nombre (`Nombre Apellido`) y tu correo electrónico. + +:warning: **Debes** introducir uno de los correos electrónicos indicados arriba mediante el comando anterior `gh api ...`. Si no lo haces, Kitt no podrá realizar el seguimiento de tu progreso. -Ahora **cierra** todas las ventanas de tu terminal que tengas abiertas por favor. +💡 Selecciona la dirección `...@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en repositorios públicos a los que contribuyas. ## Desahilitación de la solicitud de SSH passphrase @@ -654,18 +537,6 @@ Verifica tu versión de Python con los siguientes comandos: zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 ``` -Ejecuta el comando siguiente para verificar que hayas instalado los paquetes requeridos correctamente: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.sh)" -``` - -Ahora ejecuta el siguiente comando para verificar que puedas cargar estos paquetes: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Chequeo de Jupyter - Ahora verifica que puedas iniciar un servidor de notebook en tu máquina: ```bash @@ -691,15 +562,18 @@ import sys; sys.version Debería mostrar `3.12.9` seguido de algunos detalles adicionales. Si no es así, consulta con un TA. -Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. - -¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. +En otra celda, ejecuta: +```python +import pandas as pd +pd.__version___ +``` +Esto podría tomar algunos minutos en ejecutarse. Debería mostrar un número de versión, `2.2.3`. Si no es así, consulta con un TA. -## DBeaver +Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. -DDescarga e instala [DBeaver](https://dbeaver.io/), una herramienta poderosa, gratuita y de código abierto para conectar con cualquier base de datos, explorar su esquema e incluso **hacer consultas SQL**. +¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. ## Docker 🐋 @@ -741,60 +615,68 @@ Debería aparecer el siguiente mensaje: ## Configuración de Google Cloud Platform -[GCP](https://cloud.google.com/) es una solución en la nube que usarás para colocar tus productos basados en Machine Learning en producción. +[Google Cloud](https://cloud.google.com/) es una solución en la nube que utilizarás para desplegar tus productos basados en Machine Learning en producción. -🚨 Si estás en el grupo de estudiantes del **Bootcamp de Medio Tiempo**, ¡IGNORA ESTA SECCIÓN POR AHORA! **GCP** ofrece $300 en créditos durante 3 meses, así que no es buena idea activar tu cuenta GCP demasiado pronto 🙅‍♂️ +🚨 Si eres estudiante del **Part-Time Bootcamp**, ¡OMITE ESTA SECCIÓN POR AHORA! **Google Cloud** ofrece 300 $ de crédito gratuito durante 3 meses. No querrás activar tu cuenta de Google Cloud demasiado pronto 🙅‍♂️ -### Preparación del Proyecto +### Configuración del proyecto - Ve a [Google Cloud](https://console.cloud.google.com/) y crea una cuenta si aún no tienes una -- En la consola de Cloud, en la lista de proyectos, selecciona o crea un proyecto Cloud +- En Cloud Console, en la lista de proyectos, selecciona o crea un proyecto de Cloud + +⚠️ **Importante:** Al crear un proyecto nuevo, verás un campo **Organization**. Déjalo como **"No organization"**. No selecciones ni crees una organización. Elegir una organización aplica restricciones que pueden impedirte utilizar los servicios de Google Cloud durante el bootcamp. ![](images/gcp-create-project.png) -- Asígnale un nombre como `Wagon Bootcamp` por ejemplo -- ❗ Comprueba que el campo _Location_ esté establecido en _No organization_ ❗ -- Verás que se creará un `ID` automáticamente para el proyecto e. g. `wagon-bootcamp-123456` + +- Asígnale un nombre, por ejemplo, `Wagon Bootcamp` +- Observa el `ID` que se crea automáticamente para el proyecto, por ejemplo, `wagon-bootcamp-123456` ![](images/gcp_project.png) +ℹ️ Anota el **Project ID** (por ejemplo, `wagon-bootcamp-123456`), que **no** es lo mismo que el nombre del proyecto que elegiste (por ejemplo, `Wagon Bootcamp`). Necesitarás el ID más adelante al ejecutar comandos en la terminal, pero no te preocupes: siempre puedes encontrarlo en Google Cloud. + ### Idioma de la cuenta -Abre las preferencias en tu cuenta GCP para facilitar el seguimiento de las instrucciones durante el bootcamp: +Para facilitar el seguimiento de las instrucciones durante el bootcamp, abre las preferencias de tu cuenta de Google Cloud: + +[https://myaccount.google.com/language](https://myaccount.google.com/language) -https://myaccount.google.com/language +Si el *idioma preferido* no es: -Si el *idioma de preferencia* no es: - **English** - **United States** -Cámbialo a inglés: -- Haz clic en el logo edición (es una lapicera) +Entonces cambia el idioma a inglés: + +- Haz clic en el icono del lápiz de edición - Selecciona **English** - Selecciona **United States** - Haz clic en **Select** ### Cuenta de facturación -Ahora conecta tu cuenta con tu tarjeta de crédito. Este paso es obligatorio para poder usar los servicios que suministra GCP. No te preocupes, podrás utilizar la mayoría de los servicios de GCP por medio de créditos gratuitos durante el bootcamp. +Ahora vincularás tu cuenta a tu tarjeta de crédito. Este paso es obligatorio; de lo contrario, no podrás utilizar los servicios proporcionados por Google Cloud. No te preocupes: podrás utilizar la mayoría de los servicios de Google Cloud mediante créditos gratuitos durante el bootcamp. + +⚠️ En algunos casos, Google puede hacer un cargo en tu tarjeta (de unos 10 €) para verificar que es válida. Desafortunadamente, no se reembolsará una vez aprobada, pero se añadirá como crédito en Google Cloud que podrás utilizar cuando hayas usado o hayan caducado tus créditos gratuitos. ![](images/gcp-billing.png) - Haz clic en **Billing** - Haz clic en **MANAGE BILLING ACCOUNTS** - Haz clic en **ADD BILLING ACCOUNT** -- Asígnale un nombre a tu cuenta de facturación, e. g. `My Billing Account` -- Haz clic en "I have read..." y acepta los términos de uso +- Ponle un nombre a tu cuenta de facturación, por ejemplo, `My Billing Account` +- Haz clic en "I have read..." y acepta las condiciones del servicio - Haz clic en **CONTINUE** -- Selecciona tu tipo de cuenta: `Individual` -- Agrega tu nombre y dirección +- Selecciona el tipo de cuenta: `Individual` +- Introduce tu nombre y dirección -Verás que tienes créditos gratuitos con un valor de "$300 a utilizar en los próximos 90 días". +Deberías ver que tienes un crédito gratuito de "$300 credits over the next 90days". -- Haz clic en los detalles de la tarjeta -- Agrega la información de tu tarjeta de crédito -- Haz clic en **START MY FREE TRIAL**. Esto significa comenzar mi período de prueba. +- Haz clic en los datos de la tarjeta +- Introduce los datos de tu tarjeta de crédito +- Haz clic en **START MY FREE TRIAL** -Cuando termines, verifica que la cuenta de facturación esté conectada con tu proyecto GCP. +Una vez hecho esto, verifica que tu cuenta de facturación esté vinculada a tu proyecto de Google Cloud. - Selecciona tu proyecto - Ve a **Billing** @@ -802,201 +684,123 @@ Cuando termines, verifica que la cuenta de facturación esté conectada con tu p - Selecciona `My Billing Account` - Haz clic en **SET ACCOUNT** -Ahora deberías ver lo siguiente: +Ahora deberías ver: -``` +```bash Free trial status: $300 credit and 91 days remaining - with a full account, you'll get unlimited access to all of Google Cloud Platform. ``` -Esto significa Estado de período de prueba: crédito de $300 y 91 días para usarlo - con la full account, tendrás acceso ilimitado a todo lo que ofrece Google Cloud Platform. -
👉 Si no tienes una tarjeta de crédito 👈 +Si no tienes una tarjeta de crédito, una alternativa es crear una cuenta de **Revolut**. +Revolut es una aplicación financiera que te permite crear una tarjeta de crédito virtual vinculada a tu cuenta de facturación del teléfono móvil. -Si no tienes una tarjeta de crédito, puedes abrir una cuenta en **Revolut**. -Revolut es una aplicación que funciona como un banco y que te permitirá crear una tarjeta de crédito virtual conectada a la dirección de facturación de tu smartphone. +Omite este paso si tienes una tarjeta de crédito y la utilizas para la configuración. -Ignora este paso si ya tienes una tarjeta de crédito. Simplemente úsala para hacer la configuración. +Descarga la aplicación Revolut o visita [revolut](https://www.revolut.com/a-radically-better-account) y sigue los pasos para descargar la aplicación (introduce tu número de teléfono móvil y haz clic en Get Started). -Descarga la app Revolut o ve a [revolut](https://www.revolut.com/a-radically-better-account) y sigue los pasos para descargar la app (introduce tu número de teléfono móvil y haz clic en Get Started). +- Abre la aplicación Revolut +- Introduce tu número de teléfono móvil +- Introduce el código de verificación recibido por SMS +- La aplicación te pedirá tu país, dirección, nombre y apellidos, fecha de nacimiento y dirección de correo electrónico +- La aplicación también te pedirá un selfie y tu profesión +- La aplicación requerirá una foto de tu documento de identidad o pasaporte -- Abre la app Revolut -- Agrega tu número de teléfono móvil -- Agrega el código de verificación que recibiste por SMS -- La app te preguntará por tu país, dirección, primer y segundo nombre, fecha de nacimiento y el email -- La app también te pedirá tu profesión y una selfie -- La app te pedirá una foto de tu documento nacional de identidad o pasaporte +Una vez hecho esto, selecciona el plan estándar (gratuito). No es necesario añadir la tarjeta a Apple Pay, solicitar el envío de una tarjeta física ni añadir dinero. -Cuando termines, selecciona el plan estándar (gratuito). No tienes que agregar la tarjeta a Apple pay, pedir que te envíen una tarjeta a tu domicilio ni tampoco agregar dinero a la cuenta. +Ahora tienes una tarjeta virtual que utilizaremos para configurar Google Cloud. -Ahora tienes una tarjeta virtual que podrás usar para hacer la configuración de GCP. +En la vista principal de la aplicación Revolut -En la vista principal de la app Revolut - Haz clic en Ready to use -- Haz clic en the card +- Haz clic en la tarjeta - Haz clic en Show card details -- Toma nota de la información de la tarjeta de crédito virtual y úsala para completar la configuración de GCP +- Anota los datos de la tarjeta de crédito virtual y utilízalos para continuar con la configuración de Google Cloud
- 👉 Si recibes un email de Google diciendo "Urgent: your billing account XXXXXX-XXXXXX-XXXXXX has been suspended" 👈 - + 👉 Si recibes un correo de Google que dice "Urgent: your billing account XXXXXX-XXXXXX-XXXXXX has been suspended" 👈 -Esto puede pasar justo después de haber creado la cuenta en Revolut. +Esto puede ocurrir especialmente si acabas de configurar una cuenta de Revolut. - Haz clic en PROCEED TO VERIFICATION -- Te pedirán que envíes una foto de tu tarjeta de crédito (solo los últimos 4 dígitos, nada más) -- Si ya has usado **Revolut**, puedes enviar una captura de pantalla de tu tarjeta de crédito virtual (no olvides quitar la fecha de vencimiento de la captura) -- Explica que estás haciendo el bootcamp de Le Wagon, que no tienes una tarjeta de crédito y que acabas de crear una cuenta en Revolut para poder configurar GCP para el bootcamp con una tarjeta de crédito virtual - -Es posible que te validen la cuenta pero también es posible que te pidan más información en los próximos 30 minutos. - -Cuando la cuenta sea validada recibirás un email diciendo lo siguiente: "Your Google Cloud Platform billing account XXXXXX-XXXXXX-XXXXXX has been fully reinstated and is ready to use.". Esto significa que tu cuenta Google Cloud Platform ha sido restablecida - -
- -### Habilitación de servicios de GCP - -- Asegúrate de que la facturación está habilitada para tu proyecto Google Cloud - -ℹ️ Tienes un **crédito de $300** para usar con recursos de Google Cloud. Esto será más que suficiente para el bootcamp. - -- [Habilita las APIs BigQuery y Compute Engine](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (Esto puede tomar varios minutos) - -### Configuración de Cloud sdk +- Se te pedirá que envíes una foto de tu tarjeta de crédito (solo los últimos 4 dígitos, sin ninguna otra información) +- Si utilizaste **Revolut**, puedes enviar una captura de pantalla de tu tarjeta de crédito virtual (no olvides eliminar la fecha de caducidad de la captura) +- Explica que estás asistiendo al bootcamp de Le Wagon, que no tienes una tarjeta de crédito y que acabas de crear una cuenta de Revolut para configurar Google Cloud para el bootcamp mediante una tarjeta de crédito virtual -- Autentica el CLI de `gcloud` con la cuenta que usaste para GCP -```bash -gcloud auth login -``` -- Inicia sesión en tu cuenta Google en la nueva pestaña que se abrió en tu navegador -- Lista la cuenta que tienes activa y verifica que el email que usaste para GCP está ahí -```bash -gcloud auth list -``` -- Define tu proyecto actual (reemplaza `PROJECT_ID` con el `ID` de tu proyecto e.g. `wagon-bootcamp-123456`) -```bash -gcloud config set project PROJECT_ID -``` -- Lista la cuenta que tienes activa y tu proyecto actual y verifica que tu proyecto está ahí -```bash -gcloud config list -``` +Puedes recibir una validación o solicitudes de más información en un plazo de 30 minutos. -### Crea una llave 🔑 de cuenta de servicio +Una vez completada la verificación, deberías recibir un correo que indique: "Your Google Cloud Platform billing account XXXXXX-XXXXXX-XXXXXX has been fully reinstated and is ready to use.". -Como ya creaste una cuenta `GCP account` y un `project` (identificado por su `PROJECT_ID`), vamos a configurar las acciones (llamadas API calls) que quieres que tu código ejecute. - -
- 🤔 ¿Por qué necesitamos una clave de cuenta de servicio? - - - Creaste una `cuenta GCP` conectada a una tarjeta de crédito. Te facturarán de acuerdo al uso que les des a los recursos de **Google Cloud Platform**. El cargo se hará si utilizas algo después de que el período de prueba gratuito se haya terminado o si te excedes del límite de consumo que te permite dicho período. - - En tu `cuenta GCP` has creado un solo `proyecto GCP` identificado por su `PROJECT_ID`. Los `proyectos GCP` te permiten organizar y monitorear la manera en que consumes los recursos **GCP** de forma más precisa. En este bootcamp solo crearemos un solo proyecto. - - Ahora necesitamos una manera de saber qué recursos nuestro código podrá consumir dentro de un `GCP project`. Nuestro código consume recursos GCP por medio de llamadas API. - - Ya que las llamadas API no son gratuitas, es importante definir cuidadosamente cómo nuestro código las utilizará. Sin embargo, durante el bootcamp no habrá restricciones. Le permitiremos a nuestro código que utilice todas las API **GCP** sin restricciones. - - Así como pueden haber varios proyectos asociados a una cuenta GCP, un proyecto puede estar compuesto de muchos servicios (cualquier paquete de código, sin importar su formato, que necesite utilizar llamadas a la API de GCP para cumplir con su propósito). - - GCP exige que los servicios de los proyectos que usen llamadas API se registren en la plataforma y que se configuren sus credenciales por medio del acceso concedido a una `service account`. - - Por ahora solo tendremos que usar un solo servicio y crearemos la `service account` correspondiente.
-Ya que la [service account](https://cloud.google.com/iam/docs/service-accounts) es lo que identifica tu aplicación (y por ende tu cuenta de facturación GCP y, en última instancia, tu tarjeta de crédito), lo mejor es ser cuidadoso en los próximos pasos. +### Activación de los servicios de Google Cloud -⚠️ **No compartas la 🔑 del archivo json de tu cuenta de servicio** ⚠️ No la guardes en tu escritorio ni en tu código base de git (incluso si tu repositorio git es privado). Que no se te olvide en un lugar como la máquina de café y, por supuesto, no la envíes en un tweet. +- Asegúrate de que la facturación esté activada para tu proyecto de Google Cloud -- Ve a la [página de las cuentas de servicio](https://console.cloud.google.com/apis/credentials/serviceaccountkey) -- Selecciona tu proyecto en la lista de proyectos recientes si te piden que -- Crees una cuenta de servicio: - - Haz clic en **CREATE SERVICE ACCOUNT** que significa crear une cuenta de servicio: - - Define un `Service account name` para esa cuenta. Esto significa Nombre de cuenta de servicio - - Haz clic en **CREATE AND CONTINUE** que significa crear y continuar - - Haz clic en **Select a role** que significa selecciona un rol. Escoge `Quick access/Basic` luego **Owner**. Esto otorga acceso total a todos los recursos - - Haz clic en **CONTINUE** - - Haz clic en **DONE** -- Descarga la 🔑 del archivo json de la cuenta de servicio: - - Haz clic en la cuenta de servicio recién creada - - Haz clic en **KEYS** - - Haz clic en **ADD KEY** y luego en **Create new key** - - Selecciona **JSON** y haz clic en **CREATE** +ℹ️ Tienes un **crédito de 300 $** para utilizar en recursos de Google Cloud, más que suficiente para el bootcamp. -![](images/gcp_create_key.png) +- [Activa las API de BigQuery y Compute Engine](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (Este paso puede tardar unos minutos) -El navegador acaba de guardar la 🔑 del archivo json de la cuenta de servicio en tu carpeta de descargas (el nombre se le asigna según el nombre de la cuenta de servicio. Es algo como `le-wagon-data-123456789abc.json`) +¡Eso es todo para la configuración en el navegador! La configuración de la terminal aparece más adelante en esta guía. -- Guarda el archivo json de la cuenta de servicio en un lugar que recuerdes. Por ejemplo: +### Configurar Cloud SDK -``` bash -/home/LINUX_USERNAME/code/GITHUB_NICKNAME/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json -``` +- Autentica la CLI de `gcloud` con la cuenta de Google que utilizaste para GCP -- Guarda la **ruta absoluta** al archivo `JSON` como una variable de entorno: + + ```bash + gcloud auth login + ``` + -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/path/to/the/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.aliases -``` +- Inicia sesión en tu cuenta de Google en la nueva pestaña que se abrió en tu navegador web +- Muestra tu cuenta activa y comprueba que aparece la dirección de correo electrónico que utilizaste para GCP + ```bash + gcloud auth list + ``` -
- ℹ️ ¿Cómo encontrar la ruta absoluta de un archivo? - Puedes arrastrar el archivo a tu terminal. -
+- Establece tu proyecto actual (reemplaza `PROJECT_ID` por el `ID` de tu proyecto, por ejemplo, `wagon-bootcamp-123456`) -**Reinicia** tu terminal y ejecuta lo siguiente: + ```bash + gcloud config set project PROJECT_ID + ``` -``` bash -echo $GOOGLE_APPLICATION_CREDENTIALS -``` +- Muestra tu cuenta activa y tu proyecto actual, y comprueba que aparece tu proyecto -Deberías obtener la siguiente información: - -```bash -/some/absolute/path/to/your/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json -``` + ```bash + gcloud config list + ``` -Ahora verifica si la ruta al archivo json de tu cuenta de servicio es el correcto: +- Ahora vamos a configurar las credenciales predeterminadas de la aplicación para que tu código Python pueda acceder a GCP: -``` bash -cat $(echo $GOOGLE_APPLICATION_CREDENTIALS) -``` + ```bash + gcloud auth application-default login + ``` -👉 Este comando debería mostrar el contenido del archivo json de tu cuenta de servicio. Si no es el caso, pídele ayuda a un TA 🙏 + Esto abrirá una ventana del navegador. Inicia sesión con la misma cuenta de Google que utilizaste para crear tu proyecto de GCP. Tus credenciales se guardarán automáticamente. -Tu código y utilidades ahora pueden acceder a los recursos de tu cuenta GCP. +- Verifiquemos que tus credenciales predeterminadas de la aplicación funcionan: -Continuemos con los últimos pasos de la configuración... + ```bash + gcloud auth application-default print-access-token + ``` -- Lista las cuentas de servicio asociadas a tu cuenta activa y a tu proyecto actual -```bash -gcloud iam service-accounts list -``` -- Recupera el email de la cuenta de servicio e. g. `SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com` -- Lista los roles de la cuenta de servicio desde la cli (reemplaza el PROJECT_ID y el SERVICE_ACCOUNT_EMAIL) -```bash -gcloud projects get-iam-policy PROJECT_ID \ ---flatten="bindings[].members" \ ---format='table(bindings.role)' \ ---filter="bindings.members:SERVICE_ACCOUNT_EMAIL" -``` -- Ahora deberías ver que tu cuenta de servicio tiene el rol de `roles/owner` + Deberías ver una cadena de token larga. Si aparece un error, vuelve a ejecutar `gcloud auth application-default login`. -
- Resolución de problemas +
+ Solución de problemas -- `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.`. Esto significa que el proyecto a facturar está asociado a una cuenta de facturación que no está habilitada - - Asegúrate de habilitar la facturación para tu proyecto https://cloud.google.com/billing/docs/how-to/modify-project -
+ - `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` + - Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud Platform [https://cloud.google.com/billing/docs/how-to/modify-project](https://cloud.google.com/billing/docs/how-to/modify-project) +
-🏁 Listo. ¡Has terminado la configuración de GCP! +🏁 ¡Has terminado la configuración de GCP! ## Kitt diff --git a/LINUX.md b/LINUX.md index 0f38a7b8..b63e4524 100644 --- a/LINUX.md +++ b/LINUX.md @@ -304,179 +304,64 @@ sudo apt-get update && sudo apt-get install google-cloud-cli ## Dotfiles -Hackers love to refine and polish their shell and tools. We'll start with a great default configuration provided by [Le Wagon](http://github.com/lewagon/dotfiles), stored on GitHub. +Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. -### Check your GitHub CLI configuration +### Forking the dotfiles -First, let's do a quick check. Open your terminal and run the following command: - -```bash -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`). - -### Fork and/or clone dotfiles - -There are three options, choose **one**: +To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. +**Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
- - I did not attend the Web Dev or Data Science & AI bootcamp at Le Wagon + If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ - As your configuration is personal, you need your own repository storing it, so you'll need to fork it to your GitHub account. - -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. - -Lets' run this command to fork the repo, and clone it on your laptop: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo fork lewagon/dotfiles --clone -``` - -
- - -
- - I already attended a Le Wagon coding bootcamp (Web Development or Data Science & AI) but I have a new laptop - - -This means that you already forked the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** - -First, clone your fork on this machine: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo clone $GITHUB_USERNAME/dotfiles -``` - - -Open your terminal and go to your `dotfiles` project: - -```bash -cd ~/code/$GITHUB_USERNAME/dotfiles -``` + You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. -Time to merge the changes from `lewagon/dotfiles` into yours: -1. Commit your current version of your dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Let's bring in the changes from upstream: `git merge upstream/master` - -1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. - -1. Do a `git diff HEAD~1 HEAD` to check what changed. - -1. If nothing seems out of the ordinary, continue - -
- Too many conflicts? - - Let's just take over the current version from `lewagon/dotfiles`. - - First abort the merge: `git merge --abort`. - - Run `code .` - - In VS Code, open the `zshrc` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Save to disk. - - Still in VS Code, open the `zprofile` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Save to disk. - - Back in the terminal, run a `git diff` and check if this didn't remove any personal configuration setting that you wanted to keep. - -
- -Time to commit your changes and push them. - -```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master -``` + **Open a ticket** with a TA and do one of the following: + - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. + - If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. + - If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup.
+
-
- - I already did the setup of a Le Wagon coding bootcamp (WebDev or Data Science & AI) on the same laptop before - - -This means that you already forked and cloned the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** - - -Open your terminal and go to your `dotfiles` project: +Run the following command: ```bash -cd ~/code/$GITHUB_USERNAME/dotfiles +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME ``` -Time to merge the changes from `lewagon/dotfiles` into yours: -1. Commit your current version of your dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Let's bring in the changes from upstream: `git merge upstream/master` - -1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. - -1. Do a `git diff HEAD~1 HEAD` to check what changed. - -1. If nothing seems out of the ordinary, continue - -
- Too many conflicts? - +✔️ You should see your Github username printed. - Let's just take over the current version from `lewagon/dotfiles`. +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). - First abort the merge: `git merge --abort`. - - Run `code .` - - In VS Code, open the `zshrc` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Save to disk. - - Still in VS Code, open the `zprofile` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Save to disk. - - Back in the terminal, run a `git diff` and check if this didn't remove any personal configuration setting that you wanted to keep. - -
- -Time to commit your changes and push them. +Time to fork the repo and clone it on your computer: ```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master +mkdir -p ~/code/$GITHUB_USERNAME && cd $_ +gh repo fork lewagon/dotfiles --clone ``` -
- - -### Run the dotfiles installer +### Installing the dotfiles -It's time to run the `dotfiles` installer: +Run the `dotfiles` installer with: ```bash 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: +Check the emails registered with your GitHub Account. You'll need to pick one in the next step: ```bash gh api user/emails | jq -r '.[].email' @@ -489,9 +374,10 @@ cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh ``` :point_up: This will **prompt** you for your name (`FirstName LastName`) and your email. -:warning: You **need** to put one of the emails listed above thanks to the previous `gh api ...` command. If you don't do that, Kitt won't be able to track your progress. 💡 Select the `@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. -Please now **quit** all your opened terminal windows. +:warning: You **need** to put one of the emails listed above from the previous `gh api ...` command. If you don't do that, Kitt will not be able to track your progress. + +💡 Select the `...@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. ## Disable SSH passphrase prompt @@ -678,8 +564,6 @@ curl $SOURCE > $LOCATION/custom.css ## Python setup check -### Python and packages check - Let's reset your terminal: ```bash @@ -691,37 +575,17 @@ 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.12.9 ``` -Run the following command to check if you successfully installed the required packages: -```bash -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: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Jupyter check - Make sure you can run Jupyter: ```bash jupyter notebook ``` -Let's open the jupyter app: - -
- - Regular setup - - Your web browser should open on a `jupyter` window. -
- +Your web browser should open on a `jupyter` window.
- Virtual machine setup + Note if you're running the setup on a virtual machine VSCode detects that a jupyter notebook started in your virtual machine and creates a port forward in order to allow you to open the application in your browser. @@ -739,8 +603,6 @@ Let's open the jupyter app:
-You now have access to the `jupyter` window: - ![jupyter.png](images/jupyter.png) Click on `New` and in the dropdown menu select `Python 3 (ipykernel)`: @@ -752,21 +614,25 @@ A tab should open on a new notebook: ![jupyter_notebook.png](images/jupyter_notebook.png) Make sure that you are running the correct python version in the notebook. Open a cell and run: + ``` python import sys; sys.version ``` It should output `3.12.9` followed by some more details. If not, check with a TA. -You can close your web browser then terminate the jupyter server with `CTRL` + `C`. - -Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. +In another cell, run: +```python +import pandas as pd +pd.__version___ +``` +This might take a few minutes to run. It should output a version number, `2.2.3`. If not, check with a TA. -## DBeaver +You can close your web browser then terminate the jupyter server with `CTRL` + `C`. -Download and install [DBeaver](https://dbeaver.io/), a free and open source powerful tool to connect to any database, explore the schema and even **run SQL queries**. +Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. ## Docker 🐋 @@ -808,34 +674,39 @@ The following message should print: ## Google Cloud Platform setup -[GCP](https://cloud.google.com/) is a cloud solution that you are going to use in order to deploy your Machine Learning-based products to production. +[Google Cloud](https://cloud.google.com/) 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 🙅‍♂️ +🚨 If you are a student of the **Part-Time Bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ ### Project setup - Go to [Google Cloud](https://console.cloud.google.com/) 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 +⚠️ **Important:** When creating a new project, you will see an **Organization** field. Leave this set to **"No organization"**. Do not select or create an organization. Choosing an organization applies restrictions that can prevent you from using Google Cloud services during the bootcamp. + ![](images/gcp-create-project.png) - Give it a name such as `Wagon Bootcamp` for example -- ❗ Check that the field _Location_ is set to _No organization_ ❗ - Notice the `ID` automatically created for the project, e.g. `wagon-bootcamp-123456` ![](images/gcp_project.png) +ℹ️ Note the **Project ID** (e.g. `wagon-bootcamp-123456`) this is **not** the same as the project name you chose (e.g. `Wagon Bootcamp`). You will need the ID later when running terminal commands, but don't worry, you can always find it in Google Cloud. + ### Account language -In order to facilitate the following of the instructions during the bootcamp, open your GCP account preferences: +In order to facilitate the following of the instructions during the bootcamp, open your Google Cloud account preferences: -https://myaccount.google.com/language +[https://myaccount.google.com/language](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** @@ -843,7 +714,9 @@ Then switch the language to english: ### 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. +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 Google Cloud. Do not worry, you will be able to consume most Google Cloud services through free credits throughout the bootcamp. + +⚠️ In some cases, Google may charge your card (around €10) to verify that it is valid. This will unfortunately not be refunded once you are approved, but will be added as credit in Google Cloud that you can use once your free credits have been used or expired. ![](images/gcp-billing.png) @@ -862,7 +735,7 @@ You should see that you have a free credit of "$300 credits over the next 90days - 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. +Once this is done, verify that your billing account is linked to your Google Cloud project. - Select your project - Go to **Billing** @@ -872,14 +745,13 @@ Once this is done, verify that your billing account is linked to your GCP projec You should now see: -``` +```bash 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. @@ -896,26 +768,26 @@ Download the Revolut app, or go to [revolut](https://www.revolut.com/a-radically 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. +You now have a virtual card which we will use for the Google Cloud setup. + +In the main view of the Revolut app -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 +- Note down the references of the virtual credit card and use them in order to proceed with the Google Cloud 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 +- 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 Google Cloud for the bootcamp using a virtual credit card You may receive a validation or requests for more information within 30 minutes. @@ -923,7 +795,7 @@ Once the verification goes through, you should receive an email stating that "Yo
-### Enabling GCP services +### Enabling Google Cloud services - Make sure that billing is enabled for your Google Cloud project @@ -931,182 +803,61 @@ Once the verification goes through, you should receive an email stating that "Yo - [Enable the BigQuery and Compute Engine APIs](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (This step may take a few minutes) -### Configure Cloud sdk +That's it for the browser setup! Terminal setup comes later in this guide. -- Authenticate the `gcloud` CLI with the google account you used for GCP +### Configure Cloud sdk -```bash -gcloud auth login -``` +- Authenticate the `gcloud` CLI with the google account you used for GCP + + ```bash + 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 -```bash -gcloud auth list -``` -- Set your current project (replace `PROJECT_ID` with the `ID` of your project, e.g. `wagon-bootcamp-123456`) -```bash -gcloud config set project PROJECT_ID -``` -- List your active account and current project and check your project is present -```bash -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. - -
- 🤔 Why do we need a service account key ? - - - You have created a `GCP account` linked to your credit card. Your account will be billed according to your usage of the resources of the **Google Cloud Platform**. The billing will occur if you consume anything once the free trial is over, or if you exceed the amount of spending allowed during the free trial. - - In your `GCP account`, you have created a single `GCP project`, identified by its `PROJECT_ID`. The `GCP projects` allow you to organize and monitor more precisely how you consume the **GCP** resources. For the purpose of the bootcamp, we are only going to create a single project. - - Now, we need a way to tell which resources within a `GCP project` our code will be allowed to consume. Our code consumes GCP resources through API calls. - - Since API calls are not free, it is important to define with caution how our code will be allowed to use them. During the bootcamp this will not be an issue and we are going to allow our code to use all the API of **GCP** without any restrictions. - - In the same way that 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 projects using API calls are registered on the platform and their credentials configured through the access granted to a `service account`. - - For the moment we will only need to use a single service and will create the corresponding `service account`. -
- -Since the [service account](https://cloud.google.com/iam/docs/service-accounts) is what identifies your application (and therefore your GCP billing account and ultimately your credit card), you are going to want to be cautious with the next steps. - -⚠️ **Do not share you service account json file 🔑** ⚠️ Do not store it on your desktop, do not store it in your git codebase (even if your git repository is private), do not let it by the coffee machine, do not send it as a tweet. - -#### Go to the Service Accounts page - -Navigate to the GCP service accounts page at [this link](https://console.cloud.google.com/apis/credentials/serviceaccountkey). - -- Select your project in the list of recent projects if asked to. -- If not asked, make sure the right project is selected in the Project selecter list at the top of the page. - -An alternate way to navigate to the Service Accounts page is from the following: - -01 Go to Service Accounts - -#### Create a service account - -- Click on **CREATE SERVICE ACCOUNT**. - - 02 Create Service Account - -- Give your service account a name, an id and a description, and click on **CREATE AND CONTINUE**. - - 03 Name the service account - -- Click on **Select a role** and choose `Basic` then **`Owner`**, which gives the service account full access to all resources of your GCP project. - - 04 Add BigQuery Job User - -- Click on the blue **DONE** button at the bottom of this window. We don't need to worry about the section *Grant your users access to this service account*. - - 04 Done - - -#### Create a json key 🔑 for this service account - -- On the service accounts page, click on the email address of the newly created service account. - - 05 Select the service account - -- Click on the **KEYS** tab at the top of the page. - - 06 Go to Keys - - -- Click on **ADD KEY** then **Create new key**. - - 07 Add Key - - -- Select **JSON** and click on **CREATE**. - - 08 Choose JSON and Create - -- The browser has now saved the service account json file 🔑 in your downloads directory (it is named according to your service account name, something like `le-wagon-data-123456789abc.json`). - - -- Store the service account json file somewhere you'll remember, for example: - -``` bash -/home/LINUX_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: - -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/path/to/the/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.zshrc -``` -**Note:** every time you run this command, it will add this line to your zshrc file regardless of whether you already have it. If you made a mistake and need to fix it, preferably open the file and edit the line! - -You can do so by running - -```bash -code ~/.zshrc -``` - -in the Terminal! 😄 - +- List your active account and check your email address you used for GCP is present -
- ℹ️ How to find the absolute path of a file? - You can drag and drop the file in your terminal. -
+ ```bash + gcloud auth list + ``` -**Restart** your terminal and run: +- Set your current project (replace `PROJECT_ID` with the `ID` of your project, e.g. `wagon-bootcamp-123456`) -``` bash -echo $GOOGLE_APPLICATION_CREDENTIALS -``` + ```bash + gcloud config set project PROJECT_ID + ``` -The ouptut should be the following: +- List your active account and current project and check your project is present -```bash -/some/absolute/path/to/your/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json -``` + ```bash + gcloud config list + ``` -Now let's verify that the path to your service account json file is correct: +- Now let's set up Application Default Credentials so your Python code can access GCP: -``` bash -cat $(echo $GOOGLE_APPLICATION_CREDENTIALS) -``` + ```bash + gcloud auth application-default login + ``` -👉 This command should display the content of your service account json file. If it does not, ask for a TA 🙏 + This will open a browser window. Log in with the same Google account you used to create your GCP project. Your credentials will be saved automatically. -Your code and utilities are now able to access the resources of your GCP account. +- Let's verify your Application Default Credentials are working: -Let's proceed with the final steps of configuration... + ```bash + gcloud auth application-default print-access-token + ``` -- List the service accounts associated to your active account and current project -```bash -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) -```bash -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` + You should see a long token string. If you see an error, run `gcloud auth application-default login` again. -
- Troubleshooting +
+ Troubleshooting -- `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` - - Make sure that billing is enabled for your Google Cloud Platform project https://cloud.google.com/billing/docs/how-to/modify-project -
+ - `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` + - Make sure that billing is enabled for your Google Cloud Platform project [https://cloud.google.com/billing/docs/how-to/modify-project](https://cloud.google.com/billing/docs/how-to/modify-project) +
🏁 You are done with the GCP setup! diff --git a/LINUX_keep_current.es.md b/LINUX_keep_current.es.md index 67b418a9..f698a34b 100644 --- a/LINUX_keep_current.es.md +++ b/LINUX_keep_current.es.md @@ -296,18 +296,6 @@ Verifica tu versión de Python con los siguientes comandos: zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 ``` -Ejecuta el comando siguiente para verificar que hayas instalado los paquetes requeridos correctamente: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.sh)" -``` - -Ahora ejecuta el siguiente comando para verificar que puedas cargar estos paquetes: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Chequeo de Jupyter - Ahora verifica que puedas iniciar un servidor de notebook en tu máquina: ```bash @@ -333,6 +321,15 @@ import sys; sys.version Debería mostrar `3.12.9` seguido de algunos detalles adicionales. Si no es así, consulta con un TA. +En otra celda, ejecuta: + +```python +import pandas as pd +pd.__version___ +``` + +Esto podría tomar algunos minutos en ejecutarse. Debería mostrar un número de versión, `2.2.3`. Si no es así, consulta con un TA. + Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. ¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. diff --git a/LINUX_keep_current.md b/LINUX_keep_current.md index 1ee086a1..596e2672 100644 --- a/LINUX_keep_current.md +++ b/LINUX_keep_current.md @@ -283,8 +283,6 @@ sudo service docker stop ## Python setup check -### Python and packages check - Let's reset your terminal: ```bash @@ -296,37 +294,17 @@ 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.12.9 ``` -Run the following command to check if you successfully installed the required packages: -```bash -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: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Jupyter check - Make sure you can run Jupyter: ```bash jupyter notebook ``` -Let's open the jupyter app: - -
- - Regular setup - - Your web browser should open on a `jupyter` window. -
- +Your web browser should open on a `jupyter` window.
- Virtual machine setup + Note if you're running the setup on a virtual machine VSCode detects that a jupyter notebook started in your virtual machine and creates a port forward in order to allow you to open the application in your browser. @@ -344,8 +322,6 @@ Let's open the jupyter app:
-You now have access to the `jupyter` window: - ![jupyter.png](images/jupyter.png) Click on `New` and in the dropdown menu select `Python 3 (ipykernel)`: @@ -357,12 +333,22 @@ A tab should open on a new notebook: ![jupyter_notebook.png](images/jupyter_notebook.png) Make sure that you are running the correct python version in the notebook. Open a cell and run: + ``` python import sys; sys.version ``` It should output `3.12.9` followed by some more details. If not, check with a TA. +In another cell, run: + +```python +import pandas as pd +pd.__version___ +``` + +This might take a few minutes to run. It should output a version number, `2.2.3`. If not, check with a TA. + You can close your web browser then terminate the jupyter server with `CTRL` + `C`. Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. diff --git a/REMOTE_SETUP.md b/REMOTE_SETUP.md index 3baf11de..03ad44be 100644 --- a/REMOTE_SETUP.md +++ b/REMOTE_SETUP.md @@ -641,179 +641,64 @@ gh auth status ## Dotfiles -Hackers love to refine and polish their shell and tools. We'll start with a great default configuration provided by [Le Wagon](http://github.com/lewagon/dotfiles), stored on GitHub. +Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. -### Check your GitHub CLI configuration +### Forking the dotfiles -First, let's do a quick check. Open your terminal and run the following command: - -```bash -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`). - -### Fork and/or clone dotfiles - -There are three options, choose **one**: +To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. +**Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
- - I did not attend the Web Dev or Data Science & AI bootcamp at Le Wagon + If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ - As your configuration is personal, you need your own repository storing it, so you'll need to fork it to your GitHub account. - -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. + You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. -Lets' run this command to fork the repo, and clone it on your laptop: -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo fork lewagon/dotfiles --clone -``` - -
- - -
- - I already attended a Le Wagon coding bootcamp (Web Development or Data Science & AI) but I have a new laptop - - -This means that you already forked the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** - -First, clone your fork on this machine: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo clone $GITHUB_USERNAME/dotfiles -``` - - -Open your terminal and go to your `dotfiles` project: - -```bash -cd ~/code/$GITHUB_USERNAME/dotfiles -``` - -Time to merge the changes from `lewagon/dotfiles` into yours: -1. Commit your current version of your dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Let's bring in the changes from upstream: `git merge upstream/master` - -1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. - -1. Do a `git diff HEAD~1 HEAD` to check what changed. - -1. If nothing seems out of the ordinary, continue - -
- Too many conflicts? - - - Let's just take over the current version from `lewagon/dotfiles`. - - First abort the merge: `git merge --abort`. - - Run `code .` - - In VS Code, open the `zshrc` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Save to disk. - - Still in VS Code, open the `zprofile` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Save to disk. - - Back in the terminal, run a `git diff` and check if this didn't remove any personal configuration setting that you wanted to keep. - -
- -Time to commit your changes and push them. - -```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master -``` + **Open a ticket** with a TA and do one of the following: + - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. + - If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. + - If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup.
+
-
- - I already did the setup of a Le Wagon coding bootcamp (WebDev or Data Science & AI) on the same laptop before - - -This means that you already forked and cloned the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** - - -Open your terminal and go to your `dotfiles` project: +Run the following command: ```bash -cd ~/code/$GITHUB_USERNAME/dotfiles +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME ``` -Time to merge the changes from `lewagon/dotfiles` into yours: -1. Commit your current version of your dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Let's bring in the changes from upstream: `git merge upstream/master` - -1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. +✔️ You should see your Github username printed. -1. Do a `git diff HEAD~1 HEAD` to check what changed. - -1. If nothing seems out of the ordinary, continue - -
- Too many conflicts? - +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). - Let's just take over the current version from `lewagon/dotfiles`. - - First abort the merge: `git merge --abort`. - - Run `code .` - - In VS Code, open the `zshrc` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Save to disk. - - Still in VS Code, open the `zprofile` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Save to disk. - - Back in the terminal, run a `git diff` and check if this didn't remove any personal configuration setting that you wanted to keep. - -
- -Time to commit your changes and push them. +Time to fork the repo and clone it on your computer: ```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master +mkdir -p ~/code/$GITHUB_USERNAME && cd $_ +gh repo fork lewagon/dotfiles --clone ``` -
- +### Installing the dotfiles -### Run the dotfiles installer - -It's time to run the `dotfiles` installer: +Run the `dotfiles` installer with: ```bash 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: +Check the emails registered with your GitHub Account. You'll need to pick one in the next step: ```bash gh api user/emails | jq -r '.[].email' @@ -826,9 +711,10 @@ cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh ``` :point_up: This will **prompt** you for your name (`FirstName LastName`) and your email. -:warning: You **need** to put one of the emails listed above thanks to the previous `gh api ...` command. If you don't do that, Kitt won't be able to track your progress. 💡 Select the `@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. -Please now **quit** all your opened terminal windows. +:warning: You **need** to put one of the emails listed above from the previous `gh api ...` command. If you don't do that, Kitt will not be able to track your progress. + +💡 Select the `...@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. ### zsh default terminal @@ -984,8 +870,6 @@ curl $SOURCE > $LOCATION/custom.css ## Python setup check -### Python and packages check - Let's reset your terminal: ```bash @@ -997,37 +881,17 @@ 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.12.9 ``` -Run the following command to check if you successfully installed the required packages: -```bash -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: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Jupyter check - Make sure you can run Jupyter: ```bash jupyter notebook ``` -Let's open the jupyter app: - -
- - Regular setup - - Your web browser should open on a `jupyter` window. -
- +Your web browser should open on a `jupyter` window.
- Virtual machine setup + Note if you're running the setup on a virtual machine VSCode detects that a jupyter notebook started in your virtual machine and creates a port forward in order to allow you to open the application in your browser. @@ -1045,8 +909,6 @@ Let's open the jupyter app:
-You now have access to the `jupyter` window: - ![jupyter.png](images/jupyter.png) Click on `New` and in the dropdown menu select `Python 3 (ipykernel)`: @@ -1058,21 +920,25 @@ A tab should open on a new notebook: ![jupyter_notebook.png](images/jupyter_notebook.png) Make sure that you are running the correct python version in the notebook. Open a cell and run: + ``` python import sys; sys.version ``` It should output `3.12.9` followed by some more details. If not, check with a TA. -You can close your web browser then terminate the jupyter server with `CTRL` + `C`. - -Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. +In another cell, run: +```python +import pandas as pd +pd.__version___ +``` +This might take a few minutes to run. It should output a version number, `2.2.3`. If not, check with a TA. -## DBeaver +You can close your web browser then terminate the jupyter server with `CTRL` + `C`. -Download and install [DBeaver](https://dbeaver.io/), a free and open source powerful tool to connect to any database, explore the schema and even **run SQL queries**. +Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. ## Docker 🐋 diff --git a/VM.es.md b/VM.es.md index 3d5b3131..aba26e60 100644 --- a/VM.es.md +++ b/VM.es.md @@ -459,182 +459,64 @@ echo 'export GOOGLE_APPLICATION_CREDENTIALS=/path/to/the/SERVICE_ACCOUNT_JSON_FI ## Dotfiles -Los hackers aman mejorar sus shells y sus herramientas. Comenzaremos con una configuración por defecto genial proporcionada por [Le Wagon](http://github.com/lewagon/dotfiles) y almacenada en GitHub. +Mejoremos la experiencia de tu máquina instalando los [dotfiles 🔗](https://github.com/lewagon/dotfiles) preconfigurados de Le Wagon. Son archivos de configuración para tu terminal, zsh, git y VS Code. -### Verifica tu configuración de GitHub CLI +### Hacer un fork de los dotfiles -Primero, hagamos una verificación rápida. Abre tu terminal y ejecuta el comando siguiente: - -```bash -export GITHUB_USERNAME=`gh api user | jq -r '.login'` -echo $GITHUB_USERNAME -``` - -Deberías ver tu usuario GitHub. Si no es así, **no hagas más nada** y pide ayuda. -Parece que hay un problema con el paso anterior (`gh auth`). - - -### Fork y/o clone los archivos de configuración - -Hay tres opciones, escoge **una**: - - -
- - No he hecho el bootcamp de Web Development o Data Science & AI de Le Wagon - - - Tu configuración es personal, así que necesitas tu propio repositorio para almacenarla. Primero tienes que hacer el fork del repositorio en tu cuenta GitHub. - -Hacer un fork significa que crearás un nuevo repositorio en tu cuenta GitHub idéntico al original. Tendrás un nuevo repositorio en tu cuenta GitHub, `your_github_username/dotfiles`. El fork es necesario porque cada uno de ustedes necesitará poner información específica (e.g. tu nombre) en esos archivos. - -Ejecutemos este comando para hacer un **fork** del repositorio `lewagon/dotfiles` y clonarlo: - - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo fork lewagon/dotfiles --clone -``` - -
+Para personalizar esta configuración, tendrás que hacer un **fork** del repositorio en tu propia cuenta de Github. +Al hacer un **fork**, se crea una copia del repositorio en tu cuenta (`your_github_username/dotfiles`), que luego podrás modificar con tu información personal, como tu nombre.
- - Ya hice el bootcamp de Web Development o Data Science & AI de Le Wagon pero tengo una nueva laptop + Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ -Esto significa que ya has hecho el fork del repositorio GitHub lewagon/dotfiles pero tal vez la configuración para el nuevo bootcamp de Data Science & AI no estaba lista en ese momento.Actualicémoslo. **Pide a un TA que te acompañe en los siguientes pasos.** - -Es hora de clonarlo el repositorio en tu laptop: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo clone lewagon/dotfiles -``` - - -Abre tu terminal y ve a tu proyecto `dotfiles`: - -```bash -cd ~/code/$GITHUB_USERNAME$/dotfiles -``` - -Es hora de fusionar los cambios de lewagon/dotfiles en los tuyos: - -1. Commit la versión actual de tus dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Trae los cambios del repositorio upstream: `git merge upstream/master` - -1. Verifica que no estés en estado MERGING. Si lo estás, resuelve los conflictos. - -1. Haz un `git diff HEAD~1 HEAD` para revisar qué cambió. - -1. Si todo parece estar en orden, continúa. - -
- ¿Demasiados conflictos? - - - Vamos a tomar la versión actual de `lewagon/dotfiles`. - - Primero aborta la merge: `git merge --abort`. - - Ejecuta `code .` - - En VS Code, abre el archivo zshrc. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Luego guárdalo en el disco. + Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. - Aún en VS Code, abre el archivo `zprofile`. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Luego guárdalo en el disco. - Regresa a la terminal y ejecuta un `git diff` y verifica que esto no haya eliminado ninguna configuración personal que quisieras conservar. + **Abre un ticket** con un TA y haz una de las siguientes cosas: + - Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. + - Si no te importa perder tus dotfiles existentes (recomendado): + - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. + - Elimina el repositorio local: `rm -rf ~/code//dotifles`. + - Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: + - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. + - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. + - Vuelve a `master`: `git checkout master`. + - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. + - Continúa con la configuración.
-Es hora de guardar tus cambios y subirlos. +
-```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master -``` - -
- - -
- - Ya hice el bootcamp de Web Development o Data Science & AI de Le Wagon en la misma laptop - - -Esto significa que ya has hecho el fork del repositorio GitHub lewagon/dotfiles pero tal vez la configuración para el nuevo bootcamp de Data Science & AI no estaba lista en ese momento. Actualicémoslo. **Pide a un TA que te acompañe en los siguientes pasos.** - - -Abre tu terminal y ve a tu proyecto `dotfiles`: +Ejecuta el siguiente comando: ```bash -cd ~/code/$GITHUB_USERNAME$/dotfiles +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME ``` -Es hora de fusionar los cambios de lewagon/dotfiles en los tuyos: - -1. Commit la versión actual de tus dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Trae los cambios del repositorio upstream: `git merge upstream/master` - -1. Verifica que no estés en estado MERGING. Si lo estás, resuelve los conflictos. - -1. Haz un `git diff HEAD~1 HEAD` para revisar qué cambió. - -1. Si todo parece estar en orden, continúa. - -
- ¿Demasiados conflictos? - - - Vamos a tomar la versión actual de `lewagon/dotfiles`. - - Primero aborta la merge: `git merge --abort`. - - Ejecuta `code .` +✔️ Deberías ver tu nombre de usuario de Github impreso. - En VS Code, abre el archivo zshrc. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Luego guárdalo en el disco. +❌ Si no es así, detente aquí y pide ayuda. Puede haber un problema con el paso anterior (`gh auth`). - Aún en VS Code, abre el archivo `zprofile`. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Luego guárdalo en el disco. - - Regresa a la terminal y ejecuta un `git diff` y verifica que esto no haya eliminado ninguna configuración personal que quisieras conservar. - -
- -Es hora de guardar tus cambios y subirlos. +Es hora de hacer un fork del repositorio y clonarlo en tu ordenador: ```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master +mkdir -p ~/code/$GITHUB_USERNAME && cd $_ +gh repo fork lewagon/dotfiles --clone ``` -
- - -### Ejecuta el instalador de dotfiles +### Instalar los dotfiles -Ejecuta el instalador de `dotfiles`. +Ejecuta el instalador de `dotfiles` con: ```bash cd ~/code/$GITHUB_USERNAME/dotfiles && zsh install.sh ``` -Verifica los emails registrados en tu cuenta GitHub. Deberás seleccionar uno de ellos en el próximo paso: +Comprueba los correos electrónicos registrados en tu cuenta de GitHub. Tendrás que elegir uno en el siguiente paso: ```bash gh api user/emails | jq -r '.[].email' @@ -646,10 +528,11 @@ Ejecuta el instalador de git: cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh ``` -:point_up: Esto te **guiará** con tu nombre (`FirstName LastName`) y con tu email. -:warning: Cuidado, **debes** poner uno de los emails de la lista de arriba que te suministra el comando `gh api ...` usado anteriormente. Si haces eso, Kitt no podrá hacerle seguimiento a tu progreso. Cualquier correo que elijas se mostrará **públicamente** en internet. 💡 Selecciona la dirección `@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en los repositorios públicos a los que puedas contribuir. +:point_up: Se te pedirá (**prompt**) tu nombre (`Nombre Apellido`) y tu correo electrónico. -Ahora **cierra** todas las ventanas de tu terminal que tengas abiertas por favor. +:warning: **Debes** introducir uno de los correos electrónicos indicados arriba mediante el comando anterior `gh api ...`. Si no lo haces, Kitt no podrá realizar el seguimiento de tu progreso. + +💡 Selecciona la dirección `...@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en repositorios públicos a los que contribuyas. @@ -793,18 +676,6 @@ Verifica tu versión de Python con los siguientes comandos: zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 ``` -Ejecuta el comando siguiente para verificar que hayas instalado los paquetes requeridos correctamente: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.sh)" -``` - -Ahora ejecuta el siguiente comando para verificar que puedas cargar estos paquetes: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Chequeo de Jupyter - Ahora verifica que puedas iniciar un servidor de notebook en tu máquina: ```bash @@ -830,15 +701,18 @@ import sys; sys.version Debería mostrar `3.12.9` seguido de algunos detalles adicionales. Si no es así, consulta con un TA. -Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. - -¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. +En otra celda, ejecuta: +```python +import pandas as pd +pd.__version___ +``` +Esto podría tomar algunos minutos en ejecutarse. Debería mostrar un número de versión, `2.2.3`. Si no es así, consulta con un TA. -## DBeaver +Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. -DDescarga e instala [DBeaver](https://dbeaver.io/), una herramienta poderosa, gratuita y de código abierto para conectar con cualquier base de datos, explorar su esquema e incluso **hacer consultas SQL**. +¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. ## Docker 🐋 diff --git a/VM.md b/VM.md index 75901521..448b10cd 100644 --- a/VM.md +++ b/VM.md @@ -663,179 +663,64 @@ The browser has now saved the service account json file 🔑 in your downloads d ## Dotfiles -Hackers love to refine and polish their shell and tools. We'll start with a great default configuration provided by [Le Wagon](http://github.com/lewagon/dotfiles), stored on GitHub. +Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. -### Check your GitHub CLI configuration +### Forking the dotfiles -First, let's do a quick check. Open your terminal and run the following command: - -```bash -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`). - -### Fork and/or clone dotfiles - -There are three options, choose **one**: +To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. +**Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
- - I did not attend the Web Dev or Data Science & AI bootcamp at Le Wagon + If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ - As your configuration is personal, you need your own repository storing it, so you'll need to fork it to your GitHub account. - -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. + You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. -Lets' run this command to fork the repo, and clone it on your laptop: -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo fork lewagon/dotfiles --clone -``` - -
- - -
- - I already attended a Le Wagon coding bootcamp (Web Development or Data Science & AI) but I have a new laptop - - -This means that you already forked the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** - -First, clone your fork on this machine: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo clone $GITHUB_USERNAME/dotfiles -``` - - -Open your terminal and go to your `dotfiles` project: - -```bash -cd ~/code/$GITHUB_USERNAME/dotfiles -``` - -Time to merge the changes from `lewagon/dotfiles` into yours: -1. Commit your current version of your dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Let's bring in the changes from upstream: `git merge upstream/master` - -1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. - -1. Do a `git diff HEAD~1 HEAD` to check what changed. - -1. If nothing seems out of the ordinary, continue - -
- Too many conflicts? - - - Let's just take over the current version from `lewagon/dotfiles`. - - First abort the merge: `git merge --abort`. - - Run `code .` - - In VS Code, open the `zshrc` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Save to disk. - - Still in VS Code, open the `zprofile` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Save to disk. - - Back in the terminal, run a `git diff` and check if this didn't remove any personal configuration setting that you wanted to keep. - -
- -Time to commit your changes and push them. - -```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master -``` + **Open a ticket** with a TA and do one of the following: + - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. + - If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. + - If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup.
+
-
- - I already did the setup of a Le Wagon coding bootcamp (WebDev or Data Science & AI) on the same laptop before - - -This means that you already forked and cloned the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** - - -Open your terminal and go to your `dotfiles` project: +Run the following command: ```bash -cd ~/code/$GITHUB_USERNAME/dotfiles +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME ``` -Time to merge the changes from `lewagon/dotfiles` into yours: -1. Commit your current version of your dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Let's bring in the changes from upstream: `git merge upstream/master` - -1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. +✔️ You should see your Github username printed. -1. Do a `git diff HEAD~1 HEAD` to check what changed. - -1. If nothing seems out of the ordinary, continue - -
- Too many conflicts? - +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). - Let's just take over the current version from `lewagon/dotfiles`. - - First abort the merge: `git merge --abort`. - - Run `code .` - - In VS Code, open the `zshrc` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Save to disk. - - Still in VS Code, open the `zprofile` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Save to disk. - - Back in the terminal, run a `git diff` and check if this didn't remove any personal configuration setting that you wanted to keep. - -
- -Time to commit your changes and push them. +Time to fork the repo and clone it on your computer: ```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master +mkdir -p ~/code/$GITHUB_USERNAME && cd $_ +gh repo fork lewagon/dotfiles --clone ``` -
- +### Installing the dotfiles -### Run the dotfiles installer - -It's time to run the `dotfiles` installer: +Run the `dotfiles` installer with: ```bash 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: +Check the emails registered with your GitHub Account. You'll need to pick one in the next step: ```bash gh api user/emails | jq -r '.[].email' @@ -848,9 +733,10 @@ cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh ``` :point_up: This will **prompt** you for your name (`FirstName LastName`) and your email. -:warning: You **need** to put one of the emails listed above thanks to the previous `gh api ...` command. If you don't do that, Kitt won't be able to track your progress. 💡 Select the `@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. -Please now **quit** all your opened terminal windows. +:warning: You **need** to put one of the emails listed above from the previous `gh api ...` command. If you don't do that, Kitt will not be able to track your progress. + +💡 Select the `...@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. ### zsh default terminal @@ -1006,8 +892,6 @@ curl $SOURCE > $LOCATION/custom.css ## Python setup check -### Python and packages check - Let's reset your terminal: ```bash @@ -1019,37 +903,17 @@ 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.12.9 ``` -Run the following command to check if you successfully installed the required packages: -```bash -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: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Jupyter check - Make sure you can run Jupyter: ```bash jupyter notebook ``` -Let's open the jupyter app: - -
- - Regular setup - - Your web browser should open on a `jupyter` window. -
- +Your web browser should open on a `jupyter` window.
- Virtual machine setup + Note if you're running the setup on a virtual machine VSCode detects that a jupyter notebook started in your virtual machine and creates a port forward in order to allow you to open the application in your browser. @@ -1067,8 +931,6 @@ Let's open the jupyter app:
-You now have access to the `jupyter` window: - ![jupyter.png](images/jupyter.png) Click on `New` and in the dropdown menu select `Python 3 (ipykernel)`: @@ -1080,21 +942,25 @@ A tab should open on a new notebook: ![jupyter_notebook.png](images/jupyter_notebook.png) Make sure that you are running the correct python version in the notebook. Open a cell and run: + ``` python import sys; sys.version ``` It should output `3.12.9` followed by some more details. If not, check with a TA. -You can close your web browser then terminate the jupyter server with `CTRL` + `C`. - -Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. +In another cell, run: +```python +import pandas as pd +pd.__version___ +``` +This might take a few minutes to run. It should output a version number, `2.2.3`. If not, check with a TA. -## DBeaver +You can close your web browser then terminate the jupyter server with `CTRL` + `C`. -Download and install [DBeaver](https://dbeaver.io/), a free and open source powerful tool to connect to any database, explore the schema and even **run SQL queries**. +Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. ## Docker 🐋 diff --git a/WINDOWS.es.md b/WINDOWS.es.md index f03e2a3d..816026e0 100644 --- a/WINDOWS.es.md +++ b/WINDOWS.es.md @@ -731,182 +731,64 @@ sudo apt-get update && sudo apt-get install google-cloud-cli ## Dotfiles -Los hackers aman mejorar sus shells y sus herramientas. Comenzaremos con una configuración por defecto genial proporcionada por [Le Wagon](http://github.com/lewagon/dotfiles) y almacenada en GitHub. +Mejoremos la experiencia de tu máquina instalando los [dotfiles 🔗](https://github.com/lewagon/dotfiles) preconfigurados de Le Wagon. Son archivos de configuración para tu terminal, zsh, git y VS Code. -### Verifica tu configuración de GitHub CLI +### Hacer un fork de los dotfiles -Primero, hagamos una verificación rápida. Abre tu terminal y ejecuta el comando siguiente: - -```bash -export GITHUB_USERNAME=`gh api user | jq -r '.login'` -echo $GITHUB_USERNAME -``` - -Deberías ver tu usuario GitHub. Si no es así, **no hagas más nada** y pide ayuda. -Parece que hay un problema con el paso anterior (`gh auth`). - - -### Fork y/o clone los archivos de configuración - -Hay tres opciones, escoge **una**: +Para personalizar esta configuración, tendrás que hacer un **fork** del repositorio en tu propia cuenta de Github. +Al hacer un **fork**, se crea una copia del repositorio en tu cuenta (`your_github_username/dotfiles`), que luego podrás modificar con tu información personal, como tu nombre.
- - No he hecho el bootcamp de Web Development o Data Science & AI de Le Wagon + Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ - Tu configuración es personal, así que necesitas tu propio repositorio para almacenarla. Primero tienes que hacer el fork del repositorio en tu cuenta GitHub. - -Hacer un fork significa que crearás un nuevo repositorio en tu cuenta GitHub idéntico al original. Tendrás un nuevo repositorio en tu cuenta GitHub, `your_github_username/dotfiles`. El fork es necesario porque cada uno de ustedes necesitará poner información específica (e.g. tu nombre) en esos archivos. + Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. -Ejecutemos este comando para hacer un **fork** del repositorio `lewagon/dotfiles` y clonarlo: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo fork lewagon/dotfiles --clone -``` + **Abre un ticket** con un TA y haz una de las siguientes cosas: + - Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. + - Si no te importa perder tus dotfiles existentes (recomendado): + - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. + - Elimina el repositorio local: `rm -rf ~/code//dotifles`. + - Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: + - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. + - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. + - Vuelve a `master`: `git checkout master`. + - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. + - Continúa con la configuración.
+
-
- - Ya hice el bootcamp de Web Development o Data Science & AI de Le Wagon pero tengo una nueva laptop - - -Esto significa que ya has hecho el fork del repositorio GitHub lewagon/dotfiles pero tal vez la configuración para el nuevo bootcamp de Data Science & AI no estaba lista en ese momento.Actualicémoslo. **Pide a un TA que te acompañe en los siguientes pasos.** - -Es hora de clonarlo el repositorio en tu laptop: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo clone lewagon/dotfiles -``` - - -Abre tu terminal y ve a tu proyecto `dotfiles`: +Ejecuta el siguiente comando: ```bash -cd ~/code/$GITHUB_USERNAME$/dotfiles -``` - -Es hora de fusionar los cambios de lewagon/dotfiles en los tuyos: - -1. Commit la versión actual de tus dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Trae los cambios del repositorio upstream: `git merge upstream/master` - -1. Verifica que no estés en estado MERGING. Si lo estás, resuelve los conflictos. - -1. Haz un `git diff HEAD~1 HEAD` para revisar qué cambió. - -1. Si todo parece estar en orden, continúa. - -
- ¿Demasiados conflictos? - - - Vamos a tomar la versión actual de `lewagon/dotfiles`. - - Primero aborta la merge: `git merge --abort`. - - Ejecuta `code .` - - En VS Code, abre el archivo zshrc. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Luego guárdalo en el disco. - - Aún en VS Code, abre el archivo `zprofile`. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Luego guárdalo en el disco. - - Regresa a la terminal y ejecuta un `git diff` y verifica que esto no haya eliminado ninguna configuración personal que quisieras conservar. - -
- -Es hora de guardar tus cambios y subirlos. - -```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master -``` - -
- - -
- - Ya hice el bootcamp de Web Development o Data Science & AI de Le Wagon en la misma laptop - - -Esto significa que ya has hecho el fork del repositorio GitHub lewagon/dotfiles pero tal vez la configuración para el nuevo bootcamp de Data Science & AI no estaba lista en ese momento. Actualicémoslo. **Pide a un TA que te acompañe en los siguientes pasos.** - - -Abre tu terminal y ve a tu proyecto `dotfiles`: - -```bash -cd ~/code/$GITHUB_USERNAME$/dotfiles +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME ``` -Es hora de fusionar los cambios de lewagon/dotfiles en los tuyos: - -1. Commit la versión actual de tus dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Trae los cambios del repositorio upstream: `git merge upstream/master` +✔️ Deberías ver tu nombre de usuario de Github impreso. -1. Verifica que no estés en estado MERGING. Si lo estás, resuelve los conflictos. - -1. Haz un `git diff HEAD~1 HEAD` para revisar qué cambió. - -1. Si todo parece estar en orden, continúa. - -
- ¿Demasiados conflictos? - - - Vamos a tomar la versión actual de `lewagon/dotfiles`. - - Primero aborta la merge: `git merge --abort`. - - Ejecuta `code .` - - En VS Code, abre el archivo zshrc. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Luego guárdalo en el disco. - - Aún en VS Code, abre el archivo `zprofile`. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Luego guárdalo en el disco. - - Regresa a la terminal y ejecuta un `git diff` y verifica que esto no haya eliminado ninguna configuración personal que quisieras conservar. - -
+❌ Si no es así, detente aquí y pide ayuda. Puede haber un problema con el paso anterior (`gh auth`). -Es hora de guardar tus cambios y subirlos. +Es hora de hacer un fork del repositorio y clonarlo en tu ordenador: ```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master +mkdir -p ~/code/$GITHUB_USERNAME && cd $_ +gh repo fork lewagon/dotfiles --clone ``` -
- - -### Ejecuta el instalador de dotfiles +### Instalar los dotfiles -Ejecuta el instalador de `dotfiles`. +Ejecuta el instalador de `dotfiles` con: ```bash cd ~/code/$GITHUB_USERNAME/dotfiles && zsh install.sh ``` -Verifica los emails registrados en tu cuenta GitHub. Deberás seleccionar uno de ellos en el próximo paso: +Comprueba los correos electrónicos registrados en tu cuenta de GitHub. Tendrás que elegir uno en el siguiente paso: ```bash gh api user/emails | jq -r '.[].email' @@ -918,10 +800,11 @@ Ejecuta el instalador de git: cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh ``` -:point_up: Esto te **guiará** con tu nombre (`FirstName LastName`) y con tu email. -:warning: Cuidado, **debes** poner uno de los emails de la lista de arriba que te suministra el comando `gh api ...` usado anteriormente. Si haces eso, Kitt no podrá hacerle seguimiento a tu progreso. Cualquier correo que elijas se mostrará **públicamente** en internet. 💡 Selecciona la dirección `@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en los repositorios públicos a los que puedas contribuir. +:point_up: Se te pedirá (**prompt**) tu nombre (`Nombre Apellido`) y tu correo electrónico. + +:warning: **Debes** introducir uno de los correos electrónicos indicados arriba mediante el comando anterior `gh api ...`. Si no lo haces, Kitt no podrá realizar el seguimiento de tu progreso. -Ahora **cierra** todas las ventanas de tu terminal que tengas abiertas por favor. +💡 Selecciona la dirección `...@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en repositorios públicos a los que contribuyas. ## Desahilitación de la solicitud de SSH passphrase @@ -1147,18 +1030,6 @@ Verifica tu versión de Python con los siguientes comandos: zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 ``` -Ejecuta el comando siguiente para verificar que hayas instalado los paquetes requeridos correctamente: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.sh)" -``` - -Ahora ejecuta el siguiente comando para verificar que puedas cargar estos paquetes: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Chequeo de Jupyter - Ahora verifica que puedas iniciar un servidor de notebook en tu máquina: ```bash @@ -1184,15 +1055,18 @@ import sys; sys.version Debería mostrar `3.12.9` seguido de algunos detalles adicionales. Si no es así, consulta con un TA. -Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. - -¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. +En otra celda, ejecuta: +```python +import pandas as pd +pd.__version___ +``` +Esto podría tomar algunos minutos en ejecutarse. Debería mostrar un número de versión, `2.2.3`. Si no es así, consulta con un TA. -## DBeaver +Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. -DDescarga e instala [DBeaver](https://dbeaver.io/), una herramienta poderosa, gratuita y de código abierto para conectar con cualquier base de datos, explorar su esquema e incluso **hacer consultas SQL**. +¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. ## Parámetros de Windows @@ -1248,13 +1122,6 @@ Ancla lo siguiente: - Slack -## Visual C++ Redistributable - -Algunos paquetes Python requieren de un compilador para funcionar correctamente, así que vamos a instalar uno: - -[For x64 systems](https://aka.ms/vs/16/release/vc_redist.x64.exe) - - ## Docker 🐋 Docker es una plataforma abierta para desarrollo, entrega y operación de aplicaciones. @@ -1325,60 +1192,68 @@ Intente `docker info` nuevamente. ## Configuración de Google Cloud Platform -[GCP](https://cloud.google.com/) es una solución en la nube que usarás para colocar tus productos basados en Machine Learning en producción. +[Google Cloud](https://cloud.google.com/) es una solución en la nube que utilizarás para desplegar tus productos basados en Machine Learning en producción. -🚨 Si estás en el grupo de estudiantes del **Bootcamp de Medio Tiempo**, ¡IGNORA ESTA SECCIÓN POR AHORA! **GCP** ofrece $300 en créditos durante 3 meses, así que no es buena idea activar tu cuenta GCP demasiado pronto 🙅‍♂️ +🚨 Si eres estudiante del **Part-Time Bootcamp**, ¡OMITE ESTA SECCIÓN POR AHORA! **Google Cloud** ofrece 300 $ de crédito gratuito durante 3 meses. No querrás activar tu cuenta de Google Cloud demasiado pronto 🙅‍♂️ -### Preparación del Proyecto +### Configuración del proyecto - Ve a [Google Cloud](https://console.cloud.google.com/) y crea una cuenta si aún no tienes una -- En la consola de Cloud, en la lista de proyectos, selecciona o crea un proyecto Cloud +- En Cloud Console, en la lista de proyectos, selecciona o crea un proyecto de Cloud + +⚠️ **Importante:** Al crear un proyecto nuevo, verás un campo **Organization**. Déjalo como **"No organization"**. No selecciones ni crees una organización. Elegir una organización aplica restricciones que pueden impedirte utilizar los servicios de Google Cloud durante el bootcamp. ![](images/gcp-create-project.png) -- Asígnale un nombre como `Wagon Bootcamp` por ejemplo -- ❗ Comprueba que el campo _Location_ esté establecido en _No organization_ ❗ -- Verás que se creará un `ID` automáticamente para el proyecto e. g. `wagon-bootcamp-123456` + +- Asígnale un nombre, por ejemplo, `Wagon Bootcamp` +- Observa el `ID` que se crea automáticamente para el proyecto, por ejemplo, `wagon-bootcamp-123456` ![](images/gcp_project.png) +ℹ️ Anota el **Project ID** (por ejemplo, `wagon-bootcamp-123456`), que **no** es lo mismo que el nombre del proyecto que elegiste (por ejemplo, `Wagon Bootcamp`). Necesitarás el ID más adelante al ejecutar comandos en la terminal, pero no te preocupes: siempre puedes encontrarlo en Google Cloud. + ### Idioma de la cuenta -Abre las preferencias en tu cuenta GCP para facilitar el seguimiento de las instrucciones durante el bootcamp: +Para facilitar el seguimiento de las instrucciones durante el bootcamp, abre las preferencias de tu cuenta de Google Cloud: + +[https://myaccount.google.com/language](https://myaccount.google.com/language) -https://myaccount.google.com/language +Si el *idioma preferido* no es: -Si el *idioma de preferencia* no es: - **English** - **United States** -Cámbialo a inglés: -- Haz clic en el logo edición (es una lapicera) +Entonces cambia el idioma a inglés: + +- Haz clic en el icono del lápiz de edición - Selecciona **English** - Selecciona **United States** - Haz clic en **Select** ### Cuenta de facturación -Ahora conecta tu cuenta con tu tarjeta de crédito. Este paso es obligatorio para poder usar los servicios que suministra GCP. No te preocupes, podrás utilizar la mayoría de los servicios de GCP por medio de créditos gratuitos durante el bootcamp. +Ahora vincularás tu cuenta a tu tarjeta de crédito. Este paso es obligatorio; de lo contrario, no podrás utilizar los servicios proporcionados por Google Cloud. No te preocupes: podrás utilizar la mayoría de los servicios de Google Cloud mediante créditos gratuitos durante el bootcamp. + +⚠️ En algunos casos, Google puede hacer un cargo en tu tarjeta (de unos 10 €) para verificar que es válida. Desafortunadamente, no se reembolsará una vez aprobada, pero se añadirá como crédito en Google Cloud que podrás utilizar cuando hayas usado o hayan caducado tus créditos gratuitos. ![](images/gcp-billing.png) - Haz clic en **Billing** - Haz clic en **MANAGE BILLING ACCOUNTS** - Haz clic en **ADD BILLING ACCOUNT** -- Asígnale un nombre a tu cuenta de facturación, e. g. `My Billing Account` -- Haz clic en "I have read..." y acepta los términos de uso +- Ponle un nombre a tu cuenta de facturación, por ejemplo, `My Billing Account` +- Haz clic en "I have read..." y acepta las condiciones del servicio - Haz clic en **CONTINUE** -- Selecciona tu tipo de cuenta: `Individual` -- Agrega tu nombre y dirección +- Selecciona el tipo de cuenta: `Individual` +- Introduce tu nombre y dirección -Verás que tienes créditos gratuitos con un valor de "$300 a utilizar en los próximos 90 días". +Deberías ver que tienes un crédito gratuito de "$300 credits over the next 90days". -- Haz clic en los detalles de la tarjeta -- Agrega la información de tu tarjeta de crédito -- Haz clic en **START MY FREE TRIAL**. Esto significa comenzar mi período de prueba. +- Haz clic en los datos de la tarjeta +- Introduce los datos de tu tarjeta de crédito +- Haz clic en **START MY FREE TRIAL** -Cuando termines, verifica que la cuenta de facturación esté conectada con tu proyecto GCP. +Una vez hecho esto, verifica que tu cuenta de facturación esté vinculada a tu proyecto de Google Cloud. - Selecciona tu proyecto - Ve a **Billing** @@ -1386,257 +1261,123 @@ Cuando termines, verifica que la cuenta de facturación esté conectada con tu p - Selecciona `My Billing Account` - Haz clic en **SET ACCOUNT** -Ahora deberías ver lo siguiente: +Ahora deberías ver: -``` +```bash Free trial status: $300 credit and 91 days remaining - with a full account, you'll get unlimited access to all of Google Cloud Platform. ``` -Esto significa Estado de período de prueba: crédito de $300 y 91 días para usarlo - con la full account, tendrás acceso ilimitado a todo lo que ofrece Google Cloud Platform. -
👉 Si no tienes una tarjeta de crédito 👈 +Si no tienes una tarjeta de crédito, una alternativa es crear una cuenta de **Revolut**. +Revolut es una aplicación financiera que te permite crear una tarjeta de crédito virtual vinculada a tu cuenta de facturación del teléfono móvil. -Si no tienes una tarjeta de crédito, puedes abrir una cuenta en **Revolut**. -Revolut es una aplicación que funciona como un banco y que te permitirá crear una tarjeta de crédito virtual conectada a la dirección de facturación de tu smartphone. +Omite este paso si tienes una tarjeta de crédito y la utilizas para la configuración. -Ignora este paso si ya tienes una tarjeta de crédito. Simplemente úsala para hacer la configuración. +Descarga la aplicación Revolut o visita [revolut](https://www.revolut.com/a-radically-better-account) y sigue los pasos para descargar la aplicación (introduce tu número de teléfono móvil y haz clic en Get Started). -Descarga la app Revolut o ve a [revolut](https://www.revolut.com/a-radically-better-account) y sigue los pasos para descargar la app (introduce tu número de teléfono móvil y haz clic en Get Started). +- Abre la aplicación Revolut +- Introduce tu número de teléfono móvil +- Introduce el código de verificación recibido por SMS +- La aplicación te pedirá tu país, dirección, nombre y apellidos, fecha de nacimiento y dirección de correo electrónico +- La aplicación también te pedirá un selfie y tu profesión +- La aplicación requerirá una foto de tu documento de identidad o pasaporte -- Abre la app Revolut -- Agrega tu número de teléfono móvil -- Agrega el código de verificación que recibiste por SMS -- La app te preguntará por tu país, dirección, primer y segundo nombre, fecha de nacimiento y el email -- La app también te pedirá tu profesión y una selfie -- La app te pedirá una foto de tu documento nacional de identidad o pasaporte +Una vez hecho esto, selecciona el plan estándar (gratuito). No es necesario añadir la tarjeta a Apple Pay, solicitar el envío de una tarjeta física ni añadir dinero. -Cuando termines, selecciona el plan estándar (gratuito). No tienes que agregar la tarjeta a Apple pay, pedir que te envíen una tarjeta a tu domicilio ni tampoco agregar dinero a la cuenta. +Ahora tienes una tarjeta virtual que utilizaremos para configurar Google Cloud. -Ahora tienes una tarjeta virtual que podrás usar para hacer la configuración de GCP. +En la vista principal de la aplicación Revolut -En la vista principal de la app Revolut - Haz clic en Ready to use -- Haz clic en the card +- Haz clic en la tarjeta - Haz clic en Show card details -- Toma nota de la información de la tarjeta de crédito virtual y úsala para completar la configuración de GCP +- Anota los datos de la tarjeta de crédito virtual y utilízalos para continuar con la configuración de Google Cloud
- 👉 Si recibes un email de Google diciendo "Urgent: your billing account XXXXXX-XXXXXX-XXXXXX has been suspended" 👈 - + 👉 Si recibes un correo de Google que dice "Urgent: your billing account XXXXXX-XXXXXX-XXXXXX has been suspended" 👈 -Esto puede pasar justo después de haber creado la cuenta en Revolut. +Esto puede ocurrir especialmente si acabas de configurar una cuenta de Revolut. - Haz clic en PROCEED TO VERIFICATION -- Te pedirán que envíes una foto de tu tarjeta de crédito (solo los últimos 4 dígitos, nada más) -- Si ya has usado **Revolut**, puedes enviar una captura de pantalla de tu tarjeta de crédito virtual (no olvides quitar la fecha de vencimiento de la captura) -- Explica que estás haciendo el bootcamp de Le Wagon, que no tienes una tarjeta de crédito y que acabas de crear una cuenta en Revolut para poder configurar GCP para el bootcamp con una tarjeta de crédito virtual - -Es posible que te validen la cuenta pero también es posible que te pidan más información en los próximos 30 minutos. - -Cuando la cuenta sea validada recibirás un email diciendo lo siguiente: "Your Google Cloud Platform billing account XXXXXX-XXXXXX-XXXXXX has been fully reinstated and is ready to use.". Esto significa que tu cuenta Google Cloud Platform ha sido restablecida - -
- -### Habilitación de servicios de GCP - -- Asegúrate de que la facturación está habilitada para tu proyecto Google Cloud - -ℹ️ Tienes un **crédito de $300** para usar con recursos de Google Cloud. Esto será más que suficiente para el bootcamp. - -- [Habilita las APIs BigQuery y Compute Engine](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (Esto puede tomar varios minutos) - -### Configuración de Cloud sdk - -- Autentica el CLI de `gcloud` con la cuenta que usaste para GCP -```bash -gcloud auth login -``` -- Inicia sesión en tu cuenta Google en la nueva pestaña que se abrió en tu navegador -- Lista la cuenta que tienes activa y verifica que el email que usaste para GCP está ahí -```bash -gcloud auth list -``` -- Define tu proyecto actual (reemplaza `PROJECT_ID` con el `ID` de tu proyecto e.g. `wagon-bootcamp-123456`) -```bash -gcloud config set project PROJECT_ID -``` -- Lista la cuenta que tienes activa y tu proyecto actual y verifica que tu proyecto está ahí -```bash -gcloud config list -``` - -### Crea una llave 🔑 de cuenta de servicio - -Como ya creaste una cuenta `GCP account` y un `project` (identificado por su `PROJECT_ID`), vamos a configurar las acciones (llamadas API calls) que quieres que tu código ejecute. - -
- 🤔 ¿Por qué necesitamos una clave de cuenta de servicio? - - - Creaste una `cuenta GCP` conectada a una tarjeta de crédito. Te facturarán de acuerdo al uso que les des a los recursos de **Google Cloud Platform**. El cargo se hará si utilizas algo después de que el período de prueba gratuito se haya terminado o si te excedes del límite de consumo que te permite dicho período. - - En tu `cuenta GCP` has creado un solo `proyecto GCP` identificado por su `PROJECT_ID`. Los `proyectos GCP` te permiten organizar y monitorear la manera en que consumes los recursos **GCP** de forma más precisa. En este bootcamp solo crearemos un solo proyecto. - - Ahora necesitamos una manera de saber qué recursos nuestro código podrá consumir dentro de un `GCP project`. Nuestro código consume recursos GCP por medio de llamadas API. - - Ya que las llamadas API no son gratuitas, es importante definir cuidadosamente cómo nuestro código las utilizará. Sin embargo, durante el bootcamp no habrá restricciones. Le permitiremos a nuestro código que utilice todas las API **GCP** sin restricciones. +- Se te pedirá que envíes una foto de tu tarjeta de crédito (solo los últimos 4 dígitos, sin ninguna otra información) +- Si utilizaste **Revolut**, puedes enviar una captura de pantalla de tu tarjeta de crédito virtual (no olvides eliminar la fecha de caducidad de la captura) +- Explica que estás asistiendo al bootcamp de Le Wagon, que no tienes una tarjeta de crédito y que acabas de crear una cuenta de Revolut para configurar Google Cloud para el bootcamp mediante una tarjeta de crédito virtual - Así como pueden haber varios proyectos asociados a una cuenta GCP, un proyecto puede estar compuesto de muchos servicios (cualquier paquete de código, sin importar su formato, que necesite utilizar llamadas a la API de GCP para cumplir con su propósito). +Puedes recibir una validación o solicitudes de más información en un plazo de 30 minutos. - GCP exige que los servicios de los proyectos que usen llamadas API se registren en la plataforma y que se configuren sus credenciales por medio del acceso concedido a una `service account`. +Una vez completada la verificación, deberías recibir un correo que indique: "Your Google Cloud Platform billing account XXXXXX-XXXXXX-XXXXXX has been fully reinstated and is ready to use.". - Por ahora solo tendremos que usar un solo servicio y crearemos la `service account` correspondiente.
-Ya que la [service account](https://cloud.google.com/iam/docs/service-accounts) es lo que identifica tu aplicación (y por ende tu cuenta de facturación GCP y, en última instancia, tu tarjeta de crédito), lo mejor es ser cuidadoso en los próximos pasos. - -⚠️ **No compartas la 🔑 del archivo json de tu cuenta de servicio** ⚠️ No la guardes en tu escritorio ni en tu código base de git (incluso si tu repositorio git es privado). Que no se te olvide en un lugar como la máquina de café y, por supuesto, no la envíes en un tweet. - -- Ve a la [página de las cuentas de servicio](https://console.cloud.google.com/apis/credentials/serviceaccountkey) -- Selecciona tu proyecto en la lista de proyectos recientes si te piden que -- Crees una cuenta de servicio: - - Haz clic en **CREATE SERVICE ACCOUNT** que significa crear une cuenta de servicio: - - Define un `Service account name` para esa cuenta. Esto significa Nombre de cuenta de servicio - - Haz clic en **CREATE AND CONTINUE** que significa crear y continuar - - Haz clic en **Select a role** que significa selecciona un rol. Escoge `Quick access/Basic` luego **Owner**. Esto otorga acceso total a todos los recursos - - Haz clic en **CONTINUE** - - Haz clic en **DONE** -- Descarga la 🔑 del archivo json de la cuenta de servicio: - - Haz clic en la cuenta de servicio recién creada - - Haz clic en **KEYS** - - Haz clic en **ADD KEY** y luego en **Create new key** - - Selecciona **JSON** y haz clic en **CREATE** - -![](images/gcp_create_key.png) - -El navegador acaba de guardar la 🔑 del archivo json de la cuenta de servicio en tu carpeta de descargas (el nombre se le asigna según el nombre de la cuenta de servicio. Es algo como `le-wagon-data-123456789abc.json`) - - -Ahora vamos a mover el archivo json de la cuenta de servicio desde tu disco en Windows al disco en Ubuntu. Esto le permitirá a las herramientas de desarrollo en Ubuntu acceder a los recursos de tu cuenta GCP. - -Primero crea un directorio para almacenar el archivo. - -👉 Abre una terminal en Ubuntu y ejecuta los siguiente comandos - -🚨 reemplaza el `GITHUB_NICKNAME` por tu nickname de **GitHub** - -``` bash -cd ~/code/GITHUB_NICKNAME -ls -la -``` - -Si el comando no muestra el directorio `dotfiles`, pídele ayuda a un TA 🙏 - -Si no es el caso, puedes proceder con la configuración: - -``` bash -mkdir gcp -``` - -![](images/wsl-gcp-dir.png) - -Ahora moveremos el archivo json de la cuenta de servicio al directorio `gcp` que acabamos de crear. - -Abre un **Buscador de Archivos** de Windows (Win + E) y localiza el directorio `gcp` en el sistema de archivo de Ubuntu. - -Puedes optar por las siguientes alternativas: -- Usar el enlace de **Acceso rápido** que creamos hace un rato -- O escribir la localización del directorio `gcp` manualmente en la barra de direcciones del sistema de archivos de Ubuntu: - -``` -\\wsl$\Ubuntu\home\UBUNTU_USERNAME\code\GITHUB_NICKNAME -``` - - -🚨 Si optas por la segunda opción: -- reemplaza el `UBUNTU_USERNAME` por el usuario que escogiste durante la configuración de **Ubuntu** -- reemplaza el `GITHUB_NICKNAME` por tu nickname de **GitHub** - -![](images/wsl-gcp-key.png) +### Activación de los servicios de Google Cloud -Cuando hayas localizado el directorio `gcp` en el **Buscador de Archivos** de Windows, ponle el archivo json de la cuenta de servicio que descargaste. +- Asegúrate de que la facturación esté activada para tu proyecto de Google Cloud -Ahora deberías poder ver el archivo desde el sistema de archivos de Ubuntu. +ℹ️ Tienes un **crédito de 300 $** para utilizar en recursos de Google Cloud, más que suficiente para el bootcamp. -👉 Abre una terminal en Ubuntu y verifica que el archivo json de la cuenta de servicio ha sido movido - -``` bash -cd gcp -ls -la -``` +- [Activa las API de BigQuery y Compute Engine](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (Este paso puede tardar unos minutos) -![](images/wsl-gcp-dir-2.png) +¡Eso es todo para la configuración en el navegador! La configuración de la terminal aparece más adelante en esta guía. -Si no ves el archivo json de la cuenta de servicio en el directorio `gcp`, pídele ayuda a un TA 🙏 -Ahora almacenaremos la ruta al archivo json de la cuenta de servicio en una variable de entorno. +### Configurar Cloud SDK -🚨 Haz las siguientes sustituciones en este comando: -- El `UBUNTU_USERNAME` por el usuario que escogiste durante la configuración de **Ubuntu** -- El `GITHUB_NICKNAME` por tu nickname de **GitHub** -- El `SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json` por el nombre del archivo json de tu cuenta de servicio. +- Autentica la CLI de `gcloud` con la cuenta de Google que utilizaste para GCP -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/home/UBUNTU_USERNAME/code/GITHUB_NICKNAME/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.aliases -``` + + ```bash + gcloud auth login --no-launch-browser + ``` + +- Inicia sesión en tu cuenta de Google en la nueva pestaña que se abrió en tu navegador web +- Muestra tu cuenta activa y comprueba que aparece la dirección de correo electrónico que utilizaste para GCP -
- ℹ️ ¿Cómo encontrar la ruta absoluta de un archivo? - Puedes arrastrar el archivo a tu terminal. -
+ ```bash + gcloud auth list + ``` -**Reinicia** tu terminal y ejecuta lo siguiente: +- Establece tu proyecto actual (reemplaza `PROJECT_ID` por el `ID` de tu proyecto, por ejemplo, `wagon-bootcamp-123456`) -``` bash -echo $GOOGLE_APPLICATION_CREDENTIALS -``` + ```bash + gcloud config set project PROJECT_ID + ``` -Deberías obtener la siguiente información: +- Muestra tu cuenta activa y tu proyecto actual, y comprueba que aparece tu proyecto -```bash -/some/absolute/path/to/your/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json -``` + ```bash + gcloud config list + ``` -Ahora verifica si la ruta al archivo json de tu cuenta de servicio es el correcto: +- Ahora vamos a configurar las credenciales predeterminadas de la aplicación para que tu código Python pueda acceder a GCP: -``` bash -cat $(echo $GOOGLE_APPLICATION_CREDENTIALS) -``` + ```bash + gcloud auth application-default login + ``` -👉 Este comando debería mostrar el contenido del archivo json de tu cuenta de servicio. Si no es el caso, pídele ayuda a un TA 🙏 + Esto abrirá una ventana del navegador. Inicia sesión con la misma cuenta de Google que utilizaste para crear tu proyecto de GCP. Tus credenciales se guardarán automáticamente. -Tu código y utilidades ahora pueden acceder a los recursos de tu cuenta GCP. +- Verifiquemos que tus credenciales predeterminadas de la aplicación funcionan: -Continuemos con los últimos pasos de la configuración... + ```bash + gcloud auth application-default print-access-token + ``` -- Lista las cuentas de servicio asociadas a tu cuenta activa y a tu proyecto actual -```bash -gcloud iam service-accounts list -``` -- Recupera el email de la cuenta de servicio e. g. `SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com` -- Lista los roles de la cuenta de servicio desde la cli (reemplaza el PROJECT_ID y el SERVICE_ACCOUNT_EMAIL) -```bash -gcloud projects get-iam-policy PROJECT_ID \ ---flatten="bindings[].members" \ ---format='table(bindings.role)' \ ---filter="bindings.members:SERVICE_ACCOUNT_EMAIL" -``` -- Ahora deberías ver que tu cuenta de servicio tiene el rol de `roles/owner` + Deberías ver una cadena de token larga. Si aparece un error, vuelve a ejecutar `gcloud auth application-default login`. -
- Resolución de problemas +
+ Solución de problemas -- `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.`. Esto significa que el proyecto a facturar está asociado a una cuenta de facturación que no está habilitada - - Asegúrate de habilitar la facturación para tu proyecto https://cloud.google.com/billing/docs/how-to/modify-project -
+ - `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` + - Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud Platform [https://cloud.google.com/billing/docs/how-to/modify-project](https://cloud.google.com/billing/docs/how-to/modify-project) +
-🏁 Listo. ¡Has terminado la configuración de GCP! +🏁 ¡Has terminado la configuración de GCP! ## Kitt diff --git a/WINDOWS.md b/WINDOWS.md index 448be73f..946d0862 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -747,179 +747,64 @@ sudo apt-get update && sudo apt-get install google-cloud-cli ## Dotfiles -Hackers love to refine and polish their shell and tools. We'll start with a great default configuration provided by [Le Wagon](http://github.com/lewagon/dotfiles), stored on GitHub. +Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. -### Check your GitHub CLI configuration +### Forking the dotfiles -First, let's do a quick check. Open your terminal and run the following command: - -```bash -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`). - -### Fork and/or clone dotfiles - -There are three options, choose **one**: +To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. +**Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
- - I did not attend the Web Dev or Data Science & AI bootcamp at Le Wagon + If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ - As your configuration is personal, you need your own repository storing it, so you'll need to fork it to your GitHub account. + You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. -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. -Lets' run this command to fork the repo, and clone it on your laptop: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo fork lewagon/dotfiles --clone -``` + **Open a ticket** with a TA and do one of the following: + - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. + - If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. + - If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup.
+
-
- - I already attended a Le Wagon coding bootcamp (Web Development or Data Science & AI) but I have a new laptop - - -This means that you already forked the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** - -First, clone your fork on this machine: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo clone $GITHUB_USERNAME/dotfiles -``` - - -Open your terminal and go to your `dotfiles` project: - -```bash -cd ~/code/$GITHUB_USERNAME/dotfiles -``` - -Time to merge the changes from `lewagon/dotfiles` into yours: -1. Commit your current version of your dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Let's bring in the changes from upstream: `git merge upstream/master` - -1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. - -1. Do a `git diff HEAD~1 HEAD` to check what changed. - -1. If nothing seems out of the ordinary, continue - -
- Too many conflicts? - - - Let's just take over the current version from `lewagon/dotfiles`. - - First abort the merge: `git merge --abort`. - - Run `code .` - - In VS Code, open the `zshrc` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Save to disk. - - Still in VS Code, open the `zprofile` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Save to disk. - - Back in the terminal, run a `git diff` and check if this didn't remove any personal configuration setting that you wanted to keep. - -
- -Time to commit your changes and push them. - -```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master -``` - -
- - -
- - I already did the setup of a Le Wagon coding bootcamp (WebDev or Data Science & AI) on the same laptop before - - -This means that you already forked and cloned the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** - - -Open your terminal and go to your `dotfiles` project: +Run the following command: ```bash -cd ~/code/$GITHUB_USERNAME/dotfiles +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME ``` -Time to merge the changes from `lewagon/dotfiles` into yours: -1. Commit your current version of your dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Let's bring in the changes from upstream: `git merge upstream/master` - -1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. - -1. Do a `git diff HEAD~1 HEAD` to check what changed. +✔️ You should see your Github username printed. -1. If nothing seems out of the ordinary, continue +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). -
- Too many conflicts? - - - Let's just take over the current version from `lewagon/dotfiles`. - - First abort the merge: `git merge --abort`. - - Run `code .` - - In VS Code, open the `zshrc` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Save to disk. - - Still in VS Code, open the `zprofile` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Save to disk. - - Back in the terminal, run a `git diff` and check if this didn't remove any personal configuration setting that you wanted to keep. - -
- -Time to commit your changes and push them. +Time to fork the repo and clone it on your computer: ```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master +mkdir -p ~/code/$GITHUB_USERNAME && cd $_ +gh repo fork lewagon/dotfiles --clone ``` -
- +### Installing the dotfiles -### Run the dotfiles installer - -It's time to run the `dotfiles` installer: +Run the `dotfiles` installer with: ```bash 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: +Check the emails registered with your GitHub Account. You'll need to pick one in the next step: ```bash gh api user/emails | jq -r '.[].email' @@ -932,9 +817,10 @@ cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh ``` :point_up: This will **prompt** you for your name (`FirstName LastName`) and your email. -:warning: You **need** to put one of the emails listed above thanks to the previous `gh api ...` command. If you don't do that, Kitt won't be able to track your progress. 💡 Select the `@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. -Please now **quit** all your opened terminal windows. +:warning: You **need** to put one of the emails listed above from the previous `gh api ...` command. If you don't do that, Kitt will not be able to track your progress. + +💡 Select the `...@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. ## Disable SSH passphrase prompt @@ -1161,8 +1047,6 @@ To stop the Jupyter server in the terminal, press `Ctrl` + `C`, enter y, then pr ## Python setup check -### Python and packages check - Let's reset your terminal: ```bash @@ -1174,37 +1058,17 @@ 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.12.9 ``` -Run the following command to check if you successfully installed the required packages: -```bash -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: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Jupyter check - Make sure you can run Jupyter: ```bash jupyter notebook ``` -Let's open the jupyter app: +Your web browser should open on a `jupyter` window.
- Regular setup - - Your web browser should open on a `jupyter` window. -
- - -
- - Virtual machine setup + Note if you're running the setup on a virtual machine VSCode detects that a jupyter notebook started in your virtual machine and creates a port forward in order to allow you to open the application in your browser. @@ -1222,8 +1086,6 @@ Let's open the jupyter app:
-You now have access to the `jupyter` window: - ![jupyter.png](images/jupyter.png) Click on `New` and in the dropdown menu select `Python 3 (ipykernel)`: @@ -1235,21 +1097,25 @@ A tab should open on a new notebook: ![jupyter_notebook.png](images/jupyter_notebook.png) Make sure that you are running the correct python version in the notebook. Open a cell and run: + ``` python import sys; sys.version ``` It should output `3.12.9` followed by some more details. If not, check with a TA. -You can close your web browser then terminate the jupyter server with `CTRL` + `C`. - -Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. +In another cell, run: +```python +import pandas as pd +pd.__version___ +``` +This might take a few minutes to run. It should output a version number, `2.2.3`. If not, check with a TA. -## DBeaver +You can close your web browser then terminate the jupyter server with `CTRL` + `C`. -Download and install [DBeaver](https://dbeaver.io/), a free and open source powerful tool to connect to any database, explore the schema and even **run SQL queries**. +Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. ## Windows settings @@ -1305,13 +1171,6 @@ You must pin: - Slack -## Visual C++ Redistributable - -Some Python packages require a compiler to function properly. Let's install one: - -[For x64 systems](https://aka.ms/vs/16/release/vc_redist.x64.exe) - - ## Docker 🐋 Docker is an open platform for developing, shipping, and running applications. @@ -1381,34 +1240,39 @@ Try `docker run hello-world` again. ## Google Cloud Platform setup -[GCP](https://cloud.google.com/) is a cloud solution that you are going to use in order to deploy your Machine Learning-based products to production. +[Google Cloud](https://cloud.google.com/) 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 🙅‍♂️ +🚨 If you are a student of the **Part-Time Bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ ### Project setup - Go to [Google Cloud](https://console.cloud.google.com/) 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 +⚠️ **Important:** When creating a new project, you will see an **Organization** field. Leave this set to **"No organization"**. Do not select or create an organization. Choosing an organization applies restrictions that can prevent you from using Google Cloud services during the bootcamp. + ![](images/gcp-create-project.png) - Give it a name such as `Wagon Bootcamp` for example -- ❗ Check that the field _Location_ is set to _No organization_ ❗ - Notice the `ID` automatically created for the project, e.g. `wagon-bootcamp-123456` ![](images/gcp_project.png) +ℹ️ Note the **Project ID** (e.g. `wagon-bootcamp-123456`) this is **not** the same as the project name you chose (e.g. `Wagon Bootcamp`). You will need the ID later when running terminal commands, but don't worry, you can always find it in Google Cloud. + ### Account language -In order to facilitate the following of the instructions during the bootcamp, open your GCP account preferences: +In order to facilitate the following of the instructions during the bootcamp, open your Google Cloud account preferences: -https://myaccount.google.com/language +[https://myaccount.google.com/language](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** @@ -1416,7 +1280,9 @@ Then switch the language to english: ### 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. +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 Google Cloud. Do not worry, you will be able to consume most Google Cloud services through free credits throughout the bootcamp. + +⚠️ In some cases, Google may charge your card (around €10) to verify that it is valid. This will unfortunately not be refunded once you are approved, but will be added as credit in Google Cloud that you can use once your free credits have been used or expired. ![](images/gcp-billing.png) @@ -1435,7 +1301,7 @@ You should see that you have a free credit of "$300 credits over the next 90days - 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. +Once this is done, verify that your billing account is linked to your Google Cloud project. - Select your project - Go to **Billing** @@ -1445,14 +1311,13 @@ Once this is done, verify that your billing account is linked to your GCP projec You should now see: -``` +```bash 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. @@ -1469,26 +1334,26 @@ Download the Revolut app, or go to [revolut](https://www.revolut.com/a-radically 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. +You now have a virtual card which we will use for the Google Cloud setup. + +In the main view of the Revolut app -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 +- Note down the references of the virtual credit card and use them in order to proceed with the Google Cloud 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 +- 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 Google Cloud for the bootcamp using a virtual credit card You may receive a validation or requests for more information within 30 minutes. @@ -1496,7 +1361,7 @@ Once the verification goes through, you should receive an email stating that "Yo
-### Enabling GCP services +### Enabling Google Cloud services - Make sure that billing is enabled for your Google Cloud project @@ -1504,238 +1369,61 @@ Once the verification goes through, you should receive an email stating that "Yo - [Enable the BigQuery and Compute Engine APIs](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (This step may take a few minutes) -### Configure Cloud sdk +That's it for the browser setup! Terminal setup comes later in this guide. -- Authenticate the `gcloud` CLI with the google account you used for GCP +### Configure Cloud sdk -```bash -gcloud auth login --no-launch-browser -``` +- Authenticate the `gcloud` CLI with the google account you used for GCP + + ```bash + gcloud auth login --no-launch-browser + ``` + - 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 -```bash -gcloud auth list -``` -- Set your current project (replace `PROJECT_ID` with the `ID` of your project, e.g. `wagon-bootcamp-123456`) -```bash -gcloud config set project PROJECT_ID -``` -- List your active account and current project and check your project is present -```bash -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. - -
- 🤔 Why do we need a service account key ? - - - You have created a `GCP account` linked to your credit card. Your account will be billed according to your usage of the resources of the **Google Cloud Platform**. The billing will occur if you consume anything once the free trial is over, or if you exceed the amount of spending allowed during the free trial. - - In your `GCP account`, you have created a single `GCP project`, identified by its `PROJECT_ID`. The `GCP projects` allow you to organize and monitor more precisely how you consume the **GCP** resources. For the purpose of the bootcamp, we are only going to create a single project. - - Now, we need a way to tell which resources within a `GCP project` our code will be allowed to consume. Our code consumes GCP resources through API calls. - - Since API calls are not free, it is important to define with caution how our code will be allowed to use them. During the bootcamp this will not be an issue and we are going to allow our code to use all the API of **GCP** without any restrictions. - - In the same way that 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 projects using API calls are registered on the platform and their credentials configured through the access granted to a `service account`. - - For the moment we will only need to use a single service and will create the corresponding `service account`. -
- -Since the [service account](https://cloud.google.com/iam/docs/service-accounts) is what identifies your application (and therefore your GCP billing account and ultimately your credit card), you are going to want to be cautious with the next steps. - -⚠️ **Do not share you service account json file 🔑** ⚠️ Do not store it on your desktop, do not store it in your git codebase (even if your git repository is private), do not let it by the coffee machine, do not send it as a tweet. - -#### Go to the Service Accounts page - -Navigate to the GCP service accounts page at [this link](https://console.cloud.google.com/apis/credentials/serviceaccountkey). - -- Select your project in the list of recent projects if asked to. -- If not asked, make sure the right project is selected in the Project selecter list at the top of the page. - -An alternate way to navigate to the Service Accounts page is from the following: - -01 Go to Service Accounts - -#### Create a service account - -- Click on **CREATE SERVICE ACCOUNT**. - - 02 Create Service Account - -- Give your service account a name, an id and a description, and click on **CREATE AND CONTINUE**. - - 03 Name the service account - -- Click on **Select a role** and choose `Basic` then **`Owner`**, which gives the service account full access to all resources of your GCP project. - - 04 Add BigQuery Job User - -- Click on the blue **DONE** button at the bottom of this window. We don't need to worry about the section *Grant your users access to this service account*. - - 04 Done - - -#### Create a json key 🔑 for this service account - -- On the service accounts page, click on the email address of the newly created service account. - - 05 Select the service account - -- Click on the **KEYS** tab at the top of the page. - - 06 Go to Keys - - -- Click on **ADD KEY** then **Create new key**. - - 07 Add Key - - -- Select **JSON** and click on **CREATE**. - - 08 Choose JSON and Create - -- The browser has now saved the service account json file 🔑 in your downloads directory (it is named according to your service account name, something like `le-wagon-data-123456789abc.json`). - - -We will now move the service account json file from your Windows disk to the Ubuntu disk. This will allow the development tools in Ubuntu to access to the resources of your GCP account. - -First, let's create a directory in which we will store the file. - -👉 Open an Ubuntu terminal and run the following commands - -🚨 replace `GITHUB_NICKNAME` by your **GitHub** nickname - -``` bash -cd ~/code/GITHUB_NICKNAME -ls -la -``` - -If the command does not show the `dotfiles` directory, ask for a TA 🙏 - -Otherwise, you can proceed with the setup: - -``` bash -mkdir gcp -``` - -![](images/wsl-gcp-dir.png) - -We will now move the service account json file to the `gcp` directory we just created. - -Open a Windows **File Explorer** (Win + E) and locate the `gcp` directory in the Ubuntu file system. - -You can either: -- Use the **Quick access** link that we created earlier -- manually type the location of the `gcp` directory in the Ubuntu file system in the address bar: - -``` -\\wsl$\Ubuntu\home\UBUNTU_USERNAME\code\GITHUB_NICKNAME -``` - - -🚨 if you opt for the second option: -- replace `UBUNTU_USERNAME` by the username that you choose during the **Ubuntu** setup -- replace `GITHUB_NICKNAME` by your **GitHub** nickname - -![](images/wsl-gcp-key.png) - -Once you have located the `gcp` directory in the Windows **File Explorer**, move the service account json file that you downloaded inside of it. - -The file should now be visible from Ubuntu file system. - -👉 Open an Ubuntu terminal and verify that the service account json file has been moved - -``` bash -cd gcp -ls -la -``` - -![](images/wsl-gcp-dir-2.png) - -If you do not see the service account json file listed in the `gcp` directory, ask for a TA 🙏 - -We will now store the path to your service account json file in an environment variable. - -🚨 in the following command, replace: -- `UBUNTU_USERNAME` by the username that you choose during the **Ubuntu** setup -- `GITHUB_NICKNAME` by your **GitHub** nickname -- `SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json` by the name of your service account json file - -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/home/UBUNTU_USERNAME/code/GITHUB_NICKNAME/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.zshrc -``` -**Note:** every time you run this command, it will add this line to your zshrc file regardless of whether you already have it. If you made a mistake and need to fix it, preferably open the file and edit the line! - -You can do so by running - -```bash -code ~/.zshrc -``` - -in the Terminal! 😄 - +- List your active account and check your email address you used for GCP is present -
- ℹ️ How to find the absolute path of a file? - You can drag and drop the file in your terminal. -
+ ```bash + gcloud auth list + ``` -**Restart** your terminal and run: +- Set your current project (replace `PROJECT_ID` with the `ID` of your project, e.g. `wagon-bootcamp-123456`) -``` bash -echo $GOOGLE_APPLICATION_CREDENTIALS -``` + ```bash + gcloud config set project PROJECT_ID + ``` -The ouptut should be the following: +- List your active account and current project and check your project is present -```bash -/some/absolute/path/to/your/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json -``` + ```bash + gcloud config list + ``` -Now let's verify that the path to your service account json file is correct: +- Now let's set up Application Default Credentials so your Python code can access GCP: -``` bash -cat $(echo $GOOGLE_APPLICATION_CREDENTIALS) -``` + ```bash + gcloud auth application-default login + ``` -👉 This command should display the content of your service account json file. If it does not, ask for a TA 🙏 + This will open a browser window. Log in with the same Google account you used to create your GCP project. Your credentials will be saved automatically. -Your code and utilities are now able to access the resources of your GCP account. +- Let's verify your Application Default Credentials are working: -Let's proceed with the final steps of configuration... + ```bash + gcloud auth application-default print-access-token + ``` -- List the service accounts associated to your active account and current project -```bash -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) -```bash -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` + You should see a long token string. If you see an error, run `gcloud auth application-default login` again. -
- Troubleshooting +
+ Troubleshooting -- `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` - - Make sure that billing is enabled for your Google Cloud Platform project https://cloud.google.com/billing/docs/how-to/modify-project -
+ - `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` + - Make sure that billing is enabled for your Google Cloud Platform project [https://cloud.google.com/billing/docs/how-to/modify-project](https://cloud.google.com/billing/docs/how-to/modify-project) +
🏁 You are done with the GCP setup! diff --git a/WINDOWS_keep_current.es.md b/WINDOWS_keep_current.es.md index 9106eb0f..ef44e067 100644 --- a/WINDOWS_keep_current.es.md +++ b/WINDOWS_keep_current.es.md @@ -288,18 +288,6 @@ Verifica tu versión de Python con los siguientes comandos: zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 ``` -Ejecuta el comando siguiente para verificar que hayas instalado los paquetes requeridos correctamente: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.sh)" -``` - -Ahora ejecuta el siguiente comando para verificar que puedas cargar estos paquetes: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Chequeo de Jupyter - Ahora verifica que puedas iniciar un servidor de notebook en tu máquina: ```bash @@ -325,6 +313,15 @@ import sys; sys.version Debería mostrar `3.12.9` seguido de algunos detalles adicionales. Si no es así, consulta con un TA. +En otra celda, ejecuta: + +```python +import pandas as pd +pd.__version___ +``` + +Esto podría tomar algunos minutos en ejecutarse. Debería mostrar un número de versión, `2.2.3`. Si no es así, consulta con un TA. + Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. ¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. diff --git a/WINDOWS_keep_current.md b/WINDOWS_keep_current.md index f12ea962..b106db97 100644 --- a/WINDOWS_keep_current.md +++ b/WINDOWS_keep_current.md @@ -275,8 +275,6 @@ Stop the Docker Desktop app ## Python setup check -### Python and packages check - Let's reset your terminal: ```bash @@ -288,37 +286,17 @@ 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.12.9 ``` -Run the following command to check if you successfully installed the required packages: -```bash -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: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Jupyter check - Make sure you can run Jupyter: ```bash jupyter notebook ``` -Let's open the jupyter app: - -
- - Regular setup - - Your web browser should open on a `jupyter` window. -
- +Your web browser should open on a `jupyter` window.
- Virtual machine setup + Note if you're running the setup on a virtual machine VSCode detects that a jupyter notebook started in your virtual machine and creates a port forward in order to allow you to open the application in your browser. @@ -336,8 +314,6 @@ Let's open the jupyter app:
-You now have access to the `jupyter` window: - ![jupyter.png](images/jupyter.png) Click on `New` and in the dropdown menu select `Python 3 (ipykernel)`: @@ -349,12 +325,22 @@ A tab should open on a new notebook: ![jupyter_notebook.png](images/jupyter_notebook.png) Make sure that you are running the correct python version in the notebook. Open a cell and run: + ``` python import sys; sys.version ``` It should output `3.12.9` followed by some more details. If not, check with a TA. +In another cell, run: + +```python +import pandas as pd +pd.__version___ +``` + +This might take a few minutes to run. It should output a version number, `2.2.3`. If not, check with a TA. + You can close your web browser then terminate the jupyter server with `CTRL` + `C`. Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. diff --git a/macOS.es.md b/macOS.es.md index f8c6a27f..e6f4b1fd 100644 --- a/macOS.es.md +++ b/macOS.es.md @@ -18,40 +18,13 @@ Por favor **léelas cuidadosamente y ejecuta todos los comandos en el siguiente :point_right: **[Habilita la Autenticación de Dos Factores (2FA)](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-text-messages)**. GitHub te enviará mensajes de texto con un código cuando intentes iniciar sesión. Esto es importante para la seguridad y también pronto será necesario para contribuir código en GitHub. -## Chips Apple Silicon +## Comprueba tu procesador -Si compraste tu computadora después de finales del 2020, es probable que tenga un nuevo chip Apple Silicon en lugar de un procesador Intel: descubrámoslo. +Como se explica en los requisitos de nuestros portátiles, esta configuración solo es compatible con Apple silicon y ya no admite Macs con procesadores Intel. -Abre una nueva ventana de la tarminal desde Aplicaciones > Utilidades o búscala con [Spotlight](https://support.apple.com/es-es/HT204014): +Si compraste tu Mac después de finales de 2020, lo más probable es que tenga un chip Apple silicon en lugar de un procesador Intel. -![Abrir Terminal en macOS](images/macos_open_terminal.png) - -Copia y pega el siguiente comando en la terminal y presiona `Enter` para ejecutarlo. - -``` bash -/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/setup/master/utils/macos_list_processor_type.sh)" -``` - -☝️ El resultado del comando debería indicar si tu computadora usa un chip Apple Silicon. - -Si tu computadora usa **Apple Silicon**, expande el siguiente párrafo y ejecútalo. En caso contrario, ignóralo. - -
- 👉  Setup para Apple Silicon 👈 - -Quieres asegurarte que no estás usando Rosetta, que es una forma de usar tu Terminal como si tuvieras una computadora con Intel. - -Abre la app Finder (o búscala con [Spotlight](https://support.apple.com/es-es/HT204014)). - -Ve a Aplicaciones > Utilidades. - -Ubica la app Terminal (selecciónala). - -Presiona `Cmd` + `I` en la app Terminal, luego verifica que la caja "Abrir usando Rosetta" esté **desmarcada**. -En caso de que no veas esta caja, simplemente continúa. -
- -🚨 Ten esto en mente. Deberás recordarlo más adelante en este setup si tu computadora usa un chip Apple Silicon o Intel. +Si no estás seguro, haz clic en el icono de Apple situado en la esquina superior izquierda de la pantalla y selecciona *"Acerca de este Mac"*. Si el campo *"Chip"* comienza por *"Apple"*, puedes continuar. Si comienza por *"Intel"*, tu Mac no es compatible. ## Cómo cerrar aplicaciones en una Mac correctamente @@ -95,61 +68,35 @@ Cuando termines eso, puedes intentar hacer la instalación nuevamente. ## Homebrew -### 1. Instálalo: -Si usas Mac tienes que instalar [Homebrew](http://brew.sh/) el cual es un sistema de gestión de paquetes. -Será necesario cuando tengamos que instalar algún programa. -Para instalarlo, abre tu Terminal y ejecuta lo siguiente: - -```bash -/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" -``` - -Te pedirá tu confirmación (presiona `Enter`) y tu **contraseña de usuario macOS** (la que usas para [iniciar sesión](https://support.apple.com/en-gb/HT202860) cuando reinicias tu Macbook). -:warning: Cuando escribas tu contraseña en la Terminal, **no** la verás (sólo verás algo como `*****`). ¡Esto es **normal**! Simplemente escribe tu contraseña y confirma presionando `Enter`. - -
- 🛠 Si aparece un Error: Not a valid ref: refs/remotes/origin/master +[Homebrew](http://brew.sh/) es un gestionador de paquetes: es un programa que se usa para instalar otros programas desde la línea de comando. ¡Vamos a instalarlo! -El error completo es el siguiente: +Abre la terminal y ejecuta lo siguiente: -``` bash -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. +```bash +/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ``` -Ejecuta los siguientes comandos para resolverlo: - -``` bash -rm -fr $(brew --repo homebrew/core) # because you can't `brew untap homebrew/core` -brew tap homebrew/core -``` +Te pedirá que confirmes (presionando `Enter`) y también te pedirá la **contraseña de tu cuenta de usuario macOS** (la que usas para [iniciar sesión](https://support.apple.com/en-gb/HT202860) cuando reinicias tu Macbook). -
+:warning: Cuando escribas tu contraseña no verás nada en la pantalla. **Esto es normal**. Es una herramienta de seguridad para ocultar tanto el contenido de tu contraseña como su longitud. Simplemente escribe tu contraseña y presiona `Enter` al terminar. -Si ya tienes Homebrew, el sistema te lo dirá. No hay problema, así que puedes continuar. +Si ya tienes Homebrew instalado, el sistema te lo dirá y puedes continuar. -### 2. Asegúrate de tener la versión más reciente: +Una vez que Homebrew haya terminado de instalarse, ejecuta estos dos comandos para agregarlo a tu `PATH`: ```bash -brew update +echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile +eval "$(/opt/homebrew/bin/brew shellenv)" ``` -
- 🛠 Si aparece un error /usr/local must be writable - -Simplemente ejecuta lo siguiente: +Asegúrate de tener la última versión: -``` bash -sudo chown -R $USER:admin /usr/local +```bash brew update ``` -
- -### 3. Luego instala algunos programas útiles: - -Ejecuta lo siguiente en la terminal (puedes copiar / pegar todas las líneas juntas una sola vez). +Luego, instala algunos programas útiles (puedes copiar y pegar todas las líneas de código al mismo tiempo): ```bash brew upgrade git || brew install git @@ -324,182 +271,64 @@ gh auth status ## Dotfiles -Los hackers aman mejorar sus shells y sus herramientas. Comenzaremos con una configuración por defecto genial proporcionada por [Le Wagon](http://github.com/lewagon/dotfiles) y almacenada en GitHub. - -### Verifica tu configuración de GitHub CLI - -Primero, hagamos una verificación rápida. Abre tu terminal y ejecuta el comando siguiente: - -```bash -export GITHUB_USERNAME=`gh api user | jq -r '.login'` -echo $GITHUB_USERNAME -``` - -Deberías ver tu usuario GitHub. Si no es así, **no hagas más nada** y pide ayuda. -Parece que hay un problema con el paso anterior (`gh auth`). - - -### Fork y/o clone los archivos de configuración - -Hay tres opciones, escoge **una**: +Mejoremos la experiencia de tu máquina instalando los [dotfiles 🔗](https://github.com/lewagon/dotfiles) preconfigurados de Le Wagon. Son archivos de configuración para tu terminal, zsh, git y VS Code. +### Hacer un fork de los dotfiles -
- - No he hecho el bootcamp de Web Development o Data Science & AI de Le Wagon - - - Tu configuración es personal, así que necesitas tu propio repositorio para almacenarla. Primero tienes que hacer el fork del repositorio en tu cuenta GitHub. - -Hacer un fork significa que crearás un nuevo repositorio en tu cuenta GitHub idéntico al original. Tendrás un nuevo repositorio en tu cuenta GitHub, `your_github_username/dotfiles`. El fork es necesario porque cada uno de ustedes necesitará poner información específica (e.g. tu nombre) en esos archivos. - -Ejecutemos este comando para hacer un **fork** del repositorio `lewagon/dotfiles` y clonarlo: - - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo fork lewagon/dotfiles --clone -``` - -
+Para personalizar esta configuración, tendrás que hacer un **fork** del repositorio en tu propia cuenta de Github. +Al hacer un **fork**, se crea una copia del repositorio en tu cuenta (`your_github_username/dotfiles`), que luego podrás modificar con tu información personal, como tu nombre.
- - Ya hice el bootcamp de Web Development o Data Science & AI de Le Wagon pero tengo una nueva laptop + Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ -Esto significa que ya has hecho el fork del repositorio GitHub lewagon/dotfiles pero tal vez la configuración para el nuevo bootcamp de Data Science & AI no estaba lista en ese momento.Actualicémoslo. **Pide a un TA que te acompañe en los siguientes pasos.** - -Es hora de clonarlo el repositorio en tu laptop: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo clone lewagon/dotfiles -``` - - -Abre tu terminal y ve a tu proyecto `dotfiles`: - -```bash -cd ~/code/$GITHUB_USERNAME$/dotfiles -``` - -Es hora de fusionar los cambios de lewagon/dotfiles en los tuyos: + Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. -1. Commit la versión actual de tus dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` -1. Trae los cambios del repositorio upstream: `git merge upstream/master` - -1. Verifica que no estés en estado MERGING. Si lo estás, resuelve los conflictos. - -1. Haz un `git diff HEAD~1 HEAD` para revisar qué cambió. - -1. Si todo parece estar en orden, continúa. - -
- ¿Demasiados conflictos? - - - Vamos a tomar la versión actual de `lewagon/dotfiles`. - - Primero aborta la merge: `git merge --abort`. - - Ejecuta `code .` - - En VS Code, abre el archivo zshrc. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Luego guárdalo en el disco. - - Aún en VS Code, abre el archivo `zprofile`. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Luego guárdalo en el disco. - - Regresa a la terminal y ejecuta un `git diff` y verifica que esto no haya eliminado ninguna configuración personal que quisieras conservar. - -
- -Es hora de guardar tus cambios y subirlos. - -```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master -``` + **Abre un ticket** con un TA y haz una de las siguientes cosas: + - Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. + - Si no te importa perder tus dotfiles existentes (recomendado): + - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. + - Elimina el repositorio local: `rm -rf ~/code//dotifles`. + - Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: + - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. + - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. + - Vuelve a `master`: `git checkout master`. + - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. + - Continúa con la configuración.
+
-
- - Ya hice el bootcamp de Web Development o Data Science & AI de Le Wagon en la misma laptop - - -Esto significa que ya has hecho el fork del repositorio GitHub lewagon/dotfiles pero tal vez la configuración para el nuevo bootcamp de Data Science & AI no estaba lista en ese momento. Actualicémoslo. **Pide a un TA que te acompañe en los siguientes pasos.** - - -Abre tu terminal y ve a tu proyecto `dotfiles`: +Ejecuta el siguiente comando: ```bash -cd ~/code/$GITHUB_USERNAME$/dotfiles +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME ``` -Es hora de fusionar los cambios de lewagon/dotfiles en los tuyos: - -1. Commit la versión actual de tus dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Trae los cambios del repositorio upstream: `git merge upstream/master` - -1. Verifica que no estés en estado MERGING. Si lo estás, resuelve los conflictos. - -1. Haz un `git diff HEAD~1 HEAD` para revisar qué cambió. - -1. Si todo parece estar en orden, continúa. - -
- ¿Demasiados conflictos? - - - Vamos a tomar la versión actual de `lewagon/dotfiles`. - - Primero aborta la merge: `git merge --abort`. - - Ejecuta `code .` - - En VS Code, abre el archivo zshrc. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Luego guárdalo en el disco. +✔️ Deberías ver tu nombre de usuario de Github impreso. - Aún en VS Code, abre el archivo `zprofile`. Reemplaza su contenido con la [versión más reciente](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Luego guárdalo en el disco. +❌ Si no es así, detente aquí y pide ayuda. Puede haber un problema con el paso anterior (`gh auth`). - Regresa a la terminal y ejecuta un `git diff` y verifica que esto no haya eliminado ninguna configuración personal que quisieras conservar. - -
- -Es hora de guardar tus cambios y subirlos. +Es hora de hacer un fork del repositorio y clonarlo en tu ordenador: ```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master +mkdir -p ~/code/$GITHUB_USERNAME && cd $_ +gh repo fork lewagon/dotfiles --clone ``` -
- - -### Ejecuta el instalador de dotfiles +### Instalar los dotfiles -Ejecuta el instalador de `dotfiles`. +Ejecuta el instalador de `dotfiles` con: ```bash cd ~/code/$GITHUB_USERNAME/dotfiles && zsh install.sh ``` -Verifica los emails registrados en tu cuenta GitHub. Deberás seleccionar uno de ellos en el próximo paso: +Comprueba los correos electrónicos registrados en tu cuenta de GitHub. Tendrás que elegir uno en el siguiente paso: ```bash gh api user/emails | jq -r '.[].email' @@ -511,10 +340,11 @@ Ejecuta el instalador de git: cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh ``` -:point_up: Esto te **guiará** con tu nombre (`FirstName LastName`) y con tu email. -:warning: Cuidado, **debes** poner uno de los emails de la lista de arriba que te suministra el comando `gh api ...` usado anteriormente. Si haces eso, Kitt no podrá hacerle seguimiento a tu progreso. Cualquier correo que elijas se mostrará **públicamente** en internet. 💡 Selecciona la dirección `@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en los repositorios públicos a los que puedas contribuir. +:point_up: Se te pedirá (**prompt**) tu nombre (`Nombre Apellido`) y tu correo electrónico. + +:warning: **Debes** introducir uno de los correos electrónicos indicados arriba mediante el comando anterior `gh api ...`. Si no lo haces, Kitt no podrá realizar el seguimiento de tu progreso. -Ahora **cierra** todas las ventanas de tu terminal que tengas abiertas por favor. +💡 Selecciona la dirección `...@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en repositorios públicos a los que contribuyas. ## Instalando Python (con [`pyenv`](https://github.com/pyenv/pyenv)) @@ -735,18 +565,6 @@ Verifica tu versión de Python con los siguientes comandos: zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 ``` -Ejecuta el comando siguiente para verificar que hayas instalado los paquetes requeridos correctamente: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.sh)" -``` - -Ahora ejecuta el siguiente comando para verificar que puedas cargar estos paquetes: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Chequeo de Jupyter - Ahora verifica que puedas iniciar un servidor de notebook en tu máquina: ```bash @@ -772,15 +590,18 @@ import sys; sys.version Debería mostrar `3.12.9` seguido de algunos detalles adicionales. Si no es así, consulta con un TA. -Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. - -¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. +En otra celda, ejecuta: +```python +import pandas as pd +pd.__version___ +``` +Esto podría tomar algunos minutos en ejecutarse. Debería mostrar un número de versión, `2.2.3`. Si no es así, consulta con un TA. -## DBeaver +Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. -DDescarga e instala [DBeaver](https://dbeaver.io/), una herramienta poderosa, gratuita y de código abierto para conectar con cualquier base de datos, explorar su esquema e incluso **hacer consultas SQL**. +¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. ## Docker 🐋 @@ -839,60 +660,68 @@ Si eso no funciona, contacta a un TA. ## Configuración de Google Cloud Platform -[GCP](https://cloud.google.com/) es una solución en la nube que usarás para colocar tus productos basados en Machine Learning en producción. +[Google Cloud](https://cloud.google.com/) es una solución en la nube que utilizarás para desplegar tus productos basados en Machine Learning en producción. -🚨 Si estás en el grupo de estudiantes del **Bootcamp de Medio Tiempo**, ¡IGNORA ESTA SECCIÓN POR AHORA! **GCP** ofrece $300 en créditos durante 3 meses, así que no es buena idea activar tu cuenta GCP demasiado pronto 🙅‍♂️ +🚨 Si eres estudiante del **Part-Time Bootcamp**, ¡OMITE ESTA SECCIÓN POR AHORA! **Google Cloud** ofrece 300 $ de crédito gratuito durante 3 meses. No querrás activar tu cuenta de Google Cloud demasiado pronto 🙅‍♂️ -### Preparación del Proyecto +### Configuración del proyecto - Ve a [Google Cloud](https://console.cloud.google.com/) y crea una cuenta si aún no tienes una -- En la consola de Cloud, en la lista de proyectos, selecciona o crea un proyecto Cloud +- En Cloud Console, en la lista de proyectos, selecciona o crea un proyecto de Cloud + +⚠️ **Importante:** Al crear un proyecto nuevo, verás un campo **Organization**. Déjalo como **"No organization"**. No selecciones ni crees una organización. Elegir una organización aplica restricciones que pueden impedirte utilizar los servicios de Google Cloud durante el bootcamp. ![](images/gcp-create-project.png) -- Asígnale un nombre como `Wagon Bootcamp` por ejemplo -- ❗ Comprueba que el campo _Location_ esté establecido en _No organization_ ❗ -- Verás que se creará un `ID` automáticamente para el proyecto e. g. `wagon-bootcamp-123456` + +- Asígnale un nombre, por ejemplo, `Wagon Bootcamp` +- Observa el `ID` que se crea automáticamente para el proyecto, por ejemplo, `wagon-bootcamp-123456` ![](images/gcp_project.png) +ℹ️ Anota el **Project ID** (por ejemplo, `wagon-bootcamp-123456`), que **no** es lo mismo que el nombre del proyecto que elegiste (por ejemplo, `Wagon Bootcamp`). Necesitarás el ID más adelante al ejecutar comandos en la terminal, pero no te preocupes: siempre puedes encontrarlo en Google Cloud. + ### Idioma de la cuenta -Abre las preferencias en tu cuenta GCP para facilitar el seguimiento de las instrucciones durante el bootcamp: +Para facilitar el seguimiento de las instrucciones durante el bootcamp, abre las preferencias de tu cuenta de Google Cloud: + +[https://myaccount.google.com/language](https://myaccount.google.com/language) -https://myaccount.google.com/language +Si el *idioma preferido* no es: -Si el *idioma de preferencia* no es: - **English** - **United States** -Cámbialo a inglés: -- Haz clic en el logo edición (es una lapicera) +Entonces cambia el idioma a inglés: + +- Haz clic en el icono del lápiz de edición - Selecciona **English** - Selecciona **United States** - Haz clic en **Select** ### Cuenta de facturación -Ahora conecta tu cuenta con tu tarjeta de crédito. Este paso es obligatorio para poder usar los servicios que suministra GCP. No te preocupes, podrás utilizar la mayoría de los servicios de GCP por medio de créditos gratuitos durante el bootcamp. +Ahora vincularás tu cuenta a tu tarjeta de crédito. Este paso es obligatorio; de lo contrario, no podrás utilizar los servicios proporcionados por Google Cloud. No te preocupes: podrás utilizar la mayoría de los servicios de Google Cloud mediante créditos gratuitos durante el bootcamp. + +⚠️ En algunos casos, Google puede hacer un cargo en tu tarjeta (de unos 10 €) para verificar que es válida. Desafortunadamente, no se reembolsará una vez aprobada, pero se añadirá como crédito en Google Cloud que podrás utilizar cuando hayas usado o hayan caducado tus créditos gratuitos. ![](images/gcp-billing.png) - Haz clic en **Billing** - Haz clic en **MANAGE BILLING ACCOUNTS** - Haz clic en **ADD BILLING ACCOUNT** -- Asígnale un nombre a tu cuenta de facturación, e. g. `My Billing Account` -- Haz clic en "I have read..." y acepta los términos de uso +- Ponle un nombre a tu cuenta de facturación, por ejemplo, `My Billing Account` +- Haz clic en "I have read..." y acepta las condiciones del servicio - Haz clic en **CONTINUE** -- Selecciona tu tipo de cuenta: `Individual` -- Agrega tu nombre y dirección +- Selecciona el tipo de cuenta: `Individual` +- Introduce tu nombre y dirección -Verás que tienes créditos gratuitos con un valor de "$300 a utilizar en los próximos 90 días". +Deberías ver que tienes un crédito gratuito de "$300 credits over the next 90days". -- Haz clic en los detalles de la tarjeta -- Agrega la información de tu tarjeta de crédito -- Haz clic en **START MY FREE TRIAL**. Esto significa comenzar mi período de prueba. +- Haz clic en los datos de la tarjeta +- Introduce los datos de tu tarjeta de crédito +- Haz clic en **START MY FREE TRIAL** -Cuando termines, verifica que la cuenta de facturación esté conectada con tu proyecto GCP. +Una vez hecho esto, verifica que tu cuenta de facturación esté vinculada a tu proyecto de Google Cloud. - Selecciona tu proyecto - Ve a **Billing** @@ -900,210 +729,123 @@ Cuando termines, verifica que la cuenta de facturación esté conectada con tu p - Selecciona `My Billing Account` - Haz clic en **SET ACCOUNT** -Ahora deberías ver lo siguiente: +Ahora deberías ver: -``` +```bash Free trial status: $300 credit and 91 days remaining - with a full account, you'll get unlimited access to all of Google Cloud Platform. ``` -Esto significa Estado de período de prueba: crédito de $300 y 91 días para usarlo - con la full account, tendrás acceso ilimitado a todo lo que ofrece Google Cloud Platform. -
👉 Si no tienes una tarjeta de crédito 👈 +Si no tienes una tarjeta de crédito, una alternativa es crear una cuenta de **Revolut**. +Revolut es una aplicación financiera que te permite crear una tarjeta de crédito virtual vinculada a tu cuenta de facturación del teléfono móvil. -Si no tienes una tarjeta de crédito, puedes abrir una cuenta en **Revolut**. -Revolut es una aplicación que funciona como un banco y que te permitirá crear una tarjeta de crédito virtual conectada a la dirección de facturación de tu smartphone. +Omite este paso si tienes una tarjeta de crédito y la utilizas para la configuración. -Ignora este paso si ya tienes una tarjeta de crédito. Simplemente úsala para hacer la configuración. +Descarga la aplicación Revolut o visita [revolut](https://www.revolut.com/a-radically-better-account) y sigue los pasos para descargar la aplicación (introduce tu número de teléfono móvil y haz clic en Get Started). -Descarga la app Revolut o ve a [revolut](https://www.revolut.com/a-radically-better-account) y sigue los pasos para descargar la app (introduce tu número de teléfono móvil y haz clic en Get Started). +- Abre la aplicación Revolut +- Introduce tu número de teléfono móvil +- Introduce el código de verificación recibido por SMS +- La aplicación te pedirá tu país, dirección, nombre y apellidos, fecha de nacimiento y dirección de correo electrónico +- La aplicación también te pedirá un selfie y tu profesión +- La aplicación requerirá una foto de tu documento de identidad o pasaporte -- Abre la app Revolut -- Agrega tu número de teléfono móvil -- Agrega el código de verificación que recibiste por SMS -- La app te preguntará por tu país, dirección, primer y segundo nombre, fecha de nacimiento y el email -- La app también te pedirá tu profesión y una selfie -- La app te pedirá una foto de tu documento nacional de identidad o pasaporte +Una vez hecho esto, selecciona el plan estándar (gratuito). No es necesario añadir la tarjeta a Apple Pay, solicitar el envío de una tarjeta física ni añadir dinero. -Cuando termines, selecciona el plan estándar (gratuito). No tienes que agregar la tarjeta a Apple pay, pedir que te envíen una tarjeta a tu domicilio ni tampoco agregar dinero a la cuenta. +Ahora tienes una tarjeta virtual que utilizaremos para configurar Google Cloud. -Ahora tienes una tarjeta virtual que podrás usar para hacer la configuración de GCP. +En la vista principal de la aplicación Revolut -En la vista principal de la app Revolut - Haz clic en Ready to use -- Haz clic en the card +- Haz clic en la tarjeta - Haz clic en Show card details -- Toma nota de la información de la tarjeta de crédito virtual y úsala para completar la configuración de GCP +- Anota los datos de la tarjeta de crédito virtual y utilízalos para continuar con la configuración de Google Cloud
- 👉 Si recibes un email de Google diciendo "Urgent: your billing account XXXXXX-XXXXXX-XXXXXX has been suspended" 👈 - + 👉 Si recibes un correo de Google que dice "Urgent: your billing account XXXXXX-XXXXXX-XXXXXX has been suspended" 👈 -Esto puede pasar justo después de haber creado la cuenta en Revolut. +Esto puede ocurrir especialmente si acabas de configurar una cuenta de Revolut. - Haz clic en PROCEED TO VERIFICATION -- Te pedirán que envíes una foto de tu tarjeta de crédito (solo los últimos 4 dígitos, nada más) -- Si ya has usado **Revolut**, puedes enviar una captura de pantalla de tu tarjeta de crédito virtual (no olvides quitar la fecha de vencimiento de la captura) -- Explica que estás haciendo el bootcamp de Le Wagon, que no tienes una tarjeta de crédito y que acabas de crear una cuenta en Revolut para poder configurar GCP para el bootcamp con una tarjeta de crédito virtual +- Se te pedirá que envíes una foto de tu tarjeta de crédito (solo los últimos 4 dígitos, sin ninguna otra información) +- Si utilizaste **Revolut**, puedes enviar una captura de pantalla de tu tarjeta de crédito virtual (no olvides eliminar la fecha de caducidad de la captura) +- Explica que estás asistiendo al bootcamp de Le Wagon, que no tienes una tarjeta de crédito y que acabas de crear una cuenta de Revolut para configurar Google Cloud para el bootcamp mediante una tarjeta de crédito virtual -Es posible que te validen la cuenta pero también es posible que te pidan más información en los próximos 30 minutos. +Puedes recibir una validación o solicitudes de más información en un plazo de 30 minutos. -Cuando la cuenta sea validada recibirás un email diciendo lo siguiente: "Your Google Cloud Platform billing account XXXXXX-XXXXXX-XXXXXX has been fully reinstated and is ready to use.". Esto significa que tu cuenta Google Cloud Platform ha sido restablecida +Una vez completada la verificación, deberías recibir un correo que indique: "Your Google Cloud Platform billing account XXXXXX-XXXXXX-XXXXXX has been fully reinstated and is ready to use.".
-### Habilitación de servicios de GCP +### Activación de los servicios de Google Cloud -- Asegúrate de que la facturación está habilitada para tu proyecto Google Cloud +- Asegúrate de que la facturación esté activada para tu proyecto de Google Cloud -ℹ️ Tienes un **crédito de $300** para usar con recursos de Google Cloud. Esto será más que suficiente para el bootcamp. +ℹ️ Tienes un **crédito de 300 $** para utilizar en recursos de Google Cloud, más que suficiente para el bootcamp. -- [Habilita las APIs BigQuery y Compute Engine](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (Esto puede tomar varios minutos) +- [Activa las API de BigQuery y Compute Engine](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (Este paso puede tardar unos minutos) -### Configuración de Cloud sdk +¡Eso es todo para la configuración en el navegador! La configuración de la terminal aparece más adelante en esta guía. -- Autentica el CLI de `gcloud` con la cuenta que usaste para GCP -```bash -gcloud auth login -``` -- Inicia sesión en tu cuenta Google en la nueva pestaña que se abrió en tu navegador -- Lista la cuenta que tienes activa y verifica que el email que usaste para GCP está ahí -```bash -gcloud auth list -``` -- Define tu proyecto actual (reemplaza `PROJECT_ID` con el `ID` de tu proyecto e.g. `wagon-bootcamp-123456`) -```bash -gcloud config set project PROJECT_ID -``` -- Lista la cuenta que tienes activa y tu proyecto actual y verifica que tu proyecto está ahí -```bash -gcloud config list -``` - -### Crea una llave 🔑 de cuenta de servicio - -Como ya creaste una cuenta `GCP account` y un `project` (identificado por su `PROJECT_ID`), vamos a configurar las acciones (llamadas API calls) que quieres que tu código ejecute. - -
- 🤔 ¿Por qué necesitamos una clave de cuenta de servicio? - - - Creaste una `cuenta GCP` conectada a una tarjeta de crédito. Te facturarán de acuerdo al uso que les des a los recursos de **Google Cloud Platform**. El cargo se hará si utilizas algo después de que el período de prueba gratuito se haya terminado o si te excedes del límite de consumo que te permite dicho período. - - En tu `cuenta GCP` has creado un solo `proyecto GCP` identificado por su `PROJECT_ID`. Los `proyectos GCP` te permiten organizar y monitorear la manera en que consumes los recursos **GCP** de forma más precisa. En este bootcamp solo crearemos un solo proyecto. - - Ahora necesitamos una manera de saber qué recursos nuestro código podrá consumir dentro de un `GCP project`. Nuestro código consume recursos GCP por medio de llamadas API. - Ya que las llamadas API no son gratuitas, es importante definir cuidadosamente cómo nuestro código las utilizará. Sin embargo, durante el bootcamp no habrá restricciones. Le permitiremos a nuestro código que utilice todas las API **GCP** sin restricciones. +### Configurar Cloud SDK - Así como pueden haber varios proyectos asociados a una cuenta GCP, un proyecto puede estar compuesto de muchos servicios (cualquier paquete de código, sin importar su formato, que necesite utilizar llamadas a la API de GCP para cumplir con su propósito). +- Autentica la CLI de `gcloud` con la cuenta de Google que utilizaste para GCP - GCP exige que los servicios de los proyectos que usen llamadas API se registren en la plataforma y que se configuren sus credenciales por medio del acceso concedido a una `service account`. + + ```bash + gcloud auth login + ``` + - Por ahora solo tendremos que usar un solo servicio y crearemos la `service account` correspondiente. -
- -Ya que la [service account](https://cloud.google.com/iam/docs/service-accounts) es lo que identifica tu aplicación (y por ende tu cuenta de facturación GCP y, en última instancia, tu tarjeta de crédito), lo mejor es ser cuidadoso en los próximos pasos. - -⚠️ **No compartas la 🔑 del archivo json de tu cuenta de servicio** ⚠️ No la guardes en tu escritorio ni en tu código base de git (incluso si tu repositorio git es privado). Que no se te olvide en un lugar como la máquina de café y, por supuesto, no la envíes en un tweet. +- Inicia sesión en tu cuenta de Google en la nueva pestaña que se abrió en tu navegador web -- Ve a la [página de las cuentas de servicio](https://console.cloud.google.com/apis/credentials/serviceaccountkey) -- Selecciona tu proyecto en la lista de proyectos recientes si te piden que -- Crees una cuenta de servicio: - - Haz clic en **CREATE SERVICE ACCOUNT** que significa crear une cuenta de servicio: - - Define un `Service account name` para esa cuenta. Esto significa Nombre de cuenta de servicio - - Haz clic en **CREATE AND CONTINUE** que significa crear y continuar - - Haz clic en **Select a role** que significa selecciona un rol. Escoge `Quick access/Basic` luego **Owner**. Esto otorga acceso total a todos los recursos - - Haz clic en **CONTINUE** - - Haz clic en **DONE** -- Descarga la 🔑 del archivo json de la cuenta de servicio: - - Haz clic en la cuenta de servicio recién creada - - Haz clic en **KEYS** - - Haz clic en **ADD KEY** y luego en **Create new key** - - Selecciona **JSON** y haz clic en **CREATE** +- Muestra tu cuenta activa y comprueba que aparece la dirección de correo electrónico que utilizaste para GCP -![](images/gcp_create_key.png) + ```bash + gcloud auth list + ``` -El navegador acaba de guardar la 🔑 del archivo json de la cuenta de servicio en tu carpeta de descargas (el nombre se le asigna según el nombre de la cuenta de servicio. Es algo como `le-wagon-data-123456789abc.json`) +- Establece tu proyecto actual (reemplaza `PROJECT_ID` por el `ID` de tu proyecto, por ejemplo, `wagon-bootcamp-123456`) + ```bash + gcloud config set project PROJECT_ID + ``` -- Guarda el archivo json de la cuenta de servicio en un lugar que recuerdes. Por ejemplo: - -``` bash -/Users/MACOS_USERNAME/code/GITHUB_NICKNAME/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json -``` +- Muestra tu cuenta activa y tu proyecto actual, y comprueba que aparece tu proyecto -- Guarda la **ruta absoluta** al archivo `JSON` como una variable de entorno: + ```bash + gcloud config list + ``` -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/path/to/the/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.zshrc -``` -**Nota:** cada vez que ejecutes este comando, agregará esta línea a tu archivo zshrc sin importar si la línea ya existe en el archivo. Si cometiste un error y necesitas arreglarlo, es preferible que abras el archivo y edites la línea! +- Ahora vamos a configurar las credenciales predeterminadas de la aplicación para que tu código Python pueda acceder a GCP: -Puedes hacerlo ejecutando + ```bash + gcloud auth application-default login + ``` -```bash -code ~/.zshrc -``` + Esto abrirá una ventana del navegador. Inicia sesión con la misma cuenta de Google que utilizaste para crear tu proyecto de GCP. Tus credenciales se guardarán automáticamente. -en la Terminal! 😄 +- Verifiquemos que tus credenciales predeterminadas de la aplicación funcionan: + ```bash + gcloud auth application-default print-access-token + ``` + Deberías ver una cadena de token larga. Si aparece un error, vuelve a ejecutar `gcloud auth application-default login`. -
- ℹ️ ¿Cómo encontrar la ruta absoluta de un archivo? - Puedes arrastrar el archivo a tu terminal. -
+
+ Solución de problemas -**Reinicia** tu terminal y ejecuta lo siguiente: - -``` bash -echo $GOOGLE_APPLICATION_CREDENTIALS -``` - -Deberías obtener la siguiente información: - -```bash -/some/absolute/path/to/your/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json -``` - -Ahora verifica si la ruta al archivo json de tu cuenta de servicio es el correcto: - -``` bash -cat $(echo $GOOGLE_APPLICATION_CREDENTIALS) -``` - -👉 Este comando debería mostrar el contenido del archivo json de tu cuenta de servicio. Si no es el caso, pídele ayuda a un TA 🙏 - -Tu código y utilidades ahora pueden acceder a los recursos de tu cuenta GCP. - -Continuemos con los últimos pasos de la configuración... - -- Lista las cuentas de servicio asociadas a tu cuenta activa y a tu proyecto actual -```bash -gcloud iam service-accounts list -``` -- Recupera el email de la cuenta de servicio e. g. `SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com` -- Lista los roles de la cuenta de servicio desde la cli (reemplaza el PROJECT_ID y el SERVICE_ACCOUNT_EMAIL) -```bash -gcloud projects get-iam-policy PROJECT_ID \ ---flatten="bindings[].members" \ ---format='table(bindings.role)' \ ---filter="bindings.members:SERVICE_ACCOUNT_EMAIL" -``` -- Ahora deberías ver que tu cuenta de servicio tiene el rol de `roles/owner` - -
- Resolución de problemas - -- `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.`. Esto significa que el proyecto a facturar está asociado a una cuenta de facturación que no está habilitada - - Asegúrate de habilitar la facturación para tu proyecto https://cloud.google.com/billing/docs/how-to/modify-project -
+ - `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` + - Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud Platform [https://cloud.google.com/billing/docs/how-to/modify-project](https://cloud.google.com/billing/docs/how-to/modify-project) +
-🏁 Listo. ¡Has terminado la configuración de GCP! +🏁 ¡Has terminado la configuración de GCP! ## Kitt diff --git a/macOS.md b/macOS.md index fe7cc9f3..efbc8447 100644 --- a/macOS.md +++ b/macOS.md @@ -19,40 +19,13 @@ Have you signed up to GitHub? If not, [do it right away](https://github.com/join :point_right: **[Enable Two-Factor Authentication (2FA)](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-text-messages)**. GitHub will send you text messages with a code when you try to log in. This is important for security and also will soon be required in order to contribute code on GitHub. -## Apple Silicon Chips +## Check your processor -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. +As explained in our laptop requirements, this setup supports only Apple silicon and no longer supports Macs with Intel processors. -Open a new terminal window from Applications > Utilities or search for it with [Spotlight](https://support.apple.com/en-gb/HT204014): +If you bought your Mac after late 2020, it most likely has an Apple silicon chip rather than an Intel processor. -![Open Terminal on macOS](images/macos_open_terminal.png) - -Copy-paste the following command in the terminal and hit `Enter` to execute. - -``` bash -/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 👈 - -You want to make sure that you are **not using** Rosetta, which is a way to use your Terminal as if you had an Intel computer. - -Open the Finder app (or search for it with [Spotlight](https://support.apple.com/en-gb/HT204014)). - -Go to Applications > Utilities. - -Locate the Terminal app (select it). - -Press `Cmd` + `I` on the Terminal app, then verify that the box "Open using Rosetta" is **unchecked**. -In case you don't see this box, just continue. -
- -🚨 Keep this in mind. You will need to remember later on in the setup whether your computer uses an Apple Silicon chip or is an Apple Intel version +If you're unsure, click the Apple icon in the top-left corner of your screen, then select *"About This Mac"*. If the *"Chip"* field starts with *"Apple"*, you're good to go. If it starts with *"Intel"*, your Mac isn't supported. ## A note about quitting apps on a Mac @@ -96,61 +69,35 @@ Once this is done, you can try to install again. ## Homebrew -### 1. Install: -On Mac, you need to install [Homebrew](http://brew.sh/) 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: + +[Homebrew](http://brew.sh/) is a package manager: it's a software used to install other software from the command line. Let's install it! + +Open a terminal and run: ```bash /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](https://support.apple.com/en-gb/HT202860) 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 get a Error: Not a valid ref: refs/remotes/origin/master error - - -The full error would be: - -``` bash -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: - -``` bash -rm -fr $(brew --repo homebrew/core) # because you can't `brew untap homebrew/core` -brew tap homebrew/core -``` - -
+:warning: When you type your password, nothing will show up on the screen, **that's normal**. This is a security feature to mask not only your password as a whole but also its length. Just type your password and when you're done, press `Enter`. If you already have Homebrew, it will tell you so, that's fine, go on. -### 2. Make sure you are on the latest version: +Once Homebrew has finished installing, run these two commands to add it to your `PATH`: ```bash -brew update +echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile +eval "$(/opt/homebrew/bin/brew shellenv)" ``` -
- 🛠 If you get a /usr/local must be writable error - -Just run this: +Make sure you're on the latest version: -``` bash -sudo chown -R $USER:admin /usr/local +```bash brew update ``` -
- -### 3. Then install some useful software: - -Proceed running the following in the terminal (you can copy / paste all the lines at once). +Then install some useful software (you can copy / paste all the lines at once): ```bash brew upgrade git || brew install git @@ -325,179 +272,64 @@ gh auth status ## Dotfiles -Hackers love to refine and polish their shell and tools. We'll start with a great default configuration provided by [Le Wagon](http://github.com/lewagon/dotfiles), stored on GitHub. - -### Check your GitHub CLI configuration - -First, let's do a quick check. Open your terminal and run the following command: - -```bash -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`). - -### Fork and/or clone dotfiles - -There are three options, choose **one**: - - -
- - I did not attend the Web Dev or Data Science & AI bootcamp at Le Wagon - - - As your configuration is personal, you need your own repository storing it, so you'll need to fork it to your GitHub account. - -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. +Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. -Lets' run this command to fork the repo, and clone it on your laptop: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo fork lewagon/dotfiles --clone -``` +### Forking the dotfiles -
+To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. +**Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
- - I already attended a Le Wagon coding bootcamp (Web Development or Data Science & AI) but I have a new laptop + If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ -This means that you already forked the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** - -First, clone your fork on this machine: - -```bash -mkdir -p ~/code/$GITHUB_USERNAME && cd $_ -gh repo clone $GITHUB_USERNAME/dotfiles -``` - + You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. -Open your terminal and go to your `dotfiles` project: -```bash -cd ~/code/$GITHUB_USERNAME/dotfiles -``` - -Time to merge the changes from `lewagon/dotfiles` into yours: -1. Commit your current version of your dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Let's bring in the changes from upstream: `git merge upstream/master` - -1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. - -1. Do a `git diff HEAD~1 HEAD` to check what changed. - -1. If nothing seems out of the ordinary, continue - -
- Too many conflicts? - - - Let's just take over the current version from `lewagon/dotfiles`. - - First abort the merge: `git merge --abort`. - - Run `code .` - - In VS Code, open the `zshrc` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Save to disk. - - Still in VS Code, open the `zprofile` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Save to disk. - - Back in the terminal, run a `git diff` and check if this didn't remove any personal configuration setting that you wanted to keep. + **Open a ticket** with a TA and do one of the following: + - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. + - If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. + - If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup.
-Time to commit your changes and push them. - -```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master -``` - -
- - -
- - I already did the setup of a Le Wagon coding bootcamp (WebDev or Data Science & AI) on the same laptop before - - -This means that you already forked and cloned the GitHub repo `lewagon/dotfiles`, but at that time the configuration was maybe not ready for the current Data Science & AI bootcamp. Let's update it. **Ask a TA to join you for the nex steps.** - +
-Open your terminal and go to your `dotfiles` project: +Run the following command: ```bash -cd ~/code/$GITHUB_USERNAME/dotfiles +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME ``` -Time to merge the changes from `lewagon/dotfiles` into yours: -1. Commit your current version of your dotfiles: - ```bash - git add . - git status # Check what will be committed - git commit -m "Version prior to new setup" - ``` - -1. Let's bring in the changes from upstream: `git merge upstream/master` +✔️ You should see your Github username printed. -1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). -1. Do a `git diff HEAD~1 HEAD` to check what changed. - -1. If nothing seems out of the ordinary, continue - -
- Too many conflicts? - - - Let's just take over the current version from `lewagon/dotfiles`. - - First abort the merge: `git merge --abort`. - - Run `code .` - - In VS Code, open the `zshrc` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zshrc). Save to disk. - - Still in VS Code, open the `zprofile` file. Replace its content with the [newest version](https://raw.githubusercontent.com/lewagon/dotfiles/master/zprofile). Save to disk. - - Back in the terminal, run a `git diff` and check if this didn't remove any personal configuration setting that you wanted to keep. - -
- -Time to commit your changes and push them. +Time to fork the repo and clone it on your computer: ```bash -git add . -git commit -m "Update for Data Science bootcamp" -git push origin master +mkdir -p ~/code/$GITHUB_USERNAME && cd $_ +gh repo fork lewagon/dotfiles --clone ``` -
- - -### Run the dotfiles installer +### Installing the dotfiles -It's time to run the `dotfiles` installer: +Run the `dotfiles` installer with: ```bash 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: +Check the emails registered with your GitHub Account. You'll need to pick one in the next step: ```bash gh api user/emails | jq -r '.[].email' @@ -510,9 +342,10 @@ cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh ``` :point_up: This will **prompt** you for your name (`FirstName LastName`) and your email. -:warning: You **need** to put one of the emails listed above thanks to the previous `gh api ...` command. If you don't do that, Kitt won't be able to track your progress. 💡 Select the `@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. -Please now **quit** all your opened terminal windows. +:warning: You **need** to put one of the emails listed above from the previous `gh api ...` command. If you don't do that, Kitt will not be able to track your progress. + +💡 Select the `...@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. ## Installing Python (with [`pyenv`](https://github.com/pyenv/pyenv)) @@ -562,26 +395,6 @@ rm -rf ~/opt ### Install pre-requisites -Before installing Python, please check your `xz` version with: - -```bash -brew info xz -``` - -It should be more than `5.2.0`, **if not** you should run: - -```bash -sudo rm -rf /usr/local/opt/xz -brew upgrade -brew install xz -``` - -Then run: - -```bash -brew install readline -``` - ### Install `pyenv` 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. @@ -702,25 +515,9 @@ pip install --upgrade pip Then let's install some packages for the first weeks of the program: -If your computer uses **Apple Silicon**, expand the paragraph below and go through it. Otherwise ignore it. - -
- 👉  Setup for Apple Silicon 👈 - ``` bash pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs/releases/apple_silicon.txt ``` -
- -If your computer uses **Apple Intel**, expand the paragraph below and go through it. Otherwise ignore it. - -
- 👉  Setup for Apple Intel 👈 - -``` bash -pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs/releases/apple_intel.txt -``` -
@@ -740,8 +537,6 @@ curl $SOURCE > $LOCATION/custom.css ## Python setup check -### Python and packages check - Let's reset your terminal: ```bash @@ -753,37 +548,17 @@ 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.12.9 ``` -Run the following command to check if you successfully installed the required packages: -```bash -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: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Jupyter check - Make sure you can run Jupyter: ```bash jupyter notebook ``` -Let's open the jupyter app: +Your web browser should open on a `jupyter` window.
- Regular setup - - Your web browser should open on a `jupyter` window. -
- - -
- - Virtual machine setup + Note if you're running the setup on a virtual machine VSCode detects that a jupyter notebook started in your virtual machine and creates a port forward in order to allow you to open the application in your browser. @@ -801,8 +576,6 @@ Let's open the jupyter app:
-You now have access to the `jupyter` window: - ![jupyter.png](images/jupyter.png) Click on `New` and in the dropdown menu select `Python 3 (ipykernel)`: @@ -814,21 +587,25 @@ A tab should open on a new notebook: ![jupyter_notebook.png](images/jupyter_notebook.png) Make sure that you are running the correct python version in the notebook. Open a cell and run: + ``` python import sys; sys.version ``` It should output `3.12.9` followed by some more details. If not, check with a TA. -You can close your web browser then terminate the jupyter server with `CTRL` + `C`. - -Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. +In another cell, run: +```python +import pandas as pd +pd.__version___ +``` +This might take a few minutes to run. It should output a version number, `2.2.3`. If not, check with a TA. -## DBeaver +You can close your web browser then terminate the jupyter server with `CTRL` + `C`. -Download and install [DBeaver](https://dbeaver.io/), a free and open source powerful tool to connect to any database, explore the schema and even **run SQL queries**. +Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. ## Docker 🐋 @@ -888,34 +665,39 @@ If that doesn't work, contact a TA. ## Google Cloud Platform setup -[GCP](https://cloud.google.com/) is a cloud solution that you are going to use in order to deploy your Machine Learning-based products to production. +[Google Cloud](https://cloud.google.com/) 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 🙅‍♂️ +🚨 If you are a student of the **Part-Time Bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ ### Project setup - Go to [Google Cloud](https://console.cloud.google.com/) 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 +⚠️ **Important:** When creating a new project, you will see an **Organization** field. Leave this set to **"No organization"**. Do not select or create an organization. Choosing an organization applies restrictions that can prevent you from using Google Cloud services during the bootcamp. + ![](images/gcp-create-project.png) - Give it a name such as `Wagon Bootcamp` for example -- ❗ Check that the field _Location_ is set to _No organization_ ❗ - Notice the `ID` automatically created for the project, e.g. `wagon-bootcamp-123456` ![](images/gcp_project.png) +ℹ️ Note the **Project ID** (e.g. `wagon-bootcamp-123456`) this is **not** the same as the project name you chose (e.g. `Wagon Bootcamp`). You will need the ID later when running terminal commands, but don't worry, you can always find it in Google Cloud. + ### Account language -In order to facilitate the following of the instructions during the bootcamp, open your GCP account preferences: +In order to facilitate the following of the instructions during the bootcamp, open your Google Cloud account preferences: -https://myaccount.google.com/language +[https://myaccount.google.com/language](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** @@ -923,7 +705,9 @@ Then switch the language to english: ### 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. +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 Google Cloud. Do not worry, you will be able to consume most Google Cloud services through free credits throughout the bootcamp. + +⚠️ In some cases, Google may charge your card (around €10) to verify that it is valid. This will unfortunately not be refunded once you are approved, but will be added as credit in Google Cloud that you can use once your free credits have been used or expired. ![](images/gcp-billing.png) @@ -942,7 +726,7 @@ You should see that you have a free credit of "$300 credits over the next 90days - 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. +Once this is done, verify that your billing account is linked to your Google Cloud project. - Select your project - Go to **Billing** @@ -952,14 +736,13 @@ Once this is done, verify that your billing account is linked to your GCP projec You should now see: -``` +```bash 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. @@ -976,26 +759,26 @@ Download the Revolut app, or go to [revolut](https://www.revolut.com/a-radically 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. +You now have a virtual card which we will use for the Google Cloud setup. + +In the main view of the Revolut app -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 +- Note down the references of the virtual credit card and use them in order to proceed with the Google Cloud 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 +- 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 Google Cloud for the bootcamp using a virtual credit card You may receive a validation or requests for more information within 30 minutes. @@ -1003,7 +786,7 @@ Once the verification goes through, you should receive an email stating that "Yo
-### Enabling GCP services +### Enabling Google Cloud services - Make sure that billing is enabled for your Google Cloud project @@ -1011,182 +794,61 @@ Once the verification goes through, you should receive an email stating that "Yo - [Enable the BigQuery and Compute Engine APIs](https://console.cloud.google.com/flows/enableapi?apiid=bigquery,compute) (This step may take a few minutes) -### Configure Cloud sdk +That's it for the browser setup! Terminal setup comes later in this guide. -- Authenticate the `gcloud` CLI with the google account you used for GCP +### Configure Cloud sdk -```bash -gcloud auth login -``` +- Authenticate the `gcloud` CLI with the google account you used for GCP + + ```bash + 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 -```bash -gcloud auth list -``` -- Set your current project (replace `PROJECT_ID` with the `ID` of your project, e.g. `wagon-bootcamp-123456`) -```bash -gcloud config set project PROJECT_ID -``` -- List your active account and current project and check your project is present -```bash -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. - -
- 🤔 Why do we need a service account key ? - - - You have created a `GCP account` linked to your credit card. Your account will be billed according to your usage of the resources of the **Google Cloud Platform**. The billing will occur if you consume anything once the free trial is over, or if you exceed the amount of spending allowed during the free trial. - - In your `GCP account`, you have created a single `GCP project`, identified by its `PROJECT_ID`. The `GCP projects` allow you to organize and monitor more precisely how you consume the **GCP** resources. For the purpose of the bootcamp, we are only going to create a single project. - - Now, we need a way to tell which resources within a `GCP project` our code will be allowed to consume. Our code consumes GCP resources through API calls. - - Since API calls are not free, it is important to define with caution how our code will be allowed to use them. During the bootcamp this will not be an issue and we are going to allow our code to use all the API of **GCP** without any restrictions. - - In the same way that 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 projects using API calls are registered on the platform and their credentials configured through the access granted to a `service account`. - - For the moment we will only need to use a single service and will create the corresponding `service account`. -
- -Since the [service account](https://cloud.google.com/iam/docs/service-accounts) is what identifies your application (and therefore your GCP billing account and ultimately your credit card), you are going to want to be cautious with the next steps. - -⚠️ **Do not share you service account json file 🔑** ⚠️ Do not store it on your desktop, do not store it in your git codebase (even if your git repository is private), do not let it by the coffee machine, do not send it as a tweet. - -#### Go to the Service Accounts page - -Navigate to the GCP service accounts page at [this link](https://console.cloud.google.com/apis/credentials/serviceaccountkey). - -- Select your project in the list of recent projects if asked to. -- If not asked, make sure the right project is selected in the Project selecter list at the top of the page. - -An alternate way to navigate to the Service Accounts page is from the following: - -01 Go to Service Accounts - -#### Create a service account - -- Click on **CREATE SERVICE ACCOUNT**. - - 02 Create Service Account - -- Give your service account a name, an id and a description, and click on **CREATE AND CONTINUE**. - - 03 Name the service account - -- Click on **Select a role** and choose `Basic` then **`Owner`**, which gives the service account full access to all resources of your GCP project. - - 04 Add BigQuery Job User - -- Click on the blue **DONE** button at the bottom of this window. We don't need to worry about the section *Grant your users access to this service account*. - - 04 Done - - -#### Create a json key 🔑 for this service account - -- On the service accounts page, click on the email address of the newly created service account. - - 05 Select the service account - -- Click on the **KEYS** tab at the top of the page. - - 06 Go to Keys - - -- Click on **ADD KEY** then **Create new key**. - - 07 Add Key - - -- Select **JSON** and click on **CREATE**. - - 08 Choose JSON and Create - -- The browser has now saved the service account json file 🔑 in your downloads directory (it is named according to your service account name, something like `le-wagon-data-123456789abc.json`). - - -- Store the service account json file somewhere you'll remember, for example: - -``` bash -/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: - -``` bash -echo 'export GOOGLE_APPLICATION_CREDENTIALS=/path/to/the/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.zshrc -``` -**Note:** every time you run this command, it will add this line to your zshrc file regardless of whether you already have it. If you made a mistake and need to fix it, preferably open the file and edit the line! - -You can do so by running - -```bash -code ~/.zshrc -``` - -in the Terminal! 😄 - +- List your active account and check your email address you used for GCP is present -
- ℹ️ How to find the absolute path of a file? - You can drag and drop the file in your terminal. -
+ ```bash + gcloud auth list + ``` -**Restart** your terminal and run: +- Set your current project (replace `PROJECT_ID` with the `ID` of your project, e.g. `wagon-bootcamp-123456`) -``` bash -echo $GOOGLE_APPLICATION_CREDENTIALS -``` + ```bash + gcloud config set project PROJECT_ID + ``` -The ouptut should be the following: +- List your active account and current project and check your project is present -```bash -/some/absolute/path/to/your/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json -``` + ```bash + gcloud config list + ``` -Now let's verify that the path to your service account json file is correct: +- Now let's set up Application Default Credentials so your Python code can access GCP: -``` bash -cat $(echo $GOOGLE_APPLICATION_CREDENTIALS) -``` + ```bash + gcloud auth application-default login + ``` -👉 This command should display the content of your service account json file. If it does not, ask for a TA 🙏 + This will open a browser window. Log in with the same Google account you used to create your GCP project. Your credentials will be saved automatically. -Your code and utilities are now able to access the resources of your GCP account. +- Let's verify your Application Default Credentials are working: -Let's proceed with the final steps of configuration... + ```bash + gcloud auth application-default print-access-token + ``` -- List the service accounts associated to your active account and current project -```bash -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) -```bash -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` + You should see a long token string. If you see an error, run `gcloud auth application-default login` again. -
- Troubleshooting +
+ Troubleshooting -- `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` - - Make sure that billing is enabled for your Google Cloud Platform project https://cloud.google.com/billing/docs/how-to/modify-project -
+ - `AccessDeniedException: 403 The project to be billed is associated with an absent billing account.` + - Make sure that billing is enabled for your Google Cloud Platform project [https://cloud.google.com/billing/docs/how-to/modify-project](https://cloud.google.com/billing/docs/how-to/modify-project) +
🏁 You are done with the GCP setup! diff --git a/macOS_keep_current.es.md b/macOS_keep_current.es.md index 973ee8d9..7d74e7e3 100644 --- a/macOS_keep_current.es.md +++ b/macOS_keep_current.es.md @@ -304,18 +304,6 @@ Verifica tu versión de Python con los siguientes comandos: zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 ``` -Ejecuta el comando siguiente para verificar que hayas instalado los paquetes requeridos correctamente: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.sh)" -``` - -Ahora ejecuta el siguiente comando para verificar que puedas cargar estos paquetes: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Chequeo de Jupyter - Ahora verifica que puedas iniciar un servidor de notebook en tu máquina: ```bash @@ -341,6 +329,15 @@ import sys; sys.version Debería mostrar `3.12.9` seguido de algunos detalles adicionales. Si no es así, consulta con un TA. +En otra celda, ejecuta: + +```python +import pandas as pd +pd.__version___ +``` + +Esto podría tomar algunos minutos en ejecutarse. Debería mostrar un número de versión, `2.2.3`. Si no es así, consulta con un TA. + Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + `C`. ¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. diff --git a/macOS_keep_current.md b/macOS_keep_current.md index 9890f7e0..b6ac7caa 100644 --- a/macOS_keep_current.md +++ b/macOS_keep_current.md @@ -291,8 +291,6 @@ Stop the Docker app ## Python setup check -### Python and packages check - Let's reset your terminal: ```bash @@ -304,37 +302,17 @@ 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.12.9 ``` -Run the following command to check if you successfully installed the required packages: -```bash -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: -```bash -python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)" -``` - -### Jupyter check - Make sure you can run Jupyter: ```bash jupyter notebook ``` -Let's open the jupyter app: - -
- - Regular setup - - Your web browser should open on a `jupyter` window. -
- +Your web browser should open on a `jupyter` window.
- Virtual machine setup + Note if you're running the setup on a virtual machine VSCode detects that a jupyter notebook started in your virtual machine and creates a port forward in order to allow you to open the application in your browser. @@ -352,8 +330,6 @@ Let's open the jupyter app:
-You now have access to the `jupyter` window: - ![jupyter.png](images/jupyter.png) Click on `New` and in the dropdown menu select `Python 3 (ipykernel)`: @@ -365,12 +341,22 @@ A tab should open on a new notebook: ![jupyter_notebook.png](images/jupyter_notebook.png) Make sure that you are running the correct python version in the notebook. Open a cell and run: + ``` python import sys; sys.version ``` It should output `3.12.9` followed by some more details. If not, check with a TA. +In another cell, run: + +```python +import pandas as pd +pd.__version___ +``` + +This might take a few minutes to run. It should output a version number, `2.2.3`. If not, check with a TA. + You can close your web browser then terminate the jupyter server with `CTRL` + `C`. Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. From 33edae9c8dde89e964edccbfeeebd2b65947dec1 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Fri, 18 Sep 2026 00:21:24 +0200 Subject: [PATCH 13/42] Tell students not to experiment --- _partials/es/intro.md | 11 +++++++---- _partials/intro.md | 6 ++++-- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/_partials/es/intro.md b/_partials/es/intro.md index 9d2579b2..ca52178b 100644 --- a/_partials/es/intro.md +++ b/_partials/es/intro.md @@ -1,7 +1,10 @@ -# Instrucciones para la configuración -Aquí abajo encontrarás las instrucciones para configurar tu computadora para [el curso de Data Science de Le Wagon](https://www.lewagon.com/data-science-course/full-time) +# Instrucciones de configuración -Por favor **léelas cuidadosamente y ejecuta todos los comandos en el siguiente orden**. Si tienes algún problema, no dudes en pedirle ayuda a una profesor :raising_hand: +A continuación encontrarás las instrucciones para configurar tu ordenador para el [bootcamp de Data Science & AI de Le Wagon](https://www.lewagon.com/data-science-course). -¡Comencemos! :rocket: +Por favor, **léelas detenidamente y ejecuta todos los comandos en el siguiente orden**. + +Esta configuración no es un ejercicio; su único propósito es preparar tu ordenador de forma estandarizada. No experimentes ni pidas ayuda a un LLM. Si te atascas, simplemente pide ayuda a un profesor :raising_hand: + +Empecemos :rocket: diff --git a/_partials/intro.md b/_partials/intro.md index b2b71d22..860d15b0 100644 --- a/_partials/intro.md +++ b/_partials/intro.md @@ -1,8 +1,10 @@ # Setup instructions -You will find below the instructions to set up you computer for [Le Wagon Data Science course](https://www.lewagon.com/data-science-course/full-time) +Below are the instructions for setting up your computer for the [Le Wagon Data Science & AI bootcamp](https://www.lewagon.com/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 :raising_hand: +Please **read them carefully and execute all commands in the following order**. + +This setup is not an exercise; its sole purpose is to prepare your machine in a standardised way. Do not experiment or ask an LLM for help. If you get stuck, simply ask a teacher for help :raising_hand: Let's start :rocket: From c5b57efa6a64c583e55227c13731923d354dc967 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Fri, 18 Sep 2026 00:27:25 +0200 Subject: [PATCH 14/42] Dotfiles indentation hopefully fixes layout --- _partials/dotfiles.md | 34 +++++++++++++++++----------------- _partials/es/dotfiles.md | 34 +++++++++++++++++----------------- 2 files changed, 34 insertions(+), 34 deletions(-) diff --git a/_partials/dotfiles.md b/_partials/dotfiles.md index f024e33b..533d7ce9 100644 --- a/_partials/dotfiles.md +++ b/_partials/dotfiles.md @@ -9,23 +9,23 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
- If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ - - - You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. - - - **Open a ticket** with a TA and do one of the following: - - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. - - If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. - - If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ + + +You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. + + +**Open a ticket** with a TA and do one of the following: +- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. +- If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. +- If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup.
diff --git a/_partials/es/dotfiles.md b/_partials/es/dotfiles.md index ab9ce9ab..75d290ac 100644 --- a/_partials/es/dotfiles.md +++ b/_partials/es/dotfiles.md @@ -9,23 +9,23 @@ Para personalizar esta configuración, tendrás que hacer un **fork** del reposi Al hacer un **fork**, se crea una copia del repositorio en tu cuenta (`your_github_username/dotfiles`), que luego podrás modificar con tu información personal, como tu nombre.
- Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ - - - Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. - - - **Abre un ticket** con un TA y haz una de las siguientes cosas: - - Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. - - Si no te importa perder tus dotfiles existentes (recomendado): - - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. - - Elimina el repositorio local: `rm -rf ~/code//dotifles`. - - Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: - - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. - - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. - - Vuelve a `master`: `git checkout master`. - - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. - - Continúa con la configuración. +Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ + + +Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. + + +**Abre un ticket** con un TA y haz una de las siguientes cosas: +- Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. +- Si no te importa perder tus dotfiles existentes (recomendado): + - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. + - Elimina el repositorio local: `rm -rf ~/code//dotifles`. +- Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: + - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. + - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. + - Vuelve a `master`: `git checkout master`. + - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. + - Continúa con la configuración.
From 9f8050efb45d644b49ae57ea057aae5c3b5740c0 Mon Sep 17 00:00:00 2001 From: github-actions Date: Thu, 17 Sep 2026 22:27:46 +0000 Subject: [PATCH 15/42] setup guides generated --- LINUX.es.md | 45 ++++++++++++++++++++++++--------------------- LINUX.md | 40 +++++++++++++++++++++------------------- REMOTE_SETUP.md | 40 +++++++++++++++++++++------------------- VM.es.md | 45 ++++++++++++++++++++++++--------------------- VM.md | 40 +++++++++++++++++++++------------------- WINDOWS.es.md | 45 ++++++++++++++++++++++++--------------------- WINDOWS.md | 40 +++++++++++++++++++++------------------- macOS.es.md | 45 ++++++++++++++++++++++++--------------------- macOS.md | 40 +++++++++++++++++++++------------------- 9 files changed, 201 insertions(+), 179 deletions(-) diff --git a/LINUX.es.md b/LINUX.es.md index f3213adf..e367b601 100644 --- a/LINUX.es.md +++ b/LINUX.es.md @@ -1,10 +1,13 @@ -# Instrucciones para la configuración -Aquí abajo encontrarás las instrucciones para configurar tu computadora para [el curso de Data Science de Le Wagon](https://www.lewagon.com/data-science-course/full-time) +# Instrucciones de configuración -Por favor **léelas cuidadosamente y ejecuta todos los comandos en el siguiente orden**. Si tienes algún problema, no dudes en pedirle ayuda a una profesor :raising_hand: +A continuación encontrarás las instrucciones para configurar tu ordenador para el [bootcamp de Data Science & AI de Le Wagon](https://www.lewagon.com/data-science-course). -¡Comencemos! :rocket: +Por favor, **léelas detenidamente y ejecuta todos los comandos en el siguiente orden**. + +Esta configuración no es un ejercicio; su único propósito es preparar tu ordenador de forma estandarizada. No experimentes ni pidas ayuda a un LLM. Si te atascas, simplemente pide ayuda a un profesor :raising_hand: + +Empecemos :rocket: ## Cuenta GitHub @@ -288,23 +291,23 @@ Para personalizar esta configuración, tendrás que hacer un **fork** del reposi Al hacer un **fork**, se crea una copia del repositorio en tu cuenta (`your_github_username/dotfiles`), que luego podrás modificar con tu información personal, como tu nombre.
- Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ - - - Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. - - - **Abre un ticket** con un TA y haz una de las siguientes cosas: - - Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. - - Si no te importa perder tus dotfiles existentes (recomendado): - - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. - - Elimina el repositorio local: `rm -rf ~/code//dotifles`. - - Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: - - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. - - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. - - Vuelve a `master`: `git checkout master`. - - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. - - Continúa con la configuración. +Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ + + +Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. + + +**Abre un ticket** con un TA y haz una de las siguientes cosas: +- Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. +- Si no te importa perder tus dotfiles existentes (recomendado): + - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. + - Elimina el repositorio local: `rm -rf ~/code//dotifles`. +- Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: + - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. + - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. + - Vuelve a `master`: `git checkout master`. + - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. + - Continúa con la configuración.
diff --git a/LINUX.md b/LINUX.md index b63e4524..67f1b7a7 100644 --- a/LINUX.md +++ b/LINUX.md @@ -1,9 +1,11 @@ # Setup instructions -You will find below the instructions to set up you computer for [Le Wagon Data Science course](https://www.lewagon.com/data-science-course/full-time) +Below are the instructions for setting up your computer for the [Le Wagon Data Science & AI bootcamp](https://www.lewagon.com/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 :raising_hand: +Please **read them carefully and execute all commands in the following order**. + +This setup is not an exercise; its sole purpose is to prepare your machine in a standardised way. Do not experiment or ask an LLM for help. If you get stuck, simply ask a teacher for help :raising_hand: Let's start :rocket: @@ -313,23 +315,23 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
- If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ - - - You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. - - - **Open a ticket** with a TA and do one of the following: - - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. - - If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. - - If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ + + +You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. + + +**Open a ticket** with a TA and do one of the following: +- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. +- If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. +- If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup.
diff --git a/REMOTE_SETUP.md b/REMOTE_SETUP.md index 03ad44be..f25a7170 100644 --- a/REMOTE_SETUP.md +++ b/REMOTE_SETUP.md @@ -1,9 +1,11 @@ # Setup instructions -You will find below the instructions to set up you computer for [Le Wagon Data Science course](https://www.lewagon.com/data-science-course/full-time) +Below are the instructions for setting up your computer for the [Le Wagon Data Science & AI bootcamp](https://www.lewagon.com/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 :raising_hand: +Please **read them carefully and execute all commands in the following order**. + +This setup is not an exercise; its sole purpose is to prepare your machine in a standardised way. Do not experiment or ask an LLM for help. If you get stuck, simply ask a teacher for help :raising_hand: Let's start :rocket: @@ -650,23 +652,23 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
- If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ - - - You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. - - - **Open a ticket** with a TA and do one of the following: - - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. - - If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. - - If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ + + +You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. + + +**Open a ticket** with a TA and do one of the following: +- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. +- If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. +- If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup.
diff --git a/VM.es.md b/VM.es.md index aba26e60..cf069203 100644 --- a/VM.es.md +++ b/VM.es.md @@ -1,10 +1,13 @@ -# Instrucciones para la configuración -Aquí abajo encontrarás las instrucciones para configurar tu computadora para [el curso de Data Science de Le Wagon](https://www.lewagon.com/data-science-course/full-time) +# Instrucciones de configuración -Por favor **léelas cuidadosamente y ejecuta todos los comandos en el siguiente orden**. Si tienes algún problema, no dudes en pedirle ayuda a una profesor :raising_hand: +A continuación encontrarás las instrucciones para configurar tu ordenador para el [bootcamp de Data Science & AI de Le Wagon](https://www.lewagon.com/data-science-course). -¡Comencemos! :rocket: +Por favor, **léelas detenidamente y ejecuta todos los comandos en el siguiente orden**. + +Esta configuración no es un ejercicio; su único propósito es preparar tu ordenador de forma estandarizada. No experimentes ni pidas ayuda a un LLM. Si te atascas, simplemente pide ayuda a un profesor :raising_hand: + +Empecemos :rocket: ## Cuenta GitHub @@ -468,23 +471,23 @@ Para personalizar esta configuración, tendrás que hacer un **fork** del reposi Al hacer un **fork**, se crea una copia del repositorio en tu cuenta (`your_github_username/dotfiles`), que luego podrás modificar con tu información personal, como tu nombre.
- Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ - - - Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. - - - **Abre un ticket** con un TA y haz una de las siguientes cosas: - - Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. - - Si no te importa perder tus dotfiles existentes (recomendado): - - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. - - Elimina el repositorio local: `rm -rf ~/code//dotifles`. - - Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: - - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. - - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. - - Vuelve a `master`: `git checkout master`. - - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. - - Continúa con la configuración. +Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ + + +Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. + + +**Abre un ticket** con un TA y haz una de las siguientes cosas: +- Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. +- Si no te importa perder tus dotfiles existentes (recomendado): + - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. + - Elimina el repositorio local: `rm -rf ~/code//dotifles`. +- Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: + - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. + - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. + - Vuelve a `master`: `git checkout master`. + - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. + - Continúa con la configuración.
diff --git a/VM.md b/VM.md index 448b10cd..22966c82 100644 --- a/VM.md +++ b/VM.md @@ -1,9 +1,11 @@ # Setup instructions -You will find below the instructions to set up you computer for [Le Wagon Data Science course](https://www.lewagon.com/data-science-course/full-time) +Below are the instructions for setting up your computer for the [Le Wagon Data Science & AI bootcamp](https://www.lewagon.com/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 :raising_hand: +Please **read them carefully and execute all commands in the following order**. + +This setup is not an exercise; its sole purpose is to prepare your machine in a standardised way. Do not experiment or ask an LLM for help. If you get stuck, simply ask a teacher for help :raising_hand: Let's start :rocket: @@ -672,23 +674,23 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
- If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ - - - You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. - - - **Open a ticket** with a TA and do one of the following: - - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. - - If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. - - If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ + + +You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. + + +**Open a ticket** with a TA and do one of the following: +- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. +- If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. +- If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup.
diff --git a/WINDOWS.es.md b/WINDOWS.es.md index 816026e0..678cc3d5 100644 --- a/WINDOWS.es.md +++ b/WINDOWS.es.md @@ -1,10 +1,13 @@ -# Instrucciones para la configuración -Aquí abajo encontrarás las instrucciones para configurar tu computadora para [el curso de Data Science de Le Wagon](https://www.lewagon.com/data-science-course/full-time) +# Instrucciones de configuración -Por favor **léelas cuidadosamente y ejecuta todos los comandos en el siguiente orden**. Si tienes algún problema, no dudes en pedirle ayuda a una profesor :raising_hand: +A continuación encontrarás las instrucciones para configurar tu ordenador para el [bootcamp de Data Science & AI de Le Wagon](https://www.lewagon.com/data-science-course). -¡Comencemos! :rocket: +Por favor, **léelas detenidamente y ejecuta todos los comandos en el siguiente orden**. + +Esta configuración no es un ejercicio; su único propósito es preparar tu ordenador de forma estandarizada. No experimentes ni pidas ayuda a un LLM. Si te atascas, simplemente pide ayuda a un profesor :raising_hand: + +Empecemos :rocket: ## Cuenta GitHub @@ -740,23 +743,23 @@ Para personalizar esta configuración, tendrás que hacer un **fork** del reposi Al hacer un **fork**, se crea una copia del repositorio en tu cuenta (`your_github_username/dotfiles`), que luego podrás modificar con tu información personal, como tu nombre.
- Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ - - - Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. - - - **Abre un ticket** con un TA y haz una de las siguientes cosas: - - Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. - - Si no te importa perder tus dotfiles existentes (recomendado): - - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. - - Elimina el repositorio local: `rm -rf ~/code//dotifles`. - - Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: - - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. - - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. - - Vuelve a `master`: `git checkout master`. - - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. - - Continúa con la configuración. +Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ + + +Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. + + +**Abre un ticket** con un TA y haz una de las siguientes cosas: +- Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. +- Si no te importa perder tus dotfiles existentes (recomendado): + - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. + - Elimina el repositorio local: `rm -rf ~/code//dotifles`. +- Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: + - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. + - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. + - Vuelve a `master`: `git checkout master`. + - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. + - Continúa con la configuración.
diff --git a/WINDOWS.md b/WINDOWS.md index 946d0862..f907a35f 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -1,9 +1,11 @@ # Setup instructions -You will find below the instructions to set up you computer for [Le Wagon Data Science course](https://www.lewagon.com/data-science-course/full-time) +Below are the instructions for setting up your computer for the [Le Wagon Data Science & AI bootcamp](https://www.lewagon.com/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 :raising_hand: +Please **read them carefully and execute all commands in the following order**. + +This setup is not an exercise; its sole purpose is to prepare your machine in a standardised way. Do not experiment or ask an LLM for help. If you get stuck, simply ask a teacher for help :raising_hand: Let's start :rocket: @@ -756,23 +758,23 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
- If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ - - - You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. - - - **Open a ticket** with a TA and do one of the following: - - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. - - If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. - - If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ + + +You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. + + +**Open a ticket** with a TA and do one of the following: +- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. +- If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. +- If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup.
diff --git a/macOS.es.md b/macOS.es.md index e6f4b1fd..a6ff833a 100644 --- a/macOS.es.md +++ b/macOS.es.md @@ -1,10 +1,13 @@ -# Instrucciones para la configuración -Aquí abajo encontrarás las instrucciones para configurar tu computadora para [el curso de Data Science de Le Wagon](https://www.lewagon.com/data-science-course/full-time) +# Instrucciones de configuración -Por favor **léelas cuidadosamente y ejecuta todos los comandos en el siguiente orden**. Si tienes algún problema, no dudes en pedirle ayuda a una profesor :raising_hand: +A continuación encontrarás las instrucciones para configurar tu ordenador para el [bootcamp de Data Science & AI de Le Wagon](https://www.lewagon.com/data-science-course). -¡Comencemos! :rocket: +Por favor, **léelas detenidamente y ejecuta todos los comandos en el siguiente orden**. + +Esta configuración no es un ejercicio; su único propósito es preparar tu ordenador de forma estandarizada. No experimentes ni pidas ayuda a un LLM. Si te atascas, simplemente pide ayuda a un profesor :raising_hand: + +Empecemos :rocket: ## Cuenta GitHub @@ -280,23 +283,23 @@ Para personalizar esta configuración, tendrás que hacer un **fork** del reposi Al hacer un **fork**, se crea una copia del repositorio en tu cuenta (`your_github_username/dotfiles`), que luego podrás modificar con tu información personal, como tu nombre.
- Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ - - - Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. - - - **Abre un ticket** con un TA y haz una de las siguientes cosas: - - Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. - - Si no te importa perder tus dotfiles existentes (recomendado): - - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. - - Elimina el repositorio local: `rm -rf ~/code//dotifles`. - - Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: - - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. - - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. - - Vuelve a `master`: `git checkout master`. - - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. - - Continúa con la configuración. +Si ya hiciste otro bootcamp de Le Wagon (Desarrollo Web, Desarrollo de Software con IA, Análisis de Datos, Ciencia de Datos e IA), abre esto primero ❗ + + +Es posible que tengas una versión anterior de los dotfiles de Le Wagon. Podrían ser incompatibles con la configuración actual. + + +**Abre un ticket** con un TA y haz una de las siguientes cosas: +- Compara tus dotfiles existentes con los [dotfiles 🔗](https://github.com/lewagon/dotfiles) actuales de Le Wagon, especialmente `.zshrc`, `.zprofile` y `settings.json`. Si no hay ninguna diferencia significativa aparte de tu nombre y correo electrónico, continúa con la configuración. +- Si no te importa perder tus dotfiles existentes (recomendado): + - Elimina tu repositorio de dotfiles existente en GitHub y continúa con la configuración. + - Elimina el repositorio local: `rm -rf ~/code//dotifles`. +- Si no quieres perder tus dotfiles existentes, recomendamos trabajar con ramas: + - En tu **portátil**, o donde tengas una copia **local** de **tu versión existente de los dotfiles**. + - Crea una rama de tu configuración existente de dotfiles (`git checkout -b old-setup`) y súbela a GitHub: `git push origin old-setup`. + - Vuelve a `master`: `git checkout master`. + - En la rama local `master`, ejecuta `git pull upstream master`, resuelve los conflictos, ejecuta `git commit -m "merged"` y `git push origin master`. Es importante que aceptes los cambios entrantes en los archivos `.zshrc`, `.zprofile` y `settings.json`. + - Continúa con la configuración.
diff --git a/macOS.md b/macOS.md index efbc8447..e099cc09 100644 --- a/macOS.md +++ b/macOS.md @@ -1,9 +1,11 @@ # Setup instructions -You will find below the instructions to set up you computer for [Le Wagon Data Science course](https://www.lewagon.com/data-science-course/full-time) +Below are the instructions for setting up your computer for the [Le Wagon Data Science & AI bootcamp](https://www.lewagon.com/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 :raising_hand: +Please **read them carefully and execute all commands in the following order**. + +This setup is not an exercise; its sole purpose is to prepare your machine in a standardised way. Do not experiment or ask an LLM for help. If you get stuck, simply ask a teacher for help :raising_hand: Let's start :rocket: @@ -281,23 +283,23 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
- If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ - - - You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. - - - **Open a ticket** with a TA and do one of the following: - - Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. - - If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. - - If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ + + +You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. + + +**Open a ticket** with a TA and do one of the following: +- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. +- If you are OK with losing your existing dotfiles (recommended): + - Delete your existing dotfiles repository on GitHub and continue with the setup. + - Delete the local repository: `rm -rf ~/code//dotifles`. +- If you do not want to lose your existing dotfiles, we recommend working with branches: + - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** + - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, + - Go back to `master`: `git checkout master`. + - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. + - Continue with the setup.
From 9d6d5c3330a260af65b647ee0601e0abfff5003c Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Fri, 18 Sep 2026 00:33:30 +0200 Subject: [PATCH 16/42] Skip GCP also if Flex --- _partials/gcp_account_setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_partials/gcp_account_setup.md b/_partials/gcp_account_setup.md index b404c917..73076349 100644 --- a/_partials/gcp_account_setup.md +++ b/_partials/gcp_account_setup.md @@ -2,7 +2,7 @@ [Google Cloud](https://cloud.google.com/) 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! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ +🚨 If you are a student of the **Part-Time Bootcamp or the Flex bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ ### Project setup From 957cc12948ad6a8a2286084ec46a796d913d8ce4 Mon Sep 17 00:00:00 2001 From: github-actions Date: Thu, 17 Sep 2026 22:33:47 +0000 Subject: [PATCH 17/42] setup guides generated --- LINUX.md | 2 +- WINDOWS.md | 2 +- macOS.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/LINUX.md b/LINUX.md index 67f1b7a7..b50b8814 100644 --- a/LINUX.md +++ b/LINUX.md @@ -678,7 +678,7 @@ The following message should print: [Google Cloud](https://cloud.google.com/) 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! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ +🚨 If you are a student of the **Part-Time Bootcamp or the Flex bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ ### Project setup diff --git a/WINDOWS.md b/WINDOWS.md index f907a35f..3cd1f2e2 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -1244,7 +1244,7 @@ Try `docker run hello-world` again. [Google Cloud](https://cloud.google.com/) 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! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ +🚨 If you are a student of the **Part-Time Bootcamp or the Flex bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ ### Project setup diff --git a/macOS.md b/macOS.md index e099cc09..a046a1ad 100644 --- a/macOS.md +++ b/macOS.md @@ -669,7 +669,7 @@ If that doesn't work, contact a TA. [Google Cloud](https://cloud.google.com/) 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! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ +🚨 If you are a student of the **Part-Time Bootcamp or the Flex bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ ### Project setup From 5c6c64867b06a714747206b220734194515c26a2 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Fri, 18 Sep 2026 11:09:39 +0200 Subject: [PATCH 18/42] Remove terminal python version check We check it later in the notebook. Let's assume the happy scenario: - Python is installed - Jupyter is installed - We see the correct Python version in the notebook - Packages are installed, evidenced by Pandas If it's the wrong Python already in the terminal, it will surface either when we try to launch Jupyter, or when we check the version in the notebook. If the version in the notebook is correct, it will be correct in the terminal too. --- _partials/python_checkup.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/_partials/python_checkup.md b/_partials/python_checkup.md index 506d79ae..51d0a3cd 100644 --- a/_partials/python_checkup.md +++ b/_partials/python_checkup.md @@ -1,16 +1,13 @@ ## Python setup check +Let's run some checks. If any of the following steps fail, ask a TA for help. + Let's reset your terminal: ```bash cd ~/code && exec zsh ``` -Check your Python version with the following commands: -```bash -zsh -c "$(curl -fsSL {{ PYTHON_CHECKER_URL }})" {{ PYTHON_VERSION }} -``` - Make sure you can run Jupyter: ```bash From 0fd76b979c2f7b32bd7f1ef65a84707891af79f7 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Fri, 18 Sep 2026 11:17:14 +0200 Subject: [PATCH 19/42] Put all gcloud blocks together --- _partials/gcp_cli_setup.md | 4 +++- _partials/gcp_setup.md | 2 +- _partials/ubuntu_gcloud.md | 3 +++ builds/LINUX.yml | 2 +- builds/WINDOWS.yml | 2 +- builds/macOS.yml | 2 +- 6 files changed, 10 insertions(+), 5 deletions(-) diff --git a/_partials/gcp_cli_setup.md b/_partials/gcp_cli_setup.md index d6c567e1..1106fbbe 100644 --- a/_partials/gcp_cli_setup.md +++ b/_partials/gcp_cli_setup.md @@ -1,5 +1,7 @@ -## `gcloud` CLI +## Google Cloud CLI + +### Install `gcloud` 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: diff --git a/_partials/gcp_setup.md b/_partials/gcp_setup.md index 76c233bb..2c3957ce 100644 --- a/_partials/gcp_setup.md +++ b/_partials/gcp_setup.md @@ -1,4 +1,4 @@ -### Configure Cloud sdk +### Configure the Google Cloud CLI - Authenticate the `gcloud` CLI with the google account you used for GCP diff --git a/_partials/ubuntu_gcloud.md b/_partials/ubuntu_gcloud.md index 2ac45086..5310a5cd 100644 --- a/_partials/ubuntu_gcloud.md +++ b/_partials/ubuntu_gcloud.md @@ -1,5 +1,8 @@ + ## Google Cloud CLI +### Install `gcloud` + Install the `gcloud` CLI to communicate with [Google Cloud Platform](https://cloud.google.com/) through your terminal: ```bash sudo apt-get update && sudo apt-get install ca-certificates gnupg curl diff --git a/builds/LINUX.yml b/builds/LINUX.yml index 390836da..cd1bcb7b 100644 --- a/builds/LINUX.yml +++ b/builds/LINUX.yml @@ -11,7 +11,6 @@ partials: - setup/oh_my_zsh - direnv - setup/gh_cli - - ubuntu_gcloud - dotfiles - setup/ssh_agent - conda_uninstall @@ -22,6 +21,7 @@ partials: - python_checkup - ubuntu_docker - gcp_account_setup + - ubuntu_gcloud - gcp_setup - kitt - setup/ubuntu_slack diff --git a/builds/WINDOWS.yml b/builds/WINDOWS.yml index 0253009a..85f635fd 100644 --- a/builds/WINDOWS.yml +++ b/builds/WINDOWS.yml @@ -17,7 +17,6 @@ partials: - windows_browser - direnv - setup/gh_cli - - ubuntu_gcloud - dotfiles - setup/ssh_agent - conda_uninstall @@ -30,6 +29,7 @@ partials: - setup/windows_settings - win_docker - gcp_account_setup + - ubuntu_gcloud - gcp_setup - kitt - setup/windows_slack diff --git a/builds/macOS.yml b/builds/macOS.yml index b358c178..7c0d502a 100644 --- a/builds/macOS.yml +++ b/builds/macOS.yml @@ -21,8 +21,8 @@ partials: - nbextensions - python_checkup - docker - - gcp_cli_setup - gcp_account_setup + - gcp_cli_setup - gcp_setup - kitt - setup/macos_slack From 82abd6ba3dcd4fda764a77e8019c19e38696a64f Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Fri, 18 Sep 2026 11:17:48 +0200 Subject: [PATCH 20/42] Move part on WSL - Windows file transfer to the end --- builds/WINDOWS.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builds/WINDOWS.yml b/builds/WINDOWS.yml index 85f635fd..7c054676 100644 --- a/builds/WINDOWS.yml +++ b/builds/WINDOWS.yml @@ -26,7 +26,6 @@ partials: - nbextensions - win_jupyter - python_checkup - - setup/windows_settings - win_docker - gcp_account_setup - ubuntu_gcloud @@ -34,4 +33,5 @@ partials: - kitt - setup/windows_slack - setup/slack_settings + - setup/windows_settings - kata From 6a3204c058f8a3a5da3ac7b22c97d5ae1705e19a Mon Sep 17 00:00:00 2001 From: github-actions Date: Fri, 18 Sep 2026 09:18:09 +0000 Subject: [PATCH 21/42] setup guides generated --- LINUX.es.md | 24 +++---- LINUX.md | 36 +++++----- LINUX_keep_current.md | 7 +- REMOTE_SETUP.md | 7 +- VM.md | 7 +- WINDOWS.es.md | 130 ++++++++++++++++++------------------ WINDOWS.md | 142 ++++++++++++++++++++-------------------- WINDOWS_keep_current.md | 7 +- macOS.es.md | 58 ++++++++-------- macOS.md | 71 ++++++++++---------- macOS_keep_current.md | 7 +- 11 files changed, 240 insertions(+), 256 deletions(-) diff --git a/LINUX.es.md b/LINUX.es.md index e367b601..e9216b0d 100644 --- a/LINUX.es.md +++ b/LINUX.es.md @@ -268,18 +268,6 @@ gh auth status :x: De lo contrario, **contacta a un profesor**. -## CLI de Google Cloud - -Instala la CLI de `gcloud` para comunicar con [Google Cloud Platform](https://cloud.google.com/) a través de la terminal: -```bash -sudo apt-get update && sudo apt-get install ca-certificates gnupg curl -curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg -echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list -sudo apt-get update && sudo apt-get install google-cloud-cli -``` -👉 [Documentación para la instalación](https://cloud.google.com/sdk/docs/install#deb) - - ## Dotfiles Mejoremos la experiencia de tu máquina instalando los [dotfiles 🔗](https://github.com/lewagon/dotfiles) preconfigurados de Le Wagon. Son archivos de configuración para tu terminal, zsh, git y VS Code. @@ -750,6 +738,18 @@ Una vez completada la verificación, deberías recibir un correo que indique: "Y ¡Eso es todo para la configuración en el navegador! La configuración de la terminal aparece más adelante en esta guía. +## CLI de Google Cloud + +Instala la CLI de `gcloud` para comunicar con [Google Cloud Platform](https://cloud.google.com/) a través de la terminal: +```bash +sudo apt-get update && sudo apt-get install ca-certificates gnupg curl +curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg +echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list +sudo apt-get update && sudo apt-get install google-cloud-cli +``` +👉 [Documentación para la instalación](https://cloud.google.com/sdk/docs/install#deb) + + ### Configurar Cloud SDK - Autentica la CLI de `gcloud` con la cuenta de Google que utilizaste para GCP diff --git a/LINUX.md b/LINUX.md index b50b8814..d5d47015 100644 --- a/LINUX.md +++ b/LINUX.md @@ -292,18 +292,6 @@ gh auth status :x: If not, **contact a teacher**. -## Google Cloud CLI - -Install the `gcloud` CLI to communicate with [Google Cloud Platform](https://cloud.google.com/) through your terminal: -```bash -sudo apt-get update && sudo apt-get install ca-certificates gnupg curl -curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg -echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list -sudo apt-get update && sudo apt-get install google-cloud-cli -``` -👉 [Install documentation](https://cloud.google.com/sdk/docs/install#deb) - - ## Dotfiles Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. @@ -566,17 +554,14 @@ curl $SOURCE > $LOCATION/custom.css ## Python setup check +Let's run some checks. If any of the following steps fail, ask a TA for help. + Let's reset your terminal: ```bash cd ~/code && exec zsh ``` -Check your Python version with the following commands: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 -``` - Make sure you can run Jupyter: ```bash @@ -808,7 +793,22 @@ Once the verification goes through, you should receive an email stating that "Yo That's it for the browser setup! Terminal setup comes later in this guide. -### Configure Cloud sdk + +## Google Cloud CLI + +### Install `gcloud` + +Install the `gcloud` CLI to communicate with [Google Cloud Platform](https://cloud.google.com/) through your terminal: +```bash +sudo apt-get update && sudo apt-get install ca-certificates gnupg curl +curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg +echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list +sudo apt-get update && sudo apt-get install google-cloud-cli +``` +👉 [Install documentation](https://cloud.google.com/sdk/docs/install#deb) + + +### Configure the Google Cloud CLI - Authenticate the `gcloud` CLI with the google account you used for GCP diff --git a/LINUX_keep_current.md b/LINUX_keep_current.md index 596e2672..a82372c7 100644 --- a/LINUX_keep_current.md +++ b/LINUX_keep_current.md @@ -283,17 +283,14 @@ sudo service docker stop ## Python setup check +Let's run some checks. If any of the following steps fail, ask a TA for help. + Let's reset your terminal: ```bash cd ~/code && exec zsh ``` -Check your Python version with the following commands: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 -``` - Make sure you can run Jupyter: ```bash diff --git a/REMOTE_SETUP.md b/REMOTE_SETUP.md index f25a7170..27abe4fe 100644 --- a/REMOTE_SETUP.md +++ b/REMOTE_SETUP.md @@ -872,17 +872,14 @@ curl $SOURCE > $LOCATION/custom.css ## Python setup check +Let's run some checks. If any of the following steps fail, ask a TA for help. + Let's reset your terminal: ```bash cd ~/code && exec zsh ``` -Check your Python version with the following commands: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 -``` - Make sure you can run Jupyter: ```bash diff --git a/VM.md b/VM.md index 22966c82..8fa666df 100644 --- a/VM.md +++ b/VM.md @@ -894,17 +894,14 @@ curl $SOURCE > $LOCATION/custom.css ## Python setup check +Let's run some checks. If any of the following steps fail, ask a TA for help. + Let's reset your terminal: ```bash cd ~/code && exec zsh ``` -Check your Python version with the following commands: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 -``` - Make sure you can run Jupyter: ```bash diff --git a/WINDOWS.es.md b/WINDOWS.es.md index 678cc3d5..bbb32521 100644 --- a/WINDOWS.es.md +++ b/WINDOWS.es.md @@ -720,18 +720,6 @@ gh auth status :x: De lo contrario, **contacta a un profesor**. -## CLI de Google Cloud - -Instala la CLI de `gcloud` para comunicar con [Google Cloud Platform](https://cloud.google.com/) a través de la terminal: -```bash -sudo apt-get update && sudo apt-get install ca-certificates gnupg curl -curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg -echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list -sudo apt-get update && sudo apt-get install google-cloud-cli -``` -👉 [Documentación para la instalación](https://cloud.google.com/sdk/docs/install#deb) - - ## Dotfiles Mejoremos la experiencia de tu máquina instalando los [dotfiles 🔗](https://github.com/lewagon/dotfiles) preconfigurados de Le Wagon. Son archivos de configuración para tu terminal, zsh, git y VS Code. @@ -1072,59 +1060,6 @@ Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con `CTRL` + ` ¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp. -## Parámetros de Windows - -### Intercambio de archivos entre Windows y Ubuntu - -Necesitamos una manera fácil de transferir archivos de Windows a Ubuntu y viceversa. - -Para ello, vamos a crear atajos a directorios Ubuntu en el **Explorador de Archivos** de Windows: -- Abre el Explorador de Archivos de Windows (o usa el atajo `WIN` + `E`) -- En la Barra de Direcciones, coloca `\\wsl$\` (o `\\wsl$\Ubuntu` si eso no funciona) -- Ahora tienes acceso al sistema de archivos de Ubuntu -- Navega por el sistema de archivos de Ubuntu para encontrar los directorios que te interesen -- Arrastra las carpetas que te interesen a la Barra de Direcciones para crear atajos - -![Cómo agregar un atajo al sistema de archivos de Ubuntu en Windows](https://github.com/lewagon/setup/blob/master/images/windows_ubuntu_file_system_shortcut.gif) - -### Abre el Explorador de Archivos de Windows desde la terminal de Ubuntu - -Otra opción para mover archivos es abrir el **Explorador de Archivos** de Windows desde la terminal de Ubuntu: -- Abre una terminal de Ubuntu -- Ve al directorio que quieres explorar -- Ejecuta el comando `explorer.exe .` (Otra alternativa es usar `wslview .`) -- Si obtienes un mensaje de input output error, ejecuta `wsl --shutdown` en una PowerShell de Windows y abre la terminal de Ubuntu nuevamente - -![Cómo abrir Windows Explorer desde la terminal de Ubuntu](https://github.com/lewagon/setup/blob/master/images/windows_explorer_from_terminal.png) - -### Uso del Sistema de Archivos de Ubuntu - -Es posible que quieras averiguar la localización exacta de un directorio en Windows en el sistema de archivos de Ubuntu o viceversa. - -Para convertir una ruta Windows a una Ubuntu y viceversa: -- Abre una terminal de Ubuntu -- Usa el comando `wslpath "C:\Program Files"` para traducir la ruta Windows a una Ubuntu -- Usa el comando `wslpath -w "/home"` para traducir una ruta Ubuntu a una Windows -- El comando `wslpath -w $(pwd)` devuelve la ruta Windows del directorio Ubuntu actual - -![Cómo acceder a una ruta Windows desde una terminal de Ubuntu](https://github.com/lewagon/setup/blob/master/images/windows_path_from_terminal.png) - -### Anclaje de aplicaciones a tu barra de tareas - -Usarás frecuentemente casi todas las aplicaciones que has instalado hoy. ¡Anclémoslas a tu barra de tareas para que estén a solo un clic de ti! - -Para ello, abre la aplicación. Haz clic derecho en el ícono de la barra de tareas para hacer que aparezca el menú contextual (también llamado emergente) y selecciona "Pin to taskbar". - -![Cómo anclar una aplicación a la barra de tareas en Windows](https://github.com/lewagon/setup/blob/master/images/windows_taskbar.png) - -Ancla lo siguiente: -- Tu terminal -- Tu explorador de archivos -- VS Code -- Tu navegador de Internet -- Slack - - ## Docker 🐋 Docker es una plataforma abierta para desarrollo, entrega y operación de aplicaciones. @@ -1327,6 +1262,18 @@ Una vez completada la verificación, deberías recibir un correo que indique: "Y ¡Eso es todo para la configuración en el navegador! La configuración de la terminal aparece más adelante en esta guía. +## CLI de Google Cloud + +Instala la CLI de `gcloud` para comunicar con [Google Cloud Platform](https://cloud.google.com/) a través de la terminal: +```bash +sudo apt-get update && sudo apt-get install ca-certificates gnupg curl +curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg +echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list +sudo apt-get update && sudo apt-get install google-cloud-cli +``` +👉 [Documentación para la instalación](https://cloud.google.com/sdk/docs/install#deb) + + ### Configurar Cloud SDK - Autentica la CLI de `gcloud` con la cuenta de Google que utilizaste para GCP @@ -1431,6 +1378,59 @@ Para asegurarte de que todo lo relacionado a videollamadas funcione bien, prueba ¡También puedes instalar la aplicación Slack en tu smartphone e iniciar sesión en `lewagon-alumni`! +## Parámetros de Windows + +### Intercambio de archivos entre Windows y Ubuntu + +Necesitamos una manera fácil de transferir archivos de Windows a Ubuntu y viceversa. + +Para ello, vamos a crear atajos a directorios Ubuntu en el **Explorador de Archivos** de Windows: +- Abre el Explorador de Archivos de Windows (o usa el atajo `WIN` + `E`) +- En la Barra de Direcciones, coloca `\\wsl$\` (o `\\wsl$\Ubuntu` si eso no funciona) +- Ahora tienes acceso al sistema de archivos de Ubuntu +- Navega por el sistema de archivos de Ubuntu para encontrar los directorios que te interesen +- Arrastra las carpetas que te interesen a la Barra de Direcciones para crear atajos + +![Cómo agregar un atajo al sistema de archivos de Ubuntu en Windows](https://github.com/lewagon/setup/blob/master/images/windows_ubuntu_file_system_shortcut.gif) + +### Abre el Explorador de Archivos de Windows desde la terminal de Ubuntu + +Otra opción para mover archivos es abrir el **Explorador de Archivos** de Windows desde la terminal de Ubuntu: +- Abre una terminal de Ubuntu +- Ve al directorio que quieres explorar +- Ejecuta el comando `explorer.exe .` (Otra alternativa es usar `wslview .`) +- Si obtienes un mensaje de input output error, ejecuta `wsl --shutdown` en una PowerShell de Windows y abre la terminal de Ubuntu nuevamente + +![Cómo abrir Windows Explorer desde la terminal de Ubuntu](https://github.com/lewagon/setup/blob/master/images/windows_explorer_from_terminal.png) + +### Uso del Sistema de Archivos de Ubuntu + +Es posible que quieras averiguar la localización exacta de un directorio en Windows en el sistema de archivos de Ubuntu o viceversa. + +Para convertir una ruta Windows a una Ubuntu y viceversa: +- Abre una terminal de Ubuntu +- Usa el comando `wslpath "C:\Program Files"` para traducir la ruta Windows a una Ubuntu +- Usa el comando `wslpath -w "/home"` para traducir una ruta Ubuntu a una Windows +- El comando `wslpath -w $(pwd)` devuelve la ruta Windows del directorio Ubuntu actual + +![Cómo acceder a una ruta Windows desde una terminal de Ubuntu](https://github.com/lewagon/setup/blob/master/images/windows_path_from_terminal.png) + +### Anclaje de aplicaciones a tu barra de tareas + +Usarás frecuentemente casi todas las aplicaciones que has instalado hoy. ¡Anclémoslas a tu barra de tareas para que estén a solo un clic de ti! + +Para ello, abre la aplicación. Haz clic derecho en el ícono de la barra de tareas para hacer que aparezca el menú contextual (también llamado emergente) y selecciona "Pin to taskbar". + +![Cómo anclar una aplicación a la barra de tareas en Windows](https://github.com/lewagon/setup/blob/master/images/windows_taskbar.png) + +Ancla lo siguiente: +- Tu terminal +- Tu explorador de archivos +- VS Code +- Tu navegador de Internet +- Slack + + ## Kata (Extra) Si has terminado la configuración, te pedimos que preguntes si alguien necesita ayuda con la suya (macOS, Linux o Windows). Las primeras clases son a las 2pm. Hablaremos de la configuración que acabas de hacer y de Kitt. diff --git a/WINDOWS.md b/WINDOWS.md index 3cd1f2e2..30e542e7 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -735,18 +735,6 @@ gh auth status :x: If not, **contact a teacher**. -## Google Cloud CLI - -Install the `gcloud` CLI to communicate with [Google Cloud Platform](https://cloud.google.com/) through your terminal: -```bash -sudo apt-get update && sudo apt-get install ca-certificates gnupg curl -curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg -echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list -sudo apt-get update && sudo apt-get install google-cloud-cli -``` -👉 [Install documentation](https://cloud.google.com/sdk/docs/install#deb) - - ## Dotfiles Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. @@ -1049,17 +1037,14 @@ To stop the Jupyter server in the terminal, press `Ctrl` + `C`, enter y, then pr ## Python setup check +Let's run some checks. If any of the following steps fail, ask a TA for help. + Let's reset your terminal: ```bash cd ~/code && exec zsh ``` -Check your Python version with the following commands: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 -``` - Make sure you can run Jupyter: ```bash @@ -1120,59 +1105,6 @@ You can close your web browser then terminate the jupyter server with `CTRL` + ` Here you have it! A complete python virtual env with all the third-party packages you'll need for the whole bootcamp. -## Windows settings - -### Exchange files between Windows and Ubuntu - -We need an easy way to transfer files from Windows to Ubuntu and vice versa. - -In order to do that, let's create shortcuts to Ubuntu directories in the Windows **File Explorer**: -- Open the Windows File Explorer (or use the shortcut `WIN` + `E`) -- In the Address Bar, enter `\\wsl$\` (or `\\wsl$\Ubuntu` if it does not work) -- You now have acces to the Ubuntu file system -- Dive into the Ubuntu file system in order to look for directories of interest -- Drag the desired folders into the Address Bar in order to create shortcuts - -![How to add a shortcut to Ubuntu file system on Windows](https://github.com/lewagon/setup/blob/master/images/windows_ubuntu_file_system_shortcut.gif) - -### Open the Windows File Explorer from the Ubuntu terminal - -Another option to move files around is to open the Windows **File Explorer** from the Ubuntu terminal: -- Open an Ubuntu terminal -- Go to the directory you wish to explore -- Run the `explorer.exe .` command (alternatively, use `wslview .`) -- If you get an input output error message, run `wsl --shutdown` in a Windows PowerShell and reopen an Ubuntu terminal - -![How to launch Windows Explorer from Ubuntu terminal](https://github.com/lewagon/setup/blob/master/images/windows_explorer_from_terminal.png) - -### Find your way in the Ubuntu File System - -You might want to figure out the exact location of a Windows directory in the Ubuntu file system, or the other way around. - -In order to convert a Windows path to and from an Ubuntu path: -- Open an Ubuntu terminal -- Use the `wslpath "C:\Program Files"` command in order to translate a Windows path into an Ubuntu path -- Use the `wslpath -w "/home"` command in order to translate an Ubuntu path into a Windows path -- In particular, the `wslpath -w $(pwd)` command returns the Windows path of the current Ubuntu directory - -![How to access a Windows path from Ubuntu terminal](https://github.com/lewagon/setup/blob/master/images/windows_path_from_terminal.png) - -### Pin apps to your taskbar - -You are going to use most of the apps you've installed today really often. Let's pin them to your taskbar so that they are just one click away! - -To pin an app to your taskbar, launch the app, right-click on the icon in the taskbar to bring up the context menu and choose "Pin to taskbar". - -![How to pin an app to the taskbar in Windows](https://github.com/lewagon/setup/blob/master/images/windows_taskbar.png) - -You must pin: -- Your terminal -- Your file explorer -- VS Code -- Your Internet browser -- Slack - - ## Docker 🐋 Docker is an open platform for developing, shipping, and running applications. @@ -1374,7 +1306,22 @@ Once the verification goes through, you should receive an email stating that "Yo That's it for the browser setup! Terminal setup comes later in this guide. -### Configure Cloud sdk + +## Google Cloud CLI + +### Install `gcloud` + +Install the `gcloud` CLI to communicate with [Google Cloud Platform](https://cloud.google.com/) through your terminal: +```bash +sudo apt-get update && sudo apt-get install ca-certificates gnupg curl +curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg +echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list +sudo apt-get update && sudo apt-get install google-cloud-cli +``` +👉 [Install documentation](https://cloud.google.com/sdk/docs/install#deb) + + +### Configure the Google Cloud CLI - Authenticate the `gcloud` CLI with the google account you used for GCP @@ -1477,6 +1424,59 @@ To ensure that everything is working fine for video calls, let's test your camer You can also install Slack app on your phone and sign in `lewagon-alumni`! +## Windows settings + +### Exchange files between Windows and Ubuntu + +We need an easy way to transfer files from Windows to Ubuntu and vice versa. + +In order to do that, let's create shortcuts to Ubuntu directories in the Windows **File Explorer**: +- Open the Windows File Explorer (or use the shortcut `WIN` + `E`) +- In the Address Bar, enter `\\wsl$\` (or `\\wsl$\Ubuntu` if it does not work) +- You now have acces to the Ubuntu file system +- Dive into the Ubuntu file system in order to look for directories of interest +- Drag the desired folders into the Address Bar in order to create shortcuts + +![How to add a shortcut to Ubuntu file system on Windows](https://github.com/lewagon/setup/blob/master/images/windows_ubuntu_file_system_shortcut.gif) + +### Open the Windows File Explorer from the Ubuntu terminal + +Another option to move files around is to open the Windows **File Explorer** from the Ubuntu terminal: +- Open an Ubuntu terminal +- Go to the directory you wish to explore +- Run the `explorer.exe .` command (alternatively, use `wslview .`) +- If you get an input output error message, run `wsl --shutdown` in a Windows PowerShell and reopen an Ubuntu terminal + +![How to launch Windows Explorer from Ubuntu terminal](https://github.com/lewagon/setup/blob/master/images/windows_explorer_from_terminal.png) + +### Find your way in the Ubuntu File System + +You might want to figure out the exact location of a Windows directory in the Ubuntu file system, or the other way around. + +In order to convert a Windows path to and from an Ubuntu path: +- Open an Ubuntu terminal +- Use the `wslpath "C:\Program Files"` command in order to translate a Windows path into an Ubuntu path +- Use the `wslpath -w "/home"` command in order to translate an Ubuntu path into a Windows path +- In particular, the `wslpath -w $(pwd)` command returns the Windows path of the current Ubuntu directory + +![How to access a Windows path from Ubuntu terminal](https://github.com/lewagon/setup/blob/master/images/windows_path_from_terminal.png) + +### Pin apps to your taskbar + +You are going to use most of the apps you've installed today really often. Let's pin them to your taskbar so that they are just one click away! + +To pin an app to your taskbar, launch the app, right-click on the icon in the taskbar to bring up the context menu and choose "Pin to taskbar". + +![How to pin an app to the taskbar in Windows](https://github.com/lewagon/setup/blob/master/images/windows_taskbar.png) + +You must pin: +- Your terminal +- Your file explorer +- VS Code +- Your Internet browser +- Slack + + ## (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. diff --git a/WINDOWS_keep_current.md b/WINDOWS_keep_current.md index b106db97..9c30cd4b 100644 --- a/WINDOWS_keep_current.md +++ b/WINDOWS_keep_current.md @@ -275,17 +275,14 @@ Stop the Docker Desktop app ## Python setup check +Let's run some checks. If any of the following steps fail, ask a TA for help. + Let's reset your terminal: ```bash cd ~/code && exec zsh ``` -Check your Python version with the following commands: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 -``` - Make sure you can run Jupyter: ```bash diff --git a/macOS.es.md b/macOS.es.md index a6ff833a..27135704 100644 --- a/macOS.es.md +++ b/macOS.es.md @@ -632,35 +632,6 @@ Deberías obtener lo siguiente: ![](images/docker_info.png) - -## CLI de `gcloud` - -Antes de configurar nuestra cuenta Google Cloud Platform vamos a configurar el CLI de `gcloud` (una interfaz de línea de comando para Google Cloud Platform). Ejecuta el siguiente código y sigue las indicaciones de la terminal para actualizar tu $PATH y habilitar la finalización del comando del shell para el archivo `.zshrc`: - -```bash -brew install --cask google-cloud-sdk -``` - -Luego podrás ejecutar lo siguiente: - -```bash -$(brew --prefix)/share/google-cloud-sdk/install.sh -``` - -
- ¿Recibes un error no such file or directory? - - Prueba esto: - -```bash -$(brew --prefix)/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/install.sh -``` - -Si eso no funciona, contacta a un TA. - -
- - ## Configuración de Google Cloud Platform [Google Cloud](https://cloud.google.com/) es una solución en la nube que utilizarás para desplegar tus productos basados en Machine Learning en producción. @@ -795,6 +766,35 @@ Una vez completada la verificación, deberías recibir un correo que indique: "Y ¡Eso es todo para la configuración en el navegador! La configuración de la terminal aparece más adelante en esta guía. + +## CLI de `gcloud` + +Antes de configurar nuestra cuenta Google Cloud Platform vamos a configurar el CLI de `gcloud` (una interfaz de línea de comando para Google Cloud Platform). Ejecuta el siguiente código y sigue las indicaciones de la terminal para actualizar tu $PATH y habilitar la finalización del comando del shell para el archivo `.zshrc`: + +```bash +brew install --cask google-cloud-sdk +``` + +Luego podrás ejecutar lo siguiente: + +```bash +$(brew --prefix)/share/google-cloud-sdk/install.sh +``` + +
+ ¿Recibes un error no such file or directory? + + Prueba esto: + +```bash +$(brew --prefix)/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/install.sh +``` + +Si eso no funciona, contacta a un TA. + +
+ + ### Configurar Cloud SDK - Autentica la CLI de `gcloud` con la cuenta de Google que utilizaste para GCP diff --git a/macOS.md b/macOS.md index a046a1ad..8d2f4309 100644 --- a/macOS.md +++ b/macOS.md @@ -539,17 +539,14 @@ curl $SOURCE > $LOCATION/custom.css ## Python setup check +Let's run some checks. If any of the following steps fail, ask a TA for help. + Let's reset your terminal: ```bash cd ~/code && exec zsh ``` -Check your Python version with the following commands: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 -``` - Make sure you can run Jupyter: ```bash @@ -635,36 +632,6 @@ You should get: ![](images/docker_info.png) - -## `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: - -```bash -brew install --cask google-cloud-sdk -``` - -Then you can: - -```bash -$(brew --prefix)/share/google-cloud-sdk/install.sh -``` - -
- Getting a no such file or directory error? - - - Try this: - -```bash -$(brew --prefix)/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/install.sh -``` - -If that doesn't work, contact a TA. - -
- - ## Google Cloud Platform setup [Google Cloud](https://cloud.google.com/) is a cloud solution that you are going to use in order to deploy your Machine Learning-based products to production. @@ -799,7 +766,39 @@ Once the verification goes through, you should receive an email stating that "Yo That's it for the browser setup! Terminal setup comes later in this guide. -### Configure Cloud sdk + +## Google Cloud CLI + +### Install `gcloud` + +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: + +```bash +brew install --cask google-cloud-sdk +``` + +Then you can: + +```bash +$(brew --prefix)/share/google-cloud-sdk/install.sh +``` + +
+ Getting a no such file or directory error? + + + Try this: + +```bash +$(brew --prefix)/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/install.sh +``` + +If that doesn't work, contact a TA. + +
+ + +### Configure the Google Cloud CLI - Authenticate the `gcloud` CLI with the google account you used for GCP diff --git a/macOS_keep_current.md b/macOS_keep_current.md index b6ac7caa..9add2b9c 100644 --- a/macOS_keep_current.md +++ b/macOS_keep_current.md @@ -291,17 +291,14 @@ Stop the Docker app ## Python setup check +Let's run some checks. If any of the following steps fail, ask a TA for help. + Let's reset your terminal: ```bash cd ~/code && exec zsh ``` -Check your Python version with the following commands: -```bash -zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.12.9 -``` - Make sure you can run Jupyter: ```bash From db5ebc8f105702adffbab1524af16983c266c9f7 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Fri, 18 Sep 2026 13:49:54 +0200 Subject: [PATCH 22/42] Auto confirm brew --- _partials/homebrew.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/_partials/homebrew.md b/_partials/homebrew.md index 3a569b2e..c815ffec 100644 --- a/_partials/homebrew.md +++ b/_partials/homebrew.md @@ -30,14 +30,14 @@ brew update Then install some useful software (you can copy / paste all the lines at once): ```bash -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 +brew upgrade git || brew install -y git +brew upgrade gh || brew install -y gh +brew upgrade wget || brew install -y wget +brew upgrade imagemagick || brew install -y imagemagick +brew upgrade jq || brew install -y jq +brew upgrade openssl || brew install -y openssl +brew upgrade tree || brew install -y tree +brew upgrade ncdu || brew install -y ncdu +brew upgrade xz || brew install -y xz +brew upgrade readline || brew install -y readline ``` From de5750966e56e34ff3aabadc33f22cc4bb43b6b9 Mon Sep 17 00:00:00 2001 From: github-actions Date: Fri, 18 Sep 2026 11:50:13 +0000 Subject: [PATCH 23/42] setup guides generated --- macOS.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/macOS.md b/macOS.md index 8d2f4309..ffcfa26c 100644 --- a/macOS.md +++ b/macOS.md @@ -102,16 +102,16 @@ brew update Then install some useful software (you can copy / paste all the lines at once): ```bash -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 +brew upgrade git || brew install -y git +brew upgrade gh || brew install -y gh +brew upgrade wget || brew install -y wget +brew upgrade imagemagick || brew install -y imagemagick +brew upgrade jq || brew install -y jq +brew upgrade openssl || brew install -y openssl +brew upgrade tree || brew install -y tree +brew upgrade ncdu || brew install -y ncdu +brew upgrade xz || brew install -y xz +brew upgrade readline || brew install -y readline ``` From 66508c54fbe60573cc625f44b390f7351bc63741 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Sat, 19 Sep 2026 13:09:52 +0200 Subject: [PATCH 24/42] Fallback for returning students --- _partials/dotfiles.md | 116 ++++++++++++++++++++++++++++++++++-------- 1 file changed, 96 insertions(+), 20 deletions(-) diff --git a/_partials/dotfiles.md b/_partials/dotfiles.md index 533d7ce9..31fd7995 100644 --- a/_partials/dotfiles.md +++ b/_partials/dotfiles.md @@ -2,6 +2,21 @@ Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. + +### Get your GitHub username + +Run the following command: + +```bash +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME +``` + +✔️ You should see your Github username printed. + +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). + + ### Forking the dotfiles To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. @@ -9,38 +24,99 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
-If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open a ticket with a TA and open this for instructions ❗ You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. -**Open a ticket** with a TA and do one of the following: -- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. -- If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. -- If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +**Together with a TA**, do one of the following: + +
+I'm using the same machine (or a new machine which already has the dotfiles). + +1. Move into your existing dotfiles folder: + ```bash + cd ~/code/$GITHUB_USERNAME/dotifles + ``` + +1. Check the diff against the current version of Le Wagon's dotfiles: + ```bash + git diff upstream/master + ``` + +If there is no meaningful difference other than your name and email setting, continue with the setup.
-
+
+I'm using a new machine without the dotfiles. -Run the following command: +1. Browse to GitHub and find your `dotfiles` repository. -```bash -export GITHUB_USERNAME=`gh api user | jq -r '.login'` -echo $GITHUB_USERNAME -``` +1. Check how many commits it's behind and ahead `lewagon/dotfiles:master`. You can see this just above the file list. -✔️ You should see your Github username printed. +1. Click through to the behind and the ahead, and scroll down to see the diffs. -❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). +If there is no meaningful difference other than your name and email setting, continue with the setup. + +
+ +
+The previous step revealed meaningful differences. + +If you are OK with losing your existing dotfiles (recommended): + +1. Delete your existing dotfiles repository on GitHub. +1. Delete the local repository: + ```bash + cd ~/code && rm -rf ~/code/$GITHUB_USERNAME/dotifles + ``` +1. Continue with the setup. + +
+If you do not want to lose your existing dotfiles, we recommend working with branches. Click to open. + +On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles**. + +1. Commit your current version of your dotfiles: + + ```bash + git add . + git status # Check what will be committed + git commit -m "Version prior to new setup" + ``` + +1. Create a branch of your current dotfiles setup, and push to GitHub: + + ```bash + git checkout -b old-setup + git push origin old-setup + ``` + +1. Go back to `master`: `git checkout master`. + +1. On local `master`, `git pull upstream master`. + +1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. + + It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. Especially anything related to `pyenv` and to Python environments. + + If there are too many conficts, use your code editor to replace the contents of the conflicting files with the ones from [the Le Wagon dotfiles](https://www.github.com/lewagon/dotfiles). + + Commit your conflict resolution: `git commit --no-edit` + +1. Push your changes to GitHub: `git push origin master`. + +1. Continue with the setup. + +
+ +
+ +
+ +
Time to fork the repo and clone it on your computer: From 90b602098f416a76a9f102bf53e66c146fce9482 Mon Sep 17 00:00:00 2001 From: github-actions Date: Sat, 19 Sep 2026 11:10:13 +0000 Subject: [PATCH 25/42] setup guides generated --- LINUX.md | 116 +++++++++++++++++++++++++++++++++++++++--------- REMOTE_SETUP.md | 116 +++++++++++++++++++++++++++++++++++++++--------- VM.md | 116 +++++++++++++++++++++++++++++++++++++++--------- WINDOWS.md | 116 +++++++++++++++++++++++++++++++++++++++--------- macOS.md | 116 +++++++++++++++++++++++++++++++++++++++--------- 5 files changed, 480 insertions(+), 100 deletions(-) diff --git a/LINUX.md b/LINUX.md index d5d47015..a7c684fe 100644 --- a/LINUX.md +++ b/LINUX.md @@ -296,6 +296,21 @@ gh auth status Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. + +### Get your GitHub username + +Run the following command: + +```bash +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME +``` + +✔️ You should see your Github username printed. + +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). + + ### Forking the dotfiles To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. @@ -303,38 +318,99 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
-If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open a ticket with a TA and open this for instructions ❗ You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. -**Open a ticket** with a TA and do one of the following: -- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. -- If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. -- If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +**Together with a TA**, do one of the following: + +
+I'm using the same machine (or a new machine which already has the dotfiles). + +1. Move into your existing dotfiles folder: + ```bash + cd ~/code/$GITHUB_USERNAME/dotifles + ``` + +1. Check the diff against the current version of Le Wagon's dotfiles: + ```bash + git diff upstream/master + ``` + +If there is no meaningful difference other than your name and email setting, continue with the setup.
-
+
+I'm using a new machine without the dotfiles. -Run the following command: +1. Browse to GitHub and find your `dotfiles` repository. -```bash -export GITHUB_USERNAME=`gh api user | jq -r '.login'` -echo $GITHUB_USERNAME -``` +1. Check how many commits it's behind and ahead `lewagon/dotfiles:master`. You can see this just above the file list. -✔️ You should see your Github username printed. +1. Click through to the behind and the ahead, and scroll down to see the diffs. -❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). +If there is no meaningful difference other than your name and email setting, continue with the setup. + +
+ +
+The previous step revealed meaningful differences. + +If you are OK with losing your existing dotfiles (recommended): + +1. Delete your existing dotfiles repository on GitHub. +1. Delete the local repository: + ```bash + cd ~/code && rm -rf ~/code/$GITHUB_USERNAME/dotifles + ``` +1. Continue with the setup. + +
+If you do not want to lose your existing dotfiles, we recommend working with branches. Click to open. + +On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles**. + +1. Commit your current version of your dotfiles: + + ```bash + git add . + git status # Check what will be committed + git commit -m "Version prior to new setup" + ``` + +1. Create a branch of your current dotfiles setup, and push to GitHub: + + ```bash + git checkout -b old-setup + git push origin old-setup + ``` + +1. Go back to `master`: `git checkout master`. + +1. On local `master`, `git pull upstream master`. + +1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. + + It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. Especially anything related to `pyenv` and to Python environments. + + If there are too many conficts, use your code editor to replace the contents of the conflicting files with the ones from [the Le Wagon dotfiles](https://www.github.com/lewagon/dotfiles). + + Commit your conflict resolution: `git commit --no-edit` + +1. Push your changes to GitHub: `git push origin master`. + +1. Continue with the setup. + +
+ +
+ +
+ +
Time to fork the repo and clone it on your computer: diff --git a/REMOTE_SETUP.md b/REMOTE_SETUP.md index 27abe4fe..e8e1702b 100644 --- a/REMOTE_SETUP.md +++ b/REMOTE_SETUP.md @@ -645,6 +645,21 @@ gh auth status Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. + +### Get your GitHub username + +Run the following command: + +```bash +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME +``` + +✔️ You should see your Github username printed. + +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). + + ### Forking the dotfiles To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. @@ -652,38 +667,99 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
-If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open a ticket with a TA and open this for instructions ❗ You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. -**Open a ticket** with a TA and do one of the following: -- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. -- If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. -- If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +**Together with a TA**, do one of the following: + +
+I'm using the same machine (or a new machine which already has the dotfiles). + +1. Move into your existing dotfiles folder: + ```bash + cd ~/code/$GITHUB_USERNAME/dotifles + ``` + +1. Check the diff against the current version of Le Wagon's dotfiles: + ```bash + git diff upstream/master + ``` + +If there is no meaningful difference other than your name and email setting, continue with the setup.
-
+
+I'm using a new machine without the dotfiles. -Run the following command: +1. Browse to GitHub and find your `dotfiles` repository. -```bash -export GITHUB_USERNAME=`gh api user | jq -r '.login'` -echo $GITHUB_USERNAME -``` +1. Check how many commits it's behind and ahead `lewagon/dotfiles:master`. You can see this just above the file list. -✔️ You should see your Github username printed. +1. Click through to the behind and the ahead, and scroll down to see the diffs. -❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). +If there is no meaningful difference other than your name and email setting, continue with the setup. + +
+ +
+The previous step revealed meaningful differences. + +If you are OK with losing your existing dotfiles (recommended): + +1. Delete your existing dotfiles repository on GitHub. +1. Delete the local repository: + ```bash + cd ~/code && rm -rf ~/code/$GITHUB_USERNAME/dotifles + ``` +1. Continue with the setup. + +
+If you do not want to lose your existing dotfiles, we recommend working with branches. Click to open. + +On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles**. + +1. Commit your current version of your dotfiles: + + ```bash + git add . + git status # Check what will be committed + git commit -m "Version prior to new setup" + ``` + +1. Create a branch of your current dotfiles setup, and push to GitHub: + + ```bash + git checkout -b old-setup + git push origin old-setup + ``` + +1. Go back to `master`: `git checkout master`. + +1. On local `master`, `git pull upstream master`. + +1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. + + It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. Especially anything related to `pyenv` and to Python environments. + + If there are too many conficts, use your code editor to replace the contents of the conflicting files with the ones from [the Le Wagon dotfiles](https://www.github.com/lewagon/dotfiles). + + Commit your conflict resolution: `git commit --no-edit` + +1. Push your changes to GitHub: `git push origin master`. + +1. Continue with the setup. + +
+ +
+ +
+ +
Time to fork the repo and clone it on your computer: diff --git a/VM.md b/VM.md index 8fa666df..bd6a83cf 100644 --- a/VM.md +++ b/VM.md @@ -667,6 +667,21 @@ The browser has now saved the service account json file 🔑 in your downloads d Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. + +### Get your GitHub username + +Run the following command: + +```bash +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME +``` + +✔️ You should see your Github username printed. + +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). + + ### Forking the dotfiles To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. @@ -674,38 +689,99 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
-If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open a ticket with a TA and open this for instructions ❗ You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. -**Open a ticket** with a TA and do one of the following: -- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. -- If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. -- If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +**Together with a TA**, do one of the following: + +
+I'm using the same machine (or a new machine which already has the dotfiles). + +1. Move into your existing dotfiles folder: + ```bash + cd ~/code/$GITHUB_USERNAME/dotifles + ``` + +1. Check the diff against the current version of Le Wagon's dotfiles: + ```bash + git diff upstream/master + ``` + +If there is no meaningful difference other than your name and email setting, continue with the setup.
-
+
+I'm using a new machine without the dotfiles. -Run the following command: +1. Browse to GitHub and find your `dotfiles` repository. -```bash -export GITHUB_USERNAME=`gh api user | jq -r '.login'` -echo $GITHUB_USERNAME -``` +1. Check how many commits it's behind and ahead `lewagon/dotfiles:master`. You can see this just above the file list. -✔️ You should see your Github username printed. +1. Click through to the behind and the ahead, and scroll down to see the diffs. -❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). +If there is no meaningful difference other than your name and email setting, continue with the setup. + +
+ +
+The previous step revealed meaningful differences. + +If you are OK with losing your existing dotfiles (recommended): + +1. Delete your existing dotfiles repository on GitHub. +1. Delete the local repository: + ```bash + cd ~/code && rm -rf ~/code/$GITHUB_USERNAME/dotifles + ``` +1. Continue with the setup. + +
+If you do not want to lose your existing dotfiles, we recommend working with branches. Click to open. + +On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles**. + +1. Commit your current version of your dotfiles: + + ```bash + git add . + git status # Check what will be committed + git commit -m "Version prior to new setup" + ``` + +1. Create a branch of your current dotfiles setup, and push to GitHub: + + ```bash + git checkout -b old-setup + git push origin old-setup + ``` + +1. Go back to `master`: `git checkout master`. + +1. On local `master`, `git pull upstream master`. + +1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. + + It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. Especially anything related to `pyenv` and to Python environments. + + If there are too many conficts, use your code editor to replace the contents of the conflicting files with the ones from [the Le Wagon dotfiles](https://www.github.com/lewagon/dotfiles). + + Commit your conflict resolution: `git commit --no-edit` + +1. Push your changes to GitHub: `git push origin master`. + +1. Continue with the setup. + +
+ +
+ +
+ +
Time to fork the repo and clone it on your computer: diff --git a/WINDOWS.md b/WINDOWS.md index 30e542e7..24a4defc 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -739,6 +739,21 @@ gh auth status Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. + +### Get your GitHub username + +Run the following command: + +```bash +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME +``` + +✔️ You should see your Github username printed. + +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). + + ### Forking the dotfiles To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. @@ -746,38 +761,99 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
-If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open a ticket with a TA and open this for instructions ❗ You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. -**Open a ticket** with a TA and do one of the following: -- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. -- If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. -- If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +**Together with a TA**, do one of the following: + +
+I'm using the same machine (or a new machine which already has the dotfiles). + +1. Move into your existing dotfiles folder: + ```bash + cd ~/code/$GITHUB_USERNAME/dotifles + ``` + +1. Check the diff against the current version of Le Wagon's dotfiles: + ```bash + git diff upstream/master + ``` + +If there is no meaningful difference other than your name and email setting, continue with the setup.
-
+
+I'm using a new machine without the dotfiles. -Run the following command: +1. Browse to GitHub and find your `dotfiles` repository. -```bash -export GITHUB_USERNAME=`gh api user | jq -r '.login'` -echo $GITHUB_USERNAME -``` +1. Check how many commits it's behind and ahead `lewagon/dotfiles:master`. You can see this just above the file list. -✔️ You should see your Github username printed. +1. Click through to the behind and the ahead, and scroll down to see the diffs. -❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). +If there is no meaningful difference other than your name and email setting, continue with the setup. + +
+ +
+The previous step revealed meaningful differences. + +If you are OK with losing your existing dotfiles (recommended): + +1. Delete your existing dotfiles repository on GitHub. +1. Delete the local repository: + ```bash + cd ~/code && rm -rf ~/code/$GITHUB_USERNAME/dotifles + ``` +1. Continue with the setup. + +
+If you do not want to lose your existing dotfiles, we recommend working with branches. Click to open. + +On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles**. + +1. Commit your current version of your dotfiles: + + ```bash + git add . + git status # Check what will be committed + git commit -m "Version prior to new setup" + ``` + +1. Create a branch of your current dotfiles setup, and push to GitHub: + + ```bash + git checkout -b old-setup + git push origin old-setup + ``` + +1. Go back to `master`: `git checkout master`. + +1. On local `master`, `git pull upstream master`. + +1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. + + It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. Especially anything related to `pyenv` and to Python environments. + + If there are too many conficts, use your code editor to replace the contents of the conflicting files with the ones from [the Le Wagon dotfiles](https://www.github.com/lewagon/dotfiles). + + Commit your conflict resolution: `git commit --no-edit` + +1. Push your changes to GitHub: `git push origin master`. + +1. Continue with the setup. + +
+ +
+ +
+ +
Time to fork the repo and clone it on your computer: diff --git a/macOS.md b/macOS.md index ffcfa26c..6072d975 100644 --- a/macOS.md +++ b/macOS.md @@ -276,6 +276,21 @@ gh auth status Let's enhance the experience of your machine by installing Le Wagon's pre-configured [dotfiles 🔗](https://github.com/lewagon/dotfiles). These are configuration files for your terminal, zsh, git, and VS Code. + +### Get your GitHub username + +Run the following command: + +```bash +export GITHUB_USERNAME=`gh api user | jq -r '.login'` +echo $GITHUB_USERNAME +``` + +✔️ You should see your Github username printed. + +❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). + + ### Forking the dotfiles To customise this configuration for yourself, you'll need to **fork** the repository to your own Github account. @@ -283,38 +298,99 @@ To customise this configuration for yourself, you'll need to **fork** the reposi **Forking** creates a copy of the repository under your account (`your_github_username/dotfiles`), which you can then modify with your personal information, such as your name.
-If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open this first ❗ +If you already did another Le Wagon bootcamp (Web Development, AI Software Development, Data Analytics, Data Science & AI, open a ticket with a TA and open this for instructions ❗ You may have an older version of the Le Wagon dotfiles. They could be incompatible with the current setup. -**Open a ticket** with a TA and do one of the following: -- Compare your existing dotfiles with the current Le Wagon [dotfiles 🔗](https://github.com/lewagon/dotfiles), particularly the `.zshrc`, `.zprofile`, and `settings.json` - if there is no meaningful difference other than your name and email setting, continue with the setup. -- If you are OK with losing your existing dotfiles (recommended): - - Delete your existing dotfiles repository on GitHub and continue with the setup. - - Delete the local repository: `rm -rf ~/code//dotifles`. -- If you do not want to lose your existing dotfiles, we recommend working with branches: - - On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles** - - Create a branch of your existing dotfiles setup (`git checkout -b old-setup`), and push to GitHub - `git push origin old-setup`, - - Go back to `master`: `git checkout master`. - - On local `master`, `git pull upstream master`, resolve any conflicts, `git commit -m "merged"`, and `git push origin master`. It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. - - Continue with the setup. +**Together with a TA**, do one of the following: + +
+I'm using the same machine (or a new machine which already has the dotfiles). + +1. Move into your existing dotfiles folder: + ```bash + cd ~/code/$GITHUB_USERNAME/dotifles + ``` + +1. Check the diff against the current version of Le Wagon's dotfiles: + ```bash + git diff upstream/master + ``` + +If there is no meaningful difference other than your name and email setting, continue with the setup.
-
+
+I'm using a new machine without the dotfiles. -Run the following command: +1. Browse to GitHub and find your `dotfiles` repository. -```bash -export GITHUB_USERNAME=`gh api user | jq -r '.login'` -echo $GITHUB_USERNAME -``` +1. Check how many commits it's behind and ahead `lewagon/dotfiles:master`. You can see this just above the file list. -✔️ You should see your Github username printed. +1. Click through to the behind and the ahead, and scroll down to see the diffs. -❌ If not, stop here and ask for help. There may be a problem with the previous step (`gh auth`). +If there is no meaningful difference other than your name and email setting, continue with the setup. + +
+ +
+The previous step revealed meaningful differences. + +If you are OK with losing your existing dotfiles (recommended): + +1. Delete your existing dotfiles repository on GitHub. +1. Delete the local repository: + ```bash + cd ~/code && rm -rf ~/code/$GITHUB_USERNAME/dotifles + ``` +1. Continue with the setup. + +
+If you do not want to lose your existing dotfiles, we recommend working with branches. Click to open. + +On your **laptop**, or wherever you have a **local** copy of **your existing version of dotfiles**. + +1. Commit your current version of your dotfiles: + + ```bash + git add . + git status # Check what will be committed + git commit -m "Version prior to new setup" + ``` + +1. Create a branch of your current dotfiles setup, and push to GitHub: + + ```bash + git checkout -b old-setup + git push origin old-setup + ``` + +1. Go back to `master`: `git checkout master`. + +1. On local `master`, `git pull upstream master`. + +1. Check that you're not in `MERGING` state. If you are, resolve any conflicts. + + It is important that you accept incoming changes to the `.zshrc`, `.zprofile`, and `settings.json` files. Especially anything related to `pyenv` and to Python environments. + + If there are too many conficts, use your code editor to replace the contents of the conflicting files with the ones from [the Le Wagon dotfiles](https://www.github.com/lewagon/dotfiles). + + Commit your conflict resolution: `git commit --no-edit` + +1. Push your changes to GitHub: `git push origin master`. + +1. Continue with the setup. + +
+ +
+ +
+ +
Time to fork the repo and clone it on your computer: From badd050978999bf0c58705a0e9e90ccfd94058e8 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Sat, 19 Sep 2026 13:16:02 +0200 Subject: [PATCH 26/42] Link to temp branch on setup --- constants/repos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/constants/repos.yml b/constants/repos.yml index 2fc6f3d9..2a41dcab 100644 --- a/constants/repos.yml +++ b/constants/repos.yml @@ -1,6 +1,6 @@ branches: - setup: master + setup: simplify-conso aliases: de_setup: data-engineering-setup From 7f4ee747b3449e21eb321998b911175f9b2ec71d Mon Sep 17 00:00:00 2001 From: github-actions Date: Sat, 19 Sep 2026 11:16:19 +0000 Subject: [PATCH 27/42] setup guides generated --- LINUX.es.md | 12 +++---- LINUX.md | 12 +++---- REMOTE_SETUP.md | 8 ++--- VM.es.md | 12 +++---- VM.md | 12 +++---- WINDOWS.es.md | 32 +++++++++---------- WINDOWS.md | 83 ++++++++++--------------------------------------- macOS.es.md | 18 +++++------ macOS.md | 24 ++++++++------ 9 files changed, 83 insertions(+), 130 deletions(-) diff --git a/LINUX.es.md b/LINUX.es.md index e9216b0d..21bc0f20 100644 --- a/LINUX.es.md +++ b/LINUX.es.md @@ -16,7 +16,7 @@ Empecemos :rocket: :point_right: **[Sube una foto](https://github.com/settings/profile)** y escribe tu nombre correctamente en tu cuenta GitHub. Esto es importante porque nosotros usaremos un tablero de comando interno con tu avatar. Por favor hazlo **ahora** antes de dar un paso más en esta guía. -![Foto GitHub](https://github.com/lewagon/setup/blob/master/images/github_picture.png) +![Foto GitHub](https://github.com/lewagon/setup/blob/simplify-conso/images/github_picture.png) :point_right: **[Habilita la Autenticación de Dos Factores (2FA)](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-text-messages)**. GitHub te enviará mensajes de texto con un código cuando intentes iniciar sesión. Esto es importante para la seguridad y también pronto será necesario para contribuir código en GitHub. @@ -95,9 +95,9 @@ En **VS Code**: 1. Abramos la "Paleta de comandos" de VS Code: escribe `Ctrl-Shift-P` (Windows / Linux) o `Cmd-Shift-P` (macOS). 1. Se abrirá la Paleta de comandos: una pequeña caja de texto en la parte superior de la pantalla. Empieza a escribir `aifeatures` hasta que veas "Chat: Learn How to Hide AI features". Haz clic en ella. - ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/master/images/vscode_find_aifeatures.png) + ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. Esto abrirá la configuración y te mostrará la opción "Disable and hide built-in AI features ...". Marca la casilla delante de esa opción. - ![Check the disable option](https://github.com/lewagon/setup/blob/master/images/vscode_disable_aifeatures.png) + ![Check the disable option](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_disable_aifeatures.png) Más adelante, si quieres **volver a habilitar** las funciones de IA, puedes seguir las mismas instrucciones para desmarcar la casilla. @@ -195,7 +195,7 @@ Si te preguntan "Do you want to change your default shell to zsh?", presiona `Y` Cuando termines, tu terminal debería lucir así: -![La terminal de Ubuntu con OhMyZsh](https://github.com/lewagon/setup/blob/master/images/oh_my_zsh.png) +![La terminal de Ubuntu con OhMyZsh](https://github.com/lewagon/setup/blob/simplify-conso/images/oh_my_zsh.png) :heavy_check_mark: Si es el caso, puedes continuar :+1: @@ -832,7 +832,7 @@ Abre la aplicación e inicia sesión en `lewagon-alumni`. Asegúrate de **subir una foto para tu perfil** :point_down: -![Cómo subir una foto de perfil en Slack](https://github.com/lewagon/setup/blob/master/images/slack_profile_picture.gif) +![Cómo subir una foto de perfil en Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_profile_picture.gif) La idea es tener Slack abierto todo el día para compartir enlaces útiles / pedir ayuda / decidir dónde almorzar / etc. @@ -845,7 +845,7 @@ Para asegurarte de que todo lo relacionado a videollamadas funcione bien, prueba - Comprueba que tus dispositivos preferidos de altavoz, micrófono y cámara aparecen en los menús desplegables y haz clic en "Iniciar prueba" - Haz clic en el botón verde "Start test" -![Chequea el micrófono y la cámara con Slack](https://github.com/lewagon/setup/blob/master/images/slack_call_test.png) +![Chequea el micrófono y la cámara con Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_call_test.png) :heavy_check_mark: Cuando termine el test deberías ver mensajes de "Succeed" en verde por lo menos para tu micrófono y tu cámara. :+1: diff --git a/LINUX.md b/LINUX.md index a7c684fe..91c9d0df 100644 --- a/LINUX.md +++ b/LINUX.md @@ -16,7 +16,7 @@ Have you signed up to GitHub? If not, [do it right away](https://github.com/join :point_right: **[Upload a picture](https://github.com/settings/profile)** and put your name correctly on your GitHub account. This is important as we'll use an internal dashboard with your avatar. Please do this **now**, before you continue with this guide. -![GitHub picture](https://github.com/lewagon/setup/blob/master/images/github_picture.png) +![GitHub picture](https://github.com/lewagon/setup/blob/simplify-conso/images/github_picture.png) :point_right: **[Enable Two-Factor Authentication (2FA)](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-text-messages)**. GitHub will send you text messages with a code when you try to log in. This is important for security and also will soon be required in order to contribute code on GitHub. @@ -110,9 +110,9 @@ In **VS Code**: 1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P` (Windows / Linux) or `Cmd-Shift-P` (macOS). 1. This will open the Command Palette: a small text box at the top of your screen. Start typing `aifeatures` until you see "Chat: Learn How to Hide AI features". Click on it. - ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/master/images/vscode_find_aifeatures.png) + ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. This will open the settings, and will show you the option "Disable and hide built-in AI features ...". Tick the checkbox in front of that option. - ![Check the disable option](https://github.com/lewagon/setup/blob/master/images/vscode_disable_aifeatures.png) + ![Check the disable option](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_disable_aifeatures.png) Later, if you want **to reenable** the AI features, you can follow the same instructions to untick the checkbox. @@ -219,7 +219,7 @@ 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](https://github.com/lewagon/setup/blob/master/images/oh_my_zsh.png) +![Ubuntu terminal with OhMyZsh](https://github.com/lewagon/setup/blob/simplify-conso/images/oh_my_zsh.png) :heavy_check_mark: If it does, you can continue :+1: @@ -966,7 +966,7 @@ Launch the app and sign in to `lewagon-alumni` organization. Make sure you **upload a profile picture** :point_down: -![How to upload a profile picture on Slack](https://github.com/lewagon/setup/blob/master/images/slack_profile_picture.gif) +![How to upload a profile picture on Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_profile_picture.gif) 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. @@ -978,7 +978,7 @@ To ensure that everything is working fine for video calls, let's test your camer - Below `Troubleshooting`, click `Run an audio, video and screensharing test`. The test will open in a new window. - Check that your preferred speaker, microphone and camera devices appear in the drop-down menus, then click `Start test`. -![Check microphone and webcam with Slack](https://github.com/lewagon/setup/blob/master/images/slack_call_test.png) +![Check microphone and webcam with Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_call_test.png) :heavy_check_mark: When the test is finished, you should see green "Succeed" messages at least for your microphone and camera. :+1: diff --git a/REMOTE_SETUP.md b/REMOTE_SETUP.md index e8e1702b..5e301ef5 100644 --- a/REMOTE_SETUP.md +++ b/REMOTE_SETUP.md @@ -16,7 +16,7 @@ Have you signed up to GitHub? If not, [do it right away](https://github.com/join :point_right: **[Upload a picture](https://github.com/settings/profile)** and put your name correctly on your GitHub account. This is important as we'll use an internal dashboard with your avatar. Please do this **now**, before you continue with this guide. -![GitHub picture](https://github.com/lewagon/setup/blob/master/images/github_picture.png) +![GitHub picture](https://github.com/lewagon/setup/blob/simplify-conso/images/github_picture.png) :point_right: **[Enable Two-Factor Authentication (2FA)](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-text-messages)**. GitHub will send you text messages with a code when you try to log in. This is important for security and also will soon be required in order to contribute code on GitHub. @@ -459,9 +459,9 @@ In **VS Code**: 1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P` (Windows / Linux) or `Cmd-Shift-P` (macOS). 1. This will open the Command Palette: a small text box at the top of your screen. Start typing `aifeatures` until you see "Chat: Learn How to Hide AI features". Click on it. - ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/master/images/vscode_find_aifeatures.png) + ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. This will open the settings, and will show you the option "Disable and hide built-in AI features ...". Tick the checkbox in front of that option. - ![Check the disable option](https://github.com/lewagon/setup/blob/master/images/vscode_disable_aifeatures.png) + ![Check the disable option](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_disable_aifeatures.png) Later, if you want **to reenable** the AI features, you can follow the same instructions to untick the checkbox. @@ -568,7 +568,7 @@ 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](https://github.com/lewagon/setup/blob/master/images/oh_my_zsh.png) +![Ubuntu terminal with OhMyZsh](https://github.com/lewagon/setup/blob/simplify-conso/images/oh_my_zsh.png) :heavy_check_mark: If it does, you can continue :+1: diff --git a/VM.es.md b/VM.es.md index cf069203..7aa61172 100644 --- a/VM.es.md +++ b/VM.es.md @@ -16,7 +16,7 @@ Empecemos :rocket: :point_right: **[Sube una foto](https://github.com/settings/profile)** y escribe tu nombre correctamente en tu cuenta GitHub. Esto es importante porque nosotros usaremos un tablero de comando interno con tu avatar. Por favor hazlo **ahora** antes de dar un paso más en esta guía. -![Foto GitHub](https://github.com/lewagon/setup/blob/master/images/github_picture.png) +![Foto GitHub](https://github.com/lewagon/setup/blob/simplify-conso/images/github_picture.png) :point_right: **[Habilita la Autenticación de Dos Factores (2FA)](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-text-messages)**. GitHub te enviará mensajes de texto con un código cuando intentes iniciar sesión. Esto es importante para la seguridad y también pronto será necesario para contribuir código en GitHub. @@ -262,9 +262,9 @@ En **VS Code**: 1. Abramos la "Paleta de comandos" de VS Code: escribe `Ctrl-Shift-P` (Windows / Linux) o `Cmd-Shift-P` (macOS). 1. Se abrirá la Paleta de comandos: una pequeña caja de texto en la parte superior de la pantalla. Empieza a escribir `aifeatures` hasta que veas "Chat: Learn How to Hide AI features". Haz clic en ella. - ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/master/images/vscode_find_aifeatures.png) + ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. Esto abrirá la configuración y te mostrará la opción "Disable and hide built-in AI features ...". Marca la casilla delante de esa opción. - ![Check the disable option](https://github.com/lewagon/setup/blob/master/images/vscode_disable_aifeatures.png) + ![Check the disable option](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_disable_aifeatures.png) Más adelante, si quieres **volver a habilitar** las funciones de IA, puedes seguir las mismas instrucciones para desmarcar la casilla. @@ -362,7 +362,7 @@ Si te preguntan "Do you want to change your default shell to zsh?", presiona `Y` Cuando termines, tu terminal debería lucir así: -![La terminal de Ubuntu con OhMyZsh](https://github.com/lewagon/setup/blob/master/images/oh_my_zsh.png) +![La terminal de Ubuntu con OhMyZsh](https://github.com/lewagon/setup/blob/simplify-conso/images/oh_my_zsh.png) :heavy_check_mark: Si es el caso, puedes continuar :+1: @@ -781,7 +781,7 @@ Abre la aplicación e inicia sesión en `lewagon-alumni`. Asegúrate de **subir una foto para tu perfil** :point_down: -![Cómo subir una foto de perfil en Slack](https://github.com/lewagon/setup/blob/master/images/slack_profile_picture.gif) +![Cómo subir una foto de perfil en Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_profile_picture.gif) La idea es tener Slack abierto todo el día para compartir enlaces útiles / pedir ayuda / decidir dónde almorzar / etc. @@ -794,7 +794,7 @@ Para asegurarte de que todo lo relacionado a videollamadas funcione bien, prueba - Comprueba que tus dispositivos preferidos de altavoz, micrófono y cámara aparecen en los menús desplegables y haz clic en "Iniciar prueba" - Haz clic en el botón verde "Start test" -![Chequea el micrófono y la cámara con Slack](https://github.com/lewagon/setup/blob/master/images/slack_call_test.png) +![Chequea el micrófono y la cámara con Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_call_test.png) :heavy_check_mark: Cuando termine el test deberías ver mensajes de "Succeed" en verde por lo menos para tu micrófono y tu cámara. :+1: diff --git a/VM.md b/VM.md index bd6a83cf..598cc957 100644 --- a/VM.md +++ b/VM.md @@ -16,7 +16,7 @@ Have you signed up to GitHub? If not, [do it right away](https://github.com/join :point_right: **[Upload a picture](https://github.com/settings/profile)** and put your name correctly on your GitHub account. This is important as we'll use an internal dashboard with your avatar. Please do this **now**, before you continue with this guide. -![GitHub picture](https://github.com/lewagon/setup/blob/master/images/github_picture.png) +![GitHub picture](https://github.com/lewagon/setup/blob/simplify-conso/images/github_picture.png) :point_right: **[Enable Two-Factor Authentication (2FA)](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-text-messages)**. GitHub will send you text messages with a code when you try to log in. This is important for security and also will soon be required in order to contribute code on GitHub. @@ -368,9 +368,9 @@ In **VS Code**: 1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P` (Windows / Linux) or `Cmd-Shift-P` (macOS). 1. This will open the Command Palette: a small text box at the top of your screen. Start typing `aifeatures` until you see "Chat: Learn How to Hide AI features". Click on it. - ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/master/images/vscode_find_aifeatures.png) + ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. This will open the settings, and will show you the option "Disable and hide built-in AI features ...". Tick the checkbox in front of that option. - ![Check the disable option](https://github.com/lewagon/setup/blob/master/images/vscode_disable_aifeatures.png) + ![Check the disable option](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_disable_aifeatures.png) Later, if you want **to reenable** the AI features, you can follow the same instructions to untick the checkbox. @@ -477,7 +477,7 @@ 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](https://github.com/lewagon/setup/blob/master/images/oh_my_zsh.png) +![Ubuntu terminal with OhMyZsh](https://github.com/lewagon/setup/blob/simplify-conso/images/oh_my_zsh.png) :heavy_check_mark: If it does, you can continue :+1: @@ -1101,7 +1101,7 @@ Launch the app and sign in to `lewagon-alumni` organization. Make sure you **upload a profile picture** :point_down: -![How to upload a profile picture on Slack](https://github.com/lewagon/setup/blob/master/images/slack_profile_picture.gif) +![How to upload a profile picture on Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_profile_picture.gif) 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. @@ -1113,7 +1113,7 @@ To ensure that everything is working fine for video calls, let's test your camer - Below `Troubleshooting`, click `Run an audio, video and screensharing test`. The test will open in a new window. - Check that your preferred speaker, microphone and camera devices appear in the drop-down menus, then click `Start test`. -![Check microphone and webcam with Slack](https://github.com/lewagon/setup/blob/master/images/slack_call_test.png) +![Check microphone and webcam with Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_call_test.png) :heavy_check_mark: When the test is finished, you should see green "Succeed" messages at least for your microphone and camera. :+1: diff --git a/WINDOWS.es.md b/WINDOWS.es.md index bbb32521..3872b10c 100644 --- a/WINDOWS.es.md +++ b/WINDOWS.es.md @@ -16,7 +16,7 @@ Empecemos :rocket: :point_right: **[Sube una foto](https://github.com/settings/profile)** y escribe tu nombre correctamente en tu cuenta GitHub. Esto es importante porque nosotros usaremos un tablero de comando interno con tu avatar. Por favor hazlo **ahora** antes de dar un paso más en esta guía. -![Foto GitHub](https://github.com/lewagon/setup/blob/master/images/github_picture.png) +![Foto GitHub](https://github.com/lewagon/setup/blob/simplify-conso/images/github_picture.png) :point_right: **[Habilita la Autenticación de Dos Factores (2FA)](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-text-messages)**. GitHub te enviará mensajes de texto con un código cuando intentes iniciar sesión. Esto es importante para la seguridad y también pronto será necesario para contribuir código en GitHub. @@ -99,7 +99,7 @@ Normalmente ya es el caso en muchas computadoras. Verifiquemos: - Haz clic en la pestaña `Performance` - Haz clic en `CPU` -![Windows task manager](https://github.com/lewagon/setup/blob/master/images/windows_task_manager.png) +![Windows task manager](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_task_manager.png) :heavy_check_mark: Si ves "Virtualization: Enabled", entonces todo está bien :+1: @@ -200,7 +200,7 @@ Cuando se reinicie tu computadora, descarga el instalador de WSL2. - Haz clic en `Next` - Haz clic en `Finish` -![Actualiza WSL de la versión 1 a la 2](https://github.com/lewagon/setup/blob/master/images/windows_update_wsl.png) +![Actualiza WSL de la versión 1 a la 2](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_update_wsl.png) :heavy_check_mark: Si no obtuviste ningún mensaje de error, entonces puedes continuar :+1: @@ -367,7 +367,7 @@ Instala el editor de texto [Visual Studio Code](https://code.visualstudio.com). - Abre el archivo que acabas de descargar. - Instálalo con pocas opciones: -![Opciones de instalación de VS Code](https://github.com/lewagon/setup/blob/master/images/windows_vscode_installation.png) +![Opciones de instalación de VS Code](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_vscode_installation.png) Abre VS Code cuando termine la instalación. @@ -391,7 +391,7 @@ code . :heavy_check_mark: Si ves `WSL: Ubuntu` en la esquina inferior izquierda de la ventana de VS Code, entonces todo está bien y puedes continuar :+1: -![WSL Ubuntu Remote](https://github.com/lewagon/setup/blob/master/images/windows_remote_wsl.png) +![WSL Ubuntu Remote](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_remote_wsl.png) :x: Si no es el caso, por favor **pídele ayuda a un profesor**. @@ -442,7 +442,7 @@ Presiona `Ctrl` + `,` Debería abrir los parámetros de la terminal: -![Parámetros de Windows Terminal](https://github.com/lewagon/setup/blob/master/images/windows_terminal_settings.png) +![Parámetros de Windows Terminal](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_terminal_settings.png) - Cambia el perfil predeterminado a "Ubuntu" - Haz clic en "Save" @@ -450,7 +450,7 @@ Debería abrir los parámetros de la terminal: Verás la parte a cambiar en un círculo rojo: -![Archivo de parámetros JSON de Windows Terminal](https://github.com/lewagon/setup/blob/master/images/windows_terminal_settings_json.png) +![Archivo de parámetros JSON de Windows Terminal](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_terminal_settings_json.png) Primero pídele a Ubuntu que inicie directamente dentro de tu Ubuntu Home Directory en vez de hacerlo desde Windows: - Localiza el `"name": "Ubuntu",` @@ -520,9 +520,9 @@ En **VS Code**: 1. Abramos la "Paleta de comandos" de VS Code: escribe `Ctrl-Shift-P` (Windows / Linux) o `Cmd-Shift-P` (macOS). 1. Se abrirá la Paleta de comandos: una pequeña caja de texto en la parte superior de la pantalla. Empieza a escribir `aifeatures` hasta que veas "Chat: Learn How to Hide AI features". Haz clic en ella. - ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/master/images/vscode_find_aifeatures.png) + ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. Esto abrirá la configuración y te mostrará la opción "Disable and hide built-in AI features ...". Marca la casilla delante de esa opción. - ![Check the disable option](https://github.com/lewagon/setup/blob/master/images/vscode_disable_aifeatures.png) + ![Check the disable option](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_disable_aifeatures.png) Más adelante, si quieres **volver a habilitar** las funciones de IA, puedes seguir las mismas instrucciones para desmarcar la casilla. @@ -620,7 +620,7 @@ Si te preguntan "Do you want to change your default shell to zsh?", presiona `Y` Cuando termines, tu terminal debería lucir así: -![La terminal de Ubuntu con OhMyZsh](https://github.com/lewagon/setup/blob/master/images/oh_my_zsh.png) +![La terminal de Ubuntu con OhMyZsh](https://github.com/lewagon/setup/blob/simplify-conso/images/oh_my_zsh.png) :heavy_check_mark: Si es el caso, puedes continuar :+1: @@ -1356,7 +1356,7 @@ Abre la aplicación e inicia sesión en `lewagon-alumni`. Asegúrate de **subir una foto para tu perfil** :point_down: -![Cómo subir una foto de perfil en Slack](https://github.com/lewagon/setup/blob/master/images/slack_profile_picture.gif) +![Cómo subir una foto de perfil en Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_profile_picture.gif) La idea es tener Slack abierto todo el día para compartir enlaces útiles / pedir ayuda / decidir dónde almorzar / etc. @@ -1369,7 +1369,7 @@ Para asegurarte de que todo lo relacionado a videollamadas funcione bien, prueba - Comprueba que tus dispositivos preferidos de altavoz, micrófono y cámara aparecen en los menús desplegables y haz clic en "Iniciar prueba" - Haz clic en el botón verde "Start test" -![Chequea el micrófono y la cámara con Slack](https://github.com/lewagon/setup/blob/master/images/slack_call_test.png) +![Chequea el micrófono y la cámara con Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_call_test.png) :heavy_check_mark: Cuando termine el test deberías ver mensajes de "Succeed" en verde por lo menos para tu micrófono y tu cámara. :+1: @@ -1391,7 +1391,7 @@ Para ello, vamos a crear atajos a directorios Ubuntu en el **Explorador de Archi - Navega por el sistema de archivos de Ubuntu para encontrar los directorios que te interesen - Arrastra las carpetas que te interesen a la Barra de Direcciones para crear atajos -![Cómo agregar un atajo al sistema de archivos de Ubuntu en Windows](https://github.com/lewagon/setup/blob/master/images/windows_ubuntu_file_system_shortcut.gif) +![Cómo agregar un atajo al sistema de archivos de Ubuntu en Windows](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_ubuntu_file_system_shortcut.gif) ### Abre el Explorador de Archivos de Windows desde la terminal de Ubuntu @@ -1401,7 +1401,7 @@ Otra opción para mover archivos es abrir el **Explorador de Archivos** de Windo - Ejecuta el comando `explorer.exe .` (Otra alternativa es usar `wslview .`) - Si obtienes un mensaje de input output error, ejecuta `wsl --shutdown` en una PowerShell de Windows y abre la terminal de Ubuntu nuevamente -![Cómo abrir Windows Explorer desde la terminal de Ubuntu](https://github.com/lewagon/setup/blob/master/images/windows_explorer_from_terminal.png) +![Cómo abrir Windows Explorer desde la terminal de Ubuntu](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_explorer_from_terminal.png) ### Uso del Sistema de Archivos de Ubuntu @@ -1413,7 +1413,7 @@ Para convertir una ruta Windows a una Ubuntu y viceversa: - Usa el comando `wslpath -w "/home"` para traducir una ruta Ubuntu a una Windows - El comando `wslpath -w $(pwd)` devuelve la ruta Windows del directorio Ubuntu actual -![Cómo acceder a una ruta Windows desde una terminal de Ubuntu](https://github.com/lewagon/setup/blob/master/images/windows_path_from_terminal.png) +![Cómo acceder a una ruta Windows desde una terminal de Ubuntu](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_path_from_terminal.png) ### Anclaje de aplicaciones a tu barra de tareas @@ -1421,7 +1421,7 @@ Usarás frecuentemente casi todas las aplicaciones que has instalado hoy. ¡Ancl Para ello, abre la aplicación. Haz clic derecho en el ícono de la barra de tareas para hacer que aparezca el menú contextual (también llamado emergente) y selecciona "Pin to taskbar". -![Cómo anclar una aplicación a la barra de tareas en Windows](https://github.com/lewagon/setup/blob/master/images/windows_taskbar.png) +![Cómo anclar una aplicación a la barra de tareas en Windows](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_taskbar.png) Ancla lo siguiente: - Tu terminal diff --git a/WINDOWS.md b/WINDOWS.md index 24a4defc..027cae70 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -16,7 +16,7 @@ Have you signed up to GitHub? If not, [do it right away](https://github.com/join :point_right: **[Upload a picture](https://github.com/settings/profile)** and put your name correctly on your GitHub account. This is important as we'll use an internal dashboard with your avatar. Please do this **now**, before you continue with this guide. -![GitHub picture](https://github.com/lewagon/setup/blob/master/images/github_picture.png) +![GitHub picture](https://github.com/lewagon/setup/blob/simplify-conso/images/github_picture.png) :point_right: **[Enable Two-Factor Authentication (2FA)](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-text-messages)**. GitHub will send you text messages with a code when you try to log in. This is important for security and also will soon be required in order to contribute code on GitHub. @@ -99,7 +99,7 @@ For many computers, this is already the case. Let's check: - Click on the `Performance` tab - Click on `CPU` -![Windows task manager](https://github.com/lewagon/setup/blob/master/images/windows_task_manager.png) +![Windows task manager](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_task_manager.png) :heavy_check_mark: If you see "Virtualization: Enabled", you're good to go :+1: @@ -201,7 +201,7 @@ Once your computer has restarted, we need to download the WSL2 installer. - Click `Next` - Click `Finish` -![Update WSL from version 1 to 2](https://github.com/lewagon/setup/blob/master/images/windows_update_wsl.png) +![Update WSL from version 1 to 2](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_update_wsl.png) :heavy_check_mark: If didn't encounter any error message, you're good to go :+1: @@ -294,57 +294,6 @@ At first launch, you will be asked some information: :warning: When you type your password, nothing will show up on the screen, **that's normal**. This is a security feature to mask not only your password as a whole but also its length. Just type your password and when you're done, press `Enter`. - -### Check the WSL version of Ubuntu - -- Press `Windows` + `R` -- Type `cmd` -- Press `Enter` - -Type the following command: - -```bash -wsl -l -v -``` - -:heavy_check_mark: If the version of Ubuntu WSL is 2, you are good to go :+1: - -:x: If the version of Ubuntu WSL is 1, we will need to convert it to version 2. - -
- Convert Ubuntu WSL V1 to V2 - - In the Command Prompt window, type: - - ```bash - wsl --set-version Ubuntu 2 - ``` - - :heavy_check_mark: After a few seconds, you should get the following message: `The conversion is complete`. - - :x: If it does not work, we need to be sure that Ubuntu files are not compressed. - -
- Check for Uncompressed Files - - - Press `Windows` + `R` - - Type `%localappdata%\Packages` - - Press `Enter` - - Open the folder named `CanonicalGroupLimited.UbuntuonWindows...` - - Right Click on the `LocalState` folder - - Click on `Properties` - - Click on `Advanced` - - Make sure that the option `Compress content` is **not** ticked, then click on `Ok`. - - Apply changes to this folder only and try to convert the Ubuntu WSL version again. - - :x: If the conversion still does not work, please **contact a teacher**. -
- -You can close this terminal now. - -
- ### Check your username Type this in the Ubuntu terminal: @@ -369,7 +318,7 @@ Let's install [Visual Studio Code](https://code.visualstudio.com) text editor. - Open the file you have just downloaded. - Install it with few options: -![VS Code installation options](https://github.com/lewagon/setup/blob/master/images/windows_vscode_installation.png) +![VS Code installation options](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_vscode_installation.png) When the installation is finished, launch VS Code. @@ -393,7 +342,7 @@ code . :heavy_check_mark: If you see `WSL: Ubuntu` in the bottom left corner of the VS Code window, you're good to go :+1: -![WSL Ubuntu Remote](https://github.com/lewagon/setup/blob/master/images/windows_remote_wsl.png) +![WSL Ubuntu Remote](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_remote_wsl.png) :x: Otherwise, please **contact a teacher** @@ -444,7 +393,7 @@ Press `Ctrl` + `,` It should open the terminal settings: -![Windows Terminal Settings](https://github.com/lewagon/setup/blob/master/images/windows_terminal_settings.png) +![Windows Terminal Settings](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_terminal_settings.png) - Change the default profile to "Ubuntu" - Click on "Save" @@ -454,7 +403,7 @@ You may see an orange circle rather than a penguin as the logo for Ubuntu. We have circled in red the part you need to add: -![Windows Terminal JSON settings file](https://github.com/lewagon/setup/blob/master/images/windows_terminal_settings_json.png) +![Windows Terminal JSON settings file](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_terminal_settings_json.png) First, let's ask Ubuntu to start directly inside your Ubuntu Home Directory instead of the Windows one. @@ -526,9 +475,9 @@ In **VS Code**: 1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P` (Windows / Linux) or `Cmd-Shift-P` (macOS). 1. This will open the Command Palette: a small text box at the top of your screen. Start typing `aifeatures` until you see "Chat: Learn How to Hide AI features". Click on it. - ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/master/images/vscode_find_aifeatures.png) + ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. This will open the settings, and will show you the option "Disable and hide built-in AI features ...". Tick the checkbox in front of that option. - ![Check the disable option](https://github.com/lewagon/setup/blob/master/images/vscode_disable_aifeatures.png) + ![Check the disable option](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_disable_aifeatures.png) Later, if you want **to reenable** the AI features, you can follow the same instructions to untick the checkbox. @@ -635,7 +584,7 @@ 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](https://github.com/lewagon/setup/blob/master/images/oh_my_zsh.png) +![Ubuntu terminal with OhMyZsh](https://github.com/lewagon/setup/blob/simplify-conso/images/oh_my_zsh.png) :heavy_check_mark: If it does, you can continue :+1: @@ -1479,7 +1428,7 @@ Launch the app and sign in to `lewagon-alumni` organization. Make sure you **upload a profile picture** :point_down: -![How to upload a profile picture on Slack](https://github.com/lewagon/setup/blob/master/images/slack_profile_picture.gif) +![How to upload a profile picture on Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_profile_picture.gif) 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. @@ -1491,7 +1440,7 @@ To ensure that everything is working fine for video calls, let's test your camer - Below `Troubleshooting`, click `Run an audio, video and screensharing test`. The test will open in a new window. - Check that your preferred speaker, microphone and camera devices appear in the drop-down menus, then click `Start test`. -![Check microphone and webcam with Slack](https://github.com/lewagon/setup/blob/master/images/slack_call_test.png) +![Check microphone and webcam with Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_call_test.png) :heavy_check_mark: When the test is finished, you should see green "Succeed" messages at least for your microphone and camera. :+1: @@ -1513,7 +1462,7 @@ In order to do that, let's create shortcuts to Ubuntu directories in the Windows - Dive into the Ubuntu file system in order to look for directories of interest - Drag the desired folders into the Address Bar in order to create shortcuts -![How to add a shortcut to Ubuntu file system on Windows](https://github.com/lewagon/setup/blob/master/images/windows_ubuntu_file_system_shortcut.gif) +![How to add a shortcut to Ubuntu file system on Windows](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_ubuntu_file_system_shortcut.gif) ### Open the Windows File Explorer from the Ubuntu terminal @@ -1523,7 +1472,7 @@ Another option to move files around is to open the Windows **File Explorer** fro - Run the `explorer.exe .` command (alternatively, use `wslview .`) - If you get an input output error message, run `wsl --shutdown` in a Windows PowerShell and reopen an Ubuntu terminal -![How to launch Windows Explorer from Ubuntu terminal](https://github.com/lewagon/setup/blob/master/images/windows_explorer_from_terminal.png) +![How to launch Windows Explorer from Ubuntu terminal](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_explorer_from_terminal.png) ### Find your way in the Ubuntu File System @@ -1535,7 +1484,7 @@ In order to convert a Windows path to and from an Ubuntu path: - Use the `wslpath -w "/home"` command in order to translate an Ubuntu path into a Windows path - In particular, the `wslpath -w $(pwd)` command returns the Windows path of the current Ubuntu directory -![How to access a Windows path from Ubuntu terminal](https://github.com/lewagon/setup/blob/master/images/windows_path_from_terminal.png) +![How to access a Windows path from Ubuntu terminal](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_path_from_terminal.png) ### Pin apps to your taskbar @@ -1543,7 +1492,7 @@ You are going to use most of the apps you've installed today really often. Let's To pin an app to your taskbar, launch the app, right-click on the icon in the taskbar to bring up the context menu and choose "Pin to taskbar". -![How to pin an app to the taskbar in Windows](https://github.com/lewagon/setup/blob/master/images/windows_taskbar.png) +![How to pin an app to the taskbar in Windows](https://github.com/lewagon/setup/blob/simplify-conso/images/windows_taskbar.png) You must pin: - Your terminal diff --git a/macOS.es.md b/macOS.es.md index 27135704..9d222198 100644 --- a/macOS.es.md +++ b/macOS.es.md @@ -16,7 +16,7 @@ Empecemos :rocket: :point_right: **[Sube una foto](https://github.com/settings/profile)** y escribe tu nombre correctamente en tu cuenta GitHub. Esto es importante porque nosotros usaremos un tablero de comando interno con tu avatar. Por favor hazlo **ahora** antes de dar un paso más en esta guía. -![Foto GitHub](https://github.com/lewagon/setup/blob/master/images/github_picture.png) +![Foto GitHub](https://github.com/lewagon/setup/blob/simplify-conso/images/github_picture.png) :point_right: **[Habilita la Autenticación de Dos Factores (2FA)](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-text-messages)**. GitHub te enviará mensajes de texto con un código cuando intentes iniciar sesión. Esto es importante para la seguridad y también pronto será necesario para contribuir código en GitHub. @@ -34,7 +34,7 @@ Si no estás seguro, haz clic en el icono de Apple situado en la esquina superio Hacer clic en círculo rojo en la esquina superior izquierda de la ventana de la aplicación en Mac **no la termina el proceso**, solo cierra una ventana activa. Hay dos alternativas para cerrar la aplicación _realmente_. Puedes presionar `Cmd + Q` cuando la misma está activa. La otra opción es ir a `APP_NAME` -> `Quit` en la barra del menú. -![Cerrar la Terminal en macOS](https://github.com/lewagon/setup/blob/master/images/macos_quit.png) +![Cerrar la Terminal en macOS](https://github.com/lewagon/setup/blob/simplify-conso/images/macos_quit.png) Durante esta configuración, se te pedirá **cerrar y abrir nuevamente** aplicaciones varias veces. Por favor asegúrate de hacerlo correctamente :pray: @@ -55,7 +55,7 @@ Si obtienes el mensaje que te mostramos a continuación, puedes ignorar este pas Este mensaje significa que las herramientas de la línea de comando ya están instaladas y te pide que uses "Software Update" para instalar las actualizaciones. Si no recibes este mensaje, se abrirá una ventana preguntándote si quieres instalar algún programa: haz clic en "Install" y espera. -![Instalación de xcode-select en macOS](https://github.com/lewagon/setup/blob/master/images/macos_xcode_select_install.png) +![Instalación de xcode-select en macOS](https://github.com/lewagon/setup/blob/simplify-conso/images/macos_xcode_select_install.png) :heavy_check_mark: Si ves el mensaje "The software was installed", lo que significa que el programa se ha instalado, entonces todo está bien :+1: @@ -178,9 +178,9 @@ En **VS Code**: 1. Abramos la "Paleta de comandos" de VS Code: escribe `Ctrl-Shift-P` (Windows / Linux) o `Cmd-Shift-P` (macOS). 1. Se abrirá la Paleta de comandos: una pequeña caja de texto en la parte superior de la pantalla. Empieza a escribir `aifeatures` hasta que veas "Chat: Learn How to Hide AI features". Haz clic en ella. - ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/master/images/vscode_find_aifeatures.png) + ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. Esto abrirá la configuración y te mostrará la opción "Disable and hide built-in AI features ...". Marca la casilla delante de esa opción. - ![Check the disable option](https://github.com/lewagon/setup/blob/master/images/vscode_disable_aifeatures.png) + ![Check the disable option](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_disable_aifeatures.png) Más adelante, si quieres **volver a habilitar** las funciones de IA, puedes seguir las mismas instrucciones para desmarcar la casilla. @@ -199,7 +199,7 @@ Si te preguntan "Do you want to change your default shell to zsh?", presiona `Y` Cuando termines, tu terminal debería lucir así: -![La terminal de Ubuntu con OhMyZsh](https://github.com/lewagon/setup/blob/master/images/oh_my_zsh.png) +![La terminal de Ubuntu con OhMyZsh](https://github.com/lewagon/setup/blob/simplify-conso/images/oh_my_zsh.png) :heavy_check_mark: Si es el caso, puedes continuar :+1: @@ -877,7 +877,7 @@ Abre la aplicación e inicia sesión en `lewagon-alumni`. Asegúrate de **subir una foto para tu perfil** :point_down: -![Cómo subir una foto de perfil en Slack](https://github.com/lewagon/setup/blob/master/images/slack_profile_picture.gif) +![Cómo subir una foto de perfil en Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_profile_picture.gif) La idea es tener Slack abierto todo el día para compartir enlaces útiles / pedir ayuda / decidir dónde almorzar / etc. @@ -890,7 +890,7 @@ Para asegurarte de que todo lo relacionado a videollamadas funcione bien, prueba - Comprueba que tus dispositivos preferidos de altavoz, micrófono y cámara aparecen en los menús desplegables y haz clic en "Iniciar prueba" - Haz clic en el botón verde "Start test" -![Chequea el micrófono y la cámara con Slack](https://github.com/lewagon/setup/blob/master/images/slack_call_test.png) +![Chequea el micrófono y la cámara con Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_call_test.png) :heavy_check_mark: Cuando termine el test deberías ver mensajes de "Succeed" en verde por lo menos para tu micrófono y tu cámara. :+1: @@ -937,7 +937,7 @@ Usarás frecuentemente casi todas las aplicaciones que has instalado hoy. ¡Ancl Para ello, inicia la aplicación. Haz clic derecho en el ícono de la barra de tareas para hacer que aparezca el menú contextual (también llamado emergente) y selecciona "Options" y después "Keep in Dock". -![Cómo anclar una aplicación a la barra de tareas en macOS](https://github.com/lewagon/setup/blob/master/images/macos_dock.png) +![Cómo anclar una aplicación a la barra de tareas en macOS](https://github.com/lewagon/setup/blob/simplify-conso/images/macos_dock.png) Ancla lo siguiente: - Tu terminal diff --git a/macOS.md b/macOS.md index 6072d975..e50e433d 100644 --- a/macOS.md +++ b/macOS.md @@ -16,7 +16,7 @@ Have you signed up to GitHub? If not, [do it right away](https://github.com/join :point_right: **[Upload a picture](https://github.com/settings/profile)** and put your name correctly on your GitHub account. This is important as we'll use an internal dashboard with your avatar. Please do this **now**, before you continue with this guide. -![GitHub picture](https://github.com/lewagon/setup/blob/master/images/github_picture.png) +![GitHub picture](https://github.com/lewagon/setup/blob/simplify-conso/images/github_picture.png) :point_right: **[Enable Two-Factor Authentication (2FA)](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-text-messages)**. GitHub will send you text messages with a code when you try to log in. This is important for security and also will soon be required in order to contribute code on GitHub. @@ -34,13 +34,17 @@ If you're unsure, click the Apple icon in the top-left corner of your screen, th 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](https://github.com/lewagon/setup/blob/master/images/macos_quit.png) +![Quit Terminal on macOS](https://github.com/lewagon/setup/blob/simplify-conso/images/macos_quit.png) During this setup you will be asked to **quit and re-open** applications multiple times, please make sure you do it properly :pray: ## Command Line Tools -Open a new terminal, copy-paste the following command and hit `Enter`: +Open a new terminal window from Launchpad > Other, or from Finder > Applications > Utilities, or search for it with [Spotlight](https://support.apple.com/en-gb/HT204014): + +![Open Terminal on macOS](https://github.com/lewagon/setup/blob/simplify-conso/images/macos_open_terminal.png) + +Copy-paste the following command and hit `Enter`: ```bash xcode-select --install @@ -55,7 +59,7 @@ If you receive the following message, you can just skip this step and go to next 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](https://github.com/lewagon/setup/blob/master/images/macos_xcode_select_install.png) +![Install xcode-select on macOS](https://github.com/lewagon/setup/blob/simplify-conso/images/macos_xcode_select_install.png) :heavy_check_mark: If you see the message "The software was installed" then all good :+1: @@ -178,9 +182,9 @@ In **VS Code**: 1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P` (Windows / Linux) or `Cmd-Shift-P` (macOS). 1. This will open the Command Palette: a small text box at the top of your screen. Start typing `aifeatures` until you see "Chat: Learn How to Hide AI features". Click on it. - ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/master/images/vscode_find_aifeatures.png) + ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. This will open the settings, and will show you the option "Disable and hide built-in AI features ...". Tick the checkbox in front of that option. - ![Check the disable option](https://github.com/lewagon/setup/blob/master/images/vscode_disable_aifeatures.png) + ![Check the disable option](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_disable_aifeatures.png) Later, if you want **to reenable** the AI features, you can follow the same instructions to untick the checkbox. @@ -199,7 +203,7 @@ 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](https://github.com/lewagon/setup/blob/master/images/oh_my_zsh.png) +![Ubuntu terminal with OhMyZsh](https://github.com/lewagon/setup/blob/simplify-conso/images/oh_my_zsh.png) :heavy_check_mark: If it does, you can continue :+1: @@ -956,7 +960,7 @@ Launch the app and sign in to `lewagon-alumni` organization. Make sure you **upload a profile picture** :point_down: -![How to upload a profile picture on Slack](https://github.com/lewagon/setup/blob/master/images/slack_profile_picture.gif) +![How to upload a profile picture on Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_profile_picture.gif) 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. @@ -968,7 +972,7 @@ To ensure that everything is working fine for video calls, let's test your camer - Below `Troubleshooting`, click `Run an audio, video and screensharing test`. The test will open in a new window. - Check that your preferred speaker, microphone and camera devices appear in the drop-down menus, then click `Start test`. -![Check microphone and webcam with Slack](https://github.com/lewagon/setup/blob/master/images/slack_call_test.png) +![Check microphone and webcam with Slack](https://github.com/lewagon/setup/blob/simplify-conso/images/slack_call_test.png) :heavy_check_mark: When the test is finished, you should see green "Succeed" messages at least for your microphone and camera. :+1: @@ -1015,7 +1019,7 @@ You are going to use most of the apps you've installed today really often. Let's To pin an app to your dock, launch the app, right-click on the icon in the taskbar to bring up the context menu and choose "Options" then "Keep in Dock". -![How to pin an app to the taskbar in macOS](https://github.com/lewagon/setup/blob/master/images/macos_dock.png) +![How to pin an app to the taskbar in macOS](https://github.com/lewagon/setup/blob/simplify-conso/images/macos_dock.png) You must pin: - Your terminal From 339ea4738d6f433815e3527c8e2c62be546f897f Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Sat, 19 Sep 2026 15:38:57 +0200 Subject: [PATCH 28/42] Move direnv after dotfiles so it persists --- builds/LINUX.yml | 2 +- builds/WINDOWS.yml | 2 +- builds/macOS.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/builds/LINUX.yml b/builds/LINUX.yml index cd1bcb7b..d3fcf4dc 100644 --- a/builds/LINUX.yml +++ b/builds/LINUX.yml @@ -9,10 +9,10 @@ partials: - setup/vscode_aifeatures - setup/cli_tools - setup/oh_my_zsh - - direnv - setup/gh_cli - dotfiles - setup/ssh_agent + - direnv - conda_uninstall - ubuntu_python - virtualenv diff --git a/builds/WINDOWS.yml b/builds/WINDOWS.yml index 7c054676..cfc6e908 100644 --- a/builds/WINDOWS.yml +++ b/builds/WINDOWS.yml @@ -15,10 +15,10 @@ partials: - setup/cli_tools - setup/oh_my_zsh - windows_browser - - direnv - setup/gh_cli - dotfiles - setup/ssh_agent + - direnv - conda_uninstall - ubuntu_python - virtualenv diff --git a/builds/macOS.yml b/builds/macOS.yml index 7c0d502a..01f9ea86 100644 --- a/builds/macOS.yml +++ b/builds/macOS.yml @@ -11,9 +11,9 @@ partials: - vscode_extensions - setup/vscode_aifeatures - setup/oh_my_zsh - - direnv - setup/gh_cli - dotfiles + - direnv - conda_uninstall - osx_python - virtualenv From b3f7cca4c5e3bae62bc0c7c72d5bc013535193df Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Sat, 19 Sep 2026 15:39:28 +0200 Subject: [PATCH 29/42] Remove ssh-agent edit Depends on https://github.com/lewagon/dotfiles/pull/194 --- builds/LINUX.yml | 1 - builds/WINDOWS.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/builds/LINUX.yml b/builds/LINUX.yml index d3fcf4dc..88bf9229 100644 --- a/builds/LINUX.yml +++ b/builds/LINUX.yml @@ -11,7 +11,6 @@ partials: - setup/oh_my_zsh - setup/gh_cli - dotfiles - - setup/ssh_agent - direnv - conda_uninstall - ubuntu_python diff --git a/builds/WINDOWS.yml b/builds/WINDOWS.yml index cfc6e908..2072e955 100644 --- a/builds/WINDOWS.yml +++ b/builds/WINDOWS.yml @@ -17,7 +17,6 @@ partials: - windows_browser - setup/gh_cli - dotfiles - - setup/ssh_agent - direnv - conda_uninstall - ubuntu_python From 3d09423ba79f5e7bf817f3ff77010e4c66519c92 Mon Sep 17 00:00:00 2001 From: github-actions Date: Sat, 19 Sep 2026 13:39:54 +0000 Subject: [PATCH 30/42] setup guides generated --- LINUX.es.md | 33 +++++---------------------------- LINUX.md | 27 +++++---------------------- WINDOWS.es.md | 33 +++++---------------------------- WINDOWS.md | 27 +++++---------------------- macOS.es.md | 24 ++++++++++++------------ macOS.md | 24 ++++++++++++------------ 6 files changed, 44 insertions(+), 124 deletions(-) diff --git a/LINUX.es.md b/LINUX.es.md index 21bc0f20..dbf39e8e 100644 --- a/LINUX.es.md +++ b/LINUX.es.md @@ -202,18 +202,6 @@ Cuando termines, tu terminal debería lucir así: :x: Si no, por favor **pídele ayuda a un profesor**. -## direnv - -[direnv](https://direnv.net/) es una extensión del shell. Facilita trabajar con variables de entorno por proyecto, lo cual será útil para customizar el comportamiento de tu código. - - -``` bash -sudo apt-get update; sudo apt-get install direnv -echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc -``` - - - ## GitHub CLI CLI es una abreviación de [Command-line Interface](https://en.wikipedia.org/wiki/Command-line_interface) que significa interfaz de línea de comando. @@ -346,27 +334,16 @@ cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh 💡 Selecciona la dirección `...@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en repositorios públicos a los que contribuyas. -## Desahilitación de la solicitud de SSH passphrase - -No vas a querer que te pidan tu passphrase cada vez que te comuniques con un repositorio remoto. Por eso debes agregarle plugin `ssh-agent` a `oh my zsh`: - -Primero abre el archivo `.zshrc`: - -```bash -code ~/.zshrc -``` +## direnv -Luego: -- Identifica la línea que comienza por `plugins=` -- Agrega `ssh-agent` al final de la lista de plugins +[direnv](https://direnv.net/) es una extensión del shell. Facilita trabajar con variables de entorno por proyecto, lo cual será útil para customizar el comportamiento de tu código. -La lista debería verse de la siguiente manera: -```bash -plugins=(gitfast last-working-dir common-aliases zsh-syntax-highlighting history-substring-search pyenv ssh-agent) +``` bash +sudo apt-get update; sudo apt-get install direnv +echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc ``` -:heavy_check_mark: Guarda el archivo `.zshrc` con `Ctrl` + `S` y cierra tu editor de texto. ## Instalando Python (con [`pyenv`](https://github.com/pyenv/pyenv)) diff --git a/LINUX.md b/LINUX.md index 91c9d0df..1db8cb77 100644 --- a/LINUX.md +++ b/LINUX.md @@ -226,18 +226,6 @@ At the end your terminal should look like this: :x: Otherwise, please **ask for a teacher** -## direnv - -[direnv](https://direnv.net/) is a shell extension. It makes it easy to deal with per project environment variables. This will be useful in order to customize the behavior of your code. - - -``` bash -sudo apt-get update; sudo apt-get install direnv -echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc -``` - - - ## GitHub CLI CLI is the acronym of [Command-line Interface](https://en.wikipedia.org/wiki/Command-line_interface). @@ -446,21 +434,16 @@ cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh 💡 Select the `...@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. -## Disable SSH passphrase prompt +## direnv -You don't want to be asked for your passphrase every time you communicate with a distant repository. So, you need to add the plugin `ssh-agent` to `oh my zsh`: +[direnv](https://direnv.net/) is a shell extension. It makes it easy to deal with per project environment variables. This will be useful in order to customize the behavior of your code. -First, open the `.zshrc` file: -```bash -code ~/.zshrc +``` bash +sudo apt-get update; sudo apt-get install direnv +echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc ``` -Then: -- Spot the line starting with `plugins=` -- Add `ssh-agent` at the end of the plugins list - -:heavy_check_mark: Save the `.zshrc` file with `Ctrl` + `S` and close your text editor. ## Installing Python (with [`pyenv`](https://github.com/pyenv/pyenv)) diff --git a/WINDOWS.es.md b/WINDOWS.es.md index 3872b10c..712f7f52 100644 --- a/WINDOWS.es.md +++ b/WINDOWS.es.md @@ -654,18 +654,6 @@ Si no es así, puedes seguir [estas instrucciones](https://github.com/lewagon/se No dudes en **pedirle ayuda a tu profesor**. -## direnv - -[direnv](https://direnv.net/) es una extensión del shell. Facilita trabajar con variables de entorno por proyecto, lo cual será útil para customizar el comportamiento de tu código. - - -``` bash -sudo apt-get update; sudo apt-get install direnv -echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc -``` - - - ## GitHub CLI CLI es una abreviación de [Command-line Interface](https://en.wikipedia.org/wiki/Command-line_interface) que significa interfaz de línea de comando. @@ -798,27 +786,16 @@ cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh 💡 Selecciona la dirección `...@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en repositorios públicos a los que contribuyas. -## Desahilitación de la solicitud de SSH passphrase - -No vas a querer que te pidan tu passphrase cada vez que te comuniques con un repositorio remoto. Por eso debes agregarle plugin `ssh-agent` a `oh my zsh`: - -Primero abre el archivo `.zshrc`: - -```bash -code ~/.zshrc -``` +## direnv -Luego: -- Identifica la línea que comienza por `plugins=` -- Agrega `ssh-agent` al final de la lista de plugins +[direnv](https://direnv.net/) es una extensión del shell. Facilita trabajar con variables de entorno por proyecto, lo cual será útil para customizar el comportamiento de tu código. -La lista debería verse de la siguiente manera: -```bash -plugins=(gitfast last-working-dir common-aliases zsh-syntax-highlighting history-substring-search pyenv ssh-agent) +``` bash +sudo apt-get update; sudo apt-get install direnv +echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc ``` -:heavy_check_mark: Guarda el archivo `.zshrc` con `Ctrl` + `S` y cierra tu editor de texto. ## Instalando Python (con [`pyenv`](https://github.com/pyenv/pyenv)) diff --git a/WINDOWS.md b/WINDOWS.md index 027cae70..1d88e8fa 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -618,18 +618,6 @@ If it does not, you can follow [these instructions](https://github.com/lewagon/s Do not hesitate to **contact a teacher**. -## direnv - -[direnv](https://direnv.net/) is a shell extension. It makes it easy to deal with per project environment variables. This will be useful in order to customize the behavior of your code. - - -``` bash -sudo apt-get update; sudo apt-get install direnv -echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc -``` - - - ## GitHub CLI CLI is the acronym of [Command-line Interface](https://en.wikipedia.org/wiki/Command-line_interface). @@ -838,21 +826,16 @@ cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh 💡 Select the `...@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. -## Disable SSH passphrase prompt +## direnv -You don't want to be asked for your passphrase every time you communicate with a distant repository. So, you need to add the plugin `ssh-agent` to `oh my zsh`: +[direnv](https://direnv.net/) is a shell extension. It makes it easy to deal with per project environment variables. This will be useful in order to customize the behavior of your code. -First, open the `.zshrc` file: -```bash -code ~/.zshrc +``` bash +sudo apt-get update; sudo apt-get install direnv +echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc ``` -Then: -- Spot the line starting with `plugins=` -- Add `ssh-agent` at the end of the plugins list - -:heavy_check_mark: Save the `.zshrc` file with `Ctrl` + `S` and close your text editor. ## Installing Python (with [`pyenv`](https://github.com/pyenv/pyenv)) diff --git a/macOS.es.md b/macOS.es.md index 9d222198..d05d867b 100644 --- a/macOS.es.md +++ b/macOS.es.md @@ -206,18 +206,6 @@ Cuando termines, tu terminal debería lucir así: :x: Si no, por favor **pídele ayuda a un profesor**. -## direnv - -[direnv](https://direnv.net/) es una extensión del shell. Facilita trabajar con variables de entorno por proyecto, lo cual será útil para customizar el comportamiento de tu código. - - -``` bash -brew install direnv -echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc -``` - - - ## GitHub CLI CLI es una abreviación de [Command-line Interface](https://en.wikipedia.org/wiki/Command-line_interface) que significa interfaz de línea de comando. @@ -350,6 +338,18 @@ cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh 💡 Selecciona la dirección `...@users.noreply.github.com` si no quieres que tu correo electrónico aparezca en repositorios públicos a los que contribuyas. +## direnv + +[direnv](https://direnv.net/) es una extensión del shell. Facilita trabajar con variables de entorno por proyecto, lo cual será útil para customizar el comportamiento de tu código. + + +``` bash +brew install direnv +echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc +``` + + + ## Instalando Python (con [`pyenv`](https://github.com/pyenv/pyenv)) ### Desinstalar `conda` diff --git a/macOS.md b/macOS.md index e50e433d..08ccec89 100644 --- a/macOS.md +++ b/macOS.md @@ -210,18 +210,6 @@ At the end your terminal should look like this: :x: Otherwise, please **ask for a teacher** -## direnv - -[direnv](https://direnv.net/) is a shell extension. It makes it easy to deal with per project environment variables. This will be useful in order to customize the behavior of your code. - - -``` bash -brew install direnv -echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc -``` - - - ## GitHub CLI CLI is the acronym of [Command-line Interface](https://en.wikipedia.org/wiki/Command-line_interface). @@ -430,6 +418,18 @@ cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh 💡 Select the `...@users.noreply.github.com` address if you don't want your email to appear in public repositories you may contribute to. +## direnv + +[direnv](https://direnv.net/) is a shell extension. It makes it easy to deal with per project environment variables. This will be useful in order to customize the behavior of your code. + + +``` bash +brew install direnv +echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc +``` + + + ## Installing Python (with [`pyenv`](https://github.com/pyenv/pyenv)) ### Uninstall `conda` From aecffb5b48d2e6bc01ffd3c69b70ca15cf028ff7 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Sat, 19 Sep 2026 16:22:07 +0200 Subject: [PATCH 31/42] Remove no browser for gcloud on Windows No reason to use this, if $BROWSER is properly set up, which the setup ensures. If not, we should fix the underlying problem (so that Jupyter Notebook opens properly). --- _partials/gcp_setup.md | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/_partials/gcp_setup.md b/_partials/gcp_setup.md index 2c3957ce..f508a1f0 100644 --- a/_partials/gcp_setup.md +++ b/_partials/gcp_setup.md @@ -2,19 +2,9 @@ - Authenticate the `gcloud` CLI with the google account you used for GCP - {% if os == "macos" %} ```bash gcloud auth login ``` - {% elsif os == "linux" %} - ```bash - gcloud auth login - ``` - {% elsif os == "windows" %} - ```bash - gcloud auth login --no-launch-browser - ``` - {% endif %} - Login to your Google account on the new tab opened in your web browser From f277d80b01fa8f28325f246daffcf866da625ba2 Mon Sep 17 00:00:00 2001 From: github-actions Date: Sat, 19 Sep 2026 14:24:39 +0000 Subject: [PATCH 32/42] setup guides generated --- LINUX.md | 2 -- WINDOWS.md | 4 +--- macOS.md | 2 -- 3 files changed, 1 insertion(+), 7 deletions(-) diff --git a/LINUX.md b/LINUX.md index 1db8cb77..ca602d3c 100644 --- a/LINUX.md +++ b/LINUX.md @@ -871,11 +871,9 @@ sudo apt-get update && sudo apt-get install google-cloud-cli - Authenticate the `gcloud` CLI with the google account you used for GCP - ```bash gcloud auth login ``` - - Login to your Google account on the new tab opened in your web browser diff --git a/WINDOWS.md b/WINDOWS.md index 1d88e8fa..a3816ec3 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -1333,11 +1333,9 @@ sudo apt-get update && sudo apt-get install google-cloud-cli - Authenticate the `gcloud` CLI with the google account you used for GCP - ```bash - gcloud auth login --no-launch-browser + gcloud auth login ``` - - Login to your Google account on the new tab opened in your web browser diff --git a/macOS.md b/macOS.md index 08ccec89..a57c4a4e 100644 --- a/macOS.md +++ b/macOS.md @@ -882,11 +882,9 @@ If that doesn't work, contact a TA. - Authenticate the `gcloud` CLI with the google account you used for GCP - ```bash gcloud auth login ``` - - Login to your Google account on the new tab opened in your web browser From a49a2cfeadf9906b874a1706956e0b36974464ea Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Sat, 19 Sep 2026 16:35:40 +0200 Subject: [PATCH 33/42] Split GCP acocunt to differentiate PT --- _partials/es/gcp_account_setup.md | 5 ----- _partials/es/gcp_account_setup_intro.md | 5 +++++ _partials/gcp_account_setup.md | 5 ----- _partials/gcp_account_setup_intro.md | 5 +++++ builds/LINUX.yml | 1 + builds/WINDOWS.yml | 1 + builds/macOS.yml | 1 + 7 files changed, 13 insertions(+), 10 deletions(-) create mode 100644 _partials/es/gcp_account_setup_intro.md create mode 100644 _partials/gcp_account_setup_intro.md diff --git a/_partials/es/gcp_account_setup.md b/_partials/es/gcp_account_setup.md index 215f8043..2098360c 100644 --- a/_partials/es/gcp_account_setup.md +++ b/_partials/es/gcp_account_setup.md @@ -1,8 +1,3 @@ -## Configuración de Google Cloud Platform - -[Google Cloud](https://cloud.google.com/) es una solución en la nube que utilizarás para desplegar tus productos basados en Machine Learning en producción. - -🚨 Si eres estudiante del **Part-Time Bootcamp**, ¡OMITE ESTA SECCIÓN POR AHORA! **Google Cloud** ofrece 300 $ de crédito gratuito durante 3 meses. No querrás activar tu cuenta de Google Cloud demasiado pronto 🙅‍♂️ ### Configuración del proyecto diff --git a/_partials/es/gcp_account_setup_intro.md b/_partials/es/gcp_account_setup_intro.md new file mode 100644 index 00000000..e95d17b2 --- /dev/null +++ b/_partials/es/gcp_account_setup_intro.md @@ -0,0 +1,5 @@ +## Configuración de Google Cloud Platform + +[Google Cloud](https://cloud.google.com/) es una solución en la nube que utilizarás para desplegar tus productos basados en Machine Learning en producción. + +🚨 Si eres estudiante del **Part-Time Bootcamp**, ¡OMITE ESTA SECCIÓN POR AHORA! **Google Cloud** ofrece 300 $ de crédito gratuito durante 3 meses. No querrás activar tu cuenta de Google Cloud demasiado pronto 🙅‍♂️ diff --git a/_partials/gcp_account_setup.md b/_partials/gcp_account_setup.md index 73076349..a8de0632 100644 --- a/_partials/gcp_account_setup.md +++ b/_partials/gcp_account_setup.md @@ -1,8 +1,3 @@ -## Google Cloud Platform setup - -[Google Cloud](https://cloud.google.com/) 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 or the Flex bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ ### Project setup diff --git a/_partials/gcp_account_setup_intro.md b/_partials/gcp_account_setup_intro.md new file mode 100644 index 00000000..8a002557 --- /dev/null +++ b/_partials/gcp_account_setup_intro.md @@ -0,0 +1,5 @@ +## Google Cloud Platform setup + +[Google Cloud](https://cloud.google.com/) 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 or the Flex bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ diff --git a/builds/LINUX.yml b/builds/LINUX.yml index 88bf9229..102b3891 100644 --- a/builds/LINUX.yml +++ b/builds/LINUX.yml @@ -19,6 +19,7 @@ partials: - nbextensions - python_checkup - ubuntu_docker + - gcp_account_setup_intro - gcp_account_setup - ubuntu_gcloud - gcp_setup diff --git a/builds/WINDOWS.yml b/builds/WINDOWS.yml index 2072e955..5a7e1254 100644 --- a/builds/WINDOWS.yml +++ b/builds/WINDOWS.yml @@ -26,6 +26,7 @@ partials: - win_jupyter - python_checkup - win_docker + - gcp_account_setup_intro - gcp_account_setup - ubuntu_gcloud - gcp_setup diff --git a/builds/macOS.yml b/builds/macOS.yml index 01f9ea86..1d257b8f 100644 --- a/builds/macOS.yml +++ b/builds/macOS.yml @@ -21,6 +21,7 @@ partials: - nbextensions - python_checkup - docker + - gcp_account_setup_intro - gcp_account_setup - gcp_cli_setup - gcp_setup From fa36315620760ad90ad48028900d291e0503cde5 Mon Sep 17 00:00:00 2001 From: github-actions Date: Sat, 19 Sep 2026 14:36:00 +0000 Subject: [PATCH 34/42] setup guides generated --- LINUX.es.md | 2 ++ LINUX.md | 2 ++ WINDOWS.es.md | 2 ++ WINDOWS.md | 2 ++ macOS.es.md | 2 ++ macOS.md | 2 ++ 6 files changed, 12 insertions(+) diff --git a/LINUX.es.md b/LINUX.es.md index dbf39e8e..05322d7b 100644 --- a/LINUX.es.md +++ b/LINUX.es.md @@ -587,6 +587,8 @@ Debería aparecer el siguiente mensaje: 🚨 Si eres estudiante del **Part-Time Bootcamp**, ¡OMITE ESTA SECCIÓN POR AHORA! **Google Cloud** ofrece 300 $ de crédito gratuito durante 3 meses. No querrás activar tu cuenta de Google Cloud demasiado pronto 🙅‍♂️ + + ### Configuración del proyecto - Ve a [Google Cloud](https://console.cloud.google.com/) y crea una cuenta si aún no tienes una diff --git a/LINUX.md b/LINUX.md index ca602d3c..3de9fa1c 100644 --- a/LINUX.md +++ b/LINUX.md @@ -724,6 +724,8 @@ The following message should print: 🚨 If you are a student of the **Part-Time Bootcamp or the Flex bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ + + ### Project setup - Go to [Google Cloud](https://console.cloud.google.com/) and create an account if you do not already have one diff --git a/WINDOWS.es.md b/WINDOWS.es.md index 712f7f52..72efbf6a 100644 --- a/WINDOWS.es.md +++ b/WINDOWS.es.md @@ -1111,6 +1111,8 @@ Intente `docker info` nuevamente. 🚨 Si eres estudiante del **Part-Time Bootcamp**, ¡OMITE ESTA SECCIÓN POR AHORA! **Google Cloud** ofrece 300 $ de crédito gratuito durante 3 meses. No querrás activar tu cuenta de Google Cloud demasiado pronto 🙅‍♂️ + + ### Configuración del proyecto - Ve a [Google Cloud](https://console.cloud.google.com/) y crea una cuenta si aún no tienes una diff --git a/WINDOWS.md b/WINDOWS.md index a3816ec3..0955a18e 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -1186,6 +1186,8 @@ Try `docker run hello-world` again. 🚨 If you are a student of the **Part-Time Bootcamp or the Flex bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ + + ### Project setup - Go to [Google Cloud](https://console.cloud.google.com/) and create an account if you do not already have one diff --git a/macOS.es.md b/macOS.es.md index d05d867b..5671e08d 100644 --- a/macOS.es.md +++ b/macOS.es.md @@ -638,6 +638,8 @@ Deberías obtener lo siguiente: 🚨 Si eres estudiante del **Part-Time Bootcamp**, ¡OMITE ESTA SECCIÓN POR AHORA! **Google Cloud** ofrece 300 $ de crédito gratuito durante 3 meses. No querrás activar tu cuenta de Google Cloud demasiado pronto 🙅‍♂️ + + ### Configuración del proyecto - Ve a [Google Cloud](https://console.cloud.google.com/) y crea una cuenta si aún no tienes una diff --git a/macOS.md b/macOS.md index a57c4a4e..c63685b4 100644 --- a/macOS.md +++ b/macOS.md @@ -718,6 +718,8 @@ You should get: 🚨 If you are a student of the **Part-Time Bootcamp or the Flex bootcamp**, SKIP THIS SECTION FOR NOW! **Google Cloud** offers $300 worth of free credits for a duration of 3 months. You do not want to activate your Google Cloud account too soon 🙅‍♂️ + + ### Project setup - Go to [Google Cloud](https://console.cloud.google.com/) and create an account if you do not already have one From 47a6b7b6b2d00f0a0099297508d9c560b14bb692 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Sun, 20 Sep 2026 10:44:22 +0200 Subject: [PATCH 35/42] Trigger rebuild From e2b97a404dd6ba7ea78fa92026e0376ef69fe784 Mon Sep 17 00:00:00 2001 From: github-actions Date: Sun, 20 Sep 2026 08:44:39 +0000 Subject: [PATCH 36/42] setup guides generated --- LINUX.es.md | 2 +- LINUX.md | 2 +- REMOTE_SETUP.md | 2 +- VM.es.md | 2 +- VM.md | 2 +- WINDOWS.es.md | 2 +- WINDOWS.md | 2 +- macOS.es.md | 2 +- macOS.md | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/LINUX.es.md b/LINUX.es.md index 05322d7b..8544af46 100644 --- a/LINUX.es.md +++ b/LINUX.es.md @@ -93,7 +93,7 @@ Para el inicio del bootcamp, desactivaremos estas funciones. Llegado el momento En **VS Code**: -1. Abramos la "Paleta de comandos" de VS Code: escribe `Ctrl-Shift-P` (Windows / Linux) o `Cmd-Shift-P` (macOS). +1. Abramos la "Paleta de comandos" de VS Code: escribe `Ctrl-Shift-P`. 1. Se abrirá la Paleta de comandos: una pequeña caja de texto en la parte superior de la pantalla. Empieza a escribir `aifeatures` hasta que veas "Chat: Learn How to Hide AI features". Haz clic en ella. ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. Esto abrirá la configuración y te mostrará la opción "Disable and hide built-in AI features ...". Marca la casilla delante de esa opción. diff --git a/LINUX.md b/LINUX.md index 3de9fa1c..85343615 100644 --- a/LINUX.md +++ b/LINUX.md @@ -108,7 +108,7 @@ For the start of the bootcamp, we’ll disable these features. At the right poin In **VS Code**: -1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P` (Windows / Linux) or `Cmd-Shift-P` (macOS). +1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P`. 1. This will open the Command Palette: a small text box at the top of your screen. Start typing `aifeatures` until you see "Chat: Learn How to Hide AI features". Click on it. ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. This will open the settings, and will show you the option "Disable and hide built-in AI features ...". Tick the checkbox in front of that option. diff --git a/REMOTE_SETUP.md b/REMOTE_SETUP.md index 5e301ef5..53f80a9a 100644 --- a/REMOTE_SETUP.md +++ b/REMOTE_SETUP.md @@ -457,7 +457,7 @@ For the start of the bootcamp, we’ll disable these features. At the right poin In **VS Code**: -1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P` (Windows / Linux) or `Cmd-Shift-P` (macOS). +1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P`. 1. This will open the Command Palette: a small text box at the top of your screen. Start typing `aifeatures` until you see "Chat: Learn How to Hide AI features". Click on it. ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. This will open the settings, and will show you the option "Disable and hide built-in AI features ...". Tick the checkbox in front of that option. diff --git a/VM.es.md b/VM.es.md index 7aa61172..b3235adb 100644 --- a/VM.es.md +++ b/VM.es.md @@ -260,7 +260,7 @@ Para el inicio del bootcamp, desactivaremos estas funciones. Llegado el momento En **VS Code**: -1. Abramos la "Paleta de comandos" de VS Code: escribe `Ctrl-Shift-P` (Windows / Linux) o `Cmd-Shift-P` (macOS). +1. Abramos la "Paleta de comandos" de VS Code: escribe `Ctrl-Shift-P`. 1. Se abrirá la Paleta de comandos: una pequeña caja de texto en la parte superior de la pantalla. Empieza a escribir `aifeatures` hasta que veas "Chat: Learn How to Hide AI features". Haz clic en ella. ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. Esto abrirá la configuración y te mostrará la opción "Disable and hide built-in AI features ...". Marca la casilla delante de esa opción. diff --git a/VM.md b/VM.md index 598cc957..47679ae9 100644 --- a/VM.md +++ b/VM.md @@ -366,7 +366,7 @@ For the start of the bootcamp, we’ll disable these features. At the right poin In **VS Code**: -1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P` (Windows / Linux) or `Cmd-Shift-P` (macOS). +1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P`. 1. This will open the Command Palette: a small text box at the top of your screen. Start typing `aifeatures` until you see "Chat: Learn How to Hide AI features". Click on it. ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. This will open the settings, and will show you the option "Disable and hide built-in AI features ...". Tick the checkbox in front of that option. diff --git a/WINDOWS.es.md b/WINDOWS.es.md index 72efbf6a..6cdcb442 100644 --- a/WINDOWS.es.md +++ b/WINDOWS.es.md @@ -518,7 +518,7 @@ Para el inicio del bootcamp, desactivaremos estas funciones. Llegado el momento En **VS Code**: -1. Abramos la "Paleta de comandos" de VS Code: escribe `Ctrl-Shift-P` (Windows / Linux) o `Cmd-Shift-P` (macOS). +1. Abramos la "Paleta de comandos" de VS Code: escribe `Ctrl-Shift-P`. 1. Se abrirá la Paleta de comandos: una pequeña caja de texto en la parte superior de la pantalla. Empieza a escribir `aifeatures` hasta que veas "Chat: Learn How to Hide AI features". Haz clic en ella. ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. Esto abrirá la configuración y te mostrará la opción "Disable and hide built-in AI features ...". Marca la casilla delante de esa opción. diff --git a/WINDOWS.md b/WINDOWS.md index 0955a18e..7ec60bb6 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -473,7 +473,7 @@ For the start of the bootcamp, we’ll disable these features. At the right poin In **VS Code**: -1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P` (Windows / Linux) or `Cmd-Shift-P` (macOS). +1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P`. 1. This will open the Command Palette: a small text box at the top of your screen. Start typing `aifeatures` until you see "Chat: Learn How to Hide AI features". Click on it. ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. This will open the settings, and will show you the option "Disable and hide built-in AI features ...". Tick the checkbox in front of that option. diff --git a/macOS.es.md b/macOS.es.md index 5671e08d..e3df6619 100644 --- a/macOS.es.md +++ b/macOS.es.md @@ -176,7 +176,7 @@ Para el inicio del bootcamp, desactivaremos estas funciones. Llegado el momento En **VS Code**: -1. Abramos la "Paleta de comandos" de VS Code: escribe `Ctrl-Shift-P` (Windows / Linux) o `Cmd-Shift-P` (macOS). +1. Abramos la "Paleta de comandos" de VS Code: escribe `Cmd-Shift-P`. 1. Se abrirá la Paleta de comandos: una pequeña caja de texto en la parte superior de la pantalla. Empieza a escribir `aifeatures` hasta que veas "Chat: Learn How to Hide AI features". Haz clic en ella. ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. Esto abrirá la configuración y te mostrará la opción "Disable and hide built-in AI features ...". Marca la casilla delante de esa opción. diff --git a/macOS.md b/macOS.md index c63685b4..4a7a5e73 100644 --- a/macOS.md +++ b/macOS.md @@ -180,7 +180,7 @@ For the start of the bootcamp, we’ll disable these features. At the right poin In **VS Code**: -1. Let's open the VS Code "Command **P**alette": type `Ctrl-Shift-P` (Windows / Linux) or `Cmd-Shift-P` (macOS). +1. Let's open the VS Code "Command **P**alette": type `Cmd-Shift-P`. 1. This will open the Command Palette: a small text box at the top of your screen. Start typing `aifeatures` until you see "Chat: Learn How to Hide AI features". Click on it. ![The Command Palette at the top of the screen](https://github.com/lewagon/setup/blob/simplify-conso/images/vscode_find_aifeatures.png) 1. This will open the settings, and will show you the option "Disable and hide built-in AI features ...". Tick the checkbox in front of that option. From 002fc661fc8755ad7a88d14120ff7e493a784828 Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Sun, 20 Sep 2026 15:27:44 +0200 Subject: [PATCH 37/42] Use script to configure Jupyter Notebook --- _partials/es/nbextensions.md | 24 +++++++++++++++++------- _partials/nbextensions.md | 22 ++++++++++++++++------ builds/WINDOWS.yml | 1 - 3 files changed, 33 insertions(+), 14 deletions(-) diff --git a/_partials/es/nbextensions.md b/_partials/es/nbextensions.md index 7f07e8b4..ba4ddfc6 100644 --- a/_partials/es/nbextensions.md +++ b/_partials/es/nbextensions.md @@ -1,12 +1,22 @@ -## Mejora Jupyter Notebook +## Configuración de Jupyter Notebook -Mejora la visualización del [elemento `details` para revelación de información](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) en tus notebooks. +Dependiendo de tu sistema, necesitamos hacer algunos cambios pequeños en tu configuración de Jupyter. -Ejecuta las siguientes líneas para crear una hoja de estilos `custom.css` en tu directorio de configuración de Jupyter: +Ejecuta esto: ```bash -LOCATION=$(jupyter --config-dir)/custom -SOURCE=https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/specs/jupyter/custom.css -mkdir -p $LOCATION -curl $SOURCE > $LOCATION/custom.css +bash -c "$(curl -s https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/checks/setup_jupyter.sh)" ``` + +
+Si tienes curiosidad sobre lo que sucede aquí, haz clic aquí. + +Este script añade una configuración para mejorar la visualización de los [elementos `details`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) en tus notebooks. + +Si estás usando Windows WSL, también soluciona otros problemas. +{% if os == "windows" %} +- Se asegura de que tu variable BROWSER esté configurada correctamente. Se configuró antes, pero fue sobrescrita por la configuración de dotfiles. +- Soluciona un error conocido en Jupyter Notebook que siempre abre el árbol de directorios, incluso si especificas una ruta de archivo específica. +{% endif %} + +
diff --git a/_partials/nbextensions.md b/_partials/nbextensions.md index 25dad5ab..e61449c3 100644 --- a/_partials/nbextensions.md +++ b/_partials/nbextensions.md @@ -1,12 +1,22 @@ ## Jupyter Notebook tweaking -Let's improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. +Depending on your system, we need to make some small changes to your Jupyter configuration. -Run the following lines to create a `custom.css` stylesheet in your Jupyter config directory: +Run this: ```bash -LOCATION=$(jupyter --config-dir)/custom -SOURCE=https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/specs/jupyter/custom.css -mkdir -p $LOCATION -curl $SOURCE > $LOCATION/custom.css +bash -c "$(curl -s https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/checks/setup_jupyter.sh)" ``` + +
+If you are curious about what happens here, click here. + +This script adds a configuration to improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. + +If you're using Windows WSL, it also fixes some other problems. +{% if os == "windows" %} +- It makes sure you're BROWSER is configured correctly. It was configured before, but was overwritten by the dotfiles setup. +- It fixes a known bug with Jupyter Notebook always opening the directory tree, even if you specify a specific file path. +{% endif %} + +
diff --git a/builds/WINDOWS.yml b/builds/WINDOWS.yml index 5a7e1254..15348825 100644 --- a/builds/WINDOWS.yml +++ b/builds/WINDOWS.yml @@ -23,7 +23,6 @@ partials: - virtualenv - pip - nbextensions - - win_jupyter - python_checkup - win_docker - gcp_account_setup_intro From 47c90f8be9c62dc9399b87e123208183fed99d13 Mon Sep 17 00:00:00 2001 From: github-actions Date: Sun, 20 Sep 2026 13:34:29 +0000 Subject: [PATCH 38/42] setup guides generated --- LINUX.es.md | 21 ++++++++++++------- LINUX.md | 19 +++++++++++------ REMOTE_SETUP.md | 19 +++++++++++------ VM.es.md | 21 ++++++++++++------- VM.md | 19 +++++++++++------ WINDOWS.es.md | 55 ++++++++++--------------------------------------- WINDOWS.md | 52 +++++++++------------------------------------- macOS.es.md | 21 ++++++++++++------- macOS.md | 19 +++++++++++------ 9 files changed, 115 insertions(+), 131 deletions(-) diff --git a/LINUX.es.md b/LINUX.es.md index 8544af46..156daae0 100644 --- a/LINUX.es.md +++ b/LINUX.es.md @@ -476,19 +476,26 @@ pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs -## Mejora Jupyter Notebook +## Configuración de Jupyter Notebook -Mejora la visualización del [elemento `details` para revelación de información](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) en tus notebooks. +Dependiendo de tu sistema, necesitamos hacer algunos cambios pequeños en tu configuración de Jupyter. -Ejecuta las siguientes líneas para crear una hoja de estilos `custom.css` en tu directorio de configuración de Jupyter: +Ejecuta esto: ```bash -LOCATION=$(jupyter --config-dir)/custom -SOURCE=https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/specs/jupyter/custom.css -mkdir -p $LOCATION -curl $SOURCE > $LOCATION/custom.css +bash -c "$(curl -s https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/checks/setup_jupyter.sh)" ``` +
+Si tienes curiosidad sobre lo que sucede aquí, haz clic aquí. + +Este script añade una configuración para mejorar la visualización de los [elementos `details`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) en tus notebooks. + +Si estás usando Windows WSL, también soluciona otros problemas. + + +
+ ## Chequeo de la configuración de Python diff --git a/LINUX.md b/LINUX.md index 85343615..a0682caf 100644 --- a/LINUX.md +++ b/LINUX.md @@ -599,17 +599,24 @@ pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs ## Jupyter Notebook tweaking -Let's improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. +Depending on your system, we need to make some small changes to your Jupyter configuration. -Run the following lines to create a `custom.css` stylesheet in your Jupyter config directory: +Run this: ```bash -LOCATION=$(jupyter --config-dir)/custom -SOURCE=https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/specs/jupyter/custom.css -mkdir -p $LOCATION -curl $SOURCE > $LOCATION/custom.css +bash -c "$(curl -s https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/checks/setup_jupyter.sh)" ``` +
+If you are curious about what happens here, click here. + +This script adds a configuration to improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. + +If you're using Windows WSL, it also fixes some other problems. + + +
+ ## Python setup check diff --git a/REMOTE_SETUP.md b/REMOTE_SETUP.md index 53f80a9a..4468689f 100644 --- a/REMOTE_SETUP.md +++ b/REMOTE_SETUP.md @@ -934,17 +934,24 @@ pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs ## Jupyter Notebook tweaking -Let's improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. +Depending on your system, we need to make some small changes to your Jupyter configuration. -Run the following lines to create a `custom.css` stylesheet in your Jupyter config directory: +Run this: ```bash -LOCATION=$(jupyter --config-dir)/custom -SOURCE=https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/specs/jupyter/custom.css -mkdir -p $LOCATION -curl $SOURCE > $LOCATION/custom.css +bash -c "$(curl -s https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/checks/setup_jupyter.sh)" ``` +
+If you are curious about what happens here, click here. + +This script adds a configuration to improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. + +If you're using Windows WSL, it also fixes some other problems. + + +
+ ## Python setup check diff --git a/VM.es.md b/VM.es.md index b3235adb..62dcfe95 100644 --- a/VM.es.md +++ b/VM.es.md @@ -650,19 +650,26 @@ pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs -## Mejora Jupyter Notebook +## Configuración de Jupyter Notebook -Mejora la visualización del [elemento `details` para revelación de información](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) en tus notebooks. +Dependiendo de tu sistema, necesitamos hacer algunos cambios pequeños en tu configuración de Jupyter. -Ejecuta las siguientes líneas para crear una hoja de estilos `custom.css` en tu directorio de configuración de Jupyter: +Ejecuta esto: ```bash -LOCATION=$(jupyter --config-dir)/custom -SOURCE=https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/specs/jupyter/custom.css -mkdir -p $LOCATION -curl $SOURCE > $LOCATION/custom.css +bash -c "$(curl -s https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/checks/setup_jupyter.sh)" ``` +
+Si tienes curiosidad sobre lo que sucede aquí, haz clic aquí. + +Este script añade una configuración para mejorar la visualización de los [elementos `details`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) en tus notebooks. + +Si estás usando Windows WSL, también soluciona otros problemas. + + +
+ ## Chequeo de la configuración de Python diff --git a/VM.md b/VM.md index 47679ae9..b6e901ca 100644 --- a/VM.md +++ b/VM.md @@ -956,17 +956,24 @@ pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs ## Jupyter Notebook tweaking -Let's improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. +Depending on your system, we need to make some small changes to your Jupyter configuration. -Run the following lines to create a `custom.css` stylesheet in your Jupyter config directory: +Run this: ```bash -LOCATION=$(jupyter --config-dir)/custom -SOURCE=https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/specs/jupyter/custom.css -mkdir -p $LOCATION -curl $SOURCE > $LOCATION/custom.css +bash -c "$(curl -s https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/checks/setup_jupyter.sh)" ``` +
+If you are curious about what happens here, click here. + +This script adds a configuration to improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. + +If you're using Windows WSL, it also fixes some other problems. + + +
+ ## Python setup check diff --git a/WINDOWS.es.md b/WINDOWS.es.md index 6cdcb442..d5bdda38 100644 --- a/WINDOWS.es.md +++ b/WINDOWS.es.md @@ -926,61 +926,28 @@ pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs -## Mejora Jupyter Notebook +## Configuración de Jupyter Notebook -Mejora la visualización del [elemento `details` para revelación de información](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) en tus notebooks. +Dependiendo de tu sistema, necesitamos hacer algunos cambios pequeños en tu configuración de Jupyter. -Ejecuta las siguientes líneas para crear una hoja de estilos `custom.css` en tu directorio de configuración de Jupyter: +Ejecuta esto: ```bash -LOCATION=$(jupyter --config-dir)/custom -SOURCE=https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/specs/jupyter/custom.css -mkdir -p $LOCATION -curl $SOURCE > $LOCATION/custom.css +bash -c "$(curl -s https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/checks/setup_jupyter.sh)" ``` +
+Si tienes curiosidad sobre lo que sucede aquí, haz clic aquí. -### Configuración de Jupyter Notebook para abrirlo en tu navegador - -Primero, vamos a configurar tu navegador predeterminado nuevamente. Ya hicimos esto antes, pero cuando instalamos los dotfiles se eliminó la configuración. No hay problema, ejecuta este comando para volver a configurarlo: - -```bash -grep -E "export (GH_)*BROWSER" ~/.zshrc.backup >> ~/.zshrc -``` - -Luego, reinicia tu terminal con: - -```bash -exec zsh -``` - -Genera el archivo de configuración para **Jupyter Notebook**... - -``` bash -jupyter notebook --generate-config -``` - -⚠️ Por favor copia la ruta que arrojó el comando anterior. - -Ahora edita el archivo de configuración de Jupyter generado: - -``` bash -sed -i.backup 's/# c.ServerApp.use_redirect_file = True/c.ServerApp.use_redirect_file = False/' ~/.jupyter/jupyter_notebook_config.py -``` - -Intenta usar Jupyter: - -``` bash -jupyter notebook -``` +Este script añade una configuración para mejorar la visualización de los [elementos `details`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) en tus notebooks. -Este comando debió haber abierto una página Jupyter en tu navegador: +Si estás usando Windows WSL, también soluciona otros problemas. -![](images/wsl_jupyter_notebook.png) +- Se asegura de que tu variable BROWSER esté configurada correctamente. Se configuró antes, pero fue sobrescrita por la configuración de dotfiles. +- Soluciona un error conocido en Jupyter Notebook que siempre abre el árbol de directorios, incluso si especificas una ruta de archivo específica. -Si no es el caso, por favor llama a un TA. -Para cerrar el servidor jupyter en la terminal, presiona `CTRL` + `C`, enter y. Luego presiona Enter. +
## Chequeo de la configuración de Python diff --git a/WINDOWS.md b/WINDOWS.md index 7ec60bb6..f0d187c1 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -989,58 +989,26 @@ pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs ## Jupyter Notebook tweaking -Let's improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. +Depending on your system, we need to make some small changes to your Jupyter configuration. -Run the following lines to create a `custom.css` stylesheet in your Jupyter config directory: +Run this: ```bash -LOCATION=$(jupyter --config-dir)/custom -SOURCE=https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/specs/jupyter/custom.css -mkdir -p $LOCATION -curl $SOURCE > $LOCATION/custom.css +bash -c "$(curl -s https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/checks/setup_jupyter.sh)" ``` +
+If you are curious about what happens here, click here. +This script adds a configuration to improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. -### Configuring Jupyter Notebook to open in your browser - -First, let's configure your default browser again. We did this before, but when we installed the dotfiles it got removed. Not a problem, run this command to configure the settings again: - -```bash -grep -E "export (GH_)*BROWSER" ~/.zshrc.backup >> ~/.zshrc -``` - -Then, restart your terminal with: - -```bash -exec zsh -``` - -Let's generate the configuration file for **Jupyter Notebook**... - -``` bash -jupyter notebook --generate-config -``` - -We will now edit the generated Jupyter configuration file: - -``` bash -sed -i.backup 's/# c.ServerApp.use_redirect_file = True/c.ServerApp.use_redirect_file = False/' ~/.jupyter/jupyter_notebook_config.py -``` - -Let's try to run Jupyter: - -``` bash -jupyter notebook -``` - -This command should have opened a Jupyter page in your browser: +If you're using Windows WSL, it also fixes some other problems. -![](images/wsl_jupyter_notebook.png) +- It makes sure you're BROWSER is configured correctly. It was configured before, but was overwritten by the dotfiles setup. +- It fixes a known bug with Jupyter Notebook always opening the directory tree, even if you specify a specific file path. -If it is not the case, please call a TA. -To stop the Jupyter server in the terminal, press `Ctrl` + `C`, enter y, then press Enter. +
## Python setup check diff --git a/macOS.es.md b/macOS.es.md index e3df6619..ff50d99b 100644 --- a/macOS.es.md +++ b/macOS.es.md @@ -539,19 +539,26 @@ pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs -## Mejora Jupyter Notebook +## Configuración de Jupyter Notebook -Mejora la visualización del [elemento `details` para revelación de información](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) en tus notebooks. +Dependiendo de tu sistema, necesitamos hacer algunos cambios pequeños en tu configuración de Jupyter. -Ejecuta las siguientes líneas para crear una hoja de estilos `custom.css` en tu directorio de configuración de Jupyter: +Ejecuta esto: ```bash -LOCATION=$(jupyter --config-dir)/custom -SOURCE=https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/specs/jupyter/custom.css -mkdir -p $LOCATION -curl $SOURCE > $LOCATION/custom.css +bash -c "$(curl -s https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/checks/setup_jupyter.sh)" ``` +
+Si tienes curiosidad sobre lo que sucede aquí, haz clic aquí. + +Este script añade una configuración para mejorar la visualización de los [elementos `details`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) en tus notebooks. + +Si estás usando Windows WSL, también soluciona otros problemas. + + +
+ ## Chequeo de la configuración de Python diff --git a/macOS.md b/macOS.md index 4a7a5e73..d73e25e9 100644 --- a/macOS.md +++ b/macOS.md @@ -605,17 +605,24 @@ pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs ## Jupyter Notebook tweaking -Let's improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. +Depending on your system, we need to make some small changes to your Jupyter configuration. -Run the following lines to create a `custom.css` stylesheet in your Jupyter config directory: +Run this: ```bash -LOCATION=$(jupyter --config-dir)/custom -SOURCE=https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/specs/jupyter/custom.css -mkdir -p $LOCATION -curl $SOURCE > $LOCATION/custom.css +bash -c "$(curl -s https://raw.githubusercontent.com/lewagon/data-setup/refs/heads/master/checks/setup_jupyter.sh)" ``` +
+If you are curious about what happens here, click here. + +This script adds a configuration to improve the display of the [`details` disclosure elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details) in your notebooks. + +If you're using Windows WSL, it also fixes some other problems. + + +
+ ## Python setup check From 245ca513a8cba33f765b088c1e38141112f95eee Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Sun, 20 Sep 2026 16:27:25 +0200 Subject: [PATCH 39/42] Add direnv to homebrew and align ES --- _partials/es/homebrew.md | 21 +++++++++++---------- _partials/homebrew.md | 1 + 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/_partials/es/homebrew.md b/_partials/es/homebrew.md index 122abc7e..c473b840 100644 --- a/_partials/es/homebrew.md +++ b/_partials/es/homebrew.md @@ -30,14 +30,15 @@ brew update Luego, instala algunos programas útiles (puedes copiar y pegar todas las líneas de código al mismo tiempo): ```bash -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 +brew upgrade git || brew install -y git +brew upgrade gh || brew install -y gh +brew upgrade wget || brew install -y wget +brew upgrade imagemagick || brew install -y imagemagick +brew upgrade jq || brew install -y jq +brew upgrade openssl || brew install -y openssl +brew upgrade tree || brew install -y tree +brew upgrade ncdu || brew install -y ncdu +brew upgrade xz || brew install -y xz +brew upgrade readline || brew install -y readline +brew upgrade direnv || brew install -y direnv ``` diff --git a/_partials/homebrew.md b/_partials/homebrew.md index c815ffec..117ce067 100644 --- a/_partials/homebrew.md +++ b/_partials/homebrew.md @@ -40,4 +40,5 @@ brew upgrade tree || brew install -y tree brew upgrade ncdu || brew install -y ncdu brew upgrade xz || brew install -y xz brew upgrade readline || brew install -y readline +brew upgrade direnv || brew install -y direnv ``` From 884f3ff9cab6f8ea1abb6f91148ba767a91d0b60 Mon Sep 17 00:00:00 2001 From: github-actions Date: Sun, 20 Sep 2026 14:34:06 +0000 Subject: [PATCH 40/42] setup guides generated --- macOS.es.md | 21 +++++++++++---------- macOS.md | 1 + 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/macOS.es.md b/macOS.es.md index ff50d99b..85855b02 100644 --- a/macOS.es.md +++ b/macOS.es.md @@ -102,16 +102,17 @@ brew update Luego, instala algunos programas útiles (puedes copiar y pegar todas las líneas de código al mismo tiempo): ```bash -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 +brew upgrade git || brew install -y git +brew upgrade gh || brew install -y gh +brew upgrade wget || brew install -y wget +brew upgrade imagemagick || brew install -y imagemagick +brew upgrade jq || brew install -y jq +brew upgrade openssl || brew install -y openssl +brew upgrade tree || brew install -y tree +brew upgrade ncdu || brew install -y ncdu +brew upgrade xz || brew install -y xz +brew upgrade readline || brew install -y readline +brew upgrade direnv || brew install -y direnv ``` diff --git a/macOS.md b/macOS.md index d73e25e9..dd540b20 100644 --- a/macOS.md +++ b/macOS.md @@ -116,6 +116,7 @@ brew upgrade tree || brew install -y tree brew upgrade ncdu || brew install -y ncdu brew upgrade xz || brew install -y xz brew upgrade readline || brew install -y readline +brew upgrade direnv || brew install -y direnv ``` From 25355f7a11a9abb48a7f6566e4b8914f06e00a1d Mon Sep 17 00:00:00 2001 From: Jules van Rie Date: Sun, 20 Sep 2026 16:37:33 +0200 Subject: [PATCH 41/42] Remove largely redundant check for browser --- _partials/es/windows_browser.md | 10 ---------- _partials/windows_browser.md | 10 ---------- 2 files changed, 20 deletions(-) diff --git a/_partials/es/windows_browser.md b/_partials/es/windows_browser.md index c832acf0..de137659 100644 --- a/_partials/es/windows_browser.md +++ b/_partials/es/windows_browser.md @@ -13,13 +13,3 @@ Reinicia tu terminal: ```bash exec zsh ``` - -Luego asegúrate de que el siguiente comando devuelva "Browser defined 👌": - -```bash -[ -z "$BROWSER" ] && echo "ERROR: please define a BROWSER environment variable ⚠️" || echo "Browser defined 👌" -``` - -Si no es así, puedes seguir [estas instrucciones](https://github.com/lewagon/setup/blob/master/_partials/es/windows_browser.md) para configurar tu navegador predeterminado manualmente. - -No dudes en **pedirle ayuda a tu profesor**. diff --git a/_partials/windows_browser.md b/_partials/windows_browser.md index 339bcf6d..d332fdcb 100644 --- a/_partials/windows_browser.md +++ b/_partials/windows_browser.md @@ -13,13 +13,3 @@ Reset your terminal: ```bash exec zsh ``` - -Then please make sure that the following command returns "Browser defined 👌": - -```bash -[ -z "$BROWSER" ] && echo "ERROR: please define a BROWSER environment variable ⚠️" || echo "Browser defined 👌" -``` - -If it does not, you can follow [these instructions](https://github.com/lewagon/setup/blob/master/_partials/windows_browser.md) to set your default browser manually. - -Do not hesitate to **contact a teacher**. From f08f4ad6c001179447fada1c8949a727adea58f4 Mon Sep 17 00:00:00 2001 From: github-actions Date: Sun, 20 Sep 2026 14:37:50 +0000 Subject: [PATCH 42/42] setup guides generated --- WINDOWS.es.md | 10 ---------- WINDOWS.md | 10 ---------- 2 files changed, 20 deletions(-) diff --git a/WINDOWS.es.md b/WINDOWS.es.md index d5bdda38..4e8cfcaf 100644 --- a/WINDOWS.es.md +++ b/WINDOWS.es.md @@ -643,16 +643,6 @@ Reinicia tu terminal: exec zsh ``` -Luego asegúrate de que el siguiente comando devuelva "Browser defined 👌": - -```bash -[ -z "$BROWSER" ] && echo "ERROR: please define a BROWSER environment variable ⚠️" || echo "Browser defined 👌" -``` - -Si no es así, puedes seguir [estas instrucciones](https://github.com/lewagon/setup/blob/master/_partials/es/windows_browser.md) para configurar tu navegador predeterminado manualmente. - -No dudes en **pedirle ayuda a tu profesor**. - ## GitHub CLI diff --git a/WINDOWS.md b/WINDOWS.md index f0d187c1..72449af2 100644 --- a/WINDOWS.md +++ b/WINDOWS.md @@ -607,16 +607,6 @@ Reset your terminal: exec zsh ``` -Then please make sure that the following command returns "Browser defined 👌": - -```bash -[ -z "$BROWSER" ] && echo "ERROR: please define a BROWSER environment variable ⚠️" || echo "Browser defined 👌" -``` - -If it does not, you can follow [these instructions](https://github.com/lewagon/setup/blob/master/_partials/windows_browser.md) to set your default browser manually. - -Do not hesitate to **contact a teacher**. - ## GitHub CLI