Quel est le code dont vous êtes le plus fier ?
Pourquoi l'avez-vous écrit ? Et pourquoi vous a-t-il donné autant de satisfaction ?

Le , par Gordon Fowler

0PARTAGES

7  3 
Récemment, un ami développeur me confiait à la terrasse d'un café la fierté qu'il avait ressenti d'avoir réalisé son premier code avec sa fille.

Le programme n'avait rien de complexe ni de révolutionnaire, mais de voir son enfant créer une mini-application (un jeu très basique en Java) lui avait procuré une joie immense et beaucoup plus de satisfaction que lors de ses habituelles réalisations complexes et sur mesure pour des services financiers ou des opérations de reportings de grand envergure.

Cette petite anecdote montre bien que le développement n'est pas uniquement affaire de complexité ou de performance du code.

Souvent, la fierté vient d'une réussite modeste (comme un premier code fait tout seul), commune mais difficile (comme tenir un délai) ou de la « beauté » (forcément subjective) du résultat.

Un membre de la rédaction de Développez (Idelways pour ne pas le citer) expliquait ainsi que le code dont il était le plus fière était « un middleware fait pour assurer l’interopérabilité entre deux systèmes de gestion d'un parc de réparation radicalement différents, mais qui devaient interagir à tout prix. C'était super car ça n'a pris après refactoring qu'une table de correspondance et 20 lignes de code. C'était élégant, efficace et ça pouvait être lu en un seul écran ».

Source de fierté professionnelle supplémentaire, cette solution est en production, sans faillir, depuis bientôt 5 ans.

Quelquefois, la fierté vient du fait d'être arrivé à dépasser les contraintes techniques, comme les limitations du réseau. Et de le faire dans des délais courts.

« Le code source dont je suis le plus fier portait sur l’implémentation d’une méthode de décompression/compression des transactions d’un web service développé en C#. Après pas mal de recherches, nous avons décidé d’utiliser la bibliothèque C # open source CsharpZipLib qui a permis d’implémenter cela assez rapidement », raconte Hinault Romaric, lui aussi membre de la rédaction de Développez. « Ce code a été écrit dans le cadre du développement d’un service web dont les données devaient être échangées sous un format XML. La quantité de données transmises dans une requête était parfois très importante, et on avait des temps de réponse assez longs et une surcharge assez importante de la bande passante. Le résultat a été très satisfaisant. Avec les très bas débits que nous avions dans cette sous région du Cameroun, c'était un facteur très important pour la réussite du projet ».

Trois exemples parmi d'autres qui rappellent aussi que le métier de développeur possède un avantage sur beaucoup d'autres : il est affaire de créativité.

Et par conséquent, de fiertés potentielles.

Et vous, quel est le code dont vous êtes le plus fier ? Dans quel cadre l'avez-vous écrit ? Et pourquoi vous a-t-il donné autant de satisfaction ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de GreatTux
Membre actif https://www.developpez.com
Le 01/06/2011 à 21:14
Le code de la route. Premier coup.
29  0 
Avatar de Aiekick
Membre extrêmement actif https://www.developpez.com
Le 01/06/2011 à 16:31
moi le code dont je suis le plus fier c'est mon premier "hello world"

Je n'ai plus quitté ce "world" ^^
10  1 
Avatar de jpelaho
Membre confirmé https://www.developpez.com
Le 01/06/2011 à 14:46
On ressent toujours beaucoup de fierté quand on réalise un code :
- Qui marche
- Qui est utilisé par beaucoup de personnes
- Qui travaille sur une volumétrie importante de données
- Qui optimise le temps de travail des utilisateurs.

C’est ce que j’ai ressenti lors du développement d’un logiciel de calcul de la paie dans une assez grosse société (plus de 5000 employés)
7  1 
Avatar de pseudocode
Rédacteur https://www.developpez.com
Le 01/06/2011 à 19:48
Le 1er code dont je garde souvenir c'est du basic TO7, et ca déplacait une chenille horizontalement sur l'ecran.
Code : Sélectionner tout
1
2
3
4
5
6
10 CLS
20 FOR i = 1 TO 30
30 LOCATE i,1
40 PRINT " ooooO"
50 BEEP
60 NEXT i
Par la suite, en suivant les époques, je garde en mémoire des jeux style "aigle d'or" en basic CPC/GFA, des démos en asm68000, et un raytracer en C.

Ensuite, j'ai vraiment commencé à programmer "efficacement" et la notion de fierté a quelque peu disparue, remplacée par la satisfaction du devoir accompli.
6  0 
Avatar de Rayek
Modérateur https://www.developpez.com
Le 01/06/2011 à 16:37
Cela ne sera pas le code, mais les codes que je fournis parfois pour aider certain qui sont bloqués sur ces mêmes forums et qui nous gratifie de remerciement en retour.
6  1 
Avatar de el_slapper
Expert éminent sénior https://www.developpez.com
Le 01/06/2011 à 16:07
un outil de reformatage d'enregistrements. Rien de palpitant, hein? 18 flux en entrée, 18 flux en sortie, une spec qui dit "si telle valeur en entrée, mettre telle valeur en sortie". Rien de palpitant?

Sauf que la manière dont on m'a demandé de le faire, elle, sortait de l'ordinaire :

"_Slap, on a un problème. Il ya un programme qu'on a oublié de faire. On l'avait chiffré à 10 jours. Manque de pot, ça doit tourner dans deux jours.
_C'est quoi?
_Il faut retransformer les données du nouveau format vers l'ancien. Parceque les DOMTOM ne migrent pas et attendent l'ancien format, encore et toujours. On a 18 flux avec 18 formats différents. Mais bon, si tu peux faire les 3 flux principaux en 2 jours, on survivra.
_En faire 3? L'un après l'autre? En 2 jours? Impossible!
_Il le faut, pourtant!
_J'insiste, c'est impossible. Par contre, faire les 18 d'un coup avec mutualisation des traitements, ça, c'est possible.
_Euh, tu est sur?
_C'est notre seule chance.
_Bon, de toutes façons, on a personne d'autre, on est obligés de te faire confiance."

Et ça a marché. Bon, j'ai du violer quelques règles. Notemment, j'ai mis le référentiel de définition des formats de flux en dur dans le programme, tout simplement parcequ'en 2 jours, je n'aurais même pas eu le temps de faire la paperasserie pour demander la mise en intégration du nouveau référentiel(je ne parle même pas de la prod), alors qu'on m'autorisait à livrer le programme (et son script d'execution) en urgence.

Mais, à ma grande surprise, c'est un des codes les plus propres et les plus lisibles que j'ai eu l'occasion de livrer. Semble-t-il, sous la pression, j'ai été forçé de bosser bien.
4  1 
Avatar de istace.emmanuel
Membre actif https://www.developpez.com
Le 02/06/2011 à 18:28
en première année d'info de gestion, premier examen de procédural en C.
Il fallait faire un programme de gestion de contacts clients. Ai du recommencer le projet 3jours avant la livraison et ai réussi a faire un vrai moteur de bdd avec :
- des hashmap en plaintext
- un interpréteur de commande
- multi session
- multi db
- système de queue sur les requête
- système modulaire et communication via des pipes
- schema des tables modifiables
- requête dans un langage proche du SQL
- Gestion dynamique de la mémoire via un mini garbage collector home made
bref, sur les 3 jours ai dormis a peine quelques heures et ai ecrit les dernières lignes de code 1H avant l'examen.

Quand je l'ai rendu le prof m'a dis :
"C'est un application professionnel, tout a fait acceptable en entreprise, tu me rend ça en 3éme avec une IHM graphique et non en CLI et tu as une grande distinction sur ton mémoire" et j’étaie alors seulement en 1ére.

J'ai fait des tests après, je pouvais monter jusqu’à 300Go de données avant de "planter".(les requêtes devenait beaucoup trop long) Niveau nombre de requête ai pas réussi a le mettre a genoux sur un quad core a 4Ghz et 4go de ram DDR3.

Je m'en souviendrai encore dans 30ans je pense !
3  0 
Avatar de Paul TOTH
Expert éminent sénior https://www.developpez.com
Le 06/06/2011 à 11:47
moi je suis très fier d'avoir inventé un portal engine...bon c'était pas une nouveauté - même à l'époque - mais je ne savais pas que ça existait et je l'ai réinventé

pour la petite histoire, je codais en Turbo Pascal un moteur 3D software (avant l'avènement des cartes 3D) et j'étais aux toilettes à regarder les murs quand soudain il m'est apparu que le couloir n'était visible qu'à travers la porte ! il était donc totalement inutile d'en faire le rendu si la porte n'était pas visible à l'écran ! de même il fallait que la porte donnant sur la cuisine soit visible à travers cette porte pour devoir faire le rendu de la cuisine !

un petit coin, une grande idée

4  1 
Avatar de shadowmoon
Membre émérite https://www.developpez.com
Le 01/09/2015 à 10:01
Citation Envoyé par Saverok Voir le message

savoir "quand quelqu'un modifie une donnée" est une information extrêmement importance pour l'analyse d'un bug ou d'une situation
...
Du coup, avoir l'historique de la modification de la donnée prend tout son sens.
Je suis d'accord avec toi Saverok sur l'utilité de l'historisation des modifications des données. Savoir qui a fait quoi et à quel moment est en effet important en cas de soucis.

Par contre

Citation Envoyé par chanyslas Voir le message

En ce moment, je code un logger d'activités Back/Front, pour que les collaborateurs de notre client puissent se dénoncer les uns les autres et se renvoyer la balle des responsabilités
...
Sur ce point précis je comprends chanyslas. A mon avis ce n'est pas normal que tous les employés aient accès à ces données, c'est une "porte ouverte" à la délation et autres "coup-bas".

Je pense que seuls les responsables / chefs / gestionnaires ... d'équipe / de projet / de production ... devraient être en mesure de consulter ces données.
3  0 
Avatar de Hellwing
Membre chevronné https://www.developpez.com
Le 01/06/2011 à 14:45
Le code dont je suis le plus fier est une feuille de style XSL-FO particulièrement complexe transformant un flux XML organisé de manière incompréhensible (et indépendant de ma volonté)

Le document PDF qui en résultait devait afficher des articles (avec photo, caractéristiques, etc.) triés par famille/sous-famille sous forme d'un damier de 8 cases de large, le tout avec une version archaïque de FOP (0.92, je crois).

La demande initiale étant particulièrement complexe, je suis fier d'avoir réussi à atteindre les objectifs en un seul mois, compte tenu des faibles outils à ma disposition.
2  0 
Contacter le responsable de la rubrique Accueil

Partenaire : Hébergement Web