Tips

pour développer à la vitesse de la lumière

la 13e va vous surprendre

15 astuces

pour développer à la vitesse de la lumière

la 13e, 19e, 22e, 27e, 44e, 55e et la 253e
vont vous surprendre

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

  • 714