Canalblog
Editer l'article Suivre ce blog Administration + Créer mon blog
Publicité
9m²
8 avril 2010

Et une semaine boulot. Continuité du temps et de

Et une semaine boulot. Continuité du temps et de l'espace. Des 0 et des 1, des Oui et des Non. C'est un jeu inépuisable.
Vendredi dernier avant de partir le formateur nous a donné un exo pour la semaine à venir, censé durer 3 jours. Lundi était férié, on a donc commencé le boulot Mardi, et aujourd'hui Jeudi soir j'ai enfin tout fini sur les 2 automates (le temps de 3 jours était prévu pour 1 seul je crois, on est pas obligé de le faire sur les 2). 3 jours non-stop de programmation, c'est cool. Maintenant les trucs demandés deviennent techniques, donc le truc le plus long dans tout ça c'est pas de trouver la logique de fonctionnement du programme (ou "l'analyse fonctionnelle", trouver l'ordre des actions, les conditions etc) mais c'est plutôt de trouver comment programmer tout ça dans les 2 logiciels. Quand on l'a fait une fois, on a compris, mais la première fois c'est toujours une vraie galère. On reste souvent bloqué pendant 30 mn sur différentes erreurs :
Soit l'erreur con de raisonnement qu'on a sous les yeux et qu'on voit pas, pour ça on peut juste se donner une baffe quand on la trouve.
Soit l'erreur dont on se doutait pas et qui est du à une suite de conséquences dont l'origine se trouve à l'autre bout du programme, et qu'on pourrait plus communément appeler "bug" c'est-à-dire une conséquence logique qu'on avait pas prévu dans un cas particulier, quand on résout ça on peut se féliciter d'avoir remonté à la source pour trouver l'erreur.
Soit l'erreur qu'on pouvait pas trouver, par exemple parce qu'on utilise un autre sous-langage qui n'utilise pas les mêmes règles et qu'on a jamais encore vu, ou comme dans le cas auquel j'ai eu droit aujourd'hui, quand on est habitué à ce que le logiciel nous prévienne tout seul lorsqu'on écrit une instruction incorrecte et que dans un autre sous-langage le logiciel à la con ne sait pas le faire, et c'est donc la dernière chose qu'on vérifie. Là il suffit d'injurier le logiciel très fort et de souhaiter la mort à toute la famille des programmeurs SIMATIC.
Soit enfin l'erreur Windows, bien connue de toute personne ayant déjà touché de près ou de loin à un PC, qui consiste à afficher au milieu de l'écran "Le programme STEP 7 s'est fermé de façon inattendue, voulez-vous envoyer le rapport Windows ?" et de se demander au même instant si on a sauvegardé récemment. Dans ce cas la seule solution est de s'écrier bien fort "TU PEUX TE LE METTRE ALL OVER YOUR ASS TON RAPPORT DE MERDE PUTAIN" suivi d'un bon coup de boule dans l'écran cathodique pour se défouler.
Mais les erreurs font partie de la programmation et c'est toujours une grande joie quand on finit par les résoudre jusqu'à la suivante. En fait, la résolution d'erreurs ça doit être quelque chose comme 80% du boulot, on ne passe que 20% du temps à pondre une analyse fonctionnelle et à commencer à la programmer fidèlement, jusqu'à ce qu'on se rendre compte qu'on a oublié beaucoup de détails et qu'on finisse par s'emmêler avec toutes les variables qu'on utilise. C'est aussi pour ça que la méthode de travail est très importante, et ça fait aussi partie du jeu, trouver une méthode qui permette de minimiser le plus possible les oublis et les erreurs. Et c'est là qu'on voit vraiment la différence entre les gens. A ce sujet je vais pouvoir enculer une bonne idée reçue : le fait que les gens bordéliques sont bordéliques dans leur tête, enfin d'ailleurs c'est plus compliqué que ça. Bon déjà c'est juste faux. Ma chambre, chez mes parents ou ici, c'est un vrai bordel, je pose toujours les choses à un endroit différent parce que je m'en fous un peu, et les choses importantes je les laisse toujours au même endroit même si c'est posé en vrac, c'est en vrac mais je sais où c'est. Quand je travaille sur un programme, je prend une feuille, je dessine sous forme d'organigramme (pour faire simple) mon programme, avec des traits à main levée et des ratures partout dès que je change un truc, j'écris mes variables dans un coin la feuille, ou en travers, ou à la verticale sur le côté quand y'a plus de place (prendre une nouvelle feuille est trop compliqué), et même si ca paraît être un bordel, c'est ORGANISE. C'est juste en vrac, mais c'est organisé et j'irai certainement plus vite qu'un gars ou une fille qui ferait ses traits bien droits, qui utiliserait une feuille pour ses variables, une autre pour un organigramme etc, qui mettrait des couleurs et qui recommencerait sur une autre feuille dès qu'il faudrait changer quelque chose. Bon ça c'est fait.
Donc pour en revenir aux gens avec qui je travaille, ça se voit ceux qui veulent directement commencer à taper des lignes de code sans savoir ce que ça va donner, ou ceux qui vérifient rien et qui s'obstinent à envoyer leur programme dans l'automate dès qu'il on tapé leur dernière ligne de code et constater que ça marche pas. Et accessoirement ceux qui font tourner leur cycle de vérin et de moteur pendant 10mn pendant qu'ils réfléchissent à pourquoi ça marche pas, pour le plus grand bonheur de tout le monde.
Bref j'observe tout ça pour bien comprendre ce qu'il ne faut pas faire, et ce qu'il faut faire (parce que bon y'en a quand même qui ont de bonnes idées, enfin surtout le formateur en général) Et peut-être aussi plus ou moins consciemment pour voir les erreurs que font les gens et ce que je pourrait leur conseiller de changer pour les aider.
Dans un registre plus réaliste, les discutions des gens sur ce qui est censé être l'aboutissement de cette formation me ramènent parfois à la réalité. Beaucoup des gens ont déjà travaillé dans ce domaine et parlent du milieu professionnel, et j'y comprend rien, ils parlent de bureau d'étude, de leurs expériences "Moi ce que je préfère dans tout ça c'est le process" mais c'est quoi le process ? c'est pas dans la doc du logiciel de programmation, ca veut dire quoi ? c'est un mot "du métier" c'est un mot que t'apprends quand t'as arpenté différents boulots, quand t'as  postulé et obtenus différents stages avec différents patrons, toute cette merde. Moi, comme tout le monde à terme, je dois trouver un stage pour la fin de l'année, c'est une condition absolue pour l'obtention du diplôme, va falloir que je cherche, et ça c'est pas marrant du tout, ça a plus rien à voir avec le jeu qu'est la programmation, et ça me fait vraiment chier. J'ai entendu dire que certains font plusieurs formations à la suite parce qu'ils trouvent pas de débouchés, ça pourrait être intéressant, je fais ma formation pendant 1 an, et puis je pars sur une autre dans un domaine proche, nourrit, logé, et payé 339€ par mois, c'est cool. J'ai entendu certains dire "Bon moi ce week end j'envoie mes lettres" genre t'as trouvé 50 adresses d'entreprises qui cherchent un automaticien débutant ? c'est quoi la barre ? Jsuis vraiment loin de tout ça, et ça va être la même merde, mais au moins pendant 1 an j'aurais fait un truc cool et je pourrai recommencer l'année prochaine. Profitons.

Publicité
Publicité
Commentaires
C
Mais c'est joli les couleurs sur un organigramme!<br /> (Je sais que tu pensais à moi en écrivant ça)
Répondre
Publicité
Publicité