Problème géométrique

Qu’est-ce qu’est plus stimulant pour le cerveau humain qu’un petit problème de géométrie. Généralement ce genre de problème en géométrie ne fait pas abondance dans le cursus Algérien selon mon observation, ainsi ça sera pour vous du nouveau, rafraîchissant et 100% de l’intelligence.

Problème en géométrie

Simulateur de vol Flight Simulator

Contrairement à ce que peuvent laisser penser quelques écritures dans les magazines et blogs de jeux vidéo, Flight Simulateur n’est pas un jeux vidéo à proprement dit, mais plutôt un simulateur de vol très réaliste, simulant le plus fidèlement possible le pilotage d’avions réels avec tout ce qu’un avion peut comporter comme commandes et comportements, incluant le volant de contrôle, les leviers de gaz, les pédales, un aperçu réaliste sur le cockpit avec une vue sur les contrôles de navigation, comme l’altitude, la pression atmosphérique, la vitesse du vent, même avec une simulation de la communication avec les tours de contrôle…etc.

En fait, Flight Simulateur est une licence de Microsoft très très ancienne, du temps de MS-DOS en vrai, cependant il est dans cet article de parler de la dernière version de 2020, appelée simplement aussi Flight Simulator. La principale innovation de cette version qui nous intéresse réellement, c’est que pour la première fois dans l’histoire, Microsoft a réussi à faire une modélisation totale de la planète terre en 3d avec une échelle réelle de 1:1. Toute la planète est pour la première fois modélisée avec ses villes, ses océans, ses montagnes, tous ses paysages…etc, ça vient de détrôner Google Earth de Google jusque-là étant la représentation la plus fidèle de la terre, avec une couverture globale d’images satellites de celle-ci. Le simulateur a poussé encore le réalisme plus loin en ajoutant la possibilité de représenter en temps réel le fuseau horaire de l’endroit où on se trouve et simuler le jour et la nuit et les conditions météorologiques réelles de l’endroit. Les images photoréalistes en bas donnent un aperçu sur ce que l’application est capable de produire. Les images ne sont pas des images de synthèse mais elles sont rendues en temps réel par la carte graphique.

Techniquement parlant l’exploit n’était pas facile, modéliser la terre en 3d avait demandé à Microsoft beaucoup de ressources. Pour faire une modélisation 3d en manuelle en utilisant seulement les ressources humaines financièrement c’est pharamineux, ce qui a poussé Microsoft à s’appuyer grandement sur l’intelligence artificielle. Effectivement à l’aide de ses serveurs Azure cloud services pour les ressources en calculs, ajoutant à cela ses images satellites de Bing map (le concurrent de Google Earth), et mettant des opérateurs humains pour superviser l’intelligence artificielle, tout ça a permis sur une grande échelle à réaliser cet exploit. Néanmoins beaucoup de travail reste à faire et beaucoup de zones de la terre ne sont pas encore parfaitement modélisées, mais d’après Microsoft des équipes dédiées pour cela continuent le travail pour encore pas mal de temps, peut-être pour des années pour réussir la modélisation à 100% de la terre, néanmoins ça reste une première mondiale. La vidéo en bas donne un aperçu sur le fonctionnement du simulateur.

Flight Simulator vs reality

Le future du hardware par John Hennessy

La vidéo suivante est une sorte d’état de l’art sur la conception hardware et l’architecture des ordinateurs, le terme état de l’art dans la recherche scientifique fait référence à un résumé sur l’historique de l’évolution d’une technologie donnée englobant le plus souvent les deux aspects; recherche et commercial, ça couvre généralement les principales avancées technologiques, en habituellement une perspective sur les principales voies d’évolution future possible pour cette technologie. Ainsi cette vidéo est plutôt orientée aux chercheurs et experts dans le domaine de la conception hardware plus qu’aux étudiants en première et deuxième année informatique, néanmoins c’est une excellente vidéo dans le sens qu’elle permet de casser la vision pompeuse des messages publicitaires des firmes technologiques comme Intel, AMD ou Nvidia, et met en évidence les réelles limitations des architectures actuelles.

John Hennessy sur le future des architectures matérielles

