# Guide de survie d'un·e stagiaire Ippon
[TOC]
## Paris
### :fork_and_knife: Où manger à Paris ?
[Emoji cheat sheet](https://github.com/ikatyang/emoji-cheat-sheet)
| Maps :round_pushpin: | Distance | Prix | Notes |
| -------------------------------------------------------------------------- |:------------------ | ----------------------------- |:--------------------------------------------------------------------------------------:|
| [**Ankka**](https://goo.gl/maps/LyPbPwDhxHC69eUL9) :green_salad: | :running: | :moneybag::moneybag: **10€** | Des bols réutilisables sont disponibles au 8e<br>Pâtes calent bcp + |
| [**Poke Five**](https://g.page/poke5-paris?share) :green_salad: | :running::running: | :moneybag::moneybag: **11€** | Taille medium = 1,5 repas<br>**Tips: Size Large à 13€ = 2 repas**<br>Bcp d'ingrédients |
| [**Thai Street Food**](https://goo.gl/maps/9Qa9ZTpMqKouHeMGA) :spaghetti: | :running::running: | :moneybag::moneybag: **11€** | Thai végé top (tofu grillé) |
[**Olive & Balsamic**](https://goo.gl/maps/Mv8PAZxsN792KCre6) :pizza: | :running::running: | :moneybag::moneybag: **12€** | Part de pizza 6€ l'unité<br>Très grandes épaisses<br>Tips: en prendre 2 |
| [**O'Kaslik Libanais**](https://goo.gl/maps/6HUgA4VD5TiYM86WA) :burrito: | :running: :running: | :moneybag: **7€ (sandwich) -10€ (menu)** | |
| [**Subway**](https://goo.gl/maps/1N6zXnXNqnquDNVX6) :baguette_bread: | :running::running::running: | :moneybag: **8€** | Cale bien + Cookies macadamia |
| [**Picard**](https://goo.gl/maps/sSouxS524ZxR4hDP9) :snowflake: | :running::running::running: | :money_with_wings: **2,30-5€** | :no_entry_sign: additifs<br>Micro-ondes 3-6min<br>Desserts en + |
| [**Micka Falafel**](https://g.page/mickafalafel?share) :burrito: | :running::running::running: |:moneybag::moneybag: **11,90€** | Restaurant égyptien à emporter. |
[**La table verte**](https://g.page/la_table_verte?share) :seedling: | :running::running::running::running: | :moneybag::moneybag: | Cantine 100% végé<br>Léger (quiches, salades, ...)<br>Tables en terrasse au soleil |
### Quelles sont les activités possibles à Paris ?
| Activité | Responsable/coach | Quand | Où | Inscription |
|-------|-------------------|-------|----|-------------|
| **Yoga** | Sophie (intervenante extérieure) | Lundi 18h30-19h30 | Amphi Manaudou | [Google sheet](https://docs.google.com/spreadsheets/d/1dDwBOJRZbV88h7_oIyupKZ9M-sD73MZ9IjQ4D4wMhpo/edit?usp=sharing) |
| **Renforcement musculaire** | Antoine | Mardi ou Mercredi 18h30-19h30 | Amphi Manaudou ou rooftop | [Google sheet](https://docs.google.com/spreadsheets/d/1YWAopuKiEh8Z2S1IvAv0FONGZIq40nKhfSMwMyIoWJ8/edit?usp=sharing) |
| **Football** | Antoine, Cédric souidaray | Vendredi 12h30-13h30| [UrbanSoccer - Puteaux](https://www.google.com/maps/place/UrbanSoccer+-+Puteaux/@48.8836397,2.2312283,15z/data=!4m5!3m4!1s0x0:0xef8d4841fc72bd84!8m2!3d48.8835948!4d2.2313142) | [Google sheet](https://drive.google.com/u/0/open?id=1tet1ExUyreGy-kSq7fCRq1snjDyIS3BzUdfHFJWrUfw) |
| **Développement personnel** | Elsa (intervenante extérieure)| Mercredi 1h30 le midi ou le soir en groupe de 4 | Amphi Manaudou | Contacter Zakia |
| ~~**Hip-Hop**~~ (en suspend pour le moment...) | Intervenant extérieur| Mardi 18h30 - 20h | Amphi Manaudou | Contacter Émilie ou Alexis |
### Où et comment imprimer à Paris ?
~~1. Aller dans le petit cinquième au niveau des livres
2. Trouver l'imprimante Lexmark
3. Brancher la clé USB sur le côté droit de l'écran : une clé USB avec pas trop trop de mémoire de préférence (personne n'a dit que c'était une science exacte)
4. Sélectionner "Clé USB" sur l"écran
5. Sélectionner le fichier à print (facile y a une preview avec le nom du fichier, très pratique)
6. Vérifier les paramètres de couleur, verso, nombre d'exemplaires et autres
7. Valider~~
:::danger
TODO : update
:::
## Communication
- Mail ou [Google Chat](https://mail.google.com/chat/u/0/) (un petit client Google Chat est dispo si tu veux le pin à ta taskbar Windows :p) !
- [Twitch Calendar](https://calendar.google.com/calendar/u/0/embed?src=c_07pbpmtv1a4d0iu48tnm6tl328@group.calendar.google.com&ctz=Europe/Paris) : En bas à droite, petit bouton plus pour ajouter le calendrier à son Google Calendar.
## Besoin de templates ? :newspaper:
Pour ton rapport de stage, ton journal de bord, ou tes futures présentations.

### Comptes
En principe tu as des comptes pour chacun des services suivants :
- Compte Google principal (SSO pour Gitlab et autres services)
- Sigilium (Signature mail)
- DocuSign (Emargements pour les formations)
- MyPrimoBox (fiches de paie)
- Clé SSH
- Discord
- Twitch
- ...
:::warning
:warning: Une bonne pratique est d'avoir des mots de passe différents pour tous ces comptes !
:::
- Pour tenir le challenge, une solution : installer un gestionnaire de mots de passe.
#### Keepass pour un gestionnaire de mots de passe open-source
Il en existe d'autres, mais avec celui-ci :
- Tu auras la main sur tes données (synchro dans ton cloud préféré grâce au plugin KeeAnywhere : petit `Ctrl + S` avant de fermer KeePass, et tes mdp sont sync sur le cloud)
- L'auto-type est super (`Ctrl + V` à manipuler *carefully* though)
- Application Android marche nickel (avec option biométrie)
:::success
:arrow_right: [Download KeePass](https://keepass.info/) ou `choco install keepass`
:::
:::success
:arrow_right: [Download KeeAnywhere plugin](https://keeanywhere.de/) ou `choco install keepass-plugin-keeanywhere`
:::
### Quelqu'un a dit point médian ?
- Sur Ubuntu tu peux facilement [choisir ton layer de clavier](https://www.motscles.net/blog/comment-faire-un-point-median-sur-votre-ordinateur-) dans les settings et faciliter l'accès au fameux "·"
- Sur Windows c'est une autre paire de manches. Mon conseil, c'est d'installer Clavier+ et de remapper `Shift + *` (initialement ça donne "µ" sauf que qui utilise "mu" in regular life ? :eyes:)
:::success
:arrow_right: [Download Clavier+](https://gryder.org/software/clavier-plus/) ou `choco install clavier-plus`
:::

## Windows ?
### Un port resté ouvert ou une tâche orpheline ?
- `netstat -ano -p tcp | find 3000`
- `tasklist`
- `kill <PID>`
### Docker-compose sur wsl2 et sans Docker Desktop ?
:::danger
Extrait du site Docker Desktop :
> It remains free for small businesses (fewer than 250 employees AND less than $10 million in annual revenue), personal use, education, and non-commercial open source projects.
:::
La solution ? --> [Rancher Desktop](https://rancherdesktop.io/)
### Git configuré sur CRLF au lieu de LF ?
- `git config --global core.autocrlf input`
### Toujours plus d'outils
:::success
:arrow_right: [Install Chocolatey](https://chocolatey.org/install) -> Gestionnaire de paquets dans le style de Linux pour mettre à jour facilement tes applications Windows.
:::
:::success
:arrow_right: Windows Terminal `choco install microsoft-windows-terminal`
Ou si tu es de la team Fluent Terminal `choco install fluent-terminal`
:arrow_right: Git Bash `choco install git`
:arrow_right: JetBrains Toolbox `choco install jetbrainstoolbox`
:arrow_right: Node JS `choco install nodejs`
:arrow_right: Greenshot `choco install greenshot`
:arrow_right: SevenZip `choco install 7zip`
:arrow_right: Discord `choco install discord`
:arrow_right: Slack `choco install slack`
:arrow_right: Notepad++ `notepadplusplus`
:::
- Pour tout télécharger d'un coup :
```
choco install microsoft-windows-terminal git jetbrainstoolbox nodejs greenshot 7zip discord slack docker notepadplusplus
```
- Pour mettre à jour tous les paquets :
```
choco upgrade all
```
- Pour chercher d'autres paquets :
```
choco list foo
```
:arrow_right: [Install WSL 2](https://docs.microsoft.com/fr-fr/windows/wsl/install)
### Maven et Java
:::success
:arrow_right: [Install Maven](https://maven.apache.org/install.html)
:::
:::success
:arrow_right: [Install Java](https://www.oracle.com/java/technologies/downloads/#jdk18-windows)
:::
## Dev tips
### Pimper son terminal
https://starship.rs/
### Gitconfig
In your `~/.gitconfig`:
```c
[user]
name = Sophie Stan
email = sophiePerso@perso.fr
[core]
autocrlf = input
[includeIf "gitdir:~/IdeaProjects/ippon"]
path = .gitconfig-ippon
```
```bash
touch .gitconfig-ippon
```
In your `~/.gitconfig-ippon`:
```c
[user]
name = Sophie Stan
email = sstan@ippon.fr
```
## Set-up de l'IDE JetBrains
### Maven et Java
Reprends le contrôle de Maven.

### Configuration pour TOUS tes projets
Pour être sûr·e de configurer IntelliJ pour *tous* ses projets, rendez-vous à l'accueil d'IntellJ. Pour y accéder, il faut fermer le projet en cours.


### Plugins recommandés
#### Pour les pragmatiques
- **[SonarLint](https://plugins.jetbrains.com/plugin/7973-sonarlint)**: Assistant écriture de code complémentaire à celui de l'IDE (bugs, vulnerabilités, bonnes pratiques, code smells)
NB: Si tu utilises Git dans l'IDE, tu peux l'activer ou non avant tes commits.
- **[.gitignore](https://plugins.jetbrains.com/plugin/7495--ignore)**: Suggère des `.gitignore`.
- **[Save Actions](https://plugins.jetbrains.com/plugin/7642-save-actions)**: Marre d'enchaîner `Ctrl+Alt+L` et `Ctrl+Alt+O` pour *reformat* et enlever les *unused import*... ?

- **[google-java-format](https://plugins.jetbrains.com/plugin/8527-google-java-format)**: Tu codes en Java et tu en as marre de laisser 1 saut de ligne traîner ? Parfois 2 ? 3 ? Si seulement l'IDE pouvait sortir le même code après chaque moulinette de reformat quelque soit l'entrée...
Easy : Go dans les paramètres globaux de IntelliJ et cherche "google-java-format", et coche "Enable google-java-format". Attention toutefois, ce formatage est très rigide et impossible à customiser...
Et si tu ne codes pas en java le fichier suivant va t'intéresser :
https://editorconfig.org/
- **[GitToolBox](https://plugins.jetbrains.com/plugin/7499-gittoolbox)**: Auto-fetch à intervalles réguliers, inline blame (chaque ligne a son petit auteur, date et non de commit), Gitmoji completion in Commit dialog, outdated branches cleanup... Que des trucs cools in fine.

- **[Rainbow Brackets](https://plugins.jetbrains.com/plugin/10080-rainbow-brackets)**: Utile pour du front.
#### Pour les artistes
- ~~Extra Icons~~ **[Atom Material File Icons](https://plugins.jetbrains.com/plugin/10044-atom-material-icons)**: Remplace absolument toutes les icônes de l'IDE, un peu destabilisant au début.
- **[Material Theme UI](https://plugins.jetbrains.com/plugin/8006-material-theme-ui)**: Pimpe l'IDE
- **[Mario Progress Bar](https://plugins.jetbrains.com/plugin/14708-mario-progress-bar)**: Pimpe ta progress bar (rend l'exécution des tests moins morose)
### Masteurisation de l'IDE

Ca fait beaucoup d'un coup, donc pas hésiter à revenir dessus. Les 4 premiers chapitres sont les + importants.
Tes meilleurs amis deviendront :
- Alt+Enter, Ctrl+Shift+Space, Ctrl+B Ctrl+Shift+Enter, ...
- Ctrl+W, Alt+J, Ctrl+D, ...
- Shift+F6, Shift+F10, Ctrl+Alt+M, ...
- Ctrl+Shit+F et bien d'autres
### TDD tips
https://www.jetbrains.com/help/idea/tdd-with-intellij-idea.html


## RH tips
### Comprendre sa fiche de paie
Toutes les fiches de paie sont postées chaque mois sur [PrimoBox](https://www.myprimobox.net/Login).
:::danger
TODO
:::
### Comprendre les Tickets restaurant
> Il n'y a pas de minimum ni de maximum à la valeur d'un titre restaurant. En revanche il y a une limite sur l'avantage fiscal : L'employeur est exonéré de charges sociales sur un montant de 5,69 € maximum par ticket en 2022.
> > https://www.macartepassrestaurant.fr/combien-de-titres-restaurant-recevez-vous-chaque-mois/
Chez Ippon:
- Fournit 4,50 € par ticket restaurant. (l'autre moitié venant du salaire)
- Forfait 20 tickets/personne pendant 11 mois (9€ * 20j = 180€/mois)
- Pas de ticket restaurant si absence (maladie, congé, RTT, ...) <-- à vérifier si vrai en CDI
- Remis avec un décalage par rapport au mois en cours
- Les tickets restaurants sont directement crédités sur la carte restaurant Swile qui fonctionne comme une carte bancaire (voir le site de Swile)
Utilisation de la carte resto : 25€/jour maximum hors dimanches et jours féries, en restaurant ou magasin d'alimentation (prendre au moins un aliment pour pouvoir payer ses courses avec). Si vous avez par exemple des courses/un repas à 30€, vous pouvez demander à payer 19€ en carte resto et le reste avec une autre carte/des espèces...
### CE
Pour obtenir ses identifiants permettant de se connecter sur ippon-ce.fr il faut envoyer un mail à cse@ippon.fr.
### Tips :euro:
- **Prime d'activité** : pour toucher cette prime, il faut toucher plus de 982,48e par mois sur 3 mois (ET payer un loyer et avoir les aides au logement associées)
- https://www.caf.fr/allocataires/droits-et-prestations/s-informer-sur-les-aides/solidarite-et-insertion/la-prime-d-activite
- **Prime d'abbatement**
- https://www.impots.gouv.fr/particulier/questions/mon-enfant-est-etudiant-les-revenus-quil-percus-sont-ils-imposables
- **Prime à Ippon basée sur le type de mission**
- https://entreprendre.service-public.fr/vosdroits/F23533
### [Catalogue des formations](https://docs.google.com/spreadsheets/d/1MwSjkWaW0vL51N67pEWlZs6wh0HZABlxCqvnf8Ct4Bg/edit?usp=sharing)
## Pro tips dev
### Idées de lecture craftmanship
- Clean Coding de Colin Damon : certain exemplaires trainent dans la petite bibliothèque du petit 5eme (Paris)
- https://blog.ippon.fr/author/colin/
- Clean Code (Uncle Bob)
### Conseils katas
- Toujours en TDD
- [Catalogue bien référencé](https://blog.ippon.fr/2021/04/12/mon-catalogue-de-katas/)
- Beaucoup de solutions de kata dispo sur https://gitlab.ippon.fr/twitch/live-coding-fr et souvent avec leur live Twitch en rediffusion
:::danger
TODO
:::
### Documentations intéressantes
- C'est quoi OAuth2.1 ? Pourquoi il y a autant de flows différents ? Le meilleur c'est lequel ? https://www.youtube.com/watch?v=bR48_dbOM38