J'ai récemment eu le bonheur de reprendre un site Web (basé sur Joomla!, on commence mal) développé par une prestataire freelance. Après deux jours d'exploration, mes plus belles découvertes :
– Tout le code dans une seule fonction par classe : check.
– Aucun objet, aucune fonction en dehors du strict nécessaire pour Joomla! : check.
– Des boucles de plus de 500 lignes et un usage sur-abusif du
continue et
break : check.
– Des conditions TOUTES formées sur le modèle :
if (quelque chose) { // RIEN } else { faire_un_truc(); } : check.
– Une sanitization absente, tout pris dans
$_REQUEST : check.
– Toutes les requêtes SQL en dur dans le code, aucune requête préparée même celles répétées des milliers de fois : check.
– À peu près 200 tables pour une application, le tout sans AUCUNE contrainte d'intégrité (hormis un bête
UNIQUE sur l'ID de chaque table) : check.
– Utiliser l'obsolète l'API
mysql_ à l'ère de PDO : check.
Pour toutes ces raisons, plus celles à suivre : PEBKAC.
Aujourd'hui, j'arrive tôt à l'entreprise ou je suis ingénieur système et sécurité, et je découvre qu'un collègue a eu l'ingéniosité de changer le câble reliant notre firewall au routeur. Par conséquent, plus de connexion Internet.
je me penche sur la question - sans connaître les modifications effectuées - quand un utilisateur arrive et me dit : "Internet ne marche pas !". Je réponds que je suis entrain de m'en occuper, et il ajoute : "Et le mail marche au moins ?". Pour rigoler, je lui dis : "Oui t?inquiète pas, la Poste s'en charge !".
Et il m'a répondu : "Ah cool, merci !". PEBKAC.
Un de mes amis s'auto-proclamant expert de l'informatique depuis ses 14 ans, me soutient dur comme fer que Windows Trust n'est pas un Windows XP allégé, ou modifié, mais qu'il a été développé à partir d'un noyau Linux modifié, afin de ressembler à Windows.
Ceci afin d'avoir un système très protégé, et un hors du commun en terme de programmation. PEBKAC.
Ce matin, à la hotline :
« Bonjour, je vous appelle parce-que mon PC ne fonctionne pas. Il y a marqué "Appuyez sur Ctrl+Alt+Suppr" et je ne peux pas taper mon mot de passe.
– Je vois, appuyez sur ces trois touches en même temps, s'il vous plaît.
– Ah d'accord… Ça marche ! Merci, au revoir ! »
PEBKAC.
Je surprends ma mère en train d'essayer de brancher sa clé USB sur le retour, quand je lui ai demandé ce qu'elle faisait : "Je veux mettre internet sur la clé USB, je dois montrer certains sites à ta tante cette après-midi, mais comme elle n'a pas Internet chez elle...". PEBKAC.
Un prof' a voulu nous projeter une vidéo à l'aide d'un rétroprojecteur. Ne trouvant pas comment le connecter, il a posé son ordinateur sur la vitre à transparents, et nous a annoncé qu'il s'agissait certainement d'un nouveau modèle de projecteur sans fil.
Il a ensuite attendu de longues minutes que "le matériel soit détecté et que le pilote s'installe". PEBKAC.
Il y a quelques temps, j'ai eu confirmation que l'administration de la faculté était quelque peu laborieuse.
Devant utiliser le logiciel WinDesign lors d'un cours, on nous avait bien évidemment reservé une salle Linux. Le prof' étant allé demander un changement de salle, nous sommes retrouvés dans une salle Windows, où nous n'avions pas les droits pour installer ledit logiciel. PEBKAC.
Chaque fois que je regarde mon boss utiliser l'ordinateur pour me montrer quelque chose, je frôle l'ulcère.
En effet, il ferme systématiquement ses fenêtres, même lorsqu'un simple retour en arrière aurait suffi (sur l'Explorateur Windows, sur le Web, et même dans sa boîte mail...).
Même chose lorsqu'il veut lancer une autre application : il ferme l'actuelle, ouvre la nouvelle, ferme, puis ouvre de nouveau la première. PEBKAC.
Aujourd'hui à la faculté, alors que notre enseignante de Java/UML démarrait son ordinateur portable sous Ubuntu, un camarade nous a lancé, à un ami et à moi-même : "Oh mais, Ubuntu ça ressemble vachement à Linux en fait !".
Face à nos sourires, il a timidement répondu : "Ah... Mais en fait, c'est une adaptation de Linux pour Windows ?". PEBKAC.
Je vois un collègue faire de nombreux aller-retours entre son bureau et le local de l'imprimante partagée. Chaque fois il revient les mains vides, et chaque fois plus énervé.
Je lui demande ce qui ne va pas : « Je lance une impression, mais elle ne veut pas sortir ! J'ai déjà fait au moins dix essais ! C'est encore le réseau qui déconne ! ».
Le réseau ? Non, le collègue. Il regardait vite fait si son papier était sorti, puis, voyant que ce n'était pas le cas, retournait relancer son impression. Et le voyant qui clignote pour signaler qu'il n'y avait pas de papier dans le bac ? « Ça, ça ne me concerne pas ! ».
Très bien. PEBKAC.