You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,6 +24,8 @@ In particular: kids don't need to know about functionnal interfaces, arrays, or
24
24
25
25
You might ask why not start right away with programming the robot then? The students are way too lost in the midst of pages of arcane syntax, and we observed anecdotally it is slower to teach that way. In particular, it is requiring a lot more repetition, because they jump too fast from one concept they don't master to another, and don't register them the first time they hear about it.
26
26
27
+
That being said, the bonus koans are providing additional material, but it is advised to use them only after students have started programming actual robots.
28
+
27
29
### Enough exercises
28
30
29
31
Most of the resources have too few exercices. Or exercises not really relevant to the kind of thinking we need for programming robots with WPILib. On the other hand, (most) kids like to learn by practicing. So this curiculum is focused on having a good amount exercices. Of course "a good amount" is not an exact science, so we expect to tweak this as our experience teaching various profiles of rookies is growing.
Copy file name to clipboardExpand all lines: README.md
+45-2Lines changed: 45 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,7 +28,7 @@ To get started you will need to either install VS Code or use GitHub Codespaces,
28
28
29
29
To install VS Code, you will need to install [WPILib](https://docs.wpilib.org/en/stable/docs/zero-to-robot/step-2/wpilib-setup.html) first to run the Java Koans for the FRC.
30
30
31
-
Once installed, download the [latest release](https://github.com/jletroui/FrcJavaKoans/releases/download/v1.1/FrcJavaKoans.zip) of the Java Koans.
31
+
Once installed, download the [latest release](https://github.com/jletroui/FrcJavaKoans/releases/download/v1.2/FrcJavaKoans.zip) of the Java Koans.
32
32
33
33
Then, extract it somewhere on your computer. Go to the folder where you have downloaded the koans, righ-click on the koans zip file, and choose 'Extract All'. Choose your destination folder, for example, a `/src` folder within your `Documents` folder.
34
34
@@ -255,6 +255,10 @@ To help you remember the bits of Java syntax you are learning while completing y
255
255
## And then what?
256
256
257
257
After completing the koans, you are ready to learn how to program an actual robot. Mykah, from [team 9153-BearcatRobotics](https://sites.google.com/lincolnschoolscb.org/9153-bearcat-robotics/home), is maintaining a [wonderful compendium of FRC programming resources](https://docs.google.com/document/d/1jcBLAyJ3iTbsYSnWMVWqHaK8uywGTaTjF98eY_xxpl0/edit#heading=h.21bclvyus8vm) from which you can dig for your next steps.
258
+
259
+
Once you understand how to program a simple `TimedRobot`, you can come back here and practice with bonus koans you will find in `src/main/java/bonuses/english`.These koan series are independant of each other and can be followed in any order.
260
+
To run them, right click on the one you are interested, for example `src/main/java/bonuses/english/AboutArrays.java` and choose `RunJava` directely on the koans file itself.
261
+
258
262
<br/>
259
263
260
264
>Experience is the name everyone gives to their mistakes.
@@ -267,6 +271,19 @@ This course intent to come batteries included, with 100% of the information need
267
271
268
272
We have found that students learn faster if mentors are not giving solutions to students' issues, but instead ask them open questions about what they don't understand about the exercise instructions or displayed error. Programming is, most of the time, about figuring out what little detail have been overlooked. Thus, helping students to look for answers by themselves in the koans' text will help them become more autonomous faster when it will be time to program and debug a robot.
269
273
274
+
### Full curiculum suggestion
275
+
276
+
1) Start with the students completing all the initial koan series ("EnglishPathToEnlightment").
277
+
2) Not part of the FRC Java Koans: make them program their first robot with a simple `TimedRobot`. It is suggested to have a simple differential drive robot.
278
+
* Super simple auto mode making the robot go forward at 20% speed for 1 second.
279
+
* Simple teleop mode making the robot move with a joystick.
280
+
3) Students can now follow the `src/main/java/bonuses/english/AboutInterfaces.java` (** COMING SOON **) bonus koans.
281
+
4) Not part of the FRC Java Koans: make them program the simple robot again, but using [commands based programming](https://docs.wpilib.org/en/stable/docs/software/commandbased/index.html).
282
+
283
+
Optional:
284
+
285
+
Before teaching them to deal with a Swerve Drive, the students could follow `src/main/java/bonuses/english/AboutArrays.java` to learn arrays and `for` loops.
286
+
270
287
### Topics included
271
288
272
289
* Printing to and reading from the console
@@ -278,6 +295,11 @@ We have found that students learn faster if mentors are not giving solutions to
278
295
* Packages and classes with static methods
279
296
* Objects, constructors, fields
280
297
298
+
In the bonus koans:
299
+
300
+
* Arrays and `for` loops
301
+
* Functional interfaces (** COMING SOON **)
302
+
281
303
### Contributing and learning more
282
304
283
305
If you are interested in learning more about this course or contributing to it, please take a look at [CONTRIBUTING.md](CONTRIBUTING.md) :)
@@ -325,7 +347,7 @@ Pour commencer, vous devrez soit installer VS Code, soit utiliser GitHub Codespa
325
347
326
348
Si ce n'est déjà fait, tu vas devoir installer [WPILib](https://docs.wpilib.org/en/stable/docs/zero-to-robot/step-2/wpilib-setup.html) pour pouvoir exécuter les Koans Java pour la FRC.
327
349
328
-
Une fois installé, télécharge [la dernière version](https://github.com/jletroui/FrcJavaKoans/releases/download/v1.1/FrcJavaKoans.zip) des Koans Java.
350
+
Une fois installé, télécharge [la dernière version](https://github.com/jletroui/FrcJavaKoans/releases/download/v1.2/FrcJavaKoans.zip) des Koans Java.
329
351
330
352
Ensuite, décompresse les quelque part sur ton ordinateur. Pour ce faire, va dans le répertoire où tu as téléchargé les koans, clic-droit dessus, et choisis "Extraire Tout". Choisis un répertoire de destination, par exemple, un répertoire `/src` dans ton répertoire `Documents`.
331
353
@@ -554,6 +576,9 @@ Pour t'aider à retenir les morceaux de syntaxe Java que tu apprends en complét
554
576
555
577
Une fois avoir complété les koans, tu es prêt·e pour apprendre à programmer un vrai robot. Mykah, de [l'équipe 9153 - Bearcat Robotics](https://sites.google.com/lincolnschoolscb.org/9153-bearcat-robotics/home), entretient [un excellent recueil de ressources pour la programmation FRC](https://docs.google.com/document/d/1jcBLAyJ3iTbsYSnWMVWqHaK8uywGTaTjF98eY_xxpl0/edit#heading=h.21bclvyus8vm). Tu pourras sûrement y trouver tes prochains apprentissages.
556
578
579
+
Un fois que tu comprends comment programmer un simple `TimedRobot`, tu peux revenir ici et continuer à progresser avec les koans bonus que tu trouveras dans `src/main/java/bonuses/french`. Ces séries de koans sont indépendantes les unes des autres et peuvent être faites dans n'importe quel ordre.
580
+
Pour les faire, choisis celle qui t'intéresse, par exemple `src/main/java/bonuses/french/AboutArrays.java` et choisis `Run Java` directement sur le fichier de la série lui-même.
581
+
557
582
<br/>
558
583
559
584
> Expérience est le nom que les gens donnent aux erreurs qu'ils ont faites.
@@ -567,6 +592,19 @@ Ce cours se veut fournir toute l'information nécessaire pour qu'un élève moti
567
592
568
593
Nous avons trouvé que les élèves passent à travers le cours plus rapidement, et intègrent mieux les notions si le ou la mentor ne lui donne pas de solution à ses problèmes. À la place, le ou la mentor peut garder l'élève dans une posture active en lui demandant ce qu'iel ne comprend pas dans l'énoncé de l'exercice, ou du message d'erreur, et le / la guider dans des stratégies pour comprendre par iel même. La programmation consiste, la plupart du temps, à trouver quel petit détail nous avons oublié. En aidant les élèves à trouver les ressources pour résoudre les problèmes eux-même, ils deviennent au final autonomes plus rapidement lorsqu'ils débogueront un programme de robot.
569
594
595
+
### Suggestion de curriculum complet
596
+
597
+
1) Démarrez en faisant compléter à vos élèves la série de koans intiale complète ("FrenchPathToEnlightment").
598
+
2) Non couvert par les FRC Java Koans: faites les programmer leur premier robot, avec un simple `TimedRobot`. Il est recommandé d'avoir un robot avec une simple base différentielle.
599
+
* Mode auto basique, faisant avancer le robot à 20% de sa vitesse pendant 1 seconde.
600
+
* Mode téléop faisant contrôler le robot avec un joystick.
601
+
3) Les élèves peuvent ensuite suivre le koan bonus `src/main/java/bonuses/french/AboutInterfaces.java` (** BIENTÔT DISPONIBLE **).
602
+
4) Non couvert par les FRC Java Koans: les élève peuvent programmer de nouveau le robot simple, mais cette fois ci [en programmation orientée commandes](https://docs.wpilib.org/fr/stable/docs/software/commandbased/index.html).
603
+
604
+
Optionnel:
605
+
606
+
Avant de leur enseigner la programmation d'une base Swerve, les élèves peuvent suivre `src/main/java/bonuses/english/AboutArrays.java` pour apprendre les tableaux et les boucles `for`.
607
+
570
608
### Sujets inclus
571
609
572
610
* Écrire dans, et lire de, la console
@@ -578,6 +616,11 @@ Nous avons trouvé que les élèves passent à travers le cours plus rapidement,
0 commit comments