Nitro's blog

To content | To menu | To search

Wednesday 12 September 2012

What’s wrong with sales forecasting?

Forecasting software fail at computing good forecast. A short explanation of why.

Continue reading...

Saturday 1 September 2012

Mon projet perso

Cela fait longtemps que je travaille dessus, les week-ends, dans le train, parfois le soir. 3 ans déjà je crois.

De quoi s'agit-il ? D'un algorithme de calcul de prévisions, j'y reviendrais plus en détails.

Mais pourquoi ?

La première raison est que j'ai cherché pour mon travail un logiciel ou plutôt une bibliothèque que je puisse utiliser dans le logiciel que nous développons et vendons. Le principe est dans le fond simple : à partir de données historiques sur les ventes passées, calculer une prévision des ventes futures.

De telles bibliothèques d'algorithmes existent, et nous en utilisons une, sans doute une des meilleurs. Seulement les algorithmes utilisés marchent très mal pour prévoir les ventes de produits de grande consommation.

J'avais plein d'idées sur ce qu'il fallait faire, mais sans certitude évidemment, d'autant que je ne suis pas statisticien. Il n'était pas raisonnable d'embarquer ma boite dans un projet incertain, relevant plus de la recherche que du pur développement : nous nous en somme tenu à ce qui existe.

Par ailleurs, mon boulot actuel est bien moins intellectuel qu'il ne le fût, et je manque un peu de stimuli intec'tuels.

Donc, j'ai décidé de développer moi-même ce que je ne trouvais pas sur le marché.

Alors c'est quoi ?

Concrètement, c'est une bibliothèque de programme, c'est-à-dire quelque chose qu'un développeur peut utiliser et appeler dans son programme.

C'est donc un morceau de programme, que je développe avec un outil de développement et que je teste en écrivant mes propres programmes de test.

Le principe très général est d'utiliser des informations sur des ventes passées pour deviner les ventes futures. Concrètement, les données exploitées sont :

  1. Les références à prévoir : ces références peuvent être par exemple les combinaisons article vendu x client. Ces références sont décrites par des attributs : ligne de produit, région, canal, parfum taille. Deux informations sont indispensables : les dates de début et de fin de vente des références.
  2. Les historiques de ventes : de la façon la plus générale, on va avoir des quantités vendues par jour et par référence.
  3. Des évènements : on sait que la vie est tout sauf un long fleuve tranquille et que les ventes sont perturbées par plein de choses, notamment des promotions. Il nous faut donc savoir quels événements dans le passé ont perturbé les ventes, et quels évènement déjà planifiés vont perturber les ventes futures

A partir de ces données, on va proposer des quantités (par mois, par semaine voire par jour) prévisionnelles.

La bibliothèque que je développe permet donc de décrire toutes ces données d'entrée, de spécifier ce qu'on veut comme prévisions et de lancer des gros calculs.

C'est pour quand ?

Je t'en pose des questions, moi, ami lecteur ? Ça c'est la question qu'on me pose au boulot. Là c'est pour quand ce sera prêt.

Bon. C'est en où ?

Je me suis défini environ 10 étapes majeures pour une première version. La 1ère étape est à peu près finie.

En gros, ça commence à calculouiller des choses simples. Le développement s'accélèrera à partir de cette première base solide.

But why in english ?

Bonne question. Je pars de l'idée que le sujet pourrait intéresser bien du monde (je n'exclue pas si cela fonctionne bien de commercialiser la chose). Donc in English pour le cas où quelqu'un d'autre que les 3 êtres chers qui surveillent ce blog s'intéresse à la chose.

Ohh, et puis ça vous fais pas de mal d'être obligé de lire du mauvais Anglais un peu hein.

La suite

Je vais donc régulièrement donner des nouvelles ou décrire un peu ce que je fais ici même. Je considère ça quasiment comme un journal perso de ce projet, journal auquel je donne l'accès aux intimes que ça pourrait intéresser.

Ah tiens, la définition d'un blog non ?

Friday 22 April 2011

Cloud computing is not power distribution

Cloud computing is promoted as the new revolution is moder era. It is not. It is a good, logical evolution of existing infrastructures, but in no way will have the impact on our society that electricity or even the internet have had.

Continue reading...

Tuesday 1 February 2011

Pourquoi tous mes projets sont des succès

On s'y remet avec un billet en Français, c'est quand même plus cool.

L'histoire du jour, c'est l'analyse d'une histoire de dupe, celle des succès affichés de mise en place de solutions informatiques, telles qu'on peut les lire dans la « presse spécialisée ». La presse spécialisée, tiens, ça fera l'objet d'un billet prochain, j'ai quelque short à tailler de ce côté-là.

