Autres : seuls les névrosés obsessionnels et introvertis sont capable d'écrire de bon programmes.![]()
Avoir une bonne formation de base
S'engager sur les bonnes pratiques en programmation (modèles, normes, etc.)
Apprendre plusieurs langages de programmation
Travailler sur plusieurs projets avec des résultats et des technologies différentes
S’auto-former régulièrement
Se faire coacher par un expert
Participer activement aux conférences et séminaires
Tirer les bonnes leçons de ses échecs
Enseigner la programmation
Programmer en Open Source, pour rester ouvert à d’autres suggestions
Être ardu à la tâche sur une longue période de temps
Pousser toujours l’effort au-delà de ses capacités et de son confort personnel
Autres (que vous préciserez en commentaires)
Pas d’avis
Autres : seuls les névrosés obsessionnels et introvertis sont capable d'écrire de bon programmes.![]()
«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
C'est quoi un expert ? Un neuneu qui sait réciter ses design patterns par coeur et qui parle tout le temps de développement agile et de bonnes pratiques, mais que personne n'écoute jamais parce qu'il n'a jamais rien foutu sur un projet ?Se faire coacher par un expert
Ma réponse est biaisée car je ne suis plus vraiment développeur, dans la BI on utilise des frameworks déjà fait pour les reportings et ETL, même si derrière on fait beaucoup de SQL et de scripting (Unix souvent, Windows parfois). Cela dit, cette différence me permet de prioriser certains des items du sondage :
*Avoir une bonne formation de base
Personne ne crache sur une bonne formation, mais les autodidactes alors ?
*S'engager sur les bonnes pratiques en programmation (modèles, normes, etc.)
Intimement persuadé, que plus on apprend de modèle, de manière de faire, tirées des expériences des grands pontes comme d'un expérimenté, ça marche.
*Apprendre plusieurs langages de programmation
Par mon biais : d'autres outils / frameworks, car ça permet de visualiser les lacunes et les forces des outils précédents, et de pallier au besoin.
*Travailler sur plusieurs projets avec des résultats et des technologies différentes
Projet, oui, mais il y a énormément de facteurs qui peuvent altérer l'efficacité, voir la faisabilité d'un projet, et c'est souvent humain
*S’auto-former régulièrement
Oui, mais pour moi ce n'est pas prioritaire. Disons qu'il faut le faire à l'instant où on sent qu'on stagne ou régresse, sinon les situations suffisent.
*Se faire coacher par un expert
Oui, je le mettrai haut... encore faut-il trouver un expert qui a le temps
*Participer activement aux conférences et séminaires
Moins aujourd'hui, car les séminaires sont souvent du spectaculaire pour se faire connaître de la part des organisateurs. Mais il y a un bon pendant : on peut se faire un excellent réseau.
*Tirer les bonnes leçons de ses échecs
Evidemment, surtout quand les échecs sont dûs à d'autres personnes :p
*Enseigner la programmation
Non, car on n'est pas tous pédagogues. J'adorerai faire de la formation, mais je m'aperçois que les juniors sont souvent perdus par mes explications.
*Programmer en Open Source, pour rester ouvert à d’autres suggestions
Sans avis, je ne fais pas d'open-source
*Être ardu à la tâche sur une longue période de temps
Ardu ? Vous vouliez dire assidu ?
*Pousser toujours l’effort au-delà de ses capacités et de son confort personnel
Tracer un cercle, écrire dedans "this is your comfort zone" et à l'extérieur "this is where magic happens".
Cela dit, être à l'extérieur peut s'avérer catastrophique.
Donc pour moi :
- S'engager sur de bonnes pratiques
- Apprendre plusieurs langages
- Se faire coacher par un expert
- So.... what exactly is preventing us from doing this?
- Geometry.
- Just ignore it !!
****
"The longer he lived, the more he realized that nothing was simple and little was true" A clash of Kings, George R. R. Martin.
***
Quand arrivera l'apocalypse, il restera deux types d'entreprise : les pompes funèbres et les cabinets d'audit. - zecreator, 21/05/2019
S'auto former regulierement
Je pense qu'il est primordial d'apporter une solution optimale au problème à résoudre. Mais comment évaluer la valeur de notre solution? J'essaie d'imaginer 2 solutions pour un même problème. Ensuite je compare les avantages/désavantages des 2 solutions. Ca me garantie de ne pas prendre la moins bonne solution et souvent ça m'inspire des améliorations à apporter à la solution retenue.
L'exercice de la comparaison permet également de focusser sur les aspects véritablement important du problème.
Je dois avouer que c'est parfois laborieux mais c'est bénéfique au bout du compte.
Et comme on peut rarement trouver une solution optimale à proprement parler, il faut savoir traiter avec les fronts de Pareto pour pas se retrouver à chercher pour rien.
Site perso
Recommandations pour débattre sainement
Références récurrentes :
The Cambridge Handbook of Expertise and Expert Performance
L’Art d’avoir toujours raison (ou ce qu'il faut éviter pour pas que je vous saute à la gorge {^_^})
J'ai eu une formation de base qui je pense était bonne pour toucher a tout sens galérer après je pense que l'auto formation est très important, pour ma part à chaque début de nouveau projet je passe un matinée à m'autoformé. Il y a tout sur le web !!!!![]()
Bonjour à tous sujet très passionnant, ainsi que tout vos commentaires. J'ai un petite question à vous messieurs, mes dames qui êtes des professionnels dans le monde de la programmation. Je suis 100% autodidacte. Je désire relancer ma carrière professionnelle, par le biais d'une reconversion. Mon activité professionnelle à l'heure actuelle se situe aux antipodes de l'informatique et de la programmation. J'ai néanmoins quelques atouts. Ma question est simple quels conseils me donneriez vous pour accomplir cette reconversion professionnelle dans le domaine du développement informatique en générale ?
Merci d'avance de vos réponses.
Je répondrais également avec plaisirs à certaines de vos questions ici et à d'autres en MP sur un plan plus personnel.
Cordialement
Jérôme
- "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
- "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
- "La simplicité est la sophistication suprême" - Léonard De Vinci
- "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei
Mes projets sur Github - Blog - Site DVP
Même si globalement d'accord, je m'étonne que "Travailler sur plusieurs projets avec des résultats et des technologies différentes" soit aussi bas. Alors que clairement, voir comment fonctionne une technologie sur un projet, peut aider pour un autre, donner de l'inspiration, des idées etc. Ça pourrait limite être inclut dans "Pousser toujours l’effort au-delà de ses capacités et de son confort personnel".
Il n'y a que cinq items devant, globalement c'est assez mis en avant.
Et puis, si tu dois déployer un outil juste à déployer, par exemple du pur SAP (exemple moyen, car la majorité des projets demandent de relever ses manches et de recoder derrière, mais passons), tu n'apprends pas forcément des masses.
- So.... what exactly is preventing us from doing this?
- Geometry.
- Just ignore it !!
****
"The longer he lived, the more he realized that nothing was simple and little was true" A clash of Kings, George R. R. Martin.
***
Quand arrivera l'apocalypse, il restera deux types d'entreprise : les pompes funèbres et les cabinets d'audit. - zecreator, 21/05/2019
J'ai voté
+ bonne formation de départ
+ S'engager sur les bonnes pratiques en programmation
+ S’auto-former régulièrement
+ Tirer les bonnes leçons de ses échecs
+ autre
Le autre signifiant : échanger avec d'autres développeurs pour ne pas se scléroser... Ce qui revient entre autres à fréquenter développez ou lire Interstices ou boire des cafés avec nos collègues préférés pour parler boulot.
https://interstices.info/
PDO, une soupe et au lit !
Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020
Salut je suis débutant et je ne sais quel langage apprendre en premier
La question piège par excellence, parce-que chacun va répondre avec son langage fétiche. Moi je la retournerais, ta question : qu'est ce que tu veux faire? selon que tu veux faire du web, du calcul scientifique, du jeu, de l'embarqué, de la finance, la réponse ne sera pas du tout la même.
Après, la réponse "standard" la moins mauvaise est Python, qui a un certain aspect formalisateur qui aide à prendre moins de mauvaises habitudes, mais si tu ne sais pas ce que tu veux en faire, ça ne te servira pas.
Les 4 règles d'airain du développement informatique sont, d'après Michael C. Kasten :
1)on ne peut pas établir un chiffrage tant qu'on a pas finalisé la conception
2)on ne peut pas finaliser la conception tant qu'on a pas complètement compris toutes les exigences
3)le temps de comprendre toutes les exigences, le projet est terminé
4)le temps de terminer le projet, les exigences ont changé
Et le serment de non-allégiance :
Je promets de n’exclure aucune idée sur la base de sa source mais de donner toute la considération nécessaire aux idées de toutes les écoles ou lignes de pensées afin de trouver celle qui est la mieux adaptée à une situation donnée.
PPpppffffff...
Toujours la même réponse qui sert à rien
Oke, si t'es débutant, et que tu veux te lancer dans la programmation, tu te poses pas de questions, tu prends ce tuto, et t'apprends le C:
Apprenez à programmer en C / C++ !
C'est un excellent tuto pour débuter, simple, qui fonctionne par l'exemple, est assez poussé mine de rien et qui permet d'avoir des résultats sympathiques.
Pourquoi le C? C'est le langage idéal pour débuter.
Assez haut niveau pour éviter d'écrire directement en assembleur, mais assez bas niveau pour être difficile à appréhender et est assez punitif pour les erreurs. Ce qui précisément force à apprendre la rigueur, dont tout programmeur doit savoir faire preuve.
Il permet de visualiser le fonctionnement de la mémoire, de bien comprendre le fonctionnement d'un programme (et de sa machine), de bien optimiser son code, il permet de comprendre l'usage d'un compilateur.
Il possède un trèèèès large choix de librairies pour pouvoir faire des choses un peu plus compliquées par la suite et il a pleeeeeeiiiinn d'autres avantages que tu pourra découvrir ultérieurement.
Surtout, il évite de tomber dans le piège, de commencer directement par la programmation orientée objet (tu verra ça quand tu démarrera le C++), qui n'est qu'un paradigme de programmation parmi d'autres. Beaucoup le vendent comme le Graal de la programmation, ce qui est complètement faux...
Il y'a des langages plus simple effectivement, mais je peux te garantir que sur le long terme, connaître le C fera clairement la différence pour la compréhension de ce que tu fais.
Après ça reste ton choix...
Et plus tard, une fois que le C sera maîtrisé, ne pas se limiter à ce seul langage, car effectivement pour débuter c'est idéal, mais pour faire du web, je te conseillerai le combo PHP/Javascript/MySQL plus tard, pour faire des applis rapides sans se poser de questions et qui nécessitent pas une optimisation de ouf, le Java. Etc etc etc...
Surtout ne pas se limiter, si tu souhaites te lancer dans la programmation, beaucoup passe par l'autodidacte.
Tu es hors-sujet sur ce fil... C'est tout ce qu'il y a à répondre ! Tous ceux qui te répondent sur le fond... se font avoir.
Je reviens sur cet item du sondage
Ca fait un peu maso non ?Pousser toujours l’effort au-delà de ses capacités et de son confort personnel
Un peu de confort n'a jamais tué personne.
Le but n'est pas de se tuer à la tâche. Le but est de s'améliorer en douceur.
Pour faire une métaphore sportive : quand tu as trouvé ta vitesse de marche ou de jogging idéale en rapport avec un nombre d'heures imposé par jour, tu ne te poses pas la question en permanence de sprinter...
PDO, une soupe et au lit !
Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020
De nombreuses réponses différentes pourront être données...
Python est un bon choix si tu veux apprendre vite et facilement (mais tu auras en fait tout à ré-apprendre plus tard).
C est un bon choix si tu es ambitieux et travailleur : c'est tellement long de développer une application complète en n'utilisant que ce langage, que commencer par le C te rendra endurant ensuite et prêt à apprendre n'importe quel autre langage plus tard selon tes besoins.
Entre ces deux extrêmes, tu as Java, bon choix pour les indécis, et très prisé dans le monde professionnel... mais l'inconvénient de commencer par Java c'est qu'on est obligé de découvrir en même temps la programmation au sens large et la programmation objet...
Dans tous les cas, passer tôt ou tard par la case C++ pourra t'ouvrir plein de portes, mais surtout pas comme premier langage tellement C++ est complexe, pinailleur et inélégant, à moins que tu préfères t'orienter vers la programmation WEB, mais ne commence pas non plus par cela tellement c'est euh... particulier.
J'ai le droit d'être con.Tous ceux qui te répondent sur le fond... se font avoir.
Les 4 règles d'airain du développement informatique sont, d'après Michael C. Kasten :
1)on ne peut pas établir un chiffrage tant qu'on a pas finalisé la conception
2)on ne peut pas finaliser la conception tant qu'on a pas complètement compris toutes les exigences
3)le temps de comprendre toutes les exigences, le projet est terminé
4)le temps de terminer le projet, les exigences ont changé
Et le serment de non-allégiance :
Je promets de n’exclure aucune idée sur la base de sa source mais de donner toute la considération nécessaire aux idées de toutes les écoles ou lignes de pensées afin de trouver celle qui est la mieux adaptée à une situation donnée.
Si il a raison:
- La syntaxe des listes d'initialisation est quand même dégeu
- Lorsque tu fais une affection, des fois c'est difficile de savoir si on appelle le constructeur par recopie ou l'opérateur =
- la place du mot clé const qui a son importance
Et ceci si on ne parle pas de la syntaxe template, et aussi du C++1Y avec l'initialisation universelle qui fait de temps en temps appel à std::array ou des lambdas![]()
![]()
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager