J'ai un profil vaguement semblable à celui de ton ami, je suis mathématicien de formation et même si j'ai beaucoup programmé pour mon plaisir personnel ou de temps en temps pour ma recherche, et même si j'ai fait quelques modules "info" pendant mes études (programmation en Scheme, calcul scientifique, algorithmique) je n'avais pas d'expérience solide en programmation en cherchant des emplois hors du monde académique.
Les entreprises ne vont en général pas s'attendre à trouver des gens qui soient à la fois des bons physiciens et des bons programmeurs, et puis la plupart des gens sont tout à fait capable d'apprendre à programmer, et les physiciens pas moins que quiconque. Donc pour commencer, je conseillerais de faire fi de toute inhibition et de poser des candidatures pour les offres qui l'intéressent, en étant tout à fait honnête sur le niveau de programmation qu'il peut avoir – qui n'est pas nul, même s'il n'est pas très élevé. S'il choisit de travailler dans une grosse structure, il aura de toutes façons un programme de novice, éventuellement de plusieurs mois, pour se former.
Ce qui est important pour ton ami, c'est d'une part d'être sûr qu'il est réellement intéressé par le travail auquel il présente son dossier, et en particulier qu'il est réellement intéressé par la programmation. C'est le point qui me semble le plus délicat.
Pour moi ce qui fait un bon programmeur, ce n'est pas tant sa capacité à écrire des programmes en elle-même, qui bien-sûr doit être là, mais la capacité à écrire du code robuste, maintenable et testable, et très franchement je ne connais pas d'autre école que celle de l'expérience. Quand je programmais chez moi je n'écrivais pas des programmes qui tournent pendant des mois et manipulent des TB de données. :)
Si ton ami veut étudier la programmation en autodidacte, le mieux pour lui est de dénicher un projet libre teinté de calcul scientifique qui l'intéresse et auquel il pourrait envisager de modifier un peu ou même de contribuer. Quelques exemples:
# Mon expérience (similaire)
Posté par Michaël (site web personnel) . En réponse au message Quelle formation en C++ pour un physicien ?. Évalué à 2.
J'ai un profil vaguement semblable à celui de ton ami, je suis mathématicien de formation et même si j'ai beaucoup programmé pour mon plaisir personnel ou de temps en temps pour ma recherche, et même si j'ai fait quelques modules "info" pendant mes études (programmation en Scheme, calcul scientifique, algorithmique) je n'avais pas d'expérience solide en programmation en cherchant des emplois hors du monde académique.
Les entreprises ne vont en général pas s'attendre à trouver des gens qui soient à la fois des bons physiciens et des bons programmeurs, et puis la plupart des gens sont tout à fait capable d'apprendre à programmer, et les physiciens pas moins que quiconque. Donc pour commencer, je conseillerais de faire fi de toute inhibition et de poser des candidatures pour les offres qui l'intéressent, en étant tout à fait honnête sur le niveau de programmation qu'il peut avoir – qui n'est pas nul, même s'il n'est pas très élevé. S'il choisit de travailler dans une grosse structure, il aura de toutes façons un programme de novice, éventuellement de plusieurs mois, pour se former.
Ce qui est important pour ton ami, c'est d'une part d'être sûr qu'il est réellement intéressé par le travail auquel il présente son dossier, et en particulier qu'il est réellement intéressé par la programmation. C'est le point qui me semble le plus délicat.
Pour moi ce qui fait un bon programmeur, ce n'est pas tant sa capacité à écrire des programmes en elle-même, qui bien-sûr doit être là, mais la capacité à écrire du code robuste, maintenable et testable, et très franchement je ne connais pas d'autre école que celle de l'expérience. Quand je programmais chez moi je n'écrivais pas des programmes qui tournent pendant des mois et manipulent des TB de données. :)
Si ton ami veut étudier la programmation en autodidacte, le mieux pour lui est de dénicher un projet libre teinté de calcul scientifique qui l'intéresse et auquel il pourrait envisager de modifier un peu ou même de contribuer. Quelques exemples:
Toi tu peux l'aider à tout mettre en place sur sa machine, et à faire ses premières compilations. :)