All posts by admin

What is better than open source?

No one will contest that open source has become the de facto standard in successful new IT stuffs. But who cares to read the code that is given in git depositories? So what is better than open source? A concise documentation, definitely! Actually, a small example of code is even better. It is worth 1000 pages of documentation – and 106 man pages.

TL;DR

A few weeks ago, OVH gave a very interesting goody to the attendees of its Summit: a small beacon connected to SigFox, an emerging network for the Internet of Things. It looks intensely promising. It gives access to temperature and movement detection every 10 minutes anywhere under the coverage of the network, without any external energy supply and for an unlimited lapse of time compared to similar beacons depending on GSM network.

goodyAlong with the goody, a new special account is offered on RunAbove labs.

Great! Another gift!

RunaboveIoTWait. There ends all excitement: just two pair of key/password, one obviously for reading and another for writing. How one is supposed to read or write anything on the goody is mysteriously hinted by a link to the IoT tutorials.

IoTTutorialsFour articles wait deciphering. Let’s start the quest of reading whatever data is recorded by the goody through the one titled How to get data from the RunAbove IoT metrics storage.

ReadIoTApart from incomplete excerpts of code, another link is proposed to the complete documentation of the underlying standard: the official OpenTSDB documentation.

apiAlas, this last link gives access to a complete reference, an ideal source of inspiration for knowledgeable users but still frustrating for early beginners.

Hopefully, RunAbove Labs has an access to its community. On its online interface, a search of the keyword goody allows to spot a single contribution.

ComunitySearchHurray, there is the list of the metrics, the keyword to access the goody’s data. This is the kind of precious arbitrary knowledge that defies intelligence.

CommunityHelpThere is also an example of 84 lines of PHP code that suggests you are first supposed to catch the data sent by the goody by setting a callback, write it to the OVH’s Internet of Things account before reading it… In this example, different metrics are used: confusing. But those lines of code eventually give another clue for retrieving the goody’s data.

Eventually, its summaries in:

curl -u hereisyourkey:anditscorrespondingpassword \ 
   -XPOST https://opentsdb.iot.runabove.io/api/query \ 
   -d '{ 
     "start":1443052800, 
     "queries":[ 
       { 
       "metric": "ovh.goody.temperature", 
       "aggregator":"avg" 
       } 
     ] 
   }'

If only I had that at the beginning, I would have saved hours of useless guesses and your time for reading this post.

Quel certificat SSL pour un site Internet ?

Les certificats SSL existent en plusieurs saveurs :

  • auto-signé,
  • approuvé,
  • accrédité,
  • avec une certification étendue.

La première version est gratuite, encore faut-il savoir le faire ; la procédure est simple mais relativement indigeste et opaque pour le profane. Seul petit bémol, la visite d’un site Internet pourvu d’un certificat SSL auto-signé provoque l’affichage d’un message inoffensif mais peu engageant :

untrustedSSLPour épargner aux visiteurs cette étape particulièrement dissuasive, il faut l’approbation d’une autorité de certification. On en trouve à tous les prix mais, même gratuit, en choisissant l’option de base, on en a pas vraiment pour son argent ! Il vaut mieux éviter les sites où l’on fait tout en ligne, en particulier la génération de la clé secrète (qui risque de ne pas l’être…).

Le niveau suivant, le certificat SSL approuvé passe inaperçu. On sait qui l’a approuvé, mais on ignore pour qui…

verifiedSSLPour un peu plus cher, on peut faire figurer l’organisme qui a demandé un certificat accrédité. Mais pour que les visiteurs le voient, il faudra qu’il le cherchent dans les détails du certificat ; c’est très peu probable qu’ils le fassent.

Et pour avoir cette information affichée directement, avec la fameuse “barre verte” si rassurante, il faut le top des certificats SSL : celui à validation étendue :

En fait un certificat SSL d’un site Internet sert à :

  1. crypter les échanges,
  2. valider la légitimité du site.

Pour le point 1, ils se valent tous ; le certificat auto-signé, gratuit, est parfait.

Pour le point 2, cela dépend des visiteurs :

  • ceux qui comprennent comment ça marche n’auront aucun état d’âme à ajouter une “exception de sécurité” sur un certificat auto-signé,
  • la plupart des visiteurs se contenteront d’une acceptation du certificat par leur navigateur (pas de message d’alerte),
  • les plus anxieux exigeront la “barre verte” (certificat de validité étendue),
  • les plus rigoureux iront voir les détails du certificat, même avec une “barre verte”.