La présentation est faite dans la conférence Google I/O organisée annuellement par Google, et c’est présenté par celui qui est déjà mentionné dans le titre John Hennessy, un monument dans le domaine, pour ne pas dire le monument. Dans le domaine académique, il est connu surtout pour ses livres références coécrits avec David Patterson; Computer Organization and Design et Computer Architecture: A Quantitative Approach, littéralement les deux références dans le domaine. Il est aussi connu pour être pour plusieurs années le président de l’université de Stanford. Mais au-delà de ça il est surtout connu dans la recherche pour avoir développé le modèle RISC des processeurs qui représente aujourd’hui 99% des processeurs modernes, ce modèle lui a permis de fonder la société MIPS Technologies responsable de la fabrication des fameux processeurs MIPS, ces travaux lui ont valu avec David Patterson en 2017 le prestigieux prix de Turing, l’équivalent du prix Nobel en informatique. Actuellement il est le président de Alphabet Inc. maison mère de Google.

Beardboard et le prototypagage en électronique

Le breadboard, ou maquette de prototypage en Français, est un dispositif comme son nom l’indique permet de faire le prototypage des circuits électroniques, c’est très pratique dans le sens où ça permet aux électroniciens, aux étudiants ou aux amateurs de tester leurs circuits très rapidement sans avoir construire un PCB (carte électronique) et souder les composants, c’est comme en programmation, un programme a besoin de débogage, en électronique un circuit a besoin de prototypage. La vidéo suivante est un très bon tutoriel pour comprendre comment utiliser le breadboard.

Tutoriel sur le Breadboard

Samy Kamkar et le Reverse Engineering

Samy Kamkar est le nom d’un ancien hacker très reconnu, actuellement c’est un expert et consultant en sécurité informatique et vie privée. Samy Kamkar était surtout connu dans sa jeunesse comme le hacker qui a créé le worm ou le virus avec la propagation la plus rapide de tous les temps, c’était le worm Samy, consistant à infecter le réseau social MySpace en 2005, à une époque où il n’y avait pas encore FaceBook et et que MySpace était l’un des sites les plus populaires au monde, même plus que Google. Le virus en question était relativement inoffensif, mine de rien il a causé le shutdown (arrêt temporaire) de MySpace et interpellation de Samy par les services secrets américains avec une punition de ne pas approcher d’appareils informatique ni d’internet pour une période de 3 ans.

wallhack dans Counter Strike : Global Offensive

Samy Kamkar est aussi connu pour l’invention de l’un des hacks actuellement les plus célèbres dans le monde du jeu vidéo, c’est le wall-hack (wall c’est mur en Français), un hack qui permet aux joueurs de tricher dans les jeux multijoueur online. Le wall-hack littéralement permet au tricheur de scanner les murs et de voir la position des adversaires cachés derrière les murs, l’image en haut est un exemple d’un wall-hack dans le jeu Counter Strike. Justement, c’est sur le jeu Counter Strike que Samy Kamkar a eu l’idée de créer ce hack, lors d’une de ses parties il a r emarqué que le son des pas de ses adversaires pouvait être entendu derrière les murs sans autant les voir, il a eu la clairvoyance de constater que l’information sur ses adversaires en réseaux puisque il arrive à les entendre, est sans doute parvenue à sa machine, il lui suffisait juste de chercher cette information sur la RAM de la machine en utilisant l’un des programmes appelés moniteurs. Ces programmes permettent la visualisation des données brutes en temps réel des logiciels s’exécutant dans la RAM, un travail d’investigation et d’analyser des données brutes est nécessaire pour trouver la position des joueurs adverses, Samy alors a eu l’idée d’observer que le son des pas entendu est stéréo sur deux baffes, si le joueur était à droite la baffe de droite émettait un son plus intense que celle de gauche et inversement, il a réussi à trouver les valeurs d’intensité des deux sons dans le tas de données, et avec un simple calcul de triangulation géométrique il a pu extraire la position du joueur adverse.

Reverse Engineering avec RSamy Kamkar

