Tixlegeek's DevBlog Code, Gringo, Silicium

qrcode

DALLE Mini, jouer avec de l'IA

Salutations!

dalleMini

L'IA promet des choses étranges, inquiétantes, mais toujours époustoufflantes. Des techniques de détection, aux techniques de segmentations, on est rapidement passé aux algorithmes adversaires (antagonistes), capables d'inventer des trucs avec plus ou moins de succès.

Prenons par exemple this-person-does-not-exist.com, ce site aujourd'hui plutot ancien, qui permettait, grace à Style GAN, de générer des portraits quasi-photoréalistes de personnes n'ayant jamais existé. Quand j'ai vu ça, j'ai vraiment été soufflé. Il ne sagissait plus juste de détecter approximativement la position d'un visage, ni même de générer du pathfinding, mais bel et bien de mélanger les caractéristiques de plusieurs sujets.

Et bien, depuis quelque temps, la technique a encore évolué, et en mélangeant d'autre technologies, il est désormais possible, après avoir fourni à un algorithme suffisament de données annotées (des photos avec une description de ce qu'elles contiennent), de lui faire cracher à peu près tout et n'importe quoi.

Quelques exemples:

J'ai dit à DALLE-Mini (une version légère d'un algorithme un peu plus complexe mélangeant de l'adversaire et de la contextualisation) de générer "Des hommes barbus et chauves qui bidouillent de l'électronique"... Le résultat est plutot bluffant:

dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini

Quelque détails

Les algorithmes adversaires

Les algorithmes adversaires, c'est une technique qui permet à un générateur et à un détecteur de s'entrainer (parfois mutuellement). Basiquement, disont que vous avez deux algorithmes:

Le premier est un générateur. Son but est de créer quelquechose à partir de données d'entrainement. Par exemple, on lui fourni un paquet d'images représentant des visages, et il va essayer de générer une image qui ressemble à un visage, en se basant sur son entrainement.

Le deuxièmpe est un détecteur. Son but est de détecter quelquechose dans une image, à partir de données avec lequel on l'aura entrainé au préalable. Par exemple, des visages.

Si on "branche" l'un à l'autre, ils vont pouvoir se juger entre eux, comme dans un magasin de vêtement ou tout le monde se regarde.

Le résutat, c'est que le générateur va fournir des images au détecteur. Le détecteur va fournir un pourcentage de détection au générateur, qui pourra alimenter sa propre base de donnée d'entrainement.

Bref...

Je simplifie beaucoup, parce qu'en fait; il y a plein de concepts sous-jascents qui mériteraient des explications, mais, je ne suis pas un oracle, alors je ne me lancerai pas là dedans.

Tout ce que je peux faire, c'est vous fournir des jolies images que j'ai pu générer.

dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini dalleMini

Franchement, je ne sait pas si comme moi, vous êtes un peu soufflés, mais, il faut bien vous dire que là; c'est la version Wish de DALLE (le nom de l'algo). Le vrai gros DALLE2 fait des trucs encore plus recherchés et photoréalistes.

Moi, j'ai utilisé une version légère, appelée DALLE-Mini, avec laquelle vous pouvez jouer là: Dalle-mini

J'espère que ce petit article vous aura plus, et à la prochaine! (l'article III sur le publiphone arrive :D )

Hpphckng!

qrcode

Les articles techniques vous mentent

Les articles techniques, c'est bien, se tenir à jour est primordial, et connaître de nouveaux points de vue améliore globalement les compétences de chacun; on est tous d'accord là dessus.

Cependant, il existe sur les réseaux, des gens que j'aime appeler des "Oracles techniques". Ce sont ceux qui émettent des avis péremptoires et souvent peu argumentés (ou mal argumentés) à propos de sujets qu'ils ne maîtrisent pas forcément, tout en adoptant une posture qui leur donne l'aura de grands savants. Malheureusement pour eux, et pour ceux qui boivent leurs tirades, c'est souvent beaucoup plus compliqué que ça.

La mystification et le référencement

Pour repérer un article écrit par un oracle, il faut analyser factuellement le contenu. Certains diraient que ça peut être volontaire ou pas, le résultat est le même, et la recette aussi.

Tout d'abord, il y a le titre: Polarisant et péremptoire. Il faut que l'article soit partagé et cité. Quoi de mieux qu'une affirmation violente? Le titre de mon article est un exemple: Je ne dit rien, mais je le dit fort.

