diff --git a/content/posts/ameliorer-lunivers-informatique.md b/content/posts/ameliorer-lunivers-informatique.md index f0b89d5..721a38b 100644 --- a/content/posts/ameliorer-lunivers-informatique.md +++ b/content/posts/ameliorer-lunivers-informatique.md @@ -14,7 +14,7 @@ Les thèmes abordés seront le "logiciel libre" dans l'éducation, les "téléco Les idées de l'article sont indépendantes, puisqu'il s'agit-là d'une compilation de problèmes. -# I - Le logiciel libre et l'éducation +# Le logiciel libre et l'éducation Ce premier paragraphe vient faire écho à [cet article](https://www.gnu.org/education/edu-schools.fr.html) (traduit) de Richard Stallman (rms). Dans la lignée du scandale Volkswagen qui invite à l'utilisation des logiciels libre, rms explique l'intérêt de la préférence du libre dans les écoles. @@ -44,7 +44,7 @@ C'est pourquoi il devrait y avoir (sinon une exclusivité par trop utopique) une **TL;DR :** L'ouverture apportée par les logiciels libres (ou open-source) est bonne pour l'apprentissage, pour les élèves, pour les enseignants, pour donner une perspective et ne pas être enfermé dans un outils propriétaire, et partant, devrait être encouragée fortement. -# II - Les réseaux : une infrastructure d'État +# Les réseaux : une infrastructure d'État Vers la fin du XIXème siècle, la [construction de l'infrastructure](https://www.qwant.com/?q=construction%20chemin%20fer%20france&t=images) de réseau de chemin de fer a mobilisé jusqu'à 1/3 de l'épargne des français. Il s'est agit d'une entreprise complexe où cohabitèrent les directives de l'État, ses ingénieurs des Ponts-et-Chaussées, les entreprises privées -- chargées de la construction, du respect des normes et du tracé -- et enfin des capitaux actions des Français. @@ -76,7 +76,7 @@ Vous le voyez, le passsage au numérique est un sujet complexe, mais il existe d **TL;DR :** Entre opérateurs réseaux et fournisseurs de contenu, il y a un grand enjeu pouvoir de distribution de l'information et de concurrence. L'un des aspects importants est la neutralité du net, l'autre la nécessité d'une loi par État régissant leurs rapports, et l'évolution de l'infrastructure. -# III - La responsabilité sociale de l'univers informatique +# La responsabilité sociale de l'univers informatique Les gens ne gèrent plus leurs mails ? Très bien. C'est dommage, mais c'est ainsi. Les gens ne gèrent pas d'albums photo en ligne ? Très bien. C'est vraiment dommage, mais c'est ainsi. diff --git a/content/posts/battle-for-wesnoth.md b/content/posts/battle-for-wesnoth.md index 957c135..fa7cb3d 100644 --- a/content/posts/battle-for-wesnoth.md +++ b/content/posts/battle-for-wesnoth.md @@ -12,47 +12,49 @@ Aujourd'hui je vais vous présenter (pour ceux qui ne le connaissent pas déjà) Battle for Wesnoth est un logiciel libre écrit en C++ et disponible  sous licence GPLv2. Il s'installe très facilement sous Windows (binaires disponibles) GNU/Linux, et sous Mac aussi, quoique je n'ai pas testé. Sur ma debian (idem sur Ubuntu) je l'ai installé ainsi : -\# apt-get install wesnoth +``` +apt-get install wesnoth +``` Vous avez la possibilité de jouer une campagne pour vous familiariser avec le jeu, après avoir fait le tutoriel. Comme vous le voyez ci-dessous, le jeu est facile à prendre en main, puisqu'on vous indique ce qu'il faut faire. -[![](%assets_url%/2017/02/campagne1-1024x589.jpg)](%assets_url%/2017/02/campagne1.jpg) +![](%assets_url%/2017/02/campagne1-1024x589.jpg) Dans le jeu, on se déplace sur des cases hexagonales, vous pouvez voir un hexagone jaune autour de la pièce que mon roi a recruté. -# I - Les bases de la stratégie +# Les bases de la stratégie -##### Le héros/roi +## Le héros/roi Vous avez un roi qu'il ne faut pas perdre sans quoi vous perdez le jeu, et qui est le seul qui permette de recruter de nouvelles unités, seulement quand il est à certains endroits stratégiques de la carte : ici à une place particulière du château, celle entourée par des tours pointues. -##### L'or +## L'or Vous avez une certaine quantité d'or qu'il faut bien gérer, il s'agit de l'unique ressource du jeu. L'or diminue quand vous recrutez des combattants, et à chaque tour, proportionellement au nombre de combattants. Vous gagnez d'autant plus d'or que vous avez de villages (ceux avec un drapeau rouge au dessus). -##### Se déplacer +## Se déplacer -[![](%assets_url%/2017/02/deplacement1.jpg)](%assets_url%/2017/02/deplacement1.jpg) +![](%assets_url%/2017/02/deplacement1.jpg) La distance de déplacement dépend du terrain pour les unités qui ne volent pas. Certaines unités vont plus vite sur l'eau, d'autres sur terre. Ici, on voit que mon roi se défend mieux dans la forêt (50%) que sur un chemin (40%). On se déplace mal dans les cases adjacentes à des ennemis, une partie de la stratégie repose donc parfois sur la création d'un "mur" de personnages pour empêcher la prise de villages. Pour un mur, il suffit d'espacer les unités de 0 ou 1 ou 2 cases pour que l'adversaire ne puisse pas passer. -##### Combattre +## Combattre -[![](%assets_url%/2017/02/attaque1.jpg)](%assets_url%/2017/02/attaque1.jpg) +![](%assets_url%/2017/02/attaque1.jpg) Il y a deux types d'attaques : corps-à-corps et à distance. Ici je suis dans le tutoriel, donc je n'ai qu'une attaque : "6-3" signifie que j'attaque 3 fois en faisant 6 points de dommage. Le hasard fait que j'ai touché deux fois sur trois, et que mon adversaire a riposté trois fois sur cinq. Il a "3-5", qui signifie qu'il attaque cinq fois, en faisant trois points de dommages Il y a des armes qui sont plus efficaces que d'autres sur un adversaire, il faut donc choisir qui attaque qui sera la plus efficace. Par défaut le jeu propose souvent l'attaque la plus utile. -[![](%assets_url%/2017/02/stats1.jpg)](%assets_url%/2017/02/stats1.jpg) +![](%assets_url%/2017/02/stats1.jpg) Vous pouvez voir le détail des attaques avec des statistiques avancées. Par exemple si un adversaire n'a pas d'attaque à distance, il peut être utile de l'attaquer à distance pour ne pas subir de dommages. Lorsque lui nous attaquera, on pourra riposter avec notre attaque corps-à-corps. Les attaques à distance se font aussi quand on est sur une case adjacente à notre adversaire, ce qui fait qu'il pourra aussi attaquer à son tour. -##### La stratégie minimale +## La stratégie minimale Il y a beaucoup de modificateurs de chance qu'il faut bien utiliser (c'est une grande partie de la stratégie). Premièrement le terrain, on attaque mieux à certains endroits que d'autres. Deuxièmement le jour est divisé en deux tours ou il fait "jour", deux ou il fait "nuit", et deux périodes liminaires. Certains combattants sont avantagés le jour, d'autre la nuit, certains lors des périodes limites, enfin d'autres ne sont pas affectés. @@ -62,9 +64,9 @@ Pour la suite, je vous conseille le tutoriel, il est très facile. Le jeu vient Vous pourrez vous diriger vers [cette page](https://wiki.wesnoth.org/AdvancedTactics) du wiki pour en apprendre plus sur la stratégie, et défaire plus facilement l'IA, qui est assez fûtée. -# II - Une partie à plusieurs +# Une partie à plusieurs -##### Sur la machine d'un joueur +## Sur la machine d'un joueur Retrouvons les passionnés du code et de l'adminsys en installant un serveur Wesnoth. @@ -72,20 +74,26 @@ Sous Windows, on peut lancer le serveur Wesnoth à partir du jeu. Sous debian, w Tout d'abord, installer le serveur wesnoth à l'aide de la commande : -\# apt-get install wesnoth-1.10-server +``` +apt-get install wesnoth-1.10-server +``` ou -\# apt-get install wesnoth-1.12-server +``` +apt-get install wesnoth-1.12-server +``` La version du serveur importe moins que celle du client, et c'est un problème que l'on verra plus tard. Puis démarrez le service. Il tourne sur le port 15000. -\# service wesnoth-1.10-server status -# service wesnoth-1.10-server start # si status == stop. +``` +service wesnoth-1.10-server status +service wesnoth-1.10-server start # si status == stop. +``` -##### Sur un serveur dédié +## Sur un serveur dédié Pour pouvoir jouer avec des personnées n'étant pas sur votre sous-réseau local, il faut installer le service sur un ordinateur exposé à internet. Personnellement, j'ai installé un serveur Wesnoth sur une machine virtuelle Qemu-KVM de mon serveur. Pour la simple raison que mon serveur est sous debian 8 stable codename Jessie, et que la version de Wesnoth par défaut est la 1.10, qui est l'ancienne version stable. Sous debian testing codename Stretch, on a la version 1.12 de Wesnoth. @@ -93,10 +101,11 @@ Je n'ai pas eu de problèmes de compatibilité client-serveur, mais j'en ai eu c Voici la configuration que j'ai utilisée (il faut rediriger le trafic IP du port 15000 depuis le serveur vers la machine virtuelle). Cette machine virtuelle a pour adresse 192.168.122.145, il faudra que vous adaptiez en fonction de votre propre configuration : +``` #!/bin/bash -IP\_FWD\_ON=\`/sbin/sysctl net.ipv4.ip\_forward | cut -d '=' -f2 | tr -d '\[:space:\]'\` -if \[ "${IP\_FWD\_ON}" = "1" \] ; +IP_FWD_ON=`/sbin/sysctl net.ipv4.ip_forward | cut -d '=' -f2 | tr -d '[:space:]'` +if [ "${IP_FWD_ON}" = "1" ] ; then     /sbin/iptables -t nat -I PREROUTING -p tcp -d 192.168.1.16 --dport 15000 -j DNAT --to-destination 192.168.122.145:15000     /sbin/iptables -t nat -I PREROUTING -p tcp -d 192.168.1.16 --dport 15000 -j DNAT --to-destination 192.168.122.145:15000 @@ -104,6 +113,7 @@ then else     echo "Err: Routage NAT désactivé." fi +``` Ce script (à utiliser en tant que root sur la machine hôte) vérifie que l'IP forwarding est activé, et si oui route le trafic du port 15000 vers l'IP 192.168.122.145. diff --git a/content/posts/la-guerre-du-chiffrement-2.md b/content/posts/la-guerre-du-chiffrement-2.md index 4889c86..8940e9c 100644 --- a/content/posts/la-guerre-du-chiffrement-2.md +++ b/content/posts/la-guerre-du-chiffrement-2.md @@ -31,7 +31,7 @@ On remarque qu'il y a un abîme culturel entre mon mode de pensée et celui des Il faut savoir qu'aux États-Unis, les principes énoncés dans le _Bill of Rights_ ont une valeur beaucoup plus forte que dans notre France et son droit romain. C'est justement lié au type de droit en vigueur, notamment l'opposition droit romain/droit anglosaxon. Typiquement, le droit romain essaie à l'avance de prévoir tous les cas, et de définir les peines associées si nécessaire. Ce n'est pas le cas du droit anglosaxon où la jurisprudence et le lien entre les affaires est beaucoup plus important. Ainsi aux États-Unis, le premier amendement est quasi-absolu : il garantit la possibilité de pouvoir tout dire, mais dans le cas où une personne tient un discours haineux, à teneur racial où je ne sais quoi, elle risque de se retrouver devant les tribunaux s'il y a quelqu'un pour dire : "Ce que tu as dit là me porte préjudice". -#### Analyse +## Analyse Vous comprenez la force de cet argumentaire : un juge ne peut pas décemment aller contre la constitution des États-Unis, de même le FBI ne peut pas obtenir une ordonance d'un juge pour forcer Apple à écrire du code qui n'est pas de lui. C'est sur cette base que l'_amicus_ attaque l'ordonance qui contraint Apple (beaucoup de boîtes par extension). @@ -56,7 +56,7 @@ Je vous encourage à la regarder, puisque c'est fait sur un ton humoristique, et En gros les juridictions peuvent faire les décrets pour faire appliquer des lois en vigueur, dans les limites de la loi. -#### Une brêve histoire de la guerre contre le chiffrement +## Une brêve histoire de la guerre contre le chiffrement - À _8:50--9:55_ : John parle rapidement de l'histoire sur la guerre contre le chiffrement. Eh oui. C'est pas nouveau sous le soleil, tout ça, loin de là ! J'en profite pour faire un exposé un peu plus approfondi sur le sujet. diff --git a/content/posts/la_publicite_sur_internet.md b/content/posts/la_publicite_sur_internet.md index bdece24..aa1b5be 100644 --- a/content/posts/la_publicite_sur_internet.md +++ b/content/posts/la_publicite_sur_internet.md @@ -14,15 +14,15 @@ C'est vraiment dur de s'attaquer à un sujet aussi gros que celui-là. Où comme # Les inconvénients techniques de la publicité -###### Le rendu de la pubilicité +## Le rendu de la pubilicité C'est bête à dire --- heureusement de moins en moins vrai sur la majorité des sites --- mais parfois les publicités empêchent la bonne lecture du site.  Soit que la publicité soit plus grande que prévue, qu'elle soit animée, avec du son, qu'elle clignote, soit qu'elle ne prennent pas en charge les mobiles. Et ça peut être particulièrement lourd. -###### La bande passante consommée +## La bande passante consommée Indéniablement, charger de la publicité --- _ie_ du contenu --- consomme de la donnée et diminiue la bande passante disponible durant la période de chargement. -###### Tracking +## Tracking Pour cela il faut examiner le réseau de distribution de la publicité : @@ -37,11 +37,11 @@ Ainsi le premier problème est qu'une minorité d'entités connaît la plupart d Le second problème vient de l'idée de valorisation de la publicité : pour éviter qu'une publicité sur les produits hygiéniques féminin ne soit vu par des hommes, il faut les cibler. De là découle le tracking par les entreprises sur internet. Une course à qui vendra le mieux ses internautes, en somme... -###### Format des publicités +## Format des publicités On ne dirait pas mais c'est extrêmement important. Savoir si la publicité est une image JPG/PNG _a priori_ beaucoup moins dangereuse qu'une publicité utilisant flash ou java. Il ne faut pas perdre de vue qu'un serveur http peut proposer une page, et demander au navigateur web d'aller chercher une page http sur un autre serveur, laquelle peut faire exécuter du code javascript par le navigateur. Eh bien ça, c'est vraiment un immense problème. C'est tout simplement inadmissible. Ça veut dire qu'on va sur le serveur a.chose qui appelle une page du serveur b.publicite et la page située à l'adresse b.publicite se permet d'exécuter du code sur votre ordinateur. Autant se balader à poil sur internet. Avec ce mécanisme l'utilisateur ne choisit plus en qui il a confiance. -###### Le "native advertising" alias publicité native (?) +## Le "native advertising" alias publicité native (?) Je ne connais pas l'équivalent français. Il s'agit de publicité ayant un contenu. Par exemple vous tombez sur un article qui à l'air d'être du contenu, mais qui en fait est une publicité. @@ -61,7 +61,7 @@ De là à dire qu'il faut un pacte des acteurs du numériques sur la publicité _Fin de la parenthèse_ -###### Perte de valorisation de la publicité +## Perte de valorisation de la publicité Je vais oser commencer par le trop entendu "trop de _x_ tue le/la _x_" : trop de pub tue-t-il la pub ? @@ -74,7 +74,7 @@ On aperçoit ici deux vision du monde de la publicité : - celle où l'on s'écharpe, c'est la guerre à qui fera la meilleure publicité, la vendra le mieux, au prix le moins cher, et après tout, c'est compréhensible dans un monde de compétition ; - celle où le nombre de publicité est limité, où chacune possède une plus grande valeur, et nécessairement où l'on a trouvé un moyen pour réguler ce bazar --- c'est pas dit. -###### Et de la centralisation naquit le pouvoir... +## Et de la centralisation naquit le pouvoir... Une chose à ne pas perdre de vue, c'est que beaucoup des noms célèbres sur internet ont eu des problèmes avec les sociétés vendant de la publicité, au point que certains --- je pense à quelques blogueurs renommés --- se sont vu intimé l'ordre de retirer un contenu ou risquer de perdre une source de revenus sur la toile. @@ -82,7 +82,7 @@ Une chose à ne pas perdre de vue, c'est que beaucoup des noms célèbres sur in Ça veut aussi dire qu'il n'y a pas une assez grande concurrence, puisqu'une personne ayant une sérieuse réputation aura du mal a faire jouer la concurrence. -###### Intérêt de la publicité +## Intérêt de la publicité Un tweet à l'air provocateur de Marissa Mayer prétend que la publicité peut améliorer internet... vu qu'afficher la publicité est le comportement par défaut des navigateurs web, et qu'une partie des internautes s'acharne à installer adblockeur sur adblockeur, on peut vite répondre sur la valeur des publicité indésirables... @@ -94,17 +94,17 @@ Une dernière chose --- je vais faire mon vieux con ici --- parfois la publicit On nous a rebattu les oreilles avec, mais faisons-le encore. -###### Le marketing +## Le marketing Faire connaître un produit ou un service est une tâche complexe. On s'en rend compte à hashtagueule.fr, où nous cherchons à faire entendre notre voix. -###### Financement +## Financement Une bonne partie des choses qui nous coûtaient dans le monde analogique est devenu "gratuit" --- enfin pas tout à fait --- dans le monde numérique où l'on ne développe plus ses photos pour en faire un album qu'on triera, mais on les publie sur un site qui se charge de tout. Idem pour le mail, etc. Un des inconvénients de passer d'une société de biens à une société de services, la transition coûte cher, et il faut définir le nouveau business modèle. La publicité est donc le modèle choisi par beaucoup pour financer leur activité (journalistes, blogueurs, hébergeurs de contenu, etc.). -###### Design et représentation graphiques +## Design et représentation graphiques La publicité c'est aussi l'occasion pour les marques de créer une identité visuelle, et pour les designers en tous genre --- du graphistes jusqu'au webdesign --- d'inventer la représentation visuelle de nos produits et sesrvices. Il n'y a qu'à demander aux fans de toutes les industries liées de près ou de loin au luxe, la puublicité a une histoire. diff --git a/content/posts/lets-encrypt.md b/content/posts/lets-encrypt.md index 7a01069..3b2c7e4 100644 --- a/content/posts/lets-encrypt.md +++ b/content/posts/lets-encrypt.md @@ -12,7 +12,7 @@ Savez-vous comment marche le mécanisme de la confiance dans une page web reçue Si vous êtes un lecteur régulier du site, vous savez que le chiffrement de bout en bout est un dada chez moi, plutôt que le chiffrement point-à-point. On n'a pas encore fait de glossaire, donc je vais le réexpliquer à cette occasion, mais on finira par se référer à un petit manuel de bases. Donc si vous connaissez, vous pouvez zaper la partie 0 qui suit. -# 0 - Chiffrement de bout en bout vs chiffrement point à point. +# Chiffrement de bout en bout vs chiffrement point à point. C'est assez simple : @@ -27,9 +27,9 @@ Sur internet vous utilisez les deux : - le mail utilise le chiffrment point à point (sur lequel vous pouvez rajouter du chiffrement de bout en bout avec GPG/PGP) ; - parler HTTPS avec un serveur permet de récupérer une page qui sera chiffrée entre vous et le serveur, donc d'un bout du réseau à l'autre. -# I - Comment fonctionne le HTTPS ? +# Comment fonctionne le HTTPS ? -###### 1\. HTTP vs HTTPS, méthode de chiffement +## HTTP vs HTTPS, méthode de chiffement HTTP est un protocole qui permet de récupérer des pages web. Exemples de ce qu'on peut "dire en HTTP" : @@ -51,7 +51,7 @@ Et beaucoup d'autres. HTTPS n'est que l'utilisation d'une couche de chiffrement Pour visualiser la couche de chiffrement, on peut se représenter un tunnel entre le client et le serveur dans lequel la donnée passe. Personne ne peut accéder à l'intérieur du tunnel parce qu'il est solide, et le tunnel a une entrée (le client) et une sortie (le serveur). -###### 2\. Confiance de HTTPS +## Confiance de HTTPS Lorsqu'Alice va demander la page web de Bob en HTTPS, que va-t-il se passer ? @@ -74,7 +74,7 @@ Ainsi, la confiance que l'on a dans HTTPS dépend de deux facteurs : On ne parlera pas plus des algorithmes ici, à la place on se concentrera sur comment le navigateur a décidé de reconnaître un certificat, ou de l'invalider. -###### 3\. Réseau de confiance de l'architecture X509 +## Réseau de confiance de l'architecture X509 Le problème de fond, c'est de reconnaître la validité d'une clef de chiffrement (publique) pouvant changer fréquemment obtenue via internet. @@ -104,7 +104,7 @@ On signe les AC, qui créent leur clefs, qui sont signées par c1 de telle sorte Ainsi, la chaîne de confiance est une hiérarchie. Faire confiance à c0 permet/implique a priori de faire confiance à beaucoup de gens (on peut cependant demander à Firefox de ne pas accepter un certificat valide). -###### 4\. Subtilité de X509, résilience +## Subtilité de X509, résilience Vous avez peut-être remarqué que c0 ne sert qu'à signer c1, puis on demande au navigateur de reconnaître c0, puis on signe avec c1. @@ -117,7 +117,7 @@ Si la clef $latex \\alpha $ est perdue alors toute la sécurité de l'architectu - Dans le cas où on n'a qu'une clef c$latex \\alpha $, on ne peut rien faire. - Dans le cas ou on a c0 et c1, et c1 est perdue (on suppose que c0 n'est pas perdue, elle sous clef, éparpillée sur le globe), on révoque c1 à l'aide de c0, et on regénère une clef c1'. Ça permet notamment de pouvoir rapidement recréer un environnement de confiance, et de ne pas avoir besoin de rediffuser la clef à toutes les machines. -# II - Let's Encrypt +# Let's Encrypt Alors pourquoi est-ce que je vous rabats les oreilles avec tout ça ? Eh bien pour deux raisons : diff --git a/content/posts/une-flask-de-django.md b/content/posts/une-flask-de-django.md index a5a9eee..c39e1ff 100644 --- a/content/posts/une-flask-de-django.md +++ b/content/posts/une-flask-de-django.md @@ -52,7 +52,7 @@ Elle indique qu'il suffit de taper la commande suivante pour installer Flask : pip3 install --user Flask ``` -##### Le projet fil d'ariane +### Le projet fil d'ariane Si vous avez suivi l'étape précédente, vous savez qu'il faut revenir à la version du tag `"_v0_flask"` comme ceci :