OpenLLM-France/wikimedia huggingface dataset:
# Kidule Dé/Prérequis conseillés

Le but est de pouvoir démarrer pas à pas, sans prérequis particulier. Mais la pratique montre qu'avant 12 ans est sans assistance, c’est assez difficile.
Il faut installer l'environnement Pinguino
# Kidule Dé/Première version d'un petit chenillard

maintenant que l’on sait Gérer le temps on peut faire un petit chenillard.
Pour faire un petit chenillard, il nous faut avoir une suite de combinaison de LEDs. Pour ce faire, nous allons introduire la notion de tableau.
Un tableau est une suite de variables qui ont le même nom et un n$^o$ entre crochet.
On le déclare comme une variable, par le mot clé long, int, ou byte, mais après le nom de la variable, on met entre le nombre d'élément que l’on veut déclarer. On peut après initialiser les valeurs en les séparant par des virgules.
Si le tableau est initialisé (= on lui donne des valeurs) on n’est pas obligé d'indiquer le nombre d'élément a réserver.
pour utiliser la 3eme variable de MonTableau et y mettre 27, on écrit
Pour faire notre petit chenillard, l’idée est de déclarer un tableau de Combinaison de Leds. Comme dans notre cas (Kidule Dé à Droite) toutes les LEDs se trouvent sur le PORTB, on peut écrire les 7 Leds d'un seul coup. Pour se faciliter la vie, on initialise les valeurs du tableau en notation binaire (0bxxxxxxxx), ce qui fait que chaque chiffre binaire correspond à une LED. le bit 7 correspond au Poussoir ce qui fait que la valeur que l’on donne au registre n’est pas utile
En plus, il nous faut une variable Index qui va compter de 0 à 6 pour passer sur chaque combinaison.
Chaque fois que l’on aura attendu assez de boucles, on ajoutera 1 à l'index.
Attention, lorsque l'index devient plus grand que 6, il faut le remettre à 0, sinon on va lire toute la mémoire qui suit.
Ouups, notre programme commence à grandir! et à faire plusieurs choses.
Avant qu’il ne devienne trop gros et que l’on ne comprenne plus rien, on va le modifier pour avoir des plus petits morceaux.
Pour cela, on va fabriquer une nouvelle fonction GererAvanceChenillard qui va faire le gros du travail.
Maintenant, on est prêt pour faire un peu plus compliqué:

## Exercice 1

faire que le chenillard avance tant que l’on ne presse pas sur le bouton Poussoir. Dès que l’on presse sur le bouton Poussoir, on regarde si l'index est 3. Si oui, on a gagné et on allume toutes les LEDs, sinon on a perdu et on éteint toutes les LEDs.
Allez c’est à toi...
| Gérer le temps | Un peu de bruit |
# Kidule Dé/Gérer le temps

Dans un programme, il faut pouvoir gérer le temps: c’est utile pour faire clignoter ou avancer quelque chose.
En fait, le processeur PIC, bien que petit, fait déjà beaucoup de choses à la seconde. Par exemple, il peut faire le programme des exercices précédents plusieurs milliers de fois par seconde.
Alors comment faire si on veut faire clignoter lentement une Led?
Une bonne solution est de compter combien de fois on exécute la fonction loop et d’agir en conséquence
Jusqu'à présent, on a utilisé des variables déjà définies (Led0 par exemple). Une déclaration de variable commence par le type de la variable. Ce qui existe qui est utile pour nous:
* byte c’est un nombre entre 0 et 255. C'est en fait ce que le PIC peut mettre dans une case de sa mémoire et il est capable de faire des calculs simples en un coup avec des bytes. Lorsque l’on a pas besoin de plus, c’est bien de demander qu'un byte.
* int un nombre qui va de −32 768 à 32 767, cela convient bien pour beaucoup de choses, mais c’est plus compliqué pour le PIC, il doit faire plusieurs instructions pour y arriver et cela lui prend 2 cases mémoires pour mettre cette variable.
* long un grand nombre qui va de −2 147 483 648 à 2 147 483 647. Mais il faut 4 cases mémoires est plusieurs instructions pour chaque calculs pour un PIC. (par contre pour un PC moderne, il fait n’importe quel calcul en un seul coup avec des nombres comme ceux-là).
ensuite on donne le nom de la variable:
* doit commencer par une lettre (ou _)
* suivi de chiffres ou de lettres ou _
Si on veut, on peut encore lui donner quelle valeur on veut mettre au début en écrivant = valeur
Et on termine par ; comme n’importe quelle instruction
En C, on peut écrire ++ derrière une variable pour lui dire d'ajouter 1 au contenu de cette variable. On aurait aussi pu écrire
et on oublie pas le ; pour terminer
En C, le ! veut dire "pas" : si Led0 vaut Allume alors !Led0 vaut Eteint (et inversement). C'est bien pratique pour faire clignoter.

