5 Concepts de Code que j'aurais aimé connaître AVANT d'apprendre à coder (personne n'en parle)

preview_player
Показать описание

En tant que développeur SENIOR et formateur professionnel, j’aimerais vous partager les 5 choses les plus importantes que j’aurais aimé savoir quand j’ai commencé monter en compétence sur le code.

Je sais qu’il y a déjà beaucoup de vidéos sur YouTube sur ce sujet…

MAIS j’aimerais vous apporter mon propre regard de professionnel sur le sujet… au-delà des conseils vagues et généraux que l’on peut déjà trouver ailleurs : “Le syndrome de l’imposteur”, “Quel est le meilleur langage de programmation pour débuter”… blablabla.

Donc les conseils que je vais vous donner dans cette vidéo, vous ne les aurez probablement jamais entendus avant…

Bon visionnage,

Simon.
Рекомендации по теме
Комментарии
Автор

J'ai commencé en autodidacte il y a 10 ans, et je suis d'accord avec tous ces points ! Le contenu de ta chaine est carrément sympa !

remi
Автор

Ce que vous décrivez sont des "Web API", mais les API ne se limitent pas à ça. Et encore moins à un manuel d'instructions... Et une Web API n'est pas forcément REST. Je comprends que vous ayez une vision purement "front end", mais en tant que "formateur dev senior", c'est dommage de transmettre de mauvaises infos sur ce genre de concept.

lordgg
Автор

Bonjour,
Une API est un concept beaucoup plus large qu'une API REST. Ca peut aussi être un ensemble d'interfaces dans une bibliothèque de code.
L'idée majeure d'une API est d'avoir une description de comment l'appeler et de savoir ce qu'on aura en retour.
Le tout sans avoir à connaître comment cette API a été développée.

fabiencharlet
Автор

Merci pour la vidéo, cadeau pour les copains :
0:28 API
4:17 Les métiers autour du dev
7:25 Se spécialiser
9:34 Savoir gérer son temps
12:02 Avoir un réseau

bilelzeghad
Автор

Bonjour Simon,

Je pense que votre conception de ce qu'est une API n'est pas suffisament précise et cela me gêne un peu de voir ce genre d'explication prise pour argent comptant par d'autres débutants. Je suis particulièrement sensible à ce sujet étant dévelopeur professionel et enseignant. Ce commentaire risque donc de paraître très pédant et je m'en excuse d'avance.

Une API est avant tout une interface. C'est une notion fondamentale de codage, d'architecture logicielle mais également d'ingénierie. Si vous souhaitez prendre une analogie, le volant, levier de vitesse et tableau de bord d'une voiture est une interface. L'avantage an automotive d'avoir cette interface commune entre manufactureur est que d'une voiture à l'autre, l'apprentissage de la conduite n'est pas dépdendante de la marque de la voiture. Evidemment, on peut venir complexifier cette notion et par exemple distinguer les boites manuelles des boites automatiques. Néanmoins, l'idée de base reste la même: cele d'une interface... utilisateur dans cet exemple.

Pour en revenir au code, l'API est simplement une interface entre du code appelant et une implémentation concrète. En théorie, il n'est dès lors plus nécessaire pour le code appelant de connaître l'implémentation concrète. Et en cela tient l'atout principal d'une interface.

Comme déjà énoncé dans un autre commentaire. REST n'est qu'un exemple d'API pas la seule manière de faire une API, et cela me semble être une confusion qui se banalise de plus en plus. Il n'y a pas que le web dans la vie, et même dans le web, il a d'autres choses (RPC, SOAP, protobuff, etc...). Et si vous descendez à bas niveau le concept existe encore. Par exemple votre CPU expose une ABI (application binary interface), voir souvent plusieurs pour raison de rétrocompatibité. Vous avez donc raison de signaler que c'est un concept qui brasse "large" mais de mon point de vue ce n'est pas fourre-tout pour autant.

Je pense qu'il serait intéressant que vous élaboriez un peu plus le concept. Je pense notament à des sujets annexes tels que:
- l'inversion de dépendance (principe SOLID)
- la ségrégation d'interface (principe SOLID)
- ce que l'on appelle l'abstraction leak (dans mon exemple de voiture, un "fuitage d'abstraction" serait par exemple que sur une boite manuelle, la connaissance de votre moteur et de ses bruits est vraiment importante pour ne pas caler en embrayant)


Mais surtout merci à toi pour tès vidéos. Je pense que c'est bien que de gens comme toi démocratisent l'apprentissage du métier !

zelastminute
Автор

Une API c'est définir quand. Quoi. Et Comment. Donc rien à voir avec REST qui définit le comment....
Les autres conseils ça va. Surtout la gestion du temps. Mais la définition d'une API est totalement biaisée. (le type avec son JSON sur le tableau blanc est plus proche de la définition de l'api (parce qu'on se doute que ça sera du REST (comment) et du JSON (quoi), manque juste l'info du quand

nicolaschappuis
Автор

Le coup de se specialiser pour être plus fort que les autres, je suis pas convaincu. C'est comme à la bagarre, on fini par tomber sur plus fort que soi. Peut être qu'à court terme ça paye, mais à long terme non.
Lead tech d'une seule techno ça n'existe pas. D'autre part, et ça va faire plus de 20ans que je le constate, les technos deviennent obsolètes. Je peux donner des tas d'exemples de dev envoyés au tapis parce que la techno n'est plus. Quand on se specialise, on s'affaiblit.
Pratiquer plusieurs techno permet d'ouvrir l'esprit et de ne pas mettre vos oeufs dans le même panier. Attention, si votre souci était de devoir bosser trop de choses, c'est peut être que vous 'n'avez pas fait le tri.

Pour les nouveaux développeurs, je vous suggère de faire ce que vous avez envie de faire. Il y a de la place. Ne choisissez pas en fonction de ce qu'on vous donne. Une ESN vous demande de bosser sur un truc tout pourri ? Changez direct !
Prenez le temps de construire, si vous faites bien votre taf ça paye quoiqu'il arrive. Une carrière c'est long 😊

azignasse
Автор

Je pense que tu aurais du aussi citer l'algorithmie. J'ai fait l'erreur d'apprendre a coder avant d'apprendre l'algorithmie. Faire l'inverse m'aurait fait gagner un temps fou

benmeziani
Автор

Bonjour, je ne suis pas tout à fait d'accord sur votre explication de l'api. L'api a existé bien longtemps avant les services REST. Les APIs étaient au départ toujours en local et c'étaient les librairies utilisées par les systèmes d'exploitation ou n'importe quel programme. Le but de l'api est de permettre l'utilisation des services d'une librairie (localement) ou d'une api en Remote (Rest/Soap ...), sans chercher à connaitre leurs implémentations et peu importe le langage utilisé dans le cas des APIs Remote. L'important, c'est le contrat, qui lui permet de savoir que pour tels et tels inputs, on aura tels et tels outputs.

maleks
Автор

Je suis tombé ici par hasard en lisant le titre de la vidéo, que j'ai trouvé intrigant, et ça n'a pas manqué ! Je me suis pas mal identifié à ton parcours, car étant actuellement en formation PHP/Symfony chez OpenClassrooms, je sens pourtant que mon langage de cœur se trouve dans le frontend ! Reconverti du milieu des industries graphiques, j'aime aussi bien pouvoir mettre une touche artistique dans ce que je produis.

Je passe beaucoup de temps à faire de la veille technologique en me comparant, malgré moi, à des cadors de Twitch ou Twitter, et il est vrai que c'est épuisant.. Ta vidéo m'a donné envie de suivre mon intuition, et de me focaliser sur un framework JS une fois ma formation terminée ! 👊

Merci pour la déculpabilisation, tu viens de gagner un abonné ✌

ctrl_fj
Автор

Je suis pas d'accord avec ta définition d'une API. Tu fais l'analogie avec la recette de cuisine, mais cette analogie est plus proche d'un algorithme. Une API c'est un contrat d'interaction entre deux morceaux de code. C'est l'interface que ces deux morceaux de code doivent partager pour communiquer entre eux. On note les APIs de navigateur (= quelles sont les fonctions disponibles pour interagir avec le navigateur depuis un site web), les APIs REST (= les requêtes et réponses, généralement sérialisées en JSON pour une communication entre un client et un serveur), les APIs gRPC (les fonctions appelables de manière distante entre un client et un serveur) et bien d'autres. Le manuel d'instructions, c'est plus la documentation de ladite API pour le coup.

Dogeek
Автор

La définition d'api est fausse. En réalité il s'agit juste de l'interface avec laquelle on dialogue de programme à programme par opposition aux user interfaces. C'est aussi simple que ça

EricLAUGIER
Автор

Aïe aïe aïe...
Grave erreur dans votre discours, le front-end c'est la vitrine, la carrosserie en quelque sorte, mais le back end c'est le moteur, et sans le moteur bah là voiture elle n'avance pas...
En tant que chef de projet, je constate souvent comment la MOA ou les métiers minimisent le travail du back-end, c'est pourtant l'essentiel, et c'est bien souvent par là qu'il faut débuter et entamer un projet.

bentheater
Автор

Pour revenir sur le conseil d'aller se coucher. La méthode de loin la plus efficace pour moi, lacher le clavier et aller marcher, profiter d'une pause cafe ou d'une pause clop pour faire une balade de 15minutes sans vraiment de but. En général au retour je sais quoi vérifier ou comment identifier le problèmee et en 5minutes s'est plier

idir
Автор

Je suis d'accord que ce spécialiser est importante mais avoir des bases dans un peu tout ça peut permettre de comprendre le travail des collègues.
De plus si on parle bien de "Avant d'apprendre à coder" Et bien difficile de se spécialiser avant de savoir quel type de langage va nous plaire.
Mais une fois qu'on a les bases front et back, qu'on a trouvé une spécialité qui nous plaît, oui évidement, se spécialiser est une très bonne chose.

KazeiEichi
Автор

Le meilleur truc en cas de bug, c'est de sortir respirer... ;-)

scudone
Автор

Je suis un vieux programmeur et la chose la plus importante que j’aurais aimé apprendre à l’école c’est les environnements de développement et leurs buts et à qui ils servent. (Dev, fonctionnel, intégré, acceptation ou recette, pré-prod, prod et urgence).

danyvezina
Автор

-merci pour le vedio, est ce que tu peux me donne des resource pour apprendre le programmation et merci

aymanezzamani
Автор

Sur le 5 eme point 'coder en equipe ' qu'est ce que vous pouvez suggerer perso j'arrive pas a trouver d'equipe et je sais pas ou je pourrai trouver si vous pouvez m'orienté ça sera top

Intellectual_House
Автор

Votre chaîne est une mine d'or pour les développeurs.
Merci Simon

NgorSeck