Pour avoir la reconnaissance automatique du navigateur ou la “barre verte”, il faut payer. Mais contrairement à une idée largement répandue, on paye pour un vrai service : le contrôle de la légitimité du site.

Même pour une reconnaissance automatique, une autorité de certification sérieuse vérifiera que le demandeur du certificat est bien celui qui contrôle légitimement le nom de domaine.

Pour un certificat de validité étendue, c’est une enquête complète qui vérifie tout (enregistrement officiel de la société, adresse, téléphone) et contacte directement le dirigeant et 2 autres personnes (demandeur et approbateur) !

Maintenant, le certificat SSL est un critère retenu par les moteurs de recherche pour favoriser la visibilité des sites qui en sont pourvus. Et avec la prise de conscience de l’importance de la protection des données privées sur Internet, on peut s’attendre à ce que cela devienne presque incontournable.

Pour être accompagné dans la mise en place d’un accès https à votre site, c’est là :

Quel langage utilisez-vous ?

P4123008Cette question, posée à un développeur, comporte plus d’un problème. A commencer par le faux sens induit par le terme langage.

Evidement, on imagine bien un développeur donner ses directives à un ordinateur de la même manière que l’on demande au barman de remplir à nouveau son verre : au moyen d’un langage. A Paris, ce serait quelque chose du genre : “un de plus !“.

Dans un langage informatique évolué, en C par exemple, en admettant que le nombre de verres soit mémorisé par une variable identifiée par la lettre c, ce serait l’instruction c++; (remarquez comme cet exemple est  limpide et ne prête pas à confusion).

Seulement voilà, l’ordinateur ne traite en réalité qu’avec deux niveaux électrique : 0 et 5V (ou moins mais quand même différent de 0) que l’on traduit, en binaire, par 0 ou 1. Converti en assembleur, par exemple pour le microprocesseur Z80, en admettant que le nombre de verre soit inférieur à 255 et mémorisé à l’emplacement de la mémoire identifié par l’adresse notée 3301h (en hexadécimal), notre exemple “un de plus !” devient quelque chose du genre :

LD A,(3301)
ADD A,01
LD (3301),A

Et pour finir, en langage machine cela devient  :
00111010 00000001 00110011 11000110 00000001 00110010 00000001 00110011

Il faut bien reconnaître que c’est nettement moins clair. Imaginez ce que cela donne pour une application un peu plu complexe que “un de plus !“…

Une langue qui n’est pas parlée s’appelle une langue morte mais on peut néanmoins s’y exercer par des versions ou des thèmes. Que dire alors d’une langue qui n’est même pas parlée et avec laquelle on ne peut faire que des thèmes ?

Parler de langage informatique est donc un abus de langage. En réalité, il faut parler de jeu d’instructions ; c’est beaucoup mieux et en plus, avec jeu, c’est nettement plus ludique. Les informaticiens sont des joueurs, c’est bien connu.

Le travail d’un développeur consiste à traduire une action plus ou moins complexe en une série d’instructions élémentaires. Elémentaire au sens où chaque instruction correspond à une action toute simple. Exécutées méthodiquement et très rapidement par un ordinateur, on obtiendra avec cette série d’instructions élémentaires le résultat voulu, avec les bugs en plus.

Le deuxième problème avec la question “Quel langage utilisez-vous ?” est le singulier pour langage. Il manque un s. Hé oui, de nos jours, un seul jeu d’instruction ne suffit plus. Développer demande la maîtrise combinée de plusieurs jeux d’instructions. Et par une chance qui n’a rien à envier au hasard, le pluriel de jeu s’écrit avec un x.

Sinon, pour ce qui concerne la réponse à la question “Quel langage utilisez-vous ?” la meilleure réponse pour l’EURL Barme serait : le htmlcssjavascriptphpsqlapachelinux.

L’EURL Barme investit le Grand Sud

Afin d’accroître sa zone de chalandise, l’EURL Barme ouvrira bientôt un premier établissement dans le Grand Sud, tout en restant en France.map150401_1