Pourquoi une histoire de dupe alors ? C'est simple, on va faire une petite chronologie :

  1. Naissance du projet
    • Un nouveau directeur (informatique, achat, logistique, Supply Chain peu importe) est embauché pour relancer / moderniser / dynamiser. On va recruter la personne qui se sera le mieux vendu pendant les 4 heures cumulées d'entretien. Il n'y a pas d'autres façons de faire, mais ça privilégie à coup sûr la superficialité à la profondeur. Appelons-le Iznogoud, d'accord ?
    • Ce dernier, ambitieux évidemment, n'a jamais réellement occupé de poste opérationnel. En général, il a donc une vision ultra simpliste du travail, renforcée par le fait qu'ayant fait des « hautes études » de type grande école il ne doute pas et sait tout (j'en viens, hein, alors bon). Par vision simpliste, on peut résumer par : on peut tout mettre en équation, on peut optimiser la fonction, on peut tout automatiser.
    • Iznogoud va donc se lancer dans la mise en place d'un projet informatique/organisation lui permettant d'optimiser la fonction de manière spectaculaire. Il va se faire plaisir à définir les principes généraux, les bénéfices attendus, sans rentrer trop dans les détails que de toute façon il ne peut tous connaître puisqu'il vient d'arriver. Une victime un chef de projet est désigné, un jeune le plus souvent (les autres ne se font peut-être plus avoir…). Le projet commence.
  2. Mon passage préféré : la vente
    • Maintenant, on va chercher un prestataire externe, ou un éditeur de logiciel capable de fournir toutes ces fonctions merveilleuses d'automatisation et d'optimisation.
    • Comme Iznogoud est un grand et bon Vizir, il fait les choses dans les règles de l'art : cahier des charges, consultation, cabinet de conseil « change management » tout y passe. Et le cahier des charges est autant idéaliste –utopique – théorique que l'idée que s'en fait le grand chef.
    • Nous avons donc un certain nombre d'éditeurs qui vont essayer de gagner l'affaire. En mentant comme des arracheurs de dents qu'ils sont ; de toutes façons, celui qui ne met pas est exclus de la consultation car il ne répond pas aussi bien que les autres au cahier des charges
    • Le plus habile et le plus crédible est sélectionné.
  3. Déroulement du projet

  • Il est évidemment catastrophique, puisque le prestataire est incapable de fournir tout ce qu'il a promis.
  • Par ailleurs la direction de projet va manquer de pragmatisme et s'acharner à tenter de mettre en place la belle théorie de départ.
  • Quand tout va bien, les vrais utilisateurs ou experts du domaine vont être écoutés et ramener le projet vers un peu de raison.

À l'arrivée, on a une usine à gaz qui ne fait pas la moitié de ce qui a été prévu et qui était trop compliqué et qui ne fait pas bien les choses simples qui auraient pu être utiles. Mais après moult souffrances, le projet démarre quand même et est opérationnel.

C'est là que ça devient intéressant : les gens qui communiquent c'est-à-dire le prestataire / éditeur de logiciel et le Directeur Iznogoud ont tous intérêt à ce que le projet soit un grand et franc succès. C'est est donc un, avec autocongratulations, annonces et articles dans la presse pour mettre en avant les qualités du directeur les prestations du fournisseur.

Les dupes de l'histoire sont les utilisateurs, pour qui on aura dépensé bien de l'argent et de l'énergie et qu'on n'aura pas écoutés. Ils se retrouvent avec un système pénible à utiliser, lourd, peu fonctionnel et découvrent avec ébahissement à quel point tout cela fut fructueux. Mais on ne les écoute toujours pas, alors tout est pour le mieux dans le meilleur des mondes.

C'est pour ça que tous mes projets sont des succès. 

Et que j'ai parfois la nausée, mais c'est une autre histoire.

Friday 31 December 2010

First Entry!

Yet another blog

Another blog, what for ? There are so many of them, and I don't read any. So why create my own one?

Actually I have a rather negative opinion about social networking, web 2.0 and all that stuff. It seems we spend too much energy on relaying existing information and not enough to create or invent things. Do a single search in Google, and you will face tens of identical paragraphs copied in many blogs and sites, making it difficult to find what you are currently looking for. Too much information kills information.

This is especially true in the scientific or professional area. Facing a problem most of my colleagues immediately jump to Google to look for a solution. So who is really working on solutions? Of course doing so gives you a chance to avoid re-inventing things that are already known. But the cost is huge in my opinion, as the chances to go for real, innovative solutions are near zero.

My PhD professor once told me that he wanted us to do our preliminary research before any bibliography, to favor imagination and new solution. His though was that once you read papers about a given problem, you have fewer chances to imagine a brand new approach. He was definitely right.

Moreover, there is a trend to some kind of real-time information (twitter, smartphones) that is even worse. My boss never spends more than a few minutes thinking about any subject without being interrupted by a mail / phone call / SMS. What is the capacity left for thinking ahead, planning a strategy or even having any serious work done? Zero.

Blogs are also a way to express our opinions, and the Internet looks like a giant hall where everybody shouts its own opinion. So much noise. And now I'm adding my own voice to it, not because I want my opinion to be heard by millions of people, but because I need your reactions to my thoughts, I need people to discuss my opinions, to contradict me. Therefore, comments are not moderated.

First entry written, enjoy a happy new year for 2011!

Nitro.

P.S. This blog entry was written in English though we are French. So expect some mistakes or errors in our writings, sorry for that :)

 

EDIT: Typo.