Le hack en soi reste un sujet très controversé, en raison qu’il peut effectivement être utilisé pour des fins maléfiques, comme par exemple le piratage, l’accès à des informations privées et confidentielles, le détournement d’argent et systèmes de paiement, les cybers attaques, la tricherie…etc. Mais pour d’autres c’est un phénomène culturel qui ne concerne pas que l’informatique, mais plutôt l’aspect lorsqu’un individu apprécie le challenge intellectuel de créativité surmontant les limitations d’un software, d’un appareil, d’une machine…etc, afin d’arriver à des fonctionnalités nouvelles plus innovantes (c’est la définition donnée sur Wikipédia). Certains pensent que l’esprit de cette culture est fidèlement et simplement représenté par l’ancienne série télévisée MacGyver. Dans tous les cas le hack généralement implique l’utilisation d’un système d’une manière autre que celle qu’il a été développé à la base pour avoir des fonctionnalités nouvelles, pour le faire le hacker doit avoir une compréhension approfondie et accrue du système.

Sur la vidéo en haut Samy Kamkar donne quelques conseils et directives sur la méthode et les outils nécessaire pour faire du hack matériel et le reverse engineering. La vidéo est une interview de Samy Kamkar donnée à la suite de la conférence tenue par l’association hackaday, dans laquelle il a présenté un hack sur les clés intelligentes de voiture (en Anglais key fob ou smart key), c’est le type de clés qui permettent de déverrouiller sa voiture en étant à proximité de celle-ci sans avoir à utiliser la clé, d’allumer automatiquement les feux, et d’autres fonctionnalités.

Portes logiques

Les composants élémentaires de base lors de la conception d’un circuit électronique numérique, que ça soit un processeur, un microcontrôleur, une puce graphique, une carte son, un contrôleur réseau…etc, est sans doute les portes logiques. La conception de ce genre de matériel est un processus d’assemblage et de connexion peut être d’une centaine, millier, million, et même milliard de portes logiques par exemple les derniers processeurs modernes. Mine de rien on peut dénombrer seulement quelques types de ces portes logiques qui sont en plus très simples à comprendre leurs manières de fonctionner. La vidéo suivante de la chaîne éducative Computerphile explique le fonctionnement des trois principaux types de ces portes qui sont le AND, le OR et le NOT. Il est bon de rappeler que dans l’électronique numérique les valeurs binaires 0 et 1 sont réellement des valeurs physiques représentées par un voltage électronique, par exemple 0 volt peut représenter le 0 logique et 5 volts le 1 logique, la famille par exemple des circuits TTL utilisent ce standard.

Les portes logiques AND, OR et NOT

Il est totalement légitime de se poser la question que normalement il est connu que les composants élémentaires pour la construction disons par exemple des processeurs sont les transistors et non les portes logiques, et que généralement on évalue la complexité de ces circuits par le nombre de transistors et non le nombre de portes logiques. C’est vrai dans le sens où les portes logiques sont construites à base de transistors, par exemple la porte AND peut être construite à partir de 6 transistors, mais sur un point de vue logique, le transistor en lui tout seul ne peut pas faire d’opération logique, l’opération logique en elle-même représente l’élément unitaire basique pour faire le traitement sur l’information binaire (0 et 1), sachant que par définition l’informatique c’est le traitement automatique de l’information, qui est sous représentation binaire, par une machine qui est elle électronique pour ces temps modernes.

Commandes basiques dans Linux

Il est bien connu dans la culture informatique que Linux dispose d’un terminal (appelé aussi invite de commande) très puissant et très populaire. Le terminal est littéralement l’interface textuelle permettant à l’utilisateur de commander son système d’exploitation, en d’autres mots ça permet de manipuler l’ordinateur en tapant des commandes. Techniquement parlent cette interface est appelée CLI pour Commad-Line Interface, contrairement à l’interface la plus répondue actuellement qui se base sur l’utilisation de la sourie pour interagir avec une interface graphique constituée de boutons, des barres de défilement, d’onglets, de fenêtres…etc, qui est elle appelée GUI (pour Graphical User Interface).

Tutoriel basique sur les commandes Linux