## Exercice 1

Fait clignoter la Led0 5 fois plus vite

## Exercice 2

Fait que la Led0 ne clignote que si tu presses sur le Poussoir

## Suite

Avec cela, tu es prêt pour faire une Première version d'un petit chenillard
Tu peux aussi aller directement à la leçon Kidule Ascenseur si tu préfères voir quelque chose qui bouge à quelque chose qui clignote et fait du bruit
| Structure d'un programme | Première version d'un petit chenillard |
# Kidule Dé/Jeu d'adresse sonore

Ce jeu d'adresse sonore doit faire un petit chenillard qui fait un petit buips à chaque changement de Led.
Si on presse sur le Poussoir alors qu'on est sur la Led6, on a gagné et toutes les Leds s'allument et on doit entendre un grand biiiiip (montant). Si on a pressé alors que la Led6 n'était pas allumée alors on a perdu et toutes les Leds s'éteignent et on entend un son buuuup (descendant).
Pour débuter, on va partir du petit chenillard
Première chose à faire et d'y intégrer la fonction GérerSon que l’on a fait précédemment
On a déjà écrit la fonction FaireSonAvance

## Exercice 1

À chaque fois que tu avances, fait le son FaireSonAvance

## Exercice 2

Ajouter le son pour Gagné et Perdu: faire 2 fonctions FaireSonGagne et FaireSonPerdu en recopiant FaireSonAvance et en modifiant légèrement
Attention: il faut aussi que l’on ne calcule qu'une seule fois si on a gagné ou perdu, sinon, le son sera toujours recommencé (on peut utiliser le truc de DejaPresse)
| Un peu de bruit | PIC Entrées Sorties |
# Kidule Dé/Déclarer et initialiser le Hardware

Il n’est pas nécessaire de tout de suite bien comprendre ce chapitre.
Ce qu’il faut retenir dans un premier temps, c’est que tous tes programmes doivent commencer par
Comme cela Led0, Led1, Poussoir etc.. sont défini et le PIC est initialisé comme il faut. Si cela te suffit, tu peux aller au chapitre suivant.

# Déclaration dans le software pour ce Hardware

Dans notre montage, 1 port du Kidule PIC 2550 est utilisable: PORTB de 8 bits à droite.
On trouve ci après les déclarations nécessaires pour adresser correctement le hardware: Dans ce fichier, on fait deux choses:
* on donne des noms intelligents aux bits d'entrées / sorties, qui correspondent aux deux Kidules
* on a une fonction setup qui permet d'initialiser correctement les registres TRISx pour indiquer s'il s'agit d'entrées ou de sorties
* définir des mots parlant pour Allume, Eteint ou Presse plutôt que d’avoir à tout le temps réflechir s'il faut un 1 ou un 0 dans ce cas

## hardwareDe.h

Le mieux, c’est de copier ce bout de programme dans votre programme, pour ne pas avoir à tout déclarer à la main. Pour l'atelier, vous trouverez un fichier hardwareDe.h déjà présent dans le répertoire.
| Tester si un Bouton est pressé (Entrée) | Structure d'un programme |
# Kidule Dé/Objectifs

Apprendre la base de la programmation en C et avoir le plaisir de comprendre comment fonctionnent les jouets électroniques
# Kidule Dé/Présentation de la leçon

