Trucs et astuces
Le saviez-vous ? Il est possible de stocker tous ses mots de passe de manière sécurisée, de regarder youtube sans les pubs, d'utiliser l'intelligence artificielle pour faire les TD d'info (sous réserve de quelques modifications)!
Ci dessous, les trucs et astuces du BR pour avoir une vie numérique un peu plus confortable.
Les extensions de navigateur, ça change la vie. Ci dessous sont énumérées quelques extensions populaires qui rendent la navigation plus agréable.
Note: Si vous utilisez Firefox, vous disposerez aussi des extensions sur mobile ! Ce n'est pas le cas de Chrome, qui pourrait bien interdire les adblockers dans le futur.
uBlock Origin
ublock Origin est un Ad Blocker open source très efficace. Il retire l'intégralité des pubs des sites web et de youtube, et n'est pas vendu aux publicitaires.
Bitwarden
Bitwarden est un gestionnaire de mot de passe open-source hébergé dans le cloud et disponible sur navigateur, mobile et desktop. Il permet de générer des mots de passe aléatoires customisés, d'avoir de l'autocomplétion sur vos sites préférés, etc. Ça vaut toujours mieux que les gestionnaires intégrés de Chrome ou Firefox, ou même que d'autres gestionnaires de mots passe propriétaires.
Return Youtube Dislike
Return Youtube Dislike est une extension toute simple qui fait revenir l'affichage des dislikes sur le site de Youtube.
Dark Reader
Dark Reader est une extension qui permet d'avoir un mode sombre sur votre navigateur. Il fonctionne très bien pour la plupart des sites, et peut-être configuré pour afficher un mode sombre par défaut, ou bien seulement pour les sites que vous choisissez.
L'appli Youtube sans pubs
Si vous voulez utiliser une version modifiée du client officiel, continuez votre lecture. Si vous préférez utiliser un client open source, sachez qu'il existe Newpipe qui permet également de bloquer les publicités et de télécharger les vidéos (voir #Applications open source sur Android).
Youtube Revanced est un patch open source (seul le patch est open source, pas l'application) non officiel de l'application Youtube, qui intègre de nombreuses fonctionnalités additionnelles. Elle n'est actuellement disponible que pour Android, car Apple n'autorise pas l'installation d'applications ne figurant pas sur l'Apple Store (tandis qu'Android, si). On y trouve notamment :
- Blocage des pubs et sponsorisations (configurable)
- Retour de l'affichage des dislikes
- Lecture en arrière plan
- Téléchargement de vidéos
- Contrôle du son et de la luminosité avec des swipe gestures, etc.
L'apk est téléchargeable sur le site Youtube ReVanced (Youtube ReVanced app).
Remarque: même après avoir téléchargé l'application, les liens vers youtube seront toujours ouverts avec l'application youtube. Pour y remédier, il faut désactiver l'appli youtube, puis associer l'application Revanced avec les liens youtube. Cette option est disponible dans l'application Settings -> Applications -> Applications par défaut -> Ouverture des liens -> ReVanced -> Adr. Web prises en charge, puis cocher les 4 adresses (testé sur téléphone Samsung).
Mise à jour: pour mettre à jour l'application (nécessaire pour résoudre les bugs susceptibles d'apparaître), il faut télécharger à nouveau l'apk la plus récente. Elle mettra automatiquement à jour l'application.
Github Copilot
Github Copilot est un outil d'intelligence artificielle utile pour accélérer le développement informatique. Il est disponible dans la plupart des IDE. En temps normal, son utilisation se paye 10$/mois, ou 100$/an, mais elle est gratuite pour les étudiants !
Pour accéder gratuitement à Github Copilot, il suffit de:
- Disposer d'un compte Github
- S'inscrire comme étudiant sur education.github.com en ajoutant son adresse en polytechnique.edu comme preuve.
- Une fois la vérification faite, configurer l'accès à Copilot depuis les settings de votre compte Github.
Et voilà ! Il n'y a plus qu'à installer l'extension Github Copilot dans l'IDE de votre choix, puis d'authentifier votre compte Github, et vous êtes prêts à coder !
Applications open source sur Android
Sur Android, il existe un magasin d'applications qui ne contient que des logiciels libres : F-droid. Le client officiel est daté et pose des problèmes de sécurité. On vous conseille donc d'installer un client plus récent : Droid-ify (bouton DOWNLOAD F-DROID) (disponible uniquement sur Android, évidemment).
Cette application est un Google Play pour applications libres et open source. Pour pouvoir l'utiliser, il faudra d'abord l'autoriser comme application de téléchargement d'autres applications (à l'ouverture).
On vous recommande notamment l'application NewPipe, un client Youtube libre n'utilisant pas l'API de Google qui enlève les publicités et qui permet de télécharger des vidéos et d'écouter des vidéos en arrière plan.
Gestionnaires de versions pour coder
En chantier ! on peut avoir besoin de plusieurs versions installées en même temps pour gérer différents projets (sigma : node16, python d'ostizan: python3.7). Voici différents gestionnaires pour faire ce genre de choses facilement.
C'est une très bonne pratique pour faciliter le déploiement d'applications python que d'utiliser un environnement virtuel pour son projet, avec un liste de dépendances requirements.txt à la racine du projet (TODO : expliquer comment on fait ça).
Environnements virtuels python avec Pyenv
Installation
Pyenv est un gestionnaire de versions Python qui permet de changer rapidement de version sans toucher à la version python utilisée par le système. Les versions sont installées dans /home/<username>/.pyenv/versions/
sous Linux, et C:\Users\<username>\.pyenv\versions\
sous Windows.
Installer pyenv sur Linux (ou via votre gestionnaire de paquets).
Installer des versions de python
Pour lister les versions de python disponibles :
pyenv install --list
Pour lister des versions spécifiques :
pyenv install --list | grep 3.11 # Sur Linux pyenv install --list | findstr 3.11 # Sur Windows
Pour installer une version :
pyenv install -v 3.11.3 # Remplacer par le nom complet de la version désirée
Pour lister les versions disponibles via pyenv :
pyenv versions
Générer un environnement virtuel
Pour générer un environnement virtuel python à la racine d'un projet : Activer une version de python dans le shell:
pyenv shell 3.11.3
Créer un environnement virtuel dans un dossier venv/
:
python -m venv venv
Activer l'environnement virtuel :
source venv/bin/activate # Sous Linux .\venv\Scripts\activate # Sous Windows
Vous avez à présent un environnement virtuel python à la racine de votre projet, qu'il vous suffira d'activer à chaque fois que vous lancez votre projet. Note : VSCode réalise cette activation tout seul si vous lui dites d'utiliser l'environnement virtuel pour votre projet.
Remarque : si votre projet est versionné avec Git, il ne faut pas commit votre venv! Ajoutez un fichier .gitignore
à la racine de votre projet, et ajoutez une ligne venv
dedans.
Vous pouvez à présent installer des packages (après avoir activé l'environnement virtuel !)
pip install <packages> pip install -r requirements.txt # Si vous récupérez un projet avec des dépendances existantes
Pour générer un fichier requirements.txt
afin de faciliter la mise en place pour vos collègues / pour le déploiement de votre app sur les serveurs du BR :
pip freeze > requirements.txt
Environnement virtuel global
Pyenv permet aussi de générer des environnements virtuels globaux avec pyenv virtualenv
, un plugin que vous pouvez installer ici.
Créez un environnement virtuel global avec la commande suivante :
pyenv virtualenv <version> <nom de votre environnement global custom>
Vous pouvez ensuite l'activer comme les autres environnements avec
pyenv shell <nom de votre environnement global custom>
Environnements python avec Mamba
Vous connaissez peut-être déjà Conda, un gestionnaire de paquets et d'environnements python principalement utilisé pour des projets scientifiques. Mamba en est une version entièrement réécrite en C++, bien plus rapide et performante.
Installation ici
Mamba permet de créer des environnements virtuels dans /home/<username>/mambaforge-pypy3/envs
(sous Linux, par exemple) qui seront réutilisables dans tous vos projets !
Créer un environnement virtuel :
mamba create -n nom_de_lenvirnonnement <liste de packages> mamba create -n nom_de_lenvirnonnement <liste de packages> python=3.10 # Avec une version spécifique de python
Exemple :
mamba create -n inf442 numpy pandas scikit-learn
Activation d'un environnement virtuel :
mamba activate inf442 mamba deactivate # Pour le désactiver
Installation de paquets : après avoir activé votre environnement mamba, utilisez la commande mamba install
au lieu de pip install
, et le tout est joué.
Plusieurs versions de Node.js avec NVM
Si vous faites du développement web avec du Typescript/Javascript sans utiliser de conteneurs docker, vous avez besoin d'installer Node.js, un runtime javascript. Selon votre système d'exploitation, il est possible que la version de node installée par défaut ne corresponde pas à celle attendue par votre projet (sous Linux, en particulier).
Le gestionnaire de versions Node NVM permet d'installer et switcher rapidement entre plusieurs versions de Node.
Installer une version :
nvm install <version> nvm install 16 # Pour Sigma, par exemple
Utiliser une version :
nvm ls # Lister les versions nvm use <version> # Utiliser une version node -v # Vérifier que la version est bien utilisée
Pour utiliser à nouveau la version système dans votre shell :
nvm use system