C’est plus précisément dans l’archipel des Crozet, sur l’île des Pingouins qu’est prévu l’implantation du nouvel établissement de l’EURL Barme.  Il sera placé au sommet du Mont des Manchots (340 m tout de même), d’où l’EURL Barme aura une position dominante sur la région.

Un nouveau nom de domaine, barme.tf, permettra de distinguer les communications propres à cet établissement. Il sera mis à jour bientôt, dans quelques semaines.P1110312 Ce site est remarquablement bien protégé est c’est donc en priorité là que seront stockées les données confidentielles et précieuses des clients de l’EURL Barme.

Avec un décalage horaire de seulement 4h00, ce nouvel établissement pourra facilement coopérer avec le siège social tout en augmentant sensiblement la période de disponibilité de l’EURL Barme pour ses clients.

Par ailleurs, cet emplacement est en plein TAAF et devrait donc offrir des perspectives de développement intéressantes.map150401_2

Solidaire du personnel de l’EURL Barme missionné pour la mise en place de cet établissement, le gérant de l’EURL Barme se rendra sur place. Ce sera une opportunité supplémentaire de faire de la prospection commerciale en chemin.

L’EURL Barme continuera bien sûr à servir ses clients actuels avec autant d’implication et son siège social restera donc à Lille.

Mais que fait-on chez l’EURL Barme ?

Comme illustré par son organigramme, toute l’équipe de l’EURL Barme est toujours complètement mobilisée dans tous ses projets ou activités, de la cave au grenier. Cet organigramme a beau être humoristique, il reflète la réalité d’une organisation qui rappelle l’inverse du principe de la société des Galaxiens du Scrameustache. Tout va du coup plus lentement, vu de l’extérieur. Mais pour les clients de l’EURL Barme cela présente l’immense avantage d’avoir affaire à une équipe polyvalente et d’une cohésion parfaite ; la transmission d’informations au sein de l’EURL Barme est instantanée !

En réalité, le développeur est de très loin le rôle le plus productif (et paradoxalement le moins bien payé). Il faut dire qu’il totalise une expérience de développement considérable accumulée sur une période de plus de 386DEC40h secondes (c’est à dire plus de 30 ans). A travers les multiples langages (informatiques) qu’il a pratiqués, il retient quelques idées fondatrices. Peu importe le jeu d’instructions, c’est ce qu’on en fait qui compte. Un bon développement c’est tout en parallèle : codage, tests et spécifications mais surtout des tests. Et sa version du “plus c’est simple, mieux c’est” : moins il y a de code, moins il y a de bug ! Pour autant, il a conçu et écrit des applications entières d’une grande complexité telle que l’ERP très spécifique de Sextant-Expertise. Pour en donner une idée, au dernier recensement, cette application est très précisément décrite par plus de 180 pages de spécifications concises, avec une police de 10.

Les programmes développés par l’EURL Barme ont en commun une interface minimaliste qui cache des traitements souvent très complexes mais toujours d’une très grande robustesse. Les sujets sont des plus variés : comptabilité, gestion des préférences de la clientèle d’une bijouterie, de la location d’un parc d’instruments d’un luthier archetier, y compris la génération associée d’un fichier de remise en banque selon la norme SEPA, gestion de devis pour une serrurerie métallerie, suivi de navigation (en mer) sur Internet, partage de moyens entre associations et tout dernièrement un service de Base de Données Unique (BDU) en mode SaaS…

Le développeur de l’EURL Barme travaille en parfaite symbiose avec l’administrateur de base de données, un élément incontournable des développements modernes. Outre sa participation à la conception des applications, celui-ci intervient aussi sur l’analyse des rares problèmes qui surviennent en exploitation. Il est capable d’intervenir sur une base en production sans perturber celle-ci : un exercice qui exige un parfait contrôle de la situation et une grande rigueur.

L’autre rôle directement productif de l’EURL Barme est assumé par le technicien réseau, un maniaque de l’organisation rigoureuse qui passerait volontiers des heures à démêler les câblages si on lui laissait le temps. Il assure en fait les interventions les plus techniques de l’EURL Barme. Avec la mise à jour du firmware d’un téléphone satellite réalisée à plus de 10 000 km et 10 heures de décalage horaire, il détient un record d’intervention à distance qui sera difficile à battre. Récemment investi dans la VoIP, il se régale à diviser jusque par 10 les factures de télécommunication des clients, à niveau de fonctionnalités supérieur.