Puis il y a le contenu: Composé en substance de mots-clefs prompt à assurer un référencement, et de tournures élaborées autour de grands concepts technico-commerciaux pour mystifier le propos et les arguments. En effet, la mystification permet de ne pas avoir à développer d'argumentaire techniques valables.

La verticalité des écosystèmes mono-managés permet de déployer des microstructures ad-hoc modernes et maintenables. terraform, kubernetes, aws, et openshift en sont de parfaits exemples. Leur lexique transversal est aujourd'hui la norme pour quiconque souhaite développer une infrastructure maîtrisant les services horizontaux en conservant le legacy.

Oui, le paragraphe précédent était un exemple complètement aléatoire utilisant le lexique du devops, mélangé à des trucs complètement inventés.

Le jargon et la compétence

Il y a aussi les articles qui ont un vrai but, mais qui ne contiennent rien; comme ces articles à rallonge qui vous noient sous un mélange de tout et n'importe quoi pour tenter de vous convaincre, mais qui ne font qu'égrainer des lieux communs, et des informations fausses, avant de conclure bêtement avec une formule qui laisse supposer qu'il y avait de vrais arguments dedans.

Les plateformes modernes permettent de toucher une audience plus large, et plus ciblée, parce qu'elles optimisent la rédaction et la lecture de contenu pertinent. C'est pour ça qu'elles sont idéales pour générer un contenu de qualité, mais permettent également de rendre la qualité générale du propos plus linéaire.

Si vous êtes d'accord avec ce que je viens de dire, relisez bien, parce que je n'ai absolument rien dit dans le paragraphe précédent. C'était un exemple grossier.

Une bonne veille technique

Vous devriez vous en douter maintenant, mon propos, c'est que ces oracles et leur contenu rendent la veille technique absurde, en plus de tirer lentement les compétences des gens vers le bas. Des oracles; on en voit partout, pour tout type de contenu.

Pour ma part, si un article technique commence à faire de la philosophie de comptoir sans humour, ou utilise des phrases alambiqués pour expliquer quelque-chose que je peux expliquer en deux mots simples et exacts, je commence à me méfier.

Pour savoir si vous avez été abusé par ce genre d'article, vous pouvez aussi vous demander si vous avez appris quelquechose, ou si vous avez lu l'avis de quelqu'un sans qu'il argumente clairement son propos.

Je commence à renifler ce genre d'article de loin, et je met de côté les auteurs que j'ai pris en flagrant délit. On peut facilement se laisser mystifier, mais on peut tout aussi facilement devenir des mystificateurs, en partageant et en répétant ce qu'on lit dans ces articles. Plusieurs fois, je me suis surpris à mal juger un article parce que l'auteur, volontairement ou non, utilisait une rhétorique un peu trop pédante ou péremptoire...

J'ai aussi développé une aversion pour les rockstars autoproclamées qui ressemblent un peu trop à des Steve Jobs de chez Wish.

Bref! J'espère vous avoir au moins fait marrer, et dans le meilleur des cas, vous avoir apporté des clés pour éviter de tomber dans le panneau.

HppHckng!

qrcode

Aventures sur Twitch

Salutations!

Je vous l'avais déjà dit dans mon article à propos du développement en live d'un bot twitch en BASH: récemment, je me suis lancé dans le streaming de diverses choses.

publiphone 1

Comme mon atelier est actuellement en plein déménagement (il était temps!) Je fais surtout du développement, et du graphisme. Et aujourd'hui, je vous montre un peu ce que j'ai fait!

Lire la suite...

qrcode

Mon Père

Mon père a grandi dans les années 50, dans la toute petite maison de mes grands parents, infirmière et électricien. Il deviendra lui-même électricien, bien que sa mère le voyait médecin.

En ce temps là, dans la campagne jurassienne, quand on était pauvre, on fabriquait ce dont on avait besoin. C'est dans cette campagne que mon père, et son père avant lui, ont appris à travailler le métal et le bois.

Petit, il me semblait qu'il lui suffisait de plier un morceau de tuyau rouillé pour en faire objet solide, utile, et bien pensé. Quand il avait besoin d'un support, il soudait des morceaux de métal savament choisis et découpés, ajustait à la lime, brasait à l'agent... Et POUF! ça devenait un objet magnifique et fonctionnel.

Lire la suite...

qrcode

Un bot Twitch en BASH

Salutations!

botTwitch