Cette leçon est la première leçon du cours Programmation C / Pinguino sur Kidules Le but de ce cours est de vous apprendre a programmer un petit chenillard sur la base du Kidule PIC et du Kidule Dé fabriqué par Didel
Dans le cadre du festival de robotique 2012 de l'EPFL, Il y a un Atelier de programmation C / Pinguino sur Kidules Cet article sera le support de cours de cet atelier. Il sera maintenu en vie et amélioré au fur et à mesure, et pourrait être une base de départ pour tout enseignant voulant faire des cours de programmation, ainsi qu'un support pour tous les enfants qui ont envie de poursuivre. Pour ceux qui crochent, le matériel peut être acheté chez Didel.
Ce cours est suivi par le cours Kidule Ascenseur.
# La modélisation par équations structurales/Objectifs

* Permettre aux étudiants d’acquérir une autonomie dans l’utilisation de la modélisation structurale pour pouvoir tester des modèles en pistes causales (path analysis), réaliser des analyses factorielles confirmatoires et évaluer des modèles structuraux généraux plus complexes avec des variables latentes.
* Permettre une prise en main du logiciel lavaan sous R qui est facile d’accès et qui offre des fonctionnalités techniques riches et complètes.
# La modélisation par équations structurales/Présentation de la leçon

Née dans les années 1970, la modélisation par équations structurales, connue en anglais par Structural Equation Modeling (SEM), est une approche globale et souple permettant d'étudier, au sein d'un modèle hypothétique spécifié a priori, les liens entre variables qu'elles soient manifestes ou latentes.
Elle est qualifiée de globale car c'est une méthode d'analyse multivariée combinant les apports de l'analyse factorielle des psychologues et ceux provenant de la régression multiple et l'analyse canonique.
Elle est qualifiée de souple car c'est une technique permettant entre autres de déceler les effets directs et indirects dans un modèle, et d'estimer des modèles très complexes.
# La matière et l'esprit/Réalité de l'esprit

La seule expérience de l'esprit que l’on puisse faire est celle de son propre esprit. En quoi cette conscience est-elle spirituelle ? Lorsqu'Aristote l'analyse, il nomme l'intelligence, la raison, la capacité d'abstraction. Il semblerait bien que ce soit le propre de l'humain d'extraire des formes universelles à partir de perceptions sensibles et singulières. Nos concepts sont universels, ils s'appliquent à toute une catégorie d'objets singuliers, parce qu’ils sont abstraits, ni singuliers ni sensibles. Si nos idées étaient matérielles, elles seraient singulières et sensibles. Si un concept unique se retrouve à l'identique dans une catégorie d'objet singulier, il est nécessaire qu’il ne soit pas singulier. Comment un être matériel comme l'être humain peut-il saisir ce qui ne l'est pas ? L'humain n’est pas qu'un être matériel.
Pour Descartes, l'essence de la conscience, c’est la pensée, la conscience doit toujours penser. Comment expliquer les intermittences (pertes de connaissance ou simplement le sommeil) dans la pensée ? Pour Descartes, cela met en évidence le « double pouvoir de la mémoire » (dont il parle dans ses correspondances). Pour qu’il y ait souvenir, il faut d’abord qu'une sensation laisse une trace dans notre cerveau. Cette mémoire appelée « mémoire du corps » est donc l'impression matérielle, que Descartes compare au pli d'une feuille. Ce pli ne donne pas lieu à un souvenir, mais seulement à une réminiscence : quand une sensation présente ressemble à celle déjà "pliée" dans notre cerveau, elle la réanime ainsi que toutes les pensées qui lui étaient associées. Deux faits le montrent : l'impression de déjà-vu et la résurgence des passions anciennes, comme l'amour de Descartes pour la petite fille louche. Mais cette mémoire-trace mécanique, ne suffit pas à expliquer la réalité du souvenir.
Dans la matière de notre cerveau, le passé ne peut exister que sous la forme de trace ou en tant que réalité présente. Cette mémoire mécanique du corps, la réminiscence, ne permet pas le souvenir car elle n’est pas la reconnaissance du passé. L'impression devient signe du passé, comme le mot est signe d'un sens. Le corps retient le passé mais ne le reconnait pas, avec le corps seules sont des réalités présentes. En plus d'une mémoire du corps, il existe une mémoire intellectuelle dont la fonction est d'interpréter les traces laissées par le passé; la reconnaissance du passé dans le présent suppose l’existence d'un esprit dans la matière, c'est-à-dire une faculté capable de se détacher du présent en se détachant de la matière.
| Matière et matérialisme | Lien entre matière, esprit et vivant |
# La modélisation par équations structurales/Prérequis conseillés

