il est clair que la programmation ne te passionne pas du tout
Ce n'est hélas pas aussi simple que ça. J'ai commencé à programmer vers 14-15 ans, en turbo pascal, et j'aimais ça, parce qu'au début, c'est plutôt déroutant, ces variables, ces fonctions, et tout ça... Ensuite j'ai codé en basic sur calculatrice, puis après en C.
En prépa, ça m'intéressait aussi, d'une part parce que je ne codais que deux semaines tous les deux mois, mais aussi parce qu'on faisait aussi des choses variées : programmation réseau, petit moteur 3d, gestion de fichiers, un peu de gtk...
L'été dernier, j'ai fait une contribution à un projet libre (libssh) qui m'a intéressé, d'abord parce je n'étais pas encore blasé par le C, ensuite parce ça m'a fait découvrir un peu la crypto, et beaucoup parce que je me suis bien pris la tête à déboguer des secouages de mains de Diffie-Helmann...
J'ai codé un petit kernel, ce qui était plutôt intéressant parce que j'ai découvert comment mixer C et assembleur, comment sont codés des drivers très simples, etc. Ceci dit, la segmentation et la gestion des interruptions se gèrent au niveau processeur d'une manière similaire. Écrire la segmentation m'a intéressé ("ouah, c'est marrant, il suffit de créer un tableau et charger un registre"), la gestion des interruptions beaucoup moins ("putain, encore un tableau à remplir et un registre à charger !").
Enfin, pour finir sur ma vie, je développe en ce moment un site web avec Ruby on Rails. Les trois premiers jours, j'ai pas réussi à décrocher (d'ailleurs ma copine a piqué une crise), parce que je découvrais les fonctionnalités de ror (validation des formulaires, filtres, etc), l'ajax, toussa. Après j'ai développé des méthodes génériques, des formulaires qui s'adaptent à la classe de l'objet, etc et c'était rigolo parce que je découvrais un peu le dynamique. Une fois que cet espèce de coeur a été fait. Il ne restait plus qu'à créer des classes, crées des vues pour gérer les différentes données. Cette dernière partie m'insupporte, parce que c'est tout le temps la même chose.
Par contre, j'adore déboguer, parce qu'on passe 100% du temps à réfléchir, pour comprendre comment fonctionne le code d'un projet qu'on ne connaît pas, d'où vient le problème, etc.
Bref, tout ça pour dire que ce n'est pas vraiment la programmation que je n'aime pas, mais la répétition, l'absence de nouveauté, le fait de passer une heure à écrire quelque chose que je pense en 10 secondes... C'est pour ça que je me demandais si ça venait du fait que je ne code que des choses simples, et si ça change dans le monde professionnel, ou les gros projets.
Quand on code, on créer, on fait naitre un truc. On est comme un dieu qui est en train de créer le monde. Comme disait un des commentaires, la machine devient esclave, on lui fait faire ce qu'on veut. On est un peu comme un frankenstein. On donne vie à quelque chose.
C'est très intéressant, ce que tu dis là. Le commentaire auquel tu fais référence m'avait effectivement marqué. Ça me permet de comprendre un peu mieux.
Néanmoins, j'avoue être plus sensible à la manière dont est fait un programme qu'à ce qu'il fait. Je préfère largement lire un code source plutôt qu'exécuter un programme.
Quand j'ai codé un truc, je n'ai pas envie de dire "regardez, mon programme fait ça", mais plutôt "regardez, mon programme est fait de telle manière" (ce qui est beaucoup plus difficile à partager avec sa copine ;)).
Du coup, je suis pas du tout motivé par les fonctionnalités qui apportent quelque chose dans l'utilisation du programme mais qui sont simples à coder. Quand je sais comment je vais designer mon code, comment je vais m'y prendre pour coder telle chose, je fais une ou deux fonctionnalités pour me prouver que ça marche, et ça m'intéresse, mais coder un truc sensiblement égal à quelque chose que j'ai déjà fait, ou sans difficulté ne m'intéresse pas.
tu sera tous les jours en train de te poser la question, "putain, qu'est ce que je fous là ? Pourquoi j'ai pas choisi de faire plutôt YYYYYY ?"
Cette question, je me la suis posée tous les jours pendant les six premiers mois de l'année :)
Finalement, ce journal aura été plutôt fructueux : un magnifique troll sur les écoles plutôt intéressant, des avis qui semblent confirmer que la recherche pourra m'intéresser, et des commentaires comme le tien qui m'ont permis de comprendre un peu mieux pourquoi les gens aiment programmer.
Cool :)
Le code aussi, c'est intéressant, parfois, lorsque tu t'interroges sur la manière de designer ton code pour avoir quelque chose d'élégant, de maintenable, ou d'extensible, ou sur comment tirer parti du langage pour écrire quelque chose de la plus belle manière qui soit (générique, ou sûre, ou qui évite la redondance...), mais ce genre de choses arrive une fois tous les combien ?
D'après ma petite expérience personnelle, que ce soit pour mes projets étudiants, mes projets personnelles, le peu de contributions que j'ai faites à un projet libre, c'est surtout au début, quand les choses se mettent en marchent, mais une fois que les fonctionnalités de base sont là, et qu'il n'y a plus qu'à rajouter des classes en suivant un modèle précis, c'est déjà beaucoup plus rare, et c'est généralement à ce moment là que ça me saoule.
Qu'en est-il du monde professionnel, ou des plus gros projets ?
Vous passez combien de temps à écrire des choses qui nécessitent de la reflexion, et combien de temps à écrire des choses qui ont juste besoin d'être écrites pour ajouter des fonctionnalités, mais qui n'apporte rien d'un point de vue reflexion / recherche de solution à un problème (que ce soit du design sur le code, sur la manière de rester DRY, etc) ?
Sinon, as-tu essayé la programmation en assembleur ?
Un peu, au travers d'un kernel. Mais pour le coup, on passe quand même énormément de temps à faire pas grand chose, non ?
Personnellement, je préfère largement écrire
Ça ne sert à rien de mettre une action vide dans ton contrôleur :
si une vue existe, ça revient à avoir une action vide (les filtres vont être appliqués, et tout et tout).
Justement, la commission est là pour assurer que l'école fourni un enseignement intéressant : ie ne pas faire que plancher les élèves sur un projet informatique et leur faire pisser du code pendant 3 jours.
Pour moi, Épita est une école de programmeurs, ça ne me choque pas qu'elle n'ait pas la CTI. Et ça ne veut pas dire que l'enseignement est inintéressant, je connais beaucoup de gens qui s'y plaisent, parce qu'ils aiment coder (je n'ai toujours pas compris pourquoi, d'ailleurs).
La question que je me pose dans ton récit est la suivante : tu n'aimes pas coder, mais aime tu le coté algo ? la conception sur papier ?
Au contraire de la majorité des gens de l'ecole (enfin, je crois), j'ai largement préféré la prépa à l'ing1, même si je trouvais les cours de maths et d'algo pas assez poussé, et les partiels une grosse blague (uniquement des exos déjà fait en td...)
Et sinon, le reste dans l'info tel que le bases de données
Les bdd me saoûlent profondément. Si quelqu'un pouvait m'expliquer ce qu'il y a d'intéressant la-dedans...
la sécu
La sécu m'intéresse beaucoup, même si je suis une grosse quiche. Mais quand j'ai appris qu'en SRS (la spécialisation système, réseaux et sécurité) ils recodent une partie de la pile IP, ça m'a pas donné envie d'y aller...
les CSI
Si tu parles de la spécialisation recherche, je saurais ça l'année prochaine, mais il y a de fortes chances que ça m'intéresse.
Parce que en effet, résumer epita a la programmation, c'est y aller un peu fort, surtout pour les deux premières années ou les étudiants se plaignent de pas en avoir assez au profit des maths et consorts ...
Sauf que les deux années de prépas ne servent à rien. Les partiels sont à mourir de rire tellement ils sont bidons, et rien de ce qu'on fait en prépa nous sert dans la suite. Le peu de gens qui ont suivi les cours en ont oubliés les trois quart à la fin de l'ing1...
N'hésite pas a en discuter avec la pédago d'épita qui doit en avoir vu d'autres dans ton cas et qui pourra te conseiller (dujardin ou courtois par exemple).
Depuis que j'ai entendu Dujardin dire : "le japonais n'est plus une option de sciences humaines, parce qu'ici ce n'est pas une école de mangas", j'ai nettement moins envie d'aller lui parler.
qui ne délivre même pas le diplome d'ingénieur non
Certes. En même temps, on s'en fout. On a un diplôme bac + 5, et le but (dans mon cas au moins) est plus d'apprendre des choses intéressantes que d'avoir un diplôme reconnu par une commission.
Certes, cependant, je ne suis pas sûr que c'en soit la raison, puisque j'ai fait un peu plus que mes projets epita, et ça m'a autant saoûlé.
Après, si tu peux détailler ton point de vue, ça m'intéresse.
Je n'ai pas réduit l'informatique à la programmation, j'ai réduit Epita à la programmation :)
Je pense effectivement à m'orienter vers la recherche, donc je vais faire une licence de maths l'année prochaine, mais je doute un peu de mes capacités à réussir...
Et les milliers de postes Linux en Extramadure, a Munich, ... ils vont aussi acheter une carte graphique Intel parce que les drivers sont maintenant libres ?
Je ne sais pas qui fait le choix du matériel, mais si les gens qui font l'installation des postes Linux ont leur mot à dire, je ne trouve pas ça illogique, pour au moins deux raisons :
1) s'ils installent des postes Linux, on peut peut-être penser qu'ils sont un peu libristes, et qu'ils préféreront des cartes disposant d'un pilote libre
2) c'est quand même beaucoup plus simple d'avoir un pilote intégré au noyau / à X.org pour tout ce qui est installation / mise-à-jour / maintenance...
Est-ce que les geeks libristes représentent une part si faible de la population ?
Combien d'entre nous montent des PCs pour la famille, les amis... ou les coseillent sur le choix ?
[^] # Je ne dirais qu'une chose...
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 3.
[^] # Re: Change de branche
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 4.
Ce n'est hélas pas aussi simple que ça. J'ai commencé à programmer vers 14-15 ans, en turbo pascal, et j'aimais ça, parce qu'au début, c'est plutôt déroutant, ces variables, ces fonctions, et tout ça... Ensuite j'ai codé en basic sur calculatrice, puis après en C.
En prépa, ça m'intéressait aussi, d'une part parce que je ne codais que deux semaines tous les deux mois, mais aussi parce qu'on faisait aussi des choses variées : programmation réseau, petit moteur 3d, gestion de fichiers, un peu de gtk...
L'été dernier, j'ai fait une contribution à un projet libre (libssh) qui m'a intéressé, d'abord parce je n'étais pas encore blasé par le C, ensuite parce ça m'a fait découvrir un peu la crypto, et beaucoup parce que je me suis bien pris la tête à déboguer des secouages de mains de Diffie-Helmann...
J'ai codé un petit kernel, ce qui était plutôt intéressant parce que j'ai découvert comment mixer C et assembleur, comment sont codés des drivers très simples, etc. Ceci dit, la segmentation et la gestion des interruptions se gèrent au niveau processeur d'une manière similaire. Écrire la segmentation m'a intéressé ("ouah, c'est marrant, il suffit de créer un tableau et charger un registre"), la gestion des interruptions beaucoup moins ("putain, encore un tableau à remplir et un registre à charger !").
Enfin, pour finir sur ma vie, je développe en ce moment un site web avec Ruby on Rails. Les trois premiers jours, j'ai pas réussi à décrocher (d'ailleurs ma copine a piqué une crise), parce que je découvrais les fonctionnalités de ror (validation des formulaires, filtres, etc), l'ajax, toussa. Après j'ai développé des méthodes génériques, des formulaires qui s'adaptent à la classe de l'objet, etc et c'était rigolo parce que je découvrais un peu le dynamique. Une fois que cet espèce de coeur a été fait. Il ne restait plus qu'à créer des classes, crées des vues pour gérer les différentes données. Cette dernière partie m'insupporte, parce que c'est tout le temps la même chose.
Par contre, j'adore déboguer, parce qu'on passe 100% du temps à réfléchir, pour comprendre comment fonctionne le code d'un projet qu'on ne connaît pas, d'où vient le problème, etc.
Bref, tout ça pour dire que ce n'est pas vraiment la programmation que je n'aime pas, mais la répétition, l'absence de nouveauté, le fait de passer une heure à écrire quelque chose que je pense en 10 secondes... C'est pour ça que je me demandais si ça venait du fait que je ne code que des choses simples, et si ça change dans le monde professionnel, ou les gros projets.
Quand on code, on créer, on fait naitre un truc. On est comme un dieu qui est en train de créer le monde. Comme disait un des commentaires, la machine devient esclave, on lui fait faire ce qu'on veut. On est un peu comme un frankenstein. On donne vie à quelque chose.
C'est très intéressant, ce que tu dis là. Le commentaire auquel tu fais référence m'avait effectivement marqué. Ça me permet de comprendre un peu mieux.
Néanmoins, j'avoue être plus sensible à la manière dont est fait un programme qu'à ce qu'il fait. Je préfère largement lire un code source plutôt qu'exécuter un programme.
Quand j'ai codé un truc, je n'ai pas envie de dire "regardez, mon programme fait ça", mais plutôt "regardez, mon programme est fait de telle manière" (ce qui est beaucoup plus difficile à partager avec sa copine ;)).
Du coup, je suis pas du tout motivé par les fonctionnalités qui apportent quelque chose dans l'utilisation du programme mais qui sont simples à coder. Quand je sais comment je vais designer mon code, comment je vais m'y prendre pour coder telle chose, je fais une ou deux fonctionnalités pour me prouver que ça marche, et ça m'intéresse, mais coder un truc sensiblement égal à quelque chose que j'ai déjà fait, ou sans difficulté ne m'intéresse pas.
tu sera tous les jours en train de te poser la question, "putain, qu'est ce que je fous là ? Pourquoi j'ai pas choisi de faire plutôt YYYYYY ?"
Cette question, je me la suis posée tous les jours pendant les six premiers mois de l'année :)
Finalement, ce journal aura été plutôt fructueux : un magnifique troll sur les écoles plutôt intéressant, des avis qui semblent confirmer que la recherche pourra m'intéresser, et des commentaires comme le tien qui m'ont permis de comprendre un peu mieux pourquoi les gens aiment programmer.
Cool :)
[^] # Re: Le blues du programmeur ...
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 3.
Peut-être pourrais tu essayer de m'initier, même si je ne suis pas sûr d'y être sensible... ?
[^] # Re: Solution
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 2.
D'après ma petite expérience personnelle, que ce soit pour mes projets étudiants, mes projets personnelles, le peu de contributions que j'ai faites à un projet libre, c'est surtout au début, quand les choses se mettent en marchent, mais une fois que les fonctionnalités de base sont là, et qu'il n'y a plus qu'à rajouter des classes en suivant un modèle précis, c'est déjà beaucoup plus rare, et c'est généralement à ce moment là que ça me saoule.
Qu'en est-il du monde professionnel, ou des plus gros projets ?
Vous passez combien de temps à écrire des choses qui nécessitent de la reflexion, et combien de temps à écrire des choses qui ont juste besoin d'être écrites pour ajouter des fonctionnalités, mais qui n'apporte rien d'un point de vue reflexion / recherche de solution à un problème (que ce soit du design sur le code, sur la manière de rester DRY, etc) ?
[^] # Re: Oula
Posté par Jean-Philippe Garcia Ballester . En réponse au journal La diffusion phonographique populaire.. Évalué à 0.
[^] # Re: Le blues du programmeur ...
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 2.
Un peu, au travers d'un kernel. Mais pour le coup, on passe quand même énormément de temps à faire pas grand chose, non ?
Personnellement, je préfère largement écrire
plutôt que
(ou un truc équivalent mais qui marche)
Il y en a quand même un qui est nettement plus rapide à écrire et nettement plus lisible.
# action vide
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Un petit tutoriel pour découvrir Ruby on Rails avec RadRails. Évalué à 3.
si une vue existe, ça revient à avoir une action vide (les filtres vont être appliqués, et tout et tout).
[^] # Re: Pareceque
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 6.
[^] # Re: Pareceque
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 4.
Pour moi, Épita est une école de programmeurs, ça ne me choque pas qu'elle n'ait pas la CTI. Et ça ne veut pas dire que l'enseignement est inintéressant, je connais beaucoup de gens qui s'y plaisent, parce qu'ils aiment coder (je n'ai toujours pas compris pourquoi, d'ailleurs).
[^] # Re: A long time ago ...
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 3.
Pour résumer le débat, ça donne :
"Je n'aime pas x, pourquoi aimez-vous x ?"
"Ce n'est parce que tu n'aime pas x que d'autres n'aiment pas x".
Je me doutes bien qu'il y a des gens qui aiment coder, mais il y a bien une raison, non ?
[^] # Re: Solution
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 3.
Au contraire de la majorité des gens de l'ecole (enfin, je crois), j'ai largement préféré la prépa à l'ing1, même si je trouvais les cours de maths et d'algo pas assez poussé, et les partiels une grosse blague (uniquement des exos déjà fait en td...)
Et sinon, le reste dans l'info tel que le bases de données
Les bdd me saoûlent profondément. Si quelqu'un pouvait m'expliquer ce qu'il y a d'intéressant la-dedans...
la sécu
La sécu m'intéresse beaucoup, même si je suis une grosse quiche. Mais quand j'ai appris qu'en SRS (la spécialisation système, réseaux et sécurité) ils recodent une partie de la pile IP, ça m'a pas donné envie d'y aller...
les CSI
Si tu parles de la spécialisation recherche, je saurais ça l'année prochaine, mais il y a de fortes chances que ça m'intéresse.
Parce que en effet, résumer epita a la programmation, c'est y aller un peu fort, surtout pour les deux premières années ou les étudiants se plaignent de pas en avoir assez au profit des maths et consorts ...
Sauf que les deux années de prépas ne servent à rien. Les partiels sont à mourir de rire tellement ils sont bidons, et rien de ce qu'on fait en prépa nous sert dans la suite. Le peu de gens qui ont suivi les cours en ont oubliés les trois quart à la fin de l'ing1...
N'hésite pas a en discuter avec la pédago d'épita qui doit en avoir vu d'autres dans ton cas et qui pourra te conseiller (dujardin ou courtois par exemple).
Depuis que j'ai entendu Dujardin dire : "le japonais n'est plus une option de sciences humaines, parce qu'ici ce n'est pas une école de mangas", j'ai nettement moins envie d'aller lui parler.
[^] # Re: Pareceque
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 6.
Comme toutes les écoles privées
qui ne délivre même pas le diplome d'ingénieur non
Certes. En même temps, on s'en fout. On a un diplôme bac + 5, et le but (dans mon cas au moins) est plus d'apprendre des choses intéressantes que d'avoir un diplôme reconnu par une commission.
[^] # Re: Pareceque
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 2.
Après, si tu peux détailler ton point de vue, ça m'intéresse.
[^] # Re: Solution
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Pourquoi aimez-vous coder ?. Évalué à 3.
Je pense effectivement à m'orienter vers la recherche, donc je vais faire une licence de maths l'année prochaine, mais je doute un peu de mes capacités à réussir...
[^] # Re: hehe
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Petite question. Évalué à 2.
[^] # Re: Pour ATI c'est perdu
Posté par Jean-Philippe Garcia Ballester . En réponse à la dépêche Intel libère ses pilotes graphiques. Évalué à 3.
Je ne sais pas qui fait le choix du matériel, mais si les gens qui font l'installation des postes Linux ont leur mot à dire, je ne trouve pas ça illogique, pour au moins deux raisons :
1) s'ils installent des postes Linux, on peut peut-être penser qu'ils sont un peu libristes, et qu'ils préféreront des cartes disposant d'un pilote libre
2) c'est quand même beaucoup plus simple d'avoir un pilote intégré au noyau / à X.org pour tout ce qui est installation / mise-à-jour / maintenance...
[^] # Re: Pour ATI c'est perdu
Posté par Jean-Philippe Garcia Ballester . En réponse à la dépêche Intel libère ses pilotes graphiques. Évalué à 2.
Combien d'entre nous montent des PCs pour la famille, les amis... ou les coseillent sur le choix ?
[^] # Re: Troll lanched : detected
Posté par Jean-Philippe Garcia Ballester . En réponse au journal In Memoriam : MultiDeskOS, l'ex OS du futur. Évalué à 10.
[^] # Re: Troll lanched : detected
Posté par Jean-Philippe Garcia Ballester . En réponse au journal In Memoriam : MultiDeskOS, l'ex OS du futur. Évalué à 3.
[^] # Re: Hum...
Posté par Jean-Philippe Garcia Ballester . En réponse au journal faire le ménage dans son $HOME, je n'ai presque plus de fichiers cachés !. Évalué à 2.
[^] # Re: baisse des ventes de CD
Posté par Jean-Philippe Garcia Ballester . En réponse au journal La RIAA attaque un projet GPL. Évalué à 3.
Il s'agit uniquement d'un manque à gagner, pas d'une perte d'argent.
[^] # Re: baisse des ventes de CD
Posté par Jean-Philippe Garcia Ballester . En réponse au journal La RIAA attaque un projet GPL. Évalué à 4.
[^] # Re: Utiliser IMAP pour relever ses mails (comme avec POP) ?
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Comment gérez vous, vos abonnements aux listes de diffusions ?. Évalué à 1.
Par curiosité, quel est l'intérêt ? La place sur le serveur ?
[^] # Re: Ma méthode à moi
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Comment gérez vous, vos abonnements aux listes de diffusions ?. Évalué à 1.
Il reste plus qu'à kmail de fonctionner correctement.
[^] # Re: Problème de clavier ?
Posté par Jean-Philippe Garcia Ballester . En réponse au journal Passage de Mandriva à Ubuntu. Évalué à 2.