Tips

pour développer à la vitesse de la lumièrela 13e va vous surprendre |
15 astuces
pour développer à la vitesse de la lumièrela 13e, 19e, 22e, 27e, 44e, 55e et la 253e
|
15 astuces
256 astuces

sous-estimer
Pour vous aider

Sous-estimé

A retenir
Notez vos questions et posez les à la fin de la présentation.
Vous avez des catégories et un numéro de tips en haut.
Beaucoup de tips auront des liens vers des ressources externes, n'hésitez pas à récupérer le lien de cette présentation sur Teams & Slack pour naviguer dessus.
Ou l'ensemble de mes talk sur https://slides.com/skigun/
Tips #0
Tools

Tips #1
iTerm2 (même si on dit la version 3)

Tips #2
Utiliser une feature de broadcast sur votre console !

Tips #3
Vous pouvez en faire un raccourcie !
Spoiler pour les autres tips : faites des raccourcies pour tout !


Tips #4
Une bonne application web pour faire des schéma ?

draw.io !
Tips #5
Comment partager du code simplement sans faire de repository ?
Les gist de github

Tips #6
Une interface sympas pour voir ce qu'il se passe sur Redis ?
docker run -v redisinsight:/db -p 8001:8001 redislabs/redisinsight:latest

Sous-estimer

PhpStorm

Tips #7
Utiliser PhpStorm.
Tips #8
Le meilleur IDE ?

Tips #9
Vous avez envie de rechercher n'importe quoi le plus vite possible sur PhpStorm ?
Utiliser Maj Maj !

A retenir

Tips #10
Votre machine est trop lente à cause de PhpStorm qui prends trop de ressource ?
Désinstaller PhpStorm

Tips #11
Votre machine est trop lente à cause de PhpStorm qui prends trop de ressource et vous voulez garder PhpStorm ?
Utiliser la feature "mark as excluded" sur le plus de dossier possible pour enlever de l'indexation, inspection, auto complete etc..