L’administrateur système quant à lui représente en quelque sorte une synthèse des trois rôles précédemment cités. Il gère les serveurs de l’EURL Barme et de ses clients. Il assure leurs configurations avec un souci de minimalisme de type bonzaï pour ce qui est du nombre et de la taille des éléments installés, de type séquoia géant pour ce qui concerne leur puissance de traitement et de type ginkgo biloba pour ce qui relève de la sécurité par référence à la capacité de cette essence à résister même aux irradiations des bombes nucléaires. Il assure aussi leur surveillance et la mise en place des parades adaptées aux progrès incessants de la cyber criminalité. Ses outils de prédilection sont la ligne de commande et le fameux vi, un éditeur de fichier plus vieux que lui. Il traque avec eux l’origine du moindre message d’erreur suspect relevé dans les logs quitte à fouiller toutes les sources d’Internet disponibles et  même les FM, en anglais bien sur. L’avantage de ce rôle est qu’il s’exerce de préférence la nuit et les weekends. Cela évite les conflits d’accès avec les autres rôles de l’EURL Barme.

A travers les multiples facettes des compétences exercées au sein de l’EURL Barme, on a finalement une bonne illustration de ce que pourrait désigner le cumul des concepts de devop et full stack. En tout cas, les clients qui en profitent en redemandent !

L’EURL Barme, lauréat des Trophées Infrastructures 2014 d’OVH

L'EURL Barme lauréat des Trophées infrastructures 2014 d'OVH

L’EURL Barme lauréat des Trophées infrastructures 2014 d’OVH

Cette reconnaissance de la part d’OVH des prestations de l’EURL Barme porte plus d’un message :

  •  L’EURL Barme peut mettre en œuvre des solutions opérationnelles qui obtiennent l’approbation d’un des acteurs de l’Informatique le plus innovant et le plus performant de son secteur d’activité.
  •  Une solution simple, en apparence au moins, peut être jugée efficace et performante même si elle est comparée à d’autres sans doute bien plus complexes.
  •  De toutes petites structures peuvent valoir bien plus que leurs gros concurrents.

Candidater à ce concours était une excellente idée !

Vidéo : Trophee

Organigramme illustré

Les retours amusés sur l’homme orchestre ont suscité l’envie d’aller plus loin dans l’idée de présenter avec humour la polyvalence de tout le personnel de l’EURL Barme.

Un travail délicat a alors été confié l’été dernier à Adrien Lannoy, un designer à l’avenir très prometteur : illustrer les différentes fonctions de chacun des personnages de l’EURL Barme et ce à quoi ils rêvent… Comme si cela ne suffisait pas, une difficulté supplémentaire a été rajoutée : Tous les personnages principaux doivent se ressembler ; une caricature du gérant de l’EURL Barme est la bienvenue comme “modèle”. Imaginez la position de l’artiste chargé de caricaturer son commanditaire !

Et bien Adrien Lannoy s’en est remarquablement sorti. Chacune de ses illustrations rend parfaitement la description qui lui a été remise dans le cahier des charges, en y apportant sa touche personnelle, en particulier sa vision de l’établissement de l’EURL Barme qui abrite tous ces personnages.

OrganigrammeIllustre

L’accès à ces images se fait en cliquant sur les fenêtres du bâtiment et l’accès aux rêves en cliquant sur la tête des personnages, à l’exception de la DRH où il faut cliquer sur le fauteuil vacant pour accéder au rêve du gérant sur ce poste.

Pour ceux qui souhaiteraient un accès plus direct :

Un détail involontaire mais certainement révélateur : le rêve du Directeur Commercial est rendu par un fichier 40 fois plus volumineux que la moyenne des autres.

 

Mise en œuvre de la base de données économique et sociale

A lire le décret d’application n° 2013-1305 du 27 décembre 2013 relatif à la base de données économiques et sociales (BDES ou plus simplement BDU pour base de données unique), on jurerait qu’il a été rédigé par un informaticien ! Les dispositions qu’il expose :

  • ne résolvent en rien les complexités administratives et humaines liées au partage des informations concernées par ce décret,
  • laissent une très grande liberté aux solutions techniques pour sa mise en œuvre,
  • ouvrent un immense potentiel de traitement de ces informations.

Et quelles informations ! Il s’agit ni plus ni moins que de tous les indicateurs économiques et sociaux, passés, présents et futurs d’une société…

