Programmez
Le fil de programmez.com
-
Zork : mémoire virtuelle et « machine virtuelle » en… 1979
Les développeurs de Zork doivent imaginer des concepts avancés pour exécuter un code qui dépasse les capacités de la RAM et permettre un portage très jeu. Le code ne change pas ou presque. Il est exécuté par la Z-Machine. Nous sommes en 1979.

Zork, ce nom appartient à la mythologie des jeux vidéo. La toute première version sort en 1980 : Zork I The Great Underground Empire. Il s’agit d’un jeu interactif 100 % textuel. On navigue, on interagit par des mots, des phrases.
Le joueur est un aventurier. Il se retrouve dans un royaume souterrain. Il part à la recherche de trésors et de richesses. Il faut résoudre des énigmes, combattre des monstres et explorer les souterrains. Un des défis est de trouver de la lumière et bien entendu, de rester en vie…
Les créateurs, des étudiants au MIT, étaient des amateurs de jeux de rôle et de Donjons & Dragons… Zork I marque véritablement une petite révolution dans le jeu et est le précurseur des jeux d’aventures qui vont suivre. Il a fallu presque 3 ans de développement. Le tout premier nom du jeu était Dungeon.
Un énorme travail a été réalisé pour construire un monde cohérent avec l’empereur, les paysages, une monnaie, des religions, des habitants, etc. Une des difficultés dans la conception fut la programmation d’un interpréteur syntaxique qui puisse reconnaître et comprendre les phrases des utilisateurs. Pour structurer leur travail, les développeurs créent une société de développement fin 79. Quelques semaines plus tard, Zork I sort sur le marché sur toutes les principales machines du marché. Le succès sera immédiat et énorme : +1 million d’unités vendues !
La saga
Zork I : The great underground empire, 1980
Zork II : the wizard of Frobozz, 1981
Zork III : the dungeon master, 1982
Beyond Zork, 1987
Zork Zero, 1988
Plusieurs autres jeux peuvent se rattacher au monde de Zork, comme Return to Zork ou Zork Nemesis.

Une idée géniale
L’idée de base est géniale : avec des commandes, des verbes, des mots simples, le joueur navigue dans le jeu et interagit avec lui. Mais l’interaction se fait aussi, comme nous l’avons évoqué plus haut, avec de véritables phrases : opening the small box.
Les créateurs de Zork jouaient à Adventure, le précurseur sorti en 1976. Mais le jeu était moins ambitieux et très limité. Les commandes ne pouvaient pas dépasser deux mots. Mais Adventure créa un nouveau marché.
Zork, comme Adventure, fut tout d’abord écrit en langage MDL pour le PDP-10 (construit par DEC), un énorme ordinateur, très utilisé dans les universités. C’est pour cela que les premières versions du jeu étaient accessibles uniquement sur une machine PDP-10, à travers une connexion Arpanet (l’ancêtre d’Internet). Le fait d’utiliser un mainframe pour jouer n’était pas l’idéal. Avec les premiers micro-ordinateurs familiaux, un énorme marché commençait à s’ouvrir.

Comment porter rapidement ?
Pour pouvoir plus facilement porter le jeu et avoir un modèle de programmation souple, l’équipe va créer leur propre langage : ZIL (Zork Implementation Language). ZIL s’inspire du langage initial : MDL (MIT Design Language), lui-même s’appuyant sur LISP. Pour les développeurs, il fallait aussi exécuter le jeu sur des machines beaucoup moins puissantes que le PDP-10. L’Apple II ou le TRS-80 n’embarquaient que 32 Ko en standard, voire moins. Pour réussir ce tour de force, il a fallu réduire le nombre de pièces, d’objets disponibles et le vocabulaire du jeu.
Pour faciliter le portage sur les multiples micro-ordinateurs du marché, l’équipe va créer une machine virtuelle pour assurer une abstraction, la Z-machine. Seule la Z-machine est réécrite et optimisée, en code assembleur, sur chaque plateforme matérielle.
Le cœur du code de Zork ne change pas, ou très peu. Un compilateur, optimisé pour chaque plateforme, était utilisé pour compiler le jeu. La Z-machine devait « juste » supporter les binaires ZIL.
L’interpréteur du jeu et le fichier contenant la carte, les objets et tous les éléments du gameplay, nécessitaient 77 Ko. Mais la plupart des micro-ordinateurs ne disposaient pas de cette mémoire vive. Il a fallu développer une sorte de mémoire virtuelle et utiliser moins de mémoire dynamique pour le gameplay (à tout moment, le joueur doit savoir où il est et les objets dont il dispose).
Bibliographie
https://www.filfre.net/2012/01/zil-and-the-z-machine/
https://www.gamasutra.com/view/feature/1499/the_history_of_zork.php?print=1
http://inform-fiction.org/zmachine/standards/z1point1/appd.html
Z-Machine documentation
Pour découvrir l'histoire de la micro-informatique, lisez Technosaures : https://www.programmez.com/catalogue/technosaures
Catégorie actualité:Image actualité AMP:
-
Visual Studio Code 1.129 disponible : agent host, nouveau panneau, Modern UI
Visual Studio Code 1.129 est déjà là. Les principales nouveautés sont :
- agent host : "Nous repensons le fonctionnement des sessions d'agent dans VS Code autour de l'hôte d'agent : un processus dédié qui exécute des agent tels que Copilot, Claude et Codex, basés sur le protocole AHP (Agent Host Protocol). Puisqu'une session s'exécute dans son propre processus, il est possible de se connecter et d'afficher la même session simultanément depuis plusieurs fenêtres VS Code. L'agent Copilot de l'hôte d'agent est basé sur le SDK Copilot, ce qui garantit son comportement et ses fonctionnalités, identiques à ceux de l'interface de ligne de commande Copilot, de l'application Copilot autonome sur GitHub et des autres produits Copilot."
- nouveau panneau dans la fenêtre Agents (expérimental) : la fenêtre peut afficher une conversation avec un agent avec tous les détails des fichiers et des modifications que l'agent génère. Cette version introduit un panneau d'éditeur repensé qui regroupe l'éditeur et la zone de détails dans un seul volet ancré avec une barre d'onglets partagée. Ainsi, consulter le travail d'un agent s'apparente à travailler dans l'éditeur principal, sans avoir à jongler entre plusieurs panneaux. On peut par exemple ouvrir directement des fichiers et voires les différences, revue des changements dans la vue Changes.
- outils de gestion des sessions pour les sessions agent hosts.
- dans Chat : exécuter les commandes terminal avec le préfixe ! dans un prompt chat !
- migrer les fichiers de prompt dans des skills (expérimental).
L'autre nouveauté est l'apparition d'une pré-version Modern UI.

Note de version : https://code.visualstudio.com/updates/v1_129
Catégorie actualité:Image actualité AMP:
-
GitHub Mobile prend en charge les live notifications pour les sessions distances Copilot CLI
GitHub annonce que l'on est connecté aux sessions Copilot CLI où que l'on soit. GitHub Mobile supporte les notifications en direct pour les sessions distantes Copilot CLI. On peut ainsi voir l'avancement des tracks, connaître ce qu'il faut en entrée, revenir en arrière sur les logs d'une session. Cette fonction est disponible sur Android et iOS.
"Lorsqu'une session Copilot CLI est exécutée à distance, GitHub Mobile peut afficher des mises à jour en temps réel directement sur votre téléphone afin que vous puissiez suivre la progression, savoir quand l'agent a besoin de votre intervention et reprendre la session en cas de besoin." explique GitHub.
Annonce : https://github.blog/changelog/2026-07-08-github-mobile-live-notifications-for-copilot-cli-sessions/
Catégorie actualité:Image actualité AMP:
-
.Net 8 et .Net 9 : fin du support le 10 novembre 2026
Microsoft annonce que .Net 9 et .Net 10 se seront plus supportés à partir du 10 novembre. Plus aucun patch de sécurité ou de maintenance sera proposé. L'éditeur recommande de migrer dès que possible vers .Net 10, version LTS supportée jusqu'en novembre 2028.
En résumé :
.Net 8 : LTS, 10 novembre 2026
.Net 9 : non LTS, 10 novembre 2026
.Net 10 : LTS, novembre 2028
Au-delà du 10 novembre :
- les applications buildées sur .Net 8 ou 9 continueront à fonctionner
- plus de mise à jour de sécurité
- plus de support technique
Sur Visual Studio, ces versions seront marquées en fin de support.
Pour upgrader en .Net 10 :
<PropertyGroup><TargetFramework>net10.0</TargetFramework></PropertyGroup>Catégorie actualité:Image actualité AMP:
-
COSMIC teste l'effet Frosted Glass
Sans le dire, la nouvelle interface d'Apple, Liquid Glass, influence peu à peu les designers et les environnements graphiques des autres OS. L'environnement COSMIC introduit l'effect Frosted Glass. Il s'inspire largement de l'UI d'Apple pour le rendu translucide des éléments même si cette couche graphique est avant tout visuelle. Les premiers tests semblent plutôt positifs.
Pour l'activer, il faut passer les paramètres d'apparence. On peut choisir le niveau d'opacité. Selon 9to5Linux, l'effet fonctionne encore mieux avec le mode sombre.
Cette nouveauté est proposée par la distribution Pop!_OS 24.04.
Site : https://system76.com/pop/download/
Catégorie actualité:Image actualité AMP:
-
Canicule : comment les datacenters réduisent les risques ?
La canicule touche aussi les datacenters qui ont besoin de refroidir les salles et les serveurs. Comment le font-ils ?
Thomas Hombert d'Etix nous en parle :
Catégorie actualité:Image actualité AMP:
-
Avons-nous encore besoin d'un développeur senior ?
Martin Lippert échange longuement sur le sujet "est-ce que l'on a (encore) besoin d'un développeur senior ?". Martin parle de Java, des évolutions des IDE Java, de Spring Tools, de l'impact de l'IA, du vibe coding, du futur de Java et de l'architecture logicielle à l'ère de l'IA.
De nombreux sujets sont abordés : gloire et chute d'Eclipse, les LSP, comment l'IA à changer le développement Java, Cursor et la revue de code, eco-conception et consommation de l'IA... Un des aspects a été l'impact de Visual Studio sur le marché des éditeurs et des IDE.
Si Martin dit utiliser Cursor et d'autres outils IA, il met aussi en garde contre la perte de compétence et la capacité d'un développeur à juger un code.
Spoiler : le développeur senior sera toujours là. Il peut apporter une vision globale, une compréhension de l'architecture, etc.
Il donne quelques conseils : bien dimensionner les ressources utilisées, éteindre les CI/CD quand ils ne sont pas utilisés, choisir le bon modèle plutôt que d'utiliser les LLM généralistes ou trop gros.
Catégorie actualité:Image actualité AMP:
-
Codex Micro : OpenAI sort un mini clavier pour Codex à 230 $
Depuis des mois, on attendait la sortie des premiers matériels OpenAI. Non pas avec Jony Ive, ex-designer en chef d'Apple, mais avec un petit constructeur de claviers : Work Louder. Comme le rappelle Mac4Ever, ce Codex Micro reprend la structure du Creator Mico 2. Il est minimaliste :
13 touches
USB-C
Rétro-éclairé
Mini-joystick
Molette
Lot 32 touches supplémentaires
"Conçu avec Work Louder, le kbd-1.0-codex-micro qui met votre espace de travail d’agent à portée de main. Gardez vos discussions actives à portée de main, voyez ce que fait chaque agent grâce à des retours RGB en direct et associez vos actions Codex les plus utilisées à des commandes tactiles conçues pour votre façon réelle de livrer. " explique OpenAI.

L'intérêt de cet objet est de déclencher des actions Codex, de naviguer rapidement dans les fonctions OpenAI.
A 230 $, il faut lui trouver une utilité. Théoriquement vous pouvez le commander. Pas de prix en €. Stock limité.
Catégorie actualité:Image actualité AMP:
-
DevCon #28 sécurité édition 2027 : l'appel à sessions est ouvert
Le magazine Programmez! organise sa prochaine conférence DevCon #28 le 10 décembre au campus ESGI Paris. 5h de conférence, 5 à 6 sessions.
Le thème :- Sécurité, AppSec, DevSecOps- OWASP- Hacking, hacking hardware- Post-quantique- IA & sécurité- sécurité du code, Kubernetes, conteneurs- comprendre une attaque et savoir la contrer- protéger la supply chain developer (PyPi, NPM, GitHub, etc.)Audiences : les étudiants de l'école, les développeurs, CTO et tech load2 formats de sessions :- standard : 45 minutes- quickie : 20-25 minutesATTENTION : session en Français uniquement, les slides peuvent être en Anglais.L'appel à sessions (CFP) est ouvert jusqu'au 2 octobre. L'agenda sera publiée sur programmez.com et meetup.com avant fin avril. Ce CFP peut se clore avant la date.Pour proposer une session :- titre- résumé de la session- les mots clés- nom, prénom, mini-bioPour toutes questions sur la DevCon, contactez la rédaction : ftonic@programmez.comFormulaire pour soumettre votre session : https://forms.gle/TKfLBXYHX5ynCD7p9
Catégorie actualité:Image actualité AMP:
-
ReSharper et Rider : JetBrains annonce les versions 2026.2
JetBrains distribue les versions 2026.2 RC et 2026.2 RC de ses outils ReSharper et Rider. ReSharper est une extension pour Visual Studio, Rider est un IDE .Net.
ReSharp 2026.2 RC
Les principales nouveautés sont :
- support du protocole ACP
- Apparition de Junie
- amélioration de l'analyse C#
- intégration de l'analyser Roslyn
- C++ 26 support de la reflection, constexpri, ISPC
- meilleure gestion mémoire de .cshtml et .razor
Annonce : https://blog.jetbrains.com/dotnet/2026/07/15/resharper-2026-2-release-candidate-released/
Rider 2026.2 RC
Cette version annonce de belles évolutions :
- connexion entre les Agent skills et les agents IA
- support des agent skills .Net, Aspire et Azure
- optimisation du démarrage du debugger, moins de mémoire consommée
- indexation des projets C++ Unity jusqu'à 2x
- fenêtre NuGet revue
- Nouvelle catégorie Game Development dans New Project
- support de Natvis sur Linux et macOS
- support de TypeScript 7
Annonce : https://blog.jetbrains.com/dotnet/2026/07/15/rider-2026-2-release-candidate-is-out/
Catégorie actualité:Image actualité AMP: