Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Débats sur le développement - Le Best Of Discussion :

Comment devenir un meilleur développeur ?


Sujet :

Débats sur le développement - Le Best Of

  1. #41
    Nouveau membre du Club
    Oe nah, suffit de faire gaffe et de bien savoir comment ça marche

    Et puis:
    Citation Envoyé par Leodagan
    Face a la mauvaise foi y'a que le mépris

  2. #42
    Expert éminent
    Citation Envoyé par Brütal Voir le message
    Oe nah, suffit de faire gaffe et de bien savoir comment ça marche
    Justement, en tant que premier langage le C++ est mauvais

    Il faut que tu apprennes la logique (algo, boucles, ...), le paradigme (programmation objet, surcharge, ...), la syntaxe et les spécificités du langage.
    Cela fait beaucoup de choses à apprendre

    Si tu prends un langage comme PHP, tu peux oublier le paradigme (même si tu peux faire des objets et des traits), la syntaxe est simple et il n'y a pas trop de spécificités/ pièges.
    Et il y a aussi des sucres syntaxiques comme les itérateurs foreach

  3. #43
    Nouveau membre du Club
    Bah pour ça que j'ai recommandé le C
    Surtout que le côté orienté objet est pour moi un paradigme de simplification, qui doit être appris une fois qu'on maîtrise la programmation impérative.
    Mais ça rends pas le C++ inélégant, c'est juste qu'il offre beaucoup de libertés, et que c'est facile de faire des erreurs dans ce cas. Faut être extrêmement rigoureux quand on l'utilise.

    Et oui, y'a beaucoup de choses à apprendre, mais y'aura toujours quelque chose à apprendre, c'est pour ça que la programmation c'est génial
    Et oe, le dev web, il a une classe à part. Le fonctionnement n'est pas le même, ni les problématiques.

  4. #44
    Expert éminent
    Citation Envoyé par Brütal Voir le message
    Et oe, le dev web, il a une classe à part. Le fonctionnement n'est pas le même, ni les problématiques.
    PHP et JavaScript sont d'abord des langages interprétés et tu n'as pas besoin d'un contexte WEB pour les utiliser

    Comme Python tu peux faire des scripts et les exécuter à la ligne de commande.

    Ensuite un contexte WEB peut être un avantage parce que cela permet d'avoir des premiers projets un peu complexes, visuels, et avec les butineurs tu peux manipuler les éléments facilement.
    Parce que le langage C c'est mignon cela apporte la rigueur, mais tu n'as que la console pour afficher des choses facilement et au moindre problème, c'est le débogueur.

  5. #45
    Nouveau membre du Club
    Citation Envoyé par foetus Voir le message
    Parce que le langage C c'est mignon cela apporte la rigueur, mais tu n'as que la console pour afficher des choses facilement et au moindre problème, c'est le débogueur.
    Oui, il faut commencer par la base avant de faire des choses plus évoluées, cela permet d'avoir une bonne vision du fonctionnement de sa machine.
    Oui l'interface est austère, mais c'est comme en architecture, tu peux vouloir créer tous les immeubles que tu veux, si tu sais pas clouer des planches, c'est mort pour faire un truc correct.
    Je sais que beaucoup de personnes qui commencent la programmation, voudraient tout de suite faire un jeux vidéo, une interface hyper-complexe avec des effets de ouf.
    Sauf que tu peux développer, mais tu peux aussi développer correctement. Et jamais tu obtiendra ce que tu veux de manière correcte sans voir les bases.
    Beaucoup de personnes se prétendent développeurs, alors qu'en vrai elles savent juste utiliser des frameworks ou des surcouches logicielles inutiles.
    On arrive à un stade où des personnes utilisent des technos sans avoir la moindre idée de ce qu'il y'a derrière. Et c'est bien dommage, parce que au final, les programmes créer son bien trop lourds, et non-optimisés.
    Et souvent cela empêche de maîtriser certaines technos, qui sont pourtant bien utiles dans certains cas.

  6. #46
    Modérateur

    Quelque soit le langage, il y a des tutoriels pour débutants qui, en principe, et je pense que c'est généralement le cas, enseignent aussi les concepts de base de la programmation (notions de variables, constantes, boucles, conditions, fonctions...).

    Si tu veux devenir programmeur web, inutile d'apprendre le C ; autant apprendre directement le PHP avec un bon tutoriel pour débutant et qui te donnera aussi les bases en HTML et CSS, voire en Javascript. Ensuite, tu te perfectionnes par la pratique et avec des tutoriels plus évolués sur des points précis (travail avec les BDD, authentification et autorisation d'accès aux fonctions de l'application, téléchargement de fichiers, diffusion de vidéo, MVC, POO, frameworks...).
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  7. #47
    Membre éclairé
    Citation Envoyé par CinePhil Voir le message
    Quelque soit le langage, il y a des tutoriels pour débutants qui, en principe, et je pense que c'est généralement le cas, enseignent aussi les concepts de base de la programmation (notions de variables, constantes, boucles, conditions, fonctions...).

    Si tu veux devenir programmeur web, inutile d'apprendre le C ; autant apprendre directement le PHP avec un bon tutoriel pour débutant et qui te donnera aussi les bases en HTML et CSS, voire en Javascript. Ensuite, tu te perfectionnes par la pratique et avec des tutoriels plus évolués sur des points précis (travail avec les BDD, authentification et autorisation d'accès aux fonctions de l'application, téléchargement de fichiers, diffusion de vidéo, MVC, POO, frameworks...).
    Je pense que 90% des gens qui apprennent en autodidacte et qui pratique un tant soit peu apprennent ainsi. Ce qui est selon moi le meilleur moyen de débuter. Ensuite c'est vraiment en fonction de chaque personne.
    "C'est d'un ennui…"

    Shikamaru Nara

  8. #48
    Expert confirmé
    Citation Envoyé par Brütal Voir le message
    Bah pour ça que j'ai recommandé le C
    perso, j'adore le C, mais il m'a tout de même fallu plusieurs années avant de savoir coder proprement dans ce langage, parce que c'est l'un des langages les plus impardonnables (mais ça peu pas être pire qu'avec APL)

    Je suis tombé sur cette vidéo de Robert Cailliau: co-fondateur du world wide web: vers la 33e minute il qualifie le langage C de catastrophe, on ne peut qu'être d'accord avec lui et son humour teinté de vérité.
    «La pluralité des voix n'est pas une preuve, pour les vérités malaisées à découvrir, tant il est bien plus vraisemblable qu'un homme seul les ait rencontrées que tout un peuple.» [ René Descartes ] - Discours de la méthode

  9. #49
    Membre éclairé
    Citation Envoyé par psychadelic Voir le message
    perso, j'adore le C, mais il m'a tout de même fallu plusieurs années avant de savoir coder proprement dans ce langage, parce que c'est l'un des langages les plus impardonnables (mais ça peu pas être pire qu'avec APL)

    Je suis tombé sur cette vidéo de Robert Cailliau: co-fondateur du world wide web: vers la 33e minute il qualifie le langage C de catastrophe, on ne peut qu'être d'accord avec lui et son humour teinté de vérité.
    Hahaha 'Catastrophe' xD.
    N'empêche que je pense que le premier critère pr le choix d'un premier langage, c'est le "Pourquoi on se lance dans le dév ?".
    Envie de créer un jeu ? Son envie va vite être refoulé x).
    Pr le reste, il suffit de chercher le/les langages appropriés.
    "C'est d'un ennui…"

    Shikamaru Nara

  10. #50
    Membre éclairé
    Je vais apporter mon grain de sel, pour fixer le profil je suis relativement jeune (30ans , première lignes de code PHP à 16, Java/Javascript principalement) et bien que mon métier soit développeur (application web ou lourd classique, pas système, embarqué bien que je serais confiant sur une monter en compétence dessus), et bien généralement ça me suffit (maison = pas de devs en général). Je suis reconnu pour un bon niveau technique et je commence à pousser sur le côte organisationnel (déjà de l'agile et du bien fait pour commencer).

    En revanche je vais rester sur ce qui pour moi fait un bon développeur, pas un cador, responsable technique.

    Donc là on j'ai pu me distinguer concrètement par rapport à d'autres personnes :

    • Une bonne connaissance des principes de bases qui sont valables au final quelques soit le paradigme utilisé et qui sont souvent la cause d'erreur très classique et parfois difficile à corriger (mémoire, complexité algorithmique, entrée/sortie, bases réseaux : i.e HTTP quand on fait du web). Je les dois de mon côté à mon parcours scolaire : BTS Informatique & Réseau puis école d'ingénieur. Le BTS c'était 6h de TP de programmation + 6H de TP système avec souvent programmation système + les cours.
    • Une connaissance meilleure des outils que j'utilise exemple : SGBD/SQL/Hibernate, les fonctionnement de base des framework injection de dépendance, templating,... (que j'estime souvent superficielle moi-même mais pourtant je reste qualifié comme "l'expert").
    • Dans le cadre des projets d'entreprise : choisir les bon outils, ce qui n'est pas toujours facile. J'évite les choses trop récente, quand je me suis mis à AngularJS ils en était à la 1.3, Angular à la 4.
    • Personnellement je lis des choses à gauche à droite mais pas vraiment de livres sur une technos en particulier. En revanche à chaque fois que je fais quelque chose que je n'ai pas encore fait, j'essaye de prendre le temps de chercher la meilleur façon de faire avec l'outil que j'utilise, quitte à devoir creuser sur des pans que je ne connais pas encore de l'outil.
    • Ne pas hésiter à remettre en cause ce qu'on a fait et à demander l'avis des autres.
    • Vouloir généraliser le code mais pas trop vite ni trop lentement, avant même cela, creuser de temps à autres les solutions techniques liés aux technos utilisés les plus appropriés.

  11. #51
    Membre actif
    La carrière d'un ingénieur ou développeur ne se resume pas à la connaissance d'un language de programmation.
    Face à un problème il faut aller puiser dans plusieures ressources.

    Coder est l'acte final d'un développeur ou d'un ingénieur en génie logiciel, génie électrique, télécom, génie chimique...
    Avant cet acte, on analyse, on conçoit une architecture et on choisit les outils appropriés. Pour que tout cela soit possible il faut une formation ou autoformation dans plusieurs domaines : mathématique, calcul numérique, gestion de projet.

    L'informatique à elle seule, regorge de paradigmes qui vont au délà de la connaissance d'un language informatique : algorithme, débordemenet de mémoire, adressage, structure de données, normalisation des bases de données, cryptographie, sécurité informatique, blockchain, réseau de neurones....

    Il ne s'agit pas de tout maitriser, mais plutôt de se former sur un maximum de notions.
    De plus en plus, on va vers de l'informatique industriel avec l'internet des objets, donc beaucoup de traitement de données qui requière des statistiques, des mathématiques...

    Il faut être prudent, car certains nouveaux termes ne veulent rien dire et finissent par disparaitre : webmaster, bigdata, developpeur full stack, developpeur backend, developpeur front-end...
    Normalement, un développeur devrait être capable d'apprendre l'essentiel d'un language en 6 mois.

    Pour moi il faut :
    - Etre productif : Optimiser son poste de travail, abuser des raccourcis clavier.
    - Maîtriser du bout des doigts un language et un framework permet de gagner en productivité.
    - Avoir une connaissance approfondie d'un language général (java, python, ...) facilite aussi l'apprentissage d'un nouveau, car les grands principes sont les mêmes.
    - Elargir son champ d'expertise sur les grands principes informatiques et scientifiques (stats, maths, calcul numérique, normes de qualité, POO...), car ils ne changent pas sur le temps,
    - Pratiquer tout le temps et s'entourer de personnes compétentes.

    Un chef ne maîtrise pas un type de couteau, mais plutôt explore le maximum d'ingrédients et de façons de faire pour concevoir les bonnes recettes .

  12. #52
    Futur Membre du Club
    progression
    bonjour,

    Personnellement, c'est le livre de Bertrand Meyer sur la programmation orientée objet "Conception et programmation orientées objet " qui m'a fait comprendre en profondeur les carences que j'avais en analyse et P.O.O.

    Ce livre est une bible... et n'est pas à la portée des débutants.

###raw>template_hook.ano_emploi###