La vidéo en déçus correspond à un petit tutoriel d’introduction au terminal de Linux, réellement Linux en dispose de plusieurs terminaux, la vidéo présente l’un des plus célèbres entre eux qui est le bash, avec lequel il est même possible de programmer des scripts. Vous pouvez pratiquer en parallèle avec le tutoriel sans avoir à installer Linux ni de machines virtuelle avec le shell online cb.vu (shell est une autre appellation pour invite de commande).

L’inventeur du C++

Un petit mot de l’inventeur de l’un des plus célèbres langages de programmation qui est le C++. La vidéo suivante est une interview de Bjarne Stroustrup l’inventeur et le concepteur du C++. À travers les questions posées, Bjarne Stroustrup expose sa vision et les motifs qui l’ont poussé à créer le C++, il met aussi en évidence le point fort du langage par rapport aux autres, qui est sa robustesse par le fait qu’un programme écrit dans ce langage peut tenir des dizaines d’années sans anomalie ou avoir besoin de l’entretenir ou de le changer.

Les fractales de Mandelbrot

En mathématiques, les fractales peuvent être grossièrement définis comme des formes géométrique qui se répètent à l’infinie en zoomant sur les bords de ces formes géométriques, vous pouvez voir une illustration sur l’image animée en bas. Le plus étonnant c’est que pour un non connaisseur des fractales il va supposer que ce sont des animations psychédéliques (envoûtantes) créées par un artiste quelconque, alors qu’en réalité ce sont des constructions purement mathématiques de création divine, cachées dans des formules mathématiques que les humains n’ont soupçonné l’existence qu’à partir de l’année 1978, sur une première image produite par le mathématicien Benoit Mandelbrot.

La vidéo en bas produite par l’excellente chaîne Youtube de mathématique Numberphile, fait la démonstration étape par étape d’une manière très simpliste la construction d’une image des fractales de Mandelbrot en passant par les fractales de Julia, qui sont comme vous allez le voir tous les deux très proches et très similaires. Effectivement, une image de Mandelbrot ou de Julia est formée sur la base d’une formule mathématique très simple, pour Julia c’est la suite Zn+1= Zn2+C où Z est une variable complexe et C une constante complexe, l’image produite indique pour chaque point/pixel (un point c’est la valeur de Z) sur le repaire en 2 dimensions des nombres complexes si la suite sur ce point converge (stable) ou diverge (instable, tends vers l’infinie). Pour l’image de Mandelbrot c’est exactement la même suite sauf que cette fois la valeur initiale de la suite est toujours 0 et c’est C qui change sur tous les points de l’image, si la suite converge le point est de couleur noir, sinon ce sont des nuances de couleurs en rapport avec la vitesse de divergence.

L’ensemble de Mandelbrot

Paradoxalement l’animation de zoom et les figures géométriques semblent très complexes, en réalité sa formule mathématique et sa programmation sur ordinateur sont très simples, et n’exige que peu d’efforts. Je vous donne le lien d’un logiciel déjà programmé, c’est le logiciel Xaos, il vous permet d’explorer par vous-même la cartographie de l’ensemble de Mandelbrot, que même jusqu’à ce jour beaucoup de mathématicien tentent de résoudre l’énigme de la formation de ces fractales.

Comment faire une bonne soudure

Il suffit d’une simple image pour résumé une longue explication pour comment faire correctement une bonne soudure (il s’agit de la soudure en électronique). Malgré que le site soit globalement destiné aux étudiants en l’informatique cela-dit en informatique lorsqu’il s’agit de conception hardware on est souvent mené à concevoir des circuits électroniques numériques et à les construites sur des PCB (cartes électroniques sur circuit imprimé), ainsi l’aboutissement final d’une conception numérique est la réalisation physique électronique du circuit.

Faire une bonne soudure

L’image en question en haut est très explicite, pour faire une bonne soudure il faut premièrement chauffer à sec la patte du composant et la trace sur le PCB de 2 à 3 secondes, deuxièmement on rajoute l’éteint, troisièmement on chauffe encore de 1 à 2 secondes, et après on laisse refroidir. La partie en bas sur l’image fait la comparaison entre une bonne soudure avec d’autres qui sont mal faits.