* Covariance
* Variance
* Régression
* Analyse factorielle des psychologues
# La modélisation par équations structurales

| Chap. 1 : | Introduction |
| Chap. 2 : | Les étapes de la modélisation structurale |
| Chap. 3 : | Analyse en pistes causales |
| Chap. 4 : | Analyse factorielle confirmatoire |
| Chap. 5 : | Modèle structural |
| Annexe : | Bibliographie |

## Présentation [Modifier]

Née dans les années 1970, la modélisation par équations structurales, connue en anglais par Structural Equation Modeling (SEM), est une approche globale et souple permettant d'étudier, au sein d'un modèle hypothétique spécifié a priori, les liens entre variables qu'elles soient manifestes ou latentes.
Elle est qualifiée de globale car c'est une méthode d'analyse multivariée combinant les apports de l'analyse factorielle des psychologues et ceux provenant de la régression multiple et l'analyse canonique.
Elle est qualifiée de souple car c'est une technique permettant entre autres de déceler les effets directs et indirects dans un modèle, et d'estimer des modèles très complexes.

## Objectifs [Modifier]

* Permettre aux étudiants d’acquérir une autonomie dans l’utilisation de la modélisation structurale pour pouvoir tester des modèles en pistes causales (path analysis), réaliser des analyses factorielles confirmatoires et évaluer des modèles structuraux généraux plus complexes avec des variables latentes.
* Permettre une prise en main du logiciel lavaan sous R qui est facile d’accès et qui offre des fonctionnalités techniques riches et complètes.

## Niveau et prérequis conseillés [Modifier]

Leçon de niveau 18.
* Covariance
* Variance
* Régression
* Analyse factorielle des psychologues

## Référents [Modifier]

Ces personnes sont prêtes à vous aider concernant cette leçon :
* Kamel GANA, Professeur de Psychologie à l'université de Bordeaux
# La matière et l'esprit/Matière et matérialisme

Démocrite, au Ve siècle avant notre ère, donne l’idée d'atome, dont naîtras le matérialisme et l'atomisme, qu'Épicure reprendras. L'atome est l'élément de toute chose, la limite de toute génération et destruction, l'atome ne peut être divisé. Il n'y a que l'être, cet être est la matière. Attention, il ne faut pas confondre le sens philosophique de l'atome avec le sens physique, où l'atome est divisible en particules. L'atome existe car rien ne peut naître de rien (on utilise l’expression ex nihilo) et rien ne peut aller au néant. Par exemple, une naissance n’est pas une création mais une nouvelle organisation d'atomes, tout comme la mort n’est pas la fin des atomes mais la fin de cette organisation. Mais ces atomes sont invisibles, seule l'organisation est perceptible, on ne voit jamais la matière elle-même.
Mais ces principes n'expliquent pas le monde et ses changements. Si tout était plein d'atomes, rien ne pourrais bouger, pas d'organisations possibles. Il faut donc penser le non-être, le vide. Mais cela ne suffit pas, car être en mouvement et s'organiser sont deux choses différentes, il faut donc en plus penser le hasard. La conception épicurienne de l'univers est la chute des atomes (à l'époque, la force gravitationnelle n'avait pas encore été modélisée) dans le vide, de manière parallèle. Un clinamen, une déviation originelle, ferais l'univers tel que nous le connaissons. Mais comment passer du chaos à un monde organisé ? Le hasard et la nécessité se combinent : tout se combine au hasard et la nécessité fait le tri. Toute combinaison viable perdure, les autres disparaissent.
Mais si on réduit l'être à la matière, on doit faire la distinction entre l'être et les apparences. Il n'y a pas différents êtres (substances), ainsi un humain ou un cheval ne sont que différentes manifestations du même être. Le matérialisme n’est pas du sens commun, la matière n'est jamais perçue directement, elle se pense, ne se constate pas. La matière est abstraite et n'existe que dans nos esprits.
Le matérialisme en tant que théorie ne suffit pas en lui-même car il faut d'autres idées (le vide, le hasard). Dans l'atomisme existe une béance entre le principe et les phénomènes. Pourquoi est-on passé de la matière à un monde organisé ? Aucune raison, la matière n'a pas besoin de pourquoi pour exister.
| Descartes ou l'esprit de la science du vivant | Réalité de l'esprit |
Aristote montre que le matérialisme ne peut se passer de l’idée de forme, et en ce sens, la matière seule n'existe pas.
# La matière et l'esprit/Présentation de la leçon

