Article de fond

Annonce : Summer break();

2008-07-17
Un petit billet pour vous annoncer que le site sera en vacances jusqu'en septembre. Ma boite mail reste cependant à l'écoute de vos messages d'erreur et autres perles de vos collègues ou prédécesseurs. Gardez l'oeil ouvert donc, (surtout sur le stagiaire d'été) et passez de bonnes vacances.

Réalisez votre propre index partitionné (T)

2008-07-08
C'était un jour plutôt calme pour Levi.C. Sa société avait des équipes très compétentes, de bonnes méthodes de développement et des procédures de tests très sérieuses. Les appels au support technique étaient assez rares et à vrai dire, il commençait à s'ennuyer. Par chance, il eut le plaisir de recevoir un appel d'un de ses clients favoris.

Il serait bon de s’y pencher cet été

2008-07-03
Les Framework d'ORM modernes sont sans conteste un grand progrès dans le monde du développement logiciel : laisser le système gérer correctement les interactions avec la base de données au lieu les coder soi-même (mal) à coup de copier coller rébarbatifs. Avant l'arrivée de solutions comme Hibernate, soit on faisait le mapping manuellement classe par classe, champ par champ, soit on passait par un Framework maison. Un bienfaiteur anonyme nous envoie le mail que tous les développeurs de sa société ont reçu.

Pas d'étiquette (T)

2008-07-01
En tant que "développeur débutant", Robert B. a du endurer comme beaucoup d'entre nous au début de nos carrières. Il était responsable de tâches techniques comme faire le café, acheter les sandwiches, commander les câbles d'imprimantes et envoyer les disques de mise à jour aux clients. Robert travaillait dans une société Britannique en plein essor qui développait un logiciel de gestion de flotte de voitures. Leurs clients allaient de la grosse société de leasing au magasin de tondeuse à gazon.

Nous avons pensé à tout

2008-06-26
Il y a quelques années de cela, la société de Thomas décida de déplacer leur salle informatique dans un datacenter. Il visitèrent donc un tout nouveau bâtiment en cours de construction et, puisque leur société possédait beaucoup de clients, les hébergeurs leur déroulèrent le tapis rouge et se préparèrent à leur en mettre plein la vue.

Annonce : Stickers officiels disponibles

2008-06-23
Vous aviez le site, désormais vous aurez le sticker ! Alex m'a envoyé ce week end les stickers officiel du site. Chaque personne qui verra son article publié recevra chez lui un superbe sticker qui permettra aux collègues de savoir qui les a balancé. Ils sont fait en vinyle ce qui permet de les retirer d'une seule pièce, et n'ont pas de super extra colle ce qui les rend possible à enlever quelque soit la surface sur laquelle ils sont collés.

Comme sur des roulettes...

2008-06-20
Le bonheur des recettes utilisateur. Ces jours de test intensif sur des fonctionnalités qui marchaient la veille mais se plantent lamentablement devant le client. La plupart du temps, c'est à ce moment que l'on se rend compte que ce qu'on a développé ne correspond pas aux attentes du clients (cf phase 5 du cycle en v). Stephen nous offre un exemple d'échec de recette utilisateur en léger décalage avec nos habitudes éditoriales, j'ai hésité à le publier mais finalement l'histoire qui n'est pas vraiment un WTF reste une anecdote amusante.

L'Expert Excel

2008-06-19
J'ai toujours beaucoup aimé les gens qui tapent sur Microsoft de manière autant primaire qu'arbitraire. D'accord, tout n'est pas parfait. Leur stratégie commerciale est parfois agressive et à contre courant des pratiques de la communauté du monde libre. Je ne travaille plus sur des technologies Microsoft aujourd'hui mais j'avoue avoir bien apprécié la plateforme .net, qui, quoi que l'on puisse en penser, est un énorme travail réalisé par les développeurs. Je me rappelle de la formation que j'ai suivie récemment dans une société concurrente à Microsoft qui se payait le luxe de les critiquer ouvertement... en utilisant office, xp, et Sql Serveur comme outils pour la formation.  Ishai nous offre une histoire bien sympathique sur un cas qu'il a du traiter lorsqu'il travaillait en tant qu'ingénieur support chez le grand méchant Microsoft.

Mentors, the Freshmaker (T)

2008-06-18
Il y a quelques années, Chris Roberts débutait sa carrière dans le monde du développement et, comme tout bon débutant, Chris trouva un mentor pour l'assister. Le mentor de Chris était suffisamment généreux pour lui montrer le nouveau projet flambant neuf qu'il venait tout juste de terminer pour l'un de ses clients : un site ASP pour afficher et maintenir un des commentaires sur des restaurants d’une zone métropolitaine.

DBAs?! Pour quoi faire?

2008-06-11
Aujourd'hui la réponse (bien méritée) de Ralph suite à l'article sur les DBA.

Développeur versus DBA

2008-06-06
Les relations entre les DBA et les développeurs m'ont toujours amusé. Bien que les deux services soient souvent opposés, les deux métiers sont interdépendants et les erreurs des uns impacteront pour longtemps le travail des autres. D'un coté les DBA redoutent les développeurs : ils ne comprennent pas comment bien utiliser leurs bases de données, ils les considèrent comme une réelle menace pour la sécurité du SGBDR et donc pour la qualité de leur sommeil. A l'inverse, les développeurs eux méprisent souvent les DBA : comment diable peut-on se spécialiser autant dans un domaine si minuscule comparé à l’art si vaste et si noble qu'est la programmation. En somme, bien que leurs intérêts divergent, chacun est condamné à travailler avec l'autre. 

Le Gros Bouton Rouge (T)

2008-06-05
La journée "Amène ton enfant au travail" ne m'a jamais emballé. A moins que tu sois quelqu’un de cool comme Tonhy Hawk ou Batman, montrer aux enfants la réalité du monde du travail me semble tout simplement cruel.

Web 0.1 (T)

2008-06-04
Une des règles que l'on s'efforce de suivre sur le site c'est celle des "exemples professionnels seulement". C'est en effet important que les débutants apprennent. Nous considérons donc les travaux scolaires, forums de développement et les programmes faits à la maison comme "hors limite" pour les WTF. Mais bon, les règles sont faites pour être brisées, spécialement quand on nous présente un site web conçu avec la technique que Justin a découvert. C'est appelé brochure-sur-imprimante-sur-photo-sur-imprimante-sur-scan-sur-web (ou, Web 0.1)

Configuration simplifiée (T)

2008-06-03
Alors que Dan ne travaille pas pour eux, il avait eu l'occasion de voir leur code source. Qui sont-ils? Seulement les plus gros et les meilleurs dans toute l'Europe quand on parle de gestion documentaire !

La porte hantée (T)

2008-05-30
Tout allait bien pour Jeremy. Il venait de changer de job avec une équipe sympa dans un bureau tout récemment remis à neuf. Son cube était à la parfaite distance entre l'ascenseur, les toilettes et le distributeur. Son chef le respectait, ses collègues n'hésitaient pas à l'aider, et son travail était véritablement plaisant.

L'Extensibilité Ultime selon Tom Kyte

2008-05-29
Je suis chez Oracle pendant une quinzaine de jours (première fois que je vois une machine à café avec une progress bar...). J'en profite donc pour publier la traduction d'un billet que nous avait envoyé Thomas Kyte, un vice président d'Oracle Corporation. Tom gère un forum technique très connu : askTom, il nous parle d'un post qu'il a reçu.

On optimisera plus tard (T)

2008-05-28
Les règles de l'optimisation logicielle sont simples. Règle 1 : N'optimise pas. Règle 2 (réservé aux experts) N'optimise pas pour l'instant.

Le facteur motivant (T)

2008-05-27
La plupart des gens ont des difficultés à comprendre pourquoi les PDG sont autant payés. Ils ne voient pas qu’en vérité c'est un travail très difficile, requérant un dévouement ultime à la société. Ils ne réalisent pas que un PDG n'a pas le pouvoir de changer directement les choses et qu'il doit compter sur ses subordonnés pour réaliser les objectifs de l'entreprise. Ils ne comprennent pas que seul un communiquant née, un champion de la motivation est taillé pour ce type de job. D'un autre coté, quand on reçoit ce genre de mail, on les comprend :

Gestion assurée des erreurs (T)

2008-05-26
Rich Leik fut envoyé dans une grande compagnie d'assurance comme consultant pour les aider à faire face aux bugs dans le noyau de leur application. Un des problèmes principaux que rencontra Rich c'était  le peu d'informations qu'avait le support  sur les cas qu'il devait résoudre : l'application ne fournissait pas de log et tous les messages d'erreur affichaient simplement "une erreur est apparue. Veuillez réessayer".

Mickael Knight sur une mission critique (T)

2008-05-23
Christian P se sentait plutôt mal. Sa société venait d'obtenir un contrat de maintenance d'une application (faite maison) pour une société financière assez importante. Non seulement six développeurs de cette société étaient licenciés sur le champ, mais les trois autres restant devaient assurer la transition avec la nouvelle équipe avant d'être licenciés. Pour son premier jour, Christian s'était préparé à des réactions de colère, de tristesse, de désespoir et même de haine. Mais rien de tout ça. Bien au contraire, les développeurs sur le départ semblaient tous soulagés.

table StaffDirectory (T)

2008-05-22
Utilisée en production, l'application web de gestion du personnel gère plus de  600 employés. L'idée derrière la table staffDirectory c'est l'expansionabilité. En mettant tout dans une seule table, on peut faire des modifications dans la structure de la base sans se soucier des conséquences ! La table est structurée de cette façon :

WTF de Blake Ross

2008-05-20
Aujourd'hui, une traduction d'un billet que Blake Ross nous a envoyé en 2006.

Haut les mains (T)

2008-05-16
Responsable des développements. Ouais, c’était un titre assez pompeux mais Jamie y était préparé. Il avait passé des années en tant que développeur et savait que c’était le bon moment pour prendre un poste de management. En plus, l’équipe qu’il allait gérer était plutôt petite et il pourrait toujours participer aux développements si nécessaire. L’offre était parfaite et ainsi, Jamie devint un manageur.

Plutôt facile (T)

2008-05-15
"Ca devrait être plutôt facile," déclara naïvement David M, « regardes simplement dans la table Agent_ProductLines, d’accord?"

Test Driven Marketing (T)

2008-05-13
1999 fut une grosse année pour les publications Harvard Business School. Dans les années passées, ils avaient vu leur "business model" - vente de livres, journaux, articles, études de cas, et autres - se transformer de vente sur catalogue papier vers une boutique en ligne, pour aujourd'hui nécessiter une refonte totale du site web.

Sauvegarde impeccable (T)

2008-04-30
Loi de Murphy 198§44 : Plus une solution de backup est compliquée, moins il est probable qu’elle soit utilisée.

Code pin oublié? on vous le Post

2008-04-28
Le billet publié sur la poste Canadienne, semble avoir fait des émules. C’est Alexis qui nous envoie un WTF sur la poste française.

Le robot de la peur (T)

2008-04-25
Josh Breckman travaillait pour une entreprise qui avait obtenu un contrat pour le développement d’un CMS (content management system, ou système de gestion de contenu) pour le site web d'une agence gouvernementale plutôt importante. Le gros du projet constituait à développer le CMS pour que les employés soient capables de construire et de maintenir le contenu de leur site.

Le prix du non-sens (T)

2008-04-18
Quelques années plus tôt, Pete, un programmeur astucieux, développa une application qui suivait les commissions pour les transactions commerciales. Pete a quitté depuis longtemps la société , son rôle ayant été repris par Andy.

La boucle assurance (T)

2008-04-17
"Alors que pensez-vous de mon offre" demanda le recruteur de Ben. Il y avait réfléchi depuis quelque temps. Ce n'était pas exactement ce qu'il cherchait mais bon, il était sans emploi depuis novembre 89 - presque trois mois entiers -  et pensa qu'il devrait probablement se remettre aux choses sérieuses. Il dit au recruteur qu'il souhaiterait parler au client et lui demanda de programmer un rendez-vous pour la semaine suivante."

GetDroitUtilisateur(T)

2008-04-14
Tim Cartwright nous étonne une fois de plus ...

Keep on tracking me

2008-04-09
Hervé, redoutable joueur de bowling avec qui j'ai le plaisir de travailler depuis quelques mois m'a fait part d'une histoire qu'il a vécue alors qu'il travaillait pour une grande SSII française.

Des questions?

2008-04-03
Adrien a rejoint mon équipe en tant que prestataire depuis décembre 2007. La commerciale de sa société passe régulièrement nous voir, autant pour le rencontrer que pour garder un contact avec ses clients. Début février, pour sa visite mensuelle, elle apporta aux membres de notre équipe des calendriers et des sous-mains. J'utilise encore beaucoup le papier et crayon dans mon travail au quotidien, je me réjouissais donc de ce présent qui allait m'être très utile.

Hacking du jProjet (T)

2008-04-02
Steve reçut un appel frénétique d'un client, le suppliant de l'aider à optimiser leur plus gros système de gestion des commandes clients. En production depuis moins d'un an, le système tournait aussi rapidement qu'une tortue en fin de vie, même après avoir surdimensionné le hardware. Rien de tout ça n'avait surpris Steve; après tout, c'était un jProjet.

Les flocons de l'angoisse (T)

2008-04-01
SathNess partage avec nous une histoire intéressante.

Un faux graphiste

2008-03-28
Pour notre deuxième WTF français,Jeremy nous raconte une histoire vécue depuis peu.

Qui div mieux? (T)

2008-03-28
Petite traduction d'un article de 2006, comme demandé, j'ai mis dans le titre des articles un (T) lorsque l'article est traduit d'une édition étrangère.

Rejeter l'injection (T)

2008-03-27
La société de Matthias Winkelmann décida de prendre la route (piégée) de l'outsourcing et délocalisa une partie des travaux de développement dans quelques sociétés offshore. Il s'avéra que le prix horaire pour certains développeurs offshore étaient deux fois moindre que ce que coûtaient les développeurs "maisons". Les managers firent leurs calculs et découvrirent qu'ils pouvaient optimiser leurs profits.

ITAPPMONROBOT (T)

2008-03-25
Au début du 21ème siècle, l'infrastructure globale des serveurs de la société Initrode commençait à montrer des fissures. Tous ceux qui avaient pénétré dans la salle serveur comprenaient immédiatement que la croissance de l'infrastructure avait été incontrôlée. Des serveurs en rack mis à coté des stations de travail reconditionnées, connectés avec des câbles à peine sécurisés. Clairement quelqu'un avait fait un effort pour nettoyer la pièce mais s'était arrêté à mi-chemin.

Annonce : ouverture d'édition française !

2008-03-24
C'est avec plaisir que nous lançons Alex et moi la version francophone du Daily WTF. Pour les habitués de la Version US, vous pourrez découvrir ou redécouvrir (fautes d'orthographe et erreurs de traduction en plus) une sélection des meilleurs articles publiés ces deux dernières années.