Il a deux facteurs qui donnent un contexte extrêmement favorable à la réalisation de ce décret. La base de données économique et sociale apportera certainement une réelle plus value à ses utilisateurs et le contexte technique actuel, d’un point de vue informatique, offre un cadre idéal à sa mise en œuvre.

L’obligation de mettre à disposition les éléments d’analyse ou d’explication mentionnée dans le décret indique que les données numériques brutes ne seront pas suffisantes. Le recours à un ensemble de documents s’impose donc naturellement, au moins dans un premier temps.

La première solution qui émerge alors est l’adaptation, plus ou moins hâtive, d’un GED (système de gestion électronique de documents). Cette solution trouvera vite ses limites. Il y a d’autres fonctionnalités à satisfaire que celles proposées par ses systèmes, par exemple la gestion des délais qui courent à compter de la communication des informations.

La solution technique à la mise en œuvre de la base de données unique justifie le développement d’un outil ad hoc, simple et utile.

Cependant, les besoins seront communs à toutes les entreprises. Ces développements pourront être ainsi mutualisés ; ce qui permettra de réduire les coûts de mise en œuvre de manière très conséquente.

Faire simple est plus compliqué qu’il n’y paraît

Le titre de cet article illustre le contraire de son propos : l’apologie de la simplicité. Ca commence bien !

La tendance naturelle est d’ajouter de la complexité superflue. Cette propension est d’autant plus importante que les capacités sont limitées. De magnifiques exemples se trouvent dans le monde de la recherche où quelques médiocres se donnent de l’importance par le recours à un argot qu’ils sont les seuls à connaître ; ils en déduisent que leur travail est de très haut niveau puisque personne ne les comprend… A l’inverse, les vrais sommités du même contexte vous présentent leurs résultats avec une telle limpidité que l’on s’étonne que le problème soit resté sans solution pendant des siècles !

Revenons à un monde plus quotidien. En informatique l’intérêt de la simplicité est tout autre. Cela en est la raison même : rendre la vie plus facile aux utilisateurs de ce merveilleux outils aux potentiels infinis. Dans ce domaine la simplicité apparente est très souvent inversement proportionnelle à la complexité cachée. Bien sûr il faut parfois mettre en œuvre des algorithmes très complexes pour simplifier les tâches les plus fastidieuses au point de les rendre ludiques. Mais la simplicité, en informatique, c’est d’abord une philosophie. Il ne faut rien ajouter à la complexité inhérente des problèmes abordés.

Cela commence par la liste des fonctionnalités proposées. Combien de commandes, cachées profondément dans les menus, sous-menus, sous-sous-menus, de votre traitement de texte préféré utilisez-vous ? Hum ? Du coup celles qui vous intéressent sont noyées parmi les superflues. Faut-il en dire plus ?

Aller à l’essentiel, éviter le moindre clic, même si cela demande des semaines de travail, proposer des solutions simples et utiles, voilà l’objectif.

Homme orchestre

Organigramme de l’EURL Barme

Parmi les structures possibles pour démarrer une activité indépendante, il en est une qui présente de nombreux avantages : l’EURL (Entreprise Unipersonnelle à Responsabilité Limité). C’est la version minimale de la SARL. Minimale, car elle est accessible à une seule personne mais à part cela elle est en tout point équivalente à une structure de PME complète, avec tous ses accessoires, notamment administratifs.

Par exemple, tous les 12 mois, on clôt son exercice par une Assemblée Générale qui réunit tous les associés ainsi que le gérant (c’est à dire une seule personne en l’occurrence).  Le point le plus important de cette réunion est la cinquième résolution qui consiste à approuver la rémunération annuelle du gérant. Cette résolution, mise au voix, est généralement adoptée à l’unanimité, l‘intéressé n’ayant pas pris par au vote, bien entendu, comme cela se fait entre personnes courtoises.

L’unique associé, gérant d’une EURL se doit donc d’être multi schizophrène également chaque jour de son activité. Celui qui rêvait d’être “son propre patron” se retrouve en réalité davantage être “son propre employé” voire “ses propres employés”, tant qu’à faire.

Rassurez-vous, cela se vit très bien. La variété des tâches à accomplir est réellement passionnante.  Et le client s’y retrouve : il accède ainsi à une “équipe” d’une cohésion parfaite !