Souvent, on oppose matière et esprit, sans vraiment savoir précisément ce qu'est l'un ou l'autre. Alors, que signifient ces concepts ? Et en quoi sont-ils opposés, voire liés ?
# Leçons d'infographie par niveau/Leçons par niveaux

| Niveau 0 | Niveau 1 | Niveau 2 |
| Niveau 3 | Niveau 4 | Niveau 5 |
| | Introduction au webdesign | |
| Niveau 6 | Niveau 7 | Niveau 8 |
| | Filmer Optimiser un fichier SVG | |
| Niveau 9 | Niveau 10 | Niveau 11 |
| | | Didacticiel graphique Introduction à l'infographie Langage cinématographique |
| Niveau 12 | Niveau 13 | Niveau 14 |
| Inkscape | Anime studio Blender Home Edition Cinema 4D | Cascading Style Sheet Écrire un scénario Formats vidéo Graphisme sur écran Imprimerie |
| Niveau 15 | Niveau 16 | Niveau 17 |
| Dessin animé | | |
| Niveau 18 | Niveau 19 | Niveau 20 |
# Leçons d'histoire par niveau/Leçons par niveaux
## Leçons hors-cursus scolaire

| Novice | Débutant | Intermédiaire |
| | | Art préhistorique |
| Avancé | Expert | Perfectionnement |

## Leçons entrant dans un cursus scolaire

| Niveau 0 | Niveau 1 | Niveau 2 |
| | | Création des états modernes en Europe |
| Niveau 3 | Niveau 4 | Niveau 5 |
| Niveau 6 | Niveau 7 | Niveau 8 |
| Histoire du peuple juif | Premiers États, premières écritures Suzerain et vassaux | Grèce antique |
| Niveau 9 | Niveau 10 | Niveau 11 |
| La Révolution française et l'Empire : nouvel ordre politique et société révolutionnée en France et en Europe Révolution industrielle en Europe Conditions et revendications féminines dans la France du XIXème siècle (1804-1914) | Épreuve du brevet des collèges (histoire) France de la IVème République France de la Vème république Guerre froide Néolithique Première Guerre mondiale 1914-1945 : Guerres et totalitarisme | Citoyenneté et démocratie à Athènes (Ve-IVe siècles av. J.-C.) Citoyenneté et empire à Rome (Ie-IIIe siècle) Européens dans le peuplement de la Terre Histoire du Québec et du Canada La révolution française et le XIXeme siècle, l'affirmation d'un nouvel univers politique Nouveaux horizons à l'époque moderne La France dans la Grande Crise Villes à la fin du Moyen Âge Invention de la citoyenneté dans le monde antique Monarchie française : dynasties, pouvoirs, idéologie Monde méditerranéen au XIIème siècle Seigneurs et seigneurie Union des républiques socialistes soviétiques Sociétés et cultures de l'Europe médiévale |
| Niveau 12 | Niveau 13 | Niveau 14 |
| Colonisation et décolonisation Croissance économique, mondialisation et mutations des sociétés Croissance et mondialisation depuis 1850 Europe du XVIIe au XIXe Guerres au XXe siècle Le siècle des totalitarismes Les Français et la République Les Guerres mondiales au XXe siècle Mutations des sociétés depuis 1850 Régimes totalitaires Seconde Guerre mondiale | Course à l'espace Décolonisation et émergence du tiers-monde Échelles de gouvernement États-Unis et le monde depuis les « 14 points » de Wilson Grandes puissances et conflits Internet Lutte contre les maladies infectieuses Mémoires, lecture historique Nazisme et fascisme Proche et Moyen-Orient Représentations et cartes du monde | France de la IIème République Hébreux Institutions de l'Empire romain Invasions barbares Histoire de l'enseignement en France La Révolution française Révolution américaine Le monde homérique: produit de l'imagination ou réalité historique ? |
| Niveau 15 | Niveau 16 | Niveau 17 |
| Campagnes françaises au Moyen Âge Châteaux forts en France Colonisation et travail forcé aux XV-XVIème siècles Introduction à l'histoire médiévale Plus loin dans la Seconde Guerre mondiale | | |
| Niveau 18 | Niveau 19 | Niveau 20 |
# Leçons d'histoire par niveau/Présentation des leçons