Mon plantage "Favoris" (T)

2008-03-24
Assez fréquemment, Bob B. observa que le site d'e-commerce de sa société se plantait méchamment. Personne n'avait d'indices sur la cause du problème mais tout le monde savait comment le régler. Redémarrer aussi bien SQL Server que IIS et voilà, dans la minute, le site était en fonctionnement.

Ficher Price API (T)

2008-03-21
Ryan H était plutôt excité de commencer son nouveau travail en tant que développeur. Hélas, son excitation ne fut que diminuer après la prise effective de son poste. Cela ne se transforma pas en appréhension, déception ou regret : simplement en rien. Il ne ressentait plus rien. On peut s'attendre à ce genre d'apathie quand on confie à quelqu'un le travail que Ryan s'est vu attribuer : absolument rien. Le travail quotidien de Ryan était de s'assoir et de patiemment attendre que la société daigne débuter un projet.

Sécurité par l'honneur

2008-03-18
Après quelques années dans une grande entreprise sans âme, "Henry L." avait besoin de changement. Comme ses compétences étaient très recherchées, il n'eut aucun problème à aligner les entretiens avec d'autres grandes entreprises sans âmes. Mais il avait muri, fatigué de travailler dans ces grandes entreprises, il commença à chercher un job dans une boite plus petite.