Dossier potentiel :
- var/log
- var/cache
- node_module
- public/bundle
- public/build
- public/*
- vendor/*
Tips #12
Gagner du temps en édition dans tout vos IDE ?
Apprenez à maitriser le multiline

Sous-estimer

A retenir
Ressources :
PhpStorm
Sublime Text
Vim

Tips #13
Une recherche propre à Symfony (route, commande, template, service)

Tips #14
Ma liste de plugin PhpStorm

Tips #15
Vous êtes fatigué ? Vous n'arrivez pas à suivre ce midi formation ?

Tips #16
Vous avez maintenant envie de naviguer rapidement n'importe où sur Discord - Slack - Mattermost ?
Ctrl + k (windows/linux)
Command + K (mac)

A retenir

Tips #17
Vous avez maintenant envie de naviguer rapidement vers un collègue dans l'openspace ?
Marcher

Tips #18
Le meilleur outils pour consulter la base de données ?
Il y en a pas ! arrêter de vous reposer uniquement sur Phpmyadmin, Adminer, PhpStorm, MysqlWorkbench, DBEAVER etc..
Je n'utilise que la ligne de commande !*
*les nuits de pleine lune j'utilise encore un peu phpmyadmin
Tips #19
Les tops commande à connaitre pour se débrouiller en SQL
# Lister les tables et base de données
show databases;
show tables
# Afficher la structure d'une table
desc article
# Compte le nombre de ligne d'une table pour check le volume
select count(*) from article;
# Vérifier les requêtes en cours et la stabilité de la BDD
show processlist;
# Comprendre l'utilisation des index d'une requête
explain select * from article where id = 42;

Tips #20

select * from beneficiary where id = 1;

select * from beneficiary where id = 1\G;
Bash

Tips #21
Si vous êtes sur MacOS mettez à jour votre bash !
$ bash --version
GNU bash, version 5.1.16(1)-release (x86_64-apple-darwin21.1.0)
N'utiliser plus jamais #!/bin/bash
#!/usr/bin/env bash
Tips #22
Enrichir son bash avec ?
ZSH + Oh-my-zsh
# ~/.zshrc
plugins=(git history sublime web-search zsh-autosuggestions brew)
Tips #23
Lancer des commandes plus rapidements ?
Les alias
alias pg="ping 8.8.8.8"
alias fig="docker-compose"
alias product="fig exec --user www-data product-api bash"
alias appd="fig exec hm-db mysql my_database"
alias love='osascript -e "set Volume 4" && say "Je taime"'

A retenir
Tips #24
Les meilleurs commande unix ?
$ cd
$ ls
$ kill -9
Tips #25
276 git push
245 git tag
241 fig exec
163 fig kill
148 fig up
138 docker exec
131 curl -X
120 docker-compose exec
115 git clone
108 rm -rf
97 brew install
history | awk '{print $2,$3}'| sort|uniq -c|sort -rn|head -100
Comment construire des statisques sur les commandes ?

Aller plus loins !
Tips #26
Des statistique encore plus intelligente ?
history | awk '{print $2,$3}' \
| grep make|awk 'BEGIN {FS="|"} {print $1}' \
|sort|uniq -c|sort -rn|head -100

Aller encore encore plus loins !


Tips #27
Promouvoir/documenter/maintenir les meilleurs commande makefile
Tips #28
Exploiter le makefile

Sous-estimer

Sous-estimer
Tips #29
Comment mieux documenter nos makefile ?
$ make
$ make help
# Makefile
help:
@echo 'Débrouille-toi !'



Debug

Tips #30
Faites du Symfony
Tips #31
Comment mieux exploiter la navigation de votre IDE



Tips #32
La méthode la plus rapide en développement pour savoir ce qu'il se passe ?
Le profiler Symfony

A retenir

Sous-estimer
https://localhost/_profiler/latest?panel=db
















Tips #33
Profiler plus vite ?
## Open the Symfony web profiler for any application
profile:
@$(eval PROFILE_LINK = "https://bo.meyclub.docker/_profiler/latest")
@x-www-browser $(PROFILE_LINK) | google-chrome $(PROFILE_LINK) | open -a "Google Chrome" $(PROFILE_LINK)
make profile
Tips #34
Debugger dans un context de redirection ?
(formulaire, boucle de redirection, envoie de mail etc..)
# config/packages/dev/web_profiler.yaml
web_profiler:
toolbar: true
intercept_redirects: false # c'est ici qu'il faut regarder
framework:
profiler:
only_exceptions: false
dsn: 'file:%kernel.project_dir%/var/profiler'

A retenir

Tips #35
Surveiller rapidement les micro service
make logs-ms
## View output from micro service containers
logs-ms:
$(DOCKER_COMPOSE) logs -f --tail 0 $(API_CONTAINERS)

A retenir
Comment debugger en production plus sereinement ?
Tips #36
git init
git add .
git commit -m "initial state"
Bonus : comment l'automatiser ?
Tips #37
Tips #38
Des alias pour git ?
Dans votre ~/.gitconfig
[alias]
st = status
ci = commit -v
cim = commit -v -m "--"
co = checkout
br = branch -v
bra = branch -v -a
lg = log --graph --pretty=tformat:'%Cred%h%Creset -%C(cyan)%d %Creset%s %Cgreen(%an %cr)%Creset' --abbrev-commit --date=relative
lga = log --graph --pretty=tformat:'%Cred%h%Creset -%C(cyan)%d %Creset%s %Cgreen(%an %cr)%Creset' --abbrev-commit --date=relative --all
di = diff
sdi = diff --cached
logfull = log --pretty=fuller --graph --stat -p
cat = cat-file -p
unstage = reset HEAD
uncommit = update-ref HEAD HEAD^
uncommithard = reset --hard HEAD^
oups = commit --amend -C HEAD
Bonus

Tips #39
Vous connaissez un super site d'exemple ?
Avec toute une stack Symfony open source ?
En-marche !
Tips #40
Il n'y a pas que stackoverflow dans la vie
Il y a Reinis et Francis !
Le Slack Symfony
Source : https://symfony.com/community
Lien : https://symfony.com/slack
Tips #41
Pour les MF ou talk en général
- Utiliser slides.com pour les supports
- Ne perdez pas de temps avec la mise en forme
- Mettez des gif
- Arrêter avec "j'ai pas le temps", poser d'abord la date, vous trouverez le temps après
- Pas besoin de maitriser le sujet à l'avance (au contraire !)
Tips #42
Performance ?
Blackfire
Fin

Tips
By skigun
Tips
- 759