Cette page présente l’ensemble des leçons d'histoire classées par niveau.
Remarque : Cette liste de leçons est mise à jour manuellement. Elle peut donc être incomplète, tout en sachant que sa dernière mise à jour, date du 2 novembre 2023 pour les leçons et du 2 novembre 2023 pour les leçons du jour. Pour voir la liste complète des leçons de la faculté d'histoire, vous pouvez consulter la catégorie des leçons et la catégorie des leçons du jour. Les leçons qui ne sont pas présentes dans cette liste peuvent également être détectées de manière automatique : voir cette page d'aide. Pour ajouter des leçons, vous pouvez consulter la page Aide:Comment créer une leçon ou prendre modèle sur les leçons déjà existantes.
# Leçons d'environnement par niveau/Présentation des leçons

Cette page présente l’ensemble des leçons sur l'environnement classées par niveau.
Remarque : Cette liste de leçons est mise à jour manuellement. Elle peut donc être incomplète, tout en sachant que sa dernière mise à jour, date du 19 janvier 2019 pour les leçons et du 19 janvier 2019 pour les leçons du jour. Pour voir la liste complète des leçons de la faculté de l'environnement, vous pouvez consulter la catégorie des leçons et la catégorie des leçons du jour. Les leçons qui ne sont pas présentes dans cette liste peuvent également être détectées de manière automatique : voir cette page d'aide. Pour ajouter des leçons, vous pouvez consulter la page Aide:Comment créer une leçon ou prendre modèle sur les leçons déjà existantes.
# Leçons d'infographie par niveau

Faculté d'Infographie
Cette page présente l’ensemble des leçons d'infographie classées par niveau.
Remarque : Cette liste de leçons est mise à jour manuellement. Elle peut donc être incomplète, tout en sachant que sa dernière mise à jour, date du 19 janvier 2019 pour les leçons et du 19 janvier 2019 pour les leçons du jour. Pour voir la liste complète des leçons de la faculté d'infographie, vous pouvez consulter la catégorie des leçons et la catégorie des leçons du jour. Les leçons qui ne sont pas présentes dans cette liste peuvent également être détectées de manière automatique : voir cette page d'aide. Pour ajouter des leçons, vous pouvez consulter la page Aide:Comment créer une leçon ou prendre modèle sur les leçons déjà existantes.
[Modifier]
| Niveau 0 | Niveau 1 | Niveau 2 |
| Niveau 3 | Niveau 4 | Niveau 5 |
| | Introduction au webdesign | |
| Niveau 6 | Niveau 7 | Niveau 8 |
| | Filmer Optimiser un fichier SVG | |
| Niveau 9 | Niveau 10 | Niveau 11 |
| | | Didacticiel graphique Introduction à l'infographie Langage cinématographique |
| Niveau 12 | Niveau 13 | Niveau 14 |
| Inkscape | Anime studio Blender Home Edition Cinema 4D | Cascading Style Sheet Écrire un scénario Formats vidéo Graphisme sur écran Imprimerie |
| Niveau 15 | Niveau 16 | Niveau 17 |
| Dessin animé | | |
| Niveau 18 | Niveau 19 | Niveau 20 |
# Leçons d'infographie par niveau/Présentation des leçons

Cette page présente l’ensemble des leçons d'infographie classées par niveau.
Remarque : Cette liste de leçons est mise à jour manuellement. Elle peut donc être incomplète, tout en sachant que sa dernière mise à jour, date du 19 janvier 2019 pour les leçons et du 19 janvier 2019 pour les leçons du jour. Pour voir la liste complète des leçons de la faculté d'infographie, vous pouvez consulter la catégorie des leçons et la catégorie des leçons du jour. Les leçons qui ne sont pas présentes dans cette liste peuvent également être détectées de manière automatique : voir cette page d'aide. Pour ajouter des leçons, vous pouvez consulter la page Aide:Comment créer une leçon ou prendre modèle sur les leçons déjà existantes.