IsDevelopmentMachine()

2008-03-17
JeBe à découvert une méthode plutôt innovante pour déterminer si le code est exécuté sur une machine de production ou sur le poste de développement.

Le quadritri

2008-03-16
Stephan Mueller était heureux d'apprendre que son collègue, le "spécialiste" avait finalement quitté la société. Son collègue avait gagné son titre honorifique grâce son étrange pouvoir de transformer tout ce qu'il touchait en un ramassis de fichiers source inmaintenable et à peine compilable : Les méthodes enflaient de milliers de lignes de code, les clauses "case" s'embranchaient sur dix niveaux, etc.

une fonction pour démissioner.

2008-03-06
C'est assez facile de comprendre comment Mika Hartnagel se retrouva dans le dilemme du "devrais-je démissionner après trois jours?". Qui aurait deviné qu'un seul point dans la description du travail -- "Utiliser de l'interopérabilité Excel" -- cachait en fait une architecture entière d'un système : un Horrible amalgame de feuilles Excel interagissant avec c# qui communique avec d'autres fichiers Excel. Qui aurait pu croire que tous les autres points -- de" architecture multi couche utilisant le remoting" au "Automatisation/intégration de process métier" -- étaient en fait des fonctionnalités que la société souhaitait voir êtres concrétisées dans un futur vague.

Réinventer la roue carré

2008-03-06
De temps en temps, il me plait de vous présenter une ligne de code représentative d'une application titanesque. Des centaines de fichiers comportant des centaines de millier de lignes de code résumés en une seule ligne. La ligne d'aujourd'hui nous vient d'une application produite par une équipe que Marcelo à récemment rejoint, et qui est la définition de la classe de base de tous les objets du système ...

checkUniverseIntegrity()

2008-03-05
Petit exemple de code Basic très sympathique (Merci Ben), si vous montez le son de vos enceintes vous pourrez l'entendre crier "simplifies moi" :

Fonction à 2000€

2008-03-05
Je me suis souvent demandé quel type de ligne de code on obtenait quand on payait un consultant à 205€ de l'heure. Je pensais que ce ne serait pas un code incroyable . Mais maintenant que j'ai effectivement vu (merci Will Nesbitt) le code produit par un consultant à 2000€ d'IBM, je peux dire que c'est effectivement grandiose... mais pas dans le sens que je l'espérais.

Trop dur pour toi .net

2008-03-05
Michelle fût engagée par une société éditrice de logiciel pour "nettoyer" une application ASP.net qu'ils avaient développés/maintenus pendant les quatre années passées. Beaucoup des anciens membres de l'équipe étaient délogés non sans mal de leur paisible eden appelé VB6 pour utiliser de nouveaux concept démoniaque comme l'"Objet", aussi je vous laisse imaginer l'état du code. Rien n'est unique concernant la qualité (ou la non qualité) de ce magnifique morceau de code, mais ce sont les commentaires accompagnant le code qui inspira Michelle à me l'envoyer, er moi à le poster.