Hier, j'ai codé un Bot Twitch en Bash, en live sur twitch! Je fais ça souvent en ce moment, streamer sur twitch. Un peu plus tôt, j'ai entamé le développement d'un tamagotchi en C, un fil rouge que j'essaye de tenir en fin de soirée.

Alors, la vidéo complète est disponible sur Twitch, et sur Youtube. On ne s'est pas pris la tête, le rythme est tranquile, bref: ça dure 3h. Voilà ce que ça a donné:

Et, bien entendu:

Le code source est disponible ici!
qrcode

Ma boîte à "Ah!" (boîte à lambert DIY custom)

Salutations!

Vous connaissez Mozinor? c'est un mec qui fait des détournements vidéos (doublages, vfx...) un peu comme "les Nuls" dans "Le grand détournement". Bref, je suis méga fan depuis de nombreuses années.

Dans une de ses vidéos, il a inventé un objet tout à fait incroyable: "La boîte à Lambert": Ça reproduit le rire de Christophe Lambert, et ça fait peur aux chiens.

Bien entendu, j'ai repris le principe dans plusieurs projets à travers les années, dont j'ai pu trouver de flamboyants témoignages(non).

Ici, par exemple, un prototype à base d'ATMega32 (pwm -> lpf ) de 2015 que je n'ai jamais terminé. J'en avais fait un autre avant ça qui a lui aussi rejoint les tiroirs en pièces détachées.

Plus tard (en 2018), j'ai retenté l'expérience, avec une approche différente, et en ai tiré un "produit fini", dans une jolie boîte en alu.

Ce modèle était bien marrant, mais, à ce stade, je commençait à sérieusement détester ce bon Christophe. Du coup, j'ai récupéré des enregistrements du "Ah!" de Denis Brogniart, la transformant de ce fait en boîte à "Ah!"

Cette vidéo immonde provient du dossier "WEBCAM" de la sauvaguarde de mon PC de l'époque, autant vous dire que même si j'avais fait des efforts de montage, ça aurait été dégueulasse. Désolé pour ça!

Je ne peux pas me barrer comme ça sans vous parler de projets similaires... En particulier celui-ci qui est très ancien, et surtout ultra bien fait. Tobozo a lui aussi tenté l'expérience avec une version Arduino

Du coup j'ai entrepris de revisiter le principe, pour fabriquer des boîtes à "Ah!", genre en kit ou pré-montées.

Hpphckng!

qrcode

[MUSIQUE] RTC (bo Publiphone)

Salutations!

Pour la vidéo de l'autopsie du publiphone, j'ai fait une musique originale. Je ne l'avais pas publiée sur mon blog, mais, elle traîne sur youtube depuis un moment. Du coup la voilà!

Hpphckng!

qrcode

[publiphone] Partie I: Autopsie

Salutations!

publiphone 1

Ceci est le premier vrai article de ma série à propos de mon publiphone. Comme je vous le disais dans l'introduction, j'ai démonté mon pubiphone en live sur twitch... Malheureusement, c'était ma première fois, et je n'ai rien enregistré du stream... Cependant, j'ai re-filmé l'essentiel, et en ai fait une vidéo dans laquelle j'ai mis tout mon petit coeur! <3

Les autres articles sur le sujet:

Introduction Partie I: Autopsie

Alors, je vais essayer d'organiser un peu les trucs que j'ai à vous montrer. Tout d'abbord, la machine est un terminal France-Télécom de 1999, elle pèse 8,1Kg, et elle dispose d'un lecteur de carte à puce et d'un lecteur de carte à bande magnétique.

Lire la suite...

qrcode

[publiphone] Introduction

Salutations!

Je débute une petite série à propos d'une récente acquisition, mais, avant, il faut que je vous explique. Cet article est l'introduction à cette série.

Les autres articles sur le sujet:

Introduction Partie I: Autopsie
publiphone 1

Les stickers... vous savez probablement comment ça se passe: On en récupère quelques-uns, on commence à les coller, puis, on les stoque, puis rapidement, on les collectionne, puis, ils finissent dans une boîte, à l'abri de la lumière, en attendant de finir dans une enveloppe ou sur une machine. Les coller sur les machines, c'est rigolo, mais, un ordinateur a une durée de vie limitée, et, souvent, une fois collé, le sticker finit sa vie recyclé. Dommage!

Les stickers

Je vous dis ça en partant du principe que comme moi, vous avez développé le syndrome du sticker en évoluant dans le milieu de l'informatique... Ici, on ne parle pas de gommettes, ou de stickers achetés en lot sur amazon. Le sticker, c'est sérieux.

Il y aurait tant à dire à propos des stickers... C'est tout con comme idée, mais, dans les faits, ça se traduit par un genre de pokémon-Go IRL qui dure depuis des années.

On les trouve dans les évènements et les réunions, dans des correspondances avec des gens, dans certains emballages... Ils sont toujours publicitaires, ou revendicatifs, mais, très souvent, ce sont aussi des témoignages d'une époque, ou des souvenirs, qu'ils matérialisent, et qu'on peut coller et afficher un peu partout.

Moi, mes stickers, je les aime, je les colle sur mes machines, et, parfois je les envoie à des potes, mais, en vrai, beaucoup d'entre eux, que je considère comme "particulièrement rare" (non) ou auxquels je suis inexplicablement attaché, ont fini dans la fameuse boîte.

Pourquoi je vous parle de stickers moi déjà? Ah oui: Mon publiphone

Mon délire avec les cabines téléphoniques

Je suis obsédé par les machines, et tout particulièrement par les machines permettant de communiquer/automatiser. Je n'ai rien d'autre à dire là-dessus; j'adore le matos télécom, et je trouve les terminaux de cabine téléphonique (publiphones) particulièrement cyberpunk.

Ensuite, j'ai vu le payphone de @IfNotPike:

autre tweet autre tweet

Rapidement, mon cerveau à commencé à fondre, et, j'ai acheté une cabine téléphonique.

Enfin, plus exactement, pendant des mois, j'ai scruté leboncoin, ebay, et ces sites là à la recherche de la perle rare, que j'ai fini par trouver: Un terminal France Télécom de 1999 (moderne) à télécarte, avec un lecteur de piste pour le paiement par CB. Ça m'a couté 100€ de mon précieux argent (aucun regret) et j'ai dans l'idée de construire une cabine autour.

C'est quoi l'idée, au final?

Pour ceux qui n'auraient pas vu mes grosses ficelles, je vais utiliser ce terminal pour coller mes stickers, et le pimper un peu. Ça sera mon payphone sacerdotal. Je pourrai l'installer dans mon salon, ou l'emmener partout avec moi et on deviendra les meilleurs amis.

Dans un premier temps, je l'ai démonté et analysé en live sur Twitch, et, @furrtek à proposé de dumper la flash, mais ça c'est pour un autre article. (teasing au top)

Je dois aussi penser à la cabine que je dois fabriquer autour... Ça ne va pas être simple. Je n'ai pas spécialement envie de faire une reproduction, ou un truc historiquement réaliste. Je vais me contenter de faire quelque chose de pratique, pas chère, et jolie (pour mettre en valeur mes stickers)

J'ai commencé à chercher quelques références, pour choisir la forme générale, et commencer à dresser des plans:

payphones

Grosso-modoo, je vois trois éléments principaux (flèches):

  • Une tablette située sous le terminal, d'une vingtaine de centimètres de profondeur
  • Un toit Souvent plus large, ou de forme stylisée. Je voudrais y mettre de la lumière.
  • Deux paneaux située sur les côtés. J'aime tous les styles, mais, pour des raisons pratiques, je crois que je vais rester sur le modèle américain (en remplaçanttl'alu par du contreplaqué)

Bref, voilà l'idée. Je fais un article sur le démontage, et, vous donne des nouvelles d'ici peu!

HppHckng!

qrcode

J'ai changé le moteur de mon blog.

Salutations!

Il s'est passé pas mal de chose ces derniers temps. J'ai mis en pause le dev TWatch (mais, j'y reviens bientôt), et j'ai codé un moteur tout neuf à mon blog :D. Exit Dotclear, qui a sérieusement mal vieilli.

Mon nouveau jouet fait 3.3ko, il est écrit en php sans aucune dépendance à la con, ou autre parasite opérationnel, stockage flat-file. Je dis ça, mais, je n'ai pas dans l'idée d'ouvrir le code tout de suite (parce qu'il faut que je passe l'aspirateur).
Cette fois, comme je l'ai codé de mes mains, je ne pourrai plus me plaindre de rien, et je n'aurai plus à lire le code crado d'autre gens.

Tout ça pour dire que, malgré les apparences, je n'ai pas chaumé. Je suis entrain de préparer une note pour vous présenter ma dernière acquisition; un Publiphone FT que j'ai démonté en live sur twitch, je vous racconterai ça plus tard.