Affichage des articles dont le libellé est code. Afficher tous les articles
Affichage des articles dont le libellé est code. Afficher tous les articles

mercredi 10 septembre 2014

Analyse du travail de nos députés qui n'ont pas le temps de payer leurs impôts

En France, le dernier scandale politique en cours nous a permis de faire connaissance avec le sieur Thomas Thévenoud, ci-devant député de la nation et fugace sous-ministre.
Ce brave homme, secondé par sa charmante épouse employée par le sénat, a omis de payer ses impôts et son loyer, tout en expliquant doctement que son engagement public accaparait tout son temps.

Si je me rappelle mes cours d’instruction civique, prodigués au siècle dernier par l'école républicaine, la fonction des députés est de produire des lois et celle des ministres d'administrer, notamment par le biais de décrets et circulaires.

Par l'entremise du site Légifrance, je viens de me livrer à un petit examen de l'efficacité de notre système politique en jetant mon dévolu sur le Code de la Propriété Intellectuelle.

À l'heure où le numérique bouscule toute notre société et met les copies en tous genres à la portée de chacun, entre 300 et 400 excellents articles régissent droits d'auteur, brevets et marques.
Je n'ai pas réussi à compter précisément tellement ces textes sont nombreux et imbriqués.

La langue dans laquelle cette belle prose est rédigée surpasse en limpidité et en fulgurance celle de Stendhal, Balzac et Proust réunis.
Jugez sur pièces avec ce court extrait de l’excellent article L211-3
    "Les bénéficiaires des droits ouverts au présent titre ne peuvent interdire [...] la reproduction provisoire présentant un caractère transitoire ou accessoire, lorsqu'elle est une partie intégrante et essentielle d'un procédé technique et qu'elle a pour unique objet de permettre l'utilisation licite de l'objet protégé par un droit voisin ou sa transmission entre tiers par la voie d'un réseau faisant appel à un intermédiaire ; toutefois, cette reproduction provisoire ne doit pas avoir de valeur économique propre".

Ces lois révèlent au grand jour le souci constant de nos élus pour l'intérêt général.
L'excellent article R134-1 crée un “registre des livres indisponibles du XXème siècle [...] arrêté par un comité scientifique placé auprès du président de la Bibliothèque Nationale de France et composé, en majorité et à parité, de représentants des auteurs et des éditeurs”.
Cette liste de bouquins épuisés devra obligatoirement, sous peine de transgresser la Loi, comporter “noms et prénoms ou pseudonymes du ou des auteurs” mais aussi “des précisions sur la qualité de l'auteur”.
Pourtant si l'ouvrage est introuvable, il est peu probable que l'auteur soit d’une qualité exceptionnelle.
Bien entendu nos parlementaires ont laissé un peu de boulot à leurs collègues du gouvernement en précisant que “la composition et le fonctionnement de ce comité sont déterminés par arrêté du ministre chargé de la culture”.

Les décrets qui complètent ce code frisent le sublime.
Ainsi l'opus “n° 2008-1391 du 19 décembre 2008 relatif à la mise en œuvre de l'exception au droit d'auteur, aux droits voisins et au droit des producteurs de bases de données en faveur de personnes atteintes d'un handicap” comporte huit excellents articles.
Le premier indique “le code de la propriété intellectuelle est modifié conformément aux articles 2 à 8 du présent décret”.
Les excellents articles suivants relèvent d'Alfred Jarry ou d'Eugène Ionesco.
Par exemple, le n°4 stipule “au chapitre II du titre II du livre Ier, il est créé une section 1, intitulée « Dispositions générales », qui comprend l'article R. 122-1”.
Les sept autres sont du même acabit.
La signature force le respect. Ce jeu de piste réglementaire a été co-paraphé par pas moins de cinq ministres : le premier d’entre eux ; la ministre de la culture et de la communication ; la ministre de l'intérieur, de l'outre-mer et des collectivités territoriales ; le ministre du travail, des relations sociales, de la famille et de la solidarité et, pour finir, la secrétaire d'état chargée de la solidarité.

Nos parlementaires ont aussi su faire preuve de créativité géographique.
Les excellents articles L811-1 à L811-4 précisent des “dispositions relatives à l'outre-mer”.
Aux yeux du législateur - pourtant sujet à la phobie administrative - copies et droits d'auteurs diffèrent aux îles Wallis-et-Futuna, en Nouvelle-Calédonie, à Mayotte et dans les Terres australes et antarctiques françaises.
On pourrait croire à un effet du changement d'hémisphère si la Polynésie n'avait pas été oubliée.

Bref notre techno-politico-structure excelle dans la construction des remparts de paperasse la protégeant du chômage et l'empêchant de trouver le temps de payer ses impôts.

Leaniquement votre

Références et compléments
- Voir aussi la chronique “Combien coûte une loi ?”
- Le Code de la Propriété Intellectuelle est consultable sur Légifrance. Les passages en italique en proviennent.

mardi 17 décembre 2013

Devenir un super-héros de la programmation moderne en moins de 5 minutes

Comme je l'ai déjà relaté dans une précédente chronique, j'ai le plaisir intense, depuis quelques mois, de travailler avec des spécialistes de l'informatique.
Cette semaine, après de profondes réflexions et études, mes sympathiques compagnons de labeur ont arrêté les principaux choix techniques de l'application que nous cherchons à développer.
A cette occasion, j'ai appris qu'une part importante de notre code allait être écrite en angular javascript, soit, mot à mot dans la langue de Molière, en scenario java anguleux.

La dernière fois que j'ai commis un peu de programmation, j'usais mes fonds de culottes sur les bancs d'une institution universitaire et Valéry Giscard d'Estaing était encore président de la république française.
Les trois langages alors en vogue s'appelaient basic, cobol et fortran. Ils avaient l'heur d'être à peu près compréhensibles par toute personne ânonnant le parler de Shakespeare, ainsi que le prouve l'exemple ci-dessous.

IF (you = sympa);
THEN say(me, you, "Hello");
ELSE say(me, you, "");
ENDIF

Las ! Cette époque bénie est désormais révolue et quand le java est là, le fortran s'en va !

Désireux de ne pas trop passer pour un parfait ignare auprès de mes nouveaux et jeunes coéquipiers, je me suis précipité sur internet pour tenter de me mettre presto à niveau.
Afin de vous permettre de combler encore plus vite votre retard, j'ai rassemblé ci-après l'essentiel de mes trouvailles. Une lecture attentive devraient vous amener illico au top !

Désormais, tout logiciel digne de ce nom emploie un, voire plusieurs, langages orientés objet à prototype.
Autrement dit, les bases du langage et ses principales interfaces sont fournies par des objets qui ne sont pas des instances de classes, mais qui sont chacun équipés de constructeurs permettant de créer leurs propriétés.
Javascript, littéralement le scénario du café bouillu, a été, en vertu de ces magnifiques principes, créé en 1995 pour permettre le développement d'applications fonctionnant au gré du web et des nuages.

Dans ce jargon peu poétique, l'exemple précité devient :

window.alert("Hello world");

Charge au monde de se débrouiller avec ses objets, ses constructeurs et ses propriétés souvent privées d'information pour savoir si je le considère ou non comme sympathique.

Toutefois, ces magnifiques idiomes ne seraient rien s'ils n'étaient pas soutenus par des frameworks, que les québécois traduisent par cadres d'applications ou cadriciels.
Un cadriciel est un ensemble cohérent de composants logiciels structurels servant à créer les fondations ainsi que les grandes lignes d'un logiciel. Son caractère générique, faiblement spécialisé, permet de ne pas le confondre avec une simple bibliothèque logicielle.
Comme il se doit, en programmation orientée objet, un framework est typiquement composé de classes mères qui seront dérivées et étendues par héritage en fonction des besoins spécifiques à chaque logiciel qui utilise le framework.
Grosso modo, un cadriciel peut s'auto-décrire sensiblement comme suit :

framework = new frameworkOn ()
function frameworkOn()
{framework.img.src = imgframework.src;
viceversaOn ();
toutestdanstoutOn ();
amoinsquecelanesoitlinverseOff.src.img ();
return true;}


Angular javascript connait actuellement un beau succès au hit-parade des frameworks.
Mr Google, son concepteur, dont le talent informatique égale la modestie, n'a pas hésité à le qualifier de cadriciel superhéroïque.
Ce cadre d'applications, à l'instar de la première des sectes venues, est fondé sur une croyance : la programmation déclarative doit être utilisée pour construire les interfaces utilisateur et les composants logiciels de câblage, tandis que la programmation impérative excelle pour exprimer la logique métier.
Il encourage le couplage faible entre la présentation, les données et les composants métiers.
De surcroît, il utilise l'injection de dépendances.
Bref, grâce au javascript anguleux, il est possible de rendre les tâches faciles évidentes et les tâches difficiles possibles.

Pour conclure ce billet, j'ai le plaisir de vous faire découvrir, en avant-première mondiale, mes premières lignes de code écrites en angular javascript qui devraient vous aider à vous remettre de la lecture de cette anguleuse chronique.

<!doctype html>
<html ng-app>
<head>
<script src="http://kelibia.fr/migraine/aspirine.angular.min.js"></script>
</head>
<body>
<div>
<label>Tisane pour mal de tronche</label>
<input type="boisson" ng-model="decoction" placeholder="bouilloire">
<ul class="unstyled">
<li ng-repeat="de la tisane, encore de la tisane, toujours plus de tisane">
<input type="ecorce_de_saule" ng-model="tisane.done">
<span class="tisane-{{tisane.done}}">{{tisane.ecorce.saule.text}}</span>
</li>
</ul>
<hr>
<h1>Faire infuser {{tisaneName}}!</h1>
<h1> Boire bien chaud {{tisaneName}}!</h1>
<h1>Aller au lit avec {{last_conjoint@due_date}}!</h1>
</div>
</body> // celui du code pas du conjoint 
</html> // toi-même !

// Angulobjectivement votre


Références et compléments
- Voir aussi la chronique "l'informatique est une réincarnation de la SNCF".
- Tous mes remerciements et excuses à mes nouveaux coéquipiers. Je passe des moments intenses, souriants et palpitants avec eux.
Qui aime bien ironise bien ...
- Les phrases incompréhensibles ou bizarres de cette chronique sont toutes authentiques et proviennent de Wikipedia. Cette chronique est plus un exercice de collage que d'écriture.
- Pour en savoir plus sur angular javascript : le site web officiel anglophone et l'article Wikipedia francophone.
- Mon amour immodéré de la vérité et de l'exactitude me pousse toutefois à préciser qu'il m'est arrivé, il y a quelques années, à l'issue de nombreuses visites à Bergame et après un abus préjudiciable de casoncelli et de lambrusco, de pondre quelques lignes de javascript (toutefois fort peu anguleux).
Les acharnés pourront consulter le code source de cette page, les autres profiter du reportage photographique effectué sur l'autoroute reliant Bergame à Grenoble.