<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Cours de Valentin Brosseau : nouveautés</title>
    <link>https://cours.brosseau.ovh/nouveautes.html</link>
    <atom:link href="https://cours.brosseau.ovh/rss.xml" rel="self" type="application/rss+xml" />
    <description>Les derniers supports créés ou mis à jour : TP, cours et aide-mémoires.</description>
    <language>fr-FR</language>
    <lastBuildDate>Sun, 08 Nov 2026 17:08:17 GMT</lastBuildDate>
    <item>
      <title>iOS sans Mac : préparer la dev-box</title>
      <link>https://cours.brosseau.ovh/tp/ios/introduction.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/ios/introduction.html#1794157697000</guid>
      <pubDate>Sun, 08 Nov 2026 17:08:17 GMT</pubDate>
      <description>Développer pour iPhone et iPad sans Mac : préparer la dev-box (SDK iOS, compte Apple, appareil) avant de créer un hello world en Swift, Flutter et Kotlin Multiplateforme.</description>
    </item>
    <item>
      <title>(Ré)organiser mon code</title>
      <link>https://cours.brosseau.ovh/tp/organisation/introduction.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/organisation/introduction.html#1794157697000</guid>
      <pubDate>Sun, 08 Nov 2026 17:08:17 GMT</pubDate>
      <description>Dans ce TP, nous allons voir comment « réorganiser » du code pour le rendre plus facilement maintenable.</description>
    </item>
    <item>
      <title>iOS sans Mac : hello world en Swift</title>
      <link>https://cours.brosseau.ovh/tp/ios/swift.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/ios/swift.html#1794157697000</guid>
      <pubDate>Sun, 08 Nov 2026 17:08:17 GMT</pubDate>
      <description>Un hello world iPhone en Swift et SwiftUI, décrit par un project.yml (XcodeGen), compilé et installé depuis la dev-box (Linux) avec devbox-build.sh, sans Mac.</description>
    </item>
    <item>
      <title>Le retour de Bart</title>
      <link>https://cours.brosseau.ovh/tp/javascript/tp2.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/javascript/tp2.html#1794157697000</guid>
      <pubDate>Sun, 08 Nov 2026 17:08:17 GMT</pubDate>
      <description>Vous vous souvenez du générateur de Bart écrit en PHP ? Eh bien cette fois-ci nous allons coder la version JavaScript du générateur de phrase.</description>
    </item>
    <item>
      <title>Interactivité</title>
      <link>https://cours.brosseau.ovh/tp/javascript/tp3.1.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/javascript/tp3.1.html#1794157697000</guid>
      <pubDate>Sun, 08 Nov 2026 17:08:17 GMT</pubDate>
      <description>Nous avons créé dans l'exemple précédent une page avec un formulaire. Je vous propose un autre exemple très simple, nous allons créer une page interactive avec seulement du JavaScript.</description>
    </item>
    <item>
      <title>Contrôle de saisie &amp; interactivité</title>
      <link>https://cours.brosseau.ovh/tp/javascript/tp3.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/javascript/tp3.html#1794157697000</guid>
      <pubDate>Sun, 08 Nov 2026 17:08:17 GMT</pubDate>
      <description>Le JavaScript, comme je l'indiquais en introduction, est partout. Pour l'instant, nous allons le limiter principalement aux interactions utilisateurs (contrôle de saisie, validation de formulaire, interactivité).</description>
    </item>
    <item>
      <title>TP 6 SQL : BTS TV administrable</title>
      <link>https://cours.brosseau.ovh/tp/php/sql/tp6.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/php/sql/tp6.html#1794157697000</guid>
      <pubDate>Sun, 08 Nov 2026 17:08:17 GMT</pubDate>
      <description>BTS TV administrable : concevoir la base des vidéos et des utilisateurs, une page de connexion, puis une page d'administration pour ajouter et supprimer les vidéos, avec PDO et les requêtes préparées.</description>
    </item>
    <item>
      <title>Le passage de paramètres</title>
      <link>https://cours.brosseau.ovh/tp/php/tp-param.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/php/tp-param.html#1794157697000</guid>
      <pubDate>Sun, 08 Nov 2026 17:08:17 GMT</pubDate>
      <description>Nous allons illustrer le passage de paramètres grâce à la BTS TV. Ce TP va nous permettre de mieux comprendre l'intérêt des paramètres.</description>
    </item>
    <item>
      <title>Le générateur de Bart</title>
      <link>https://cours.brosseau.ovh/tp/php/tp1.1.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/php/tp1.1.html#1794157697000</guid>
      <pubDate>Sun, 08 Nov 2026 17:08:17 GMT</pubDate>
      <description>Le meilleur moyen de comprendre les boucles. C'est d'en écrire par soi-même. Je vous propose de créer votre propre générateur de Bart.</description>
    </item>
    <item>
      <title>Des variables en veux-tu en voilà !</title>
      <link>https://cours.brosseau.ovh/tp/javascript/tp1.1.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/javascript/tp1.1.html#1794156199000</guid>
      <pubDate>Sun, 08 Nov 2026 16:43:19 GMT</pubDate>
      <description>Nous avons vu comment déclarer une balise `script`. Un code sans variable c'est un peu comme une pizza sans olives…</description>
    </item>
    <item>
      <title>La BTS TV 2.0 (Ajax)</title>
      <link>https://cours.brosseau.ovh/tp/javascript/tp4.1.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/javascript/tp4.1.html#1794156199000</guid>
      <pubDate>Sun, 08 Nov 2026 16:43:19 GMT</pubDate>
      <description>Nous avons créé deux cas « de tests », je vous propose de les mettre en place dans un code existant : la page d'accueil de la BTS TV va charger sa liste de vidéos en Ajax, depuis une API PHP qui renvoie du JSON.</description>
    </item>
    <item>
      <title>Pratiquer l'Ajax</title>
      <link>https://cours.brosseau.ovh/tp/javascript/tp4.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/javascript/tp4.html#1794156199000</guid>
      <pubDate>Sun, 08 Nov 2026 16:43:19 GMT</pubDate>
      <description>Dans ce TP nous allons mettre en pratique l'Ajax au travers de deux exemples : un serveur qui renvoie un morceau de HTML, puis un serveur qui ne renvoie que la donnée (JSON), avant de consommer une API publique.</description>
    </item>
    <item>
      <title>iOS sans Mac : hello world en Kotlin Multiplateforme</title>
      <link>https://cours.brosseau.ovh/tp/ios/kmp.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/ios/kmp.html#1794151112000</guid>
      <pubDate>Sun, 08 Nov 2026 15:18:32 GMT</pubDate>
      <description>Un hello world iPhone en Kotlin Multiplateforme et Compose Multiplatform, compilé et installé depuis la dev-box (Linux), sans Mac.</description>
    </item>
    <item>
      <title>Un client web en Kotlin avec Compose (Compose Multiplatform pour le web)</title>
      <link>https://cours.brosseau.ovh/tp/android/compose/ktor-compose-web.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/android/compose/ktor-compose-web.html#1794149352000</guid>
      <pubDate>Sun, 08 Nov 2026 14:49:12 GMT</pubDate>
      <description>Reprendre l'API Ktor des lampadaires et la consommer depuis le navigateur avec Compose Multiplatform pour le web (Kotlin/Wasm) : les écrans et les ViewModels du client Android réutilisés presque tels quels, Ktor client, Coil, et le piège du CORS.</description>
    </item>
    <item>
      <title>Le développement agentique : les limites</title>
      <link>https://cours.brosseau.ovh/tp/agentic/limites.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/agentic/limites.html#1794148642000</guid>
      <pubDate>Sun, 08 Nov 2026 14:37:22 GMT</pubDate>
      <description>Le développement agentique, les limites : hallucinations, code faux ou non sécurisé, tests complaisants, fenêtre de contexte saturée, coût et quotas, données envoyées à un tiers, injections de prompt, permissions trop larges, perte de compétences. Quand ne pas utiliser un agent, et ce que l'on attend d'un développeur.</description>
    </item>
    <item>
      <title>Le développement agentique : le principe</title>
      <link>https://cours.brosseau.ovh/tp/agentic/principe.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/agentic/principe.html#1794148642000</guid>
      <pubDate>Sun, 08 Nov 2026 14:37:22 GMT</pubDate>
      <description>Le développement agentique, le principe : ce qu'est un agent de code (un modèle de langage dans une boucle qui lit, décide, appelle des outils), ses briques (modèle, contexte, outils, permissions, AGENTS.md), les API qui le relient au modèle et ce que coûtent les tokens.</description>
    </item>
    <item>
      <title>Le développement agentique : utiliser un agent</title>
      <link>https://cours.brosseau.ovh/tp/agentic/utilisation.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/agentic/utilisation.html#1794148642000</guid>
      <pubDate>Sun, 08 Nov 2026 14:37:22 GMT</pubDate>
      <description>Le développement agentique, l'utilisation : installer OpenCode, le brancher sur un modèle gratuit (OpenCode, NVIDIA, AMD) ou sur le proxy de la classe, puis lui faire ajouter une fonctionnalité et ses tests à un petit projet JavaScript avec une méthode : décrire, planifier, relire chaque diff, tester, commiter.</description>
    </item>
    <item>
      <title>Mon lecteur de veille (Ajax, RSS et CORS)</title>
      <link>https://cours.brosseau.ovh/tp/javascript/tp4.2.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/javascript/tp4.2.html#1794145691000</guid>
      <pubDate>Sun, 08 Nov 2026 13:48:11 GMT</pubDate>
      <description>Un lecteur de veille en JavaScript : lire des flux RSS avec fetch et DOMParser, comprendre l'erreur CORS quand un site ne l'autorise pas, puis la contourner proprement avec un petit relais PHP à liste blanche.</description>
    </item>
    <item>
      <title>Le fil de veille</title>
      <link>https://cours.brosseau.ovh/tp/veille/flux.html</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/tp/veille/flux.html#1794145691000</guid>
      <pubDate>Sun, 08 Nov 2026 13:48:11 GMT</pubDate>
      <description>Le fil de veille : les derniers articles des sources conseillées pour le développement (Dev.to, Hacker News, Développez.com, Reddit, la newsletter TLDR…), réunis sur une seule page, à filtrer par source ou par mot-clé.</description>
    </item>
    <item>
      <title>L'outillage du développeur</title>
      <link>https://cours.brosseau.ovh/cheatsheets/web/</link>
      <guid isPermaLink="false">https://cours.brosseau.ovh/cheatsheets/web/#1794144635000</guid>
      <pubDate>Sun, 08 Nov 2026 13:30:35 GMT</pubDate>
      <description>Préparer son poste de développeur web sous Windows, Linux ou macOS : éditeur, outils, et pourquoi passer à Linux (jusqu'à Omarchy) pour progresser.</description>
    </item>
  </channel>
</rss>
