From 627f65d16ed3cba91ca8ace15d1f81f78b528907 Mon Sep 17 00:00:00 2001
From: Xavier Petit <32063953+xpetit@users.noreply.github.com>
Date: Tue, 3 Sep 2019 16:50:43 +0100
Subject: [PATCH] Reformat markdown
---
docs/event-management.md | 145 ++++++++-------
docs/object-attribute-reference.md | 29 +--
docs/object-attribute-system.md | 5 +-
docs/objects.md | 12 +-
docs/piscine-go-curriculum.md | 288 ++++++++++++++---------------
5 files changed, 248 insertions(+), 231 deletions(-)
diff --git a/docs/event-management.md b/docs/event-management.md
index e33b9014..5a283c7d 100644
--- a/docs/event-management.md
+++ b/docs/event-management.md
@@ -1,59 +1,66 @@
# Events management
## Usage
-> An event is associated to an object when the usage of this object implies:
-> * a limited capacity of people
-> * a limited time
-> Event management require:
-> * Edition of the attributes of the object on which the event is based
-> * Creation and settings of the event associated to the reference object
+An event is associated to an object when the usage of this object implies:
+
+- a limited capacity of people
+- a limited time
+
+Event management require:
+
+- Edition of the attributes of the object on which the event is based
+- Creation and settings of the event associated to the reference object
> Events are used for: `piscines`, `check-in`, `exams`, `rushes`, `hackatons`, `conferences`.
## Settings for the reference object
-> Important indications:
-> * Objects that doesn't have required attributes for event creation will not be open to event creation.
+Important indications:
+
+- Objects that doesn't have required attributes for event creation will not be open to event creation.
-> | name | fullfillment |
-> | -------------------- | --------- |
-> | capacity | **required** |
-> | eventDuration | **required** |
-> | registrationDuration | **required** |
-> | description | optionnal |
-> | eventStartDelay | optionnal |
+| name | fullfillment |
+| -------------------- | ------------ |
+| capacity | **required** |
+| eventDuration | **required** |
+| registrationDuration | **required** |
+| description | optionnal |
+| eventStartDelay | optionnal |
-> * All the attributes filled in the object are used as values by default for event's creation; it can be overloaded for each event related to the reference object.
-> * If the reference object has a child or children which are events itself, settings are also required for each event child.
+- All the attributes filled in the object are used as values by default for event's creation; it can be overloaded for each event related to the reference object.
+- If the reference object has a child or children which are events itself, settings are also required for each event child.
#### Edit the object attributes:
-> in *Object attributes*
+
+> in _Object attributes_
-* Add a new key **capacity** of type `Number` with the maximum number of persons you want for events related to the object by default
-* Add a new key **eventDuration** of type `Number` with the duration in minutes you want for events related to the object by default
-* Add a new key **registrationDuration** of type `Number` with the duration in minutes you want to allow to people to register to the event by default
-* Add a new key **eventStartDelay** of type `Number`, if you want a default delay between the end of registration and the beginning of the event. This duration is expressed in minutes.
-* Add a new key **description** of type `String`, if you need to associate some informations to your event (description, location, access, documents to provide, etc.)
+- Add a new key **capacity** of type `Number` with the maximum number of persons you want for events related to the object by default
+- Add a new key **eventDuration** of type `Number` with the duration in minutes you want for events related to the object by default
+- Add a new key **registrationDuration** of type `Number` with the duration in minutes you want to allow to people to register to the event by default
+- Add a new key **eventStartDelay** of type `Number`, if you want a default delay between the end of registration and the beginning of the event. This duration is expressed in minutes.
+- Add a new key **description** of type `String`, if you need to associate some informations to your event (description, location, access, documents to provide, etc.)
#### Edit the children
-> in *Children*
+
+> in _Children_
-* Add a new key **startAfter** of type `Number`, with the default delay you want between the beginning of the event and the beginning of the child event. This duration is expressed in minutes.
+- Add a new key **startAfter** of type `Number`, with the default delay you want between the beginning of the event and the beginning of the child event. This duration is expressed in minutes.
##### Example
-Here is an example of the `Piscine Go` settings. It presents the settings of the object attributes `Piscine Go`, the settings of one of its child which is an event and the settings of the child object attributes itself.
+Here is an example of the `Piscine Go` settings. It presents the settings of the object attributes `Piscine Go`, the settings of one of its child which is an event and the settings of the child object attributes itself.
> NB : this object settings are provided in the admin, in the curses section: 'Piscine Go' and in the exams section 'Exam 01'.
**Piscine Go**
-*Object attributes*
+_Object attributes_
+
```json
{
"capacity": 400,
@@ -67,8 +74,9 @@ This piscine object attributes look like this:
![piscine-object-attributes](img/piscine-object-attributes.png)
-*Children*
-> In the `Piscine Go`, children of type *exam* and *rush* have events itself.
+_Children_
+
+> In the `Piscine Go`, children of type _exam_ and _rush_ have events itself.
> A **startAfter** key has to be defined for each of them, in their parent object `Piscine Go`. For example, the exam-01 gets this key:
@@ -83,9 +91,11 @@ This child attributes look like this:
![piscine children attributes](https://user-images.githubusercontent.com/35296671/63525543-c86b0800-c4f5-11e9-8820-60d9ff33994f.png)
**Exam 01**
-> The object `Exam 01`, which is a child of `Piscine Go`, has its own *Object Attributes* filled in the child object.
-*Object attributes*
+> The object `Exam 01`, which is a child of `Piscine Go`, has its own _Object Attributes_ filled in the child object.
+
+_Object attributes_
+
```json
{
"eventDuration": 240,
@@ -93,6 +103,7 @@ This child attributes look like this:
"eventStartDelay": 60
}
```
+
> NB: the **capacity** attribute is herited from the parent object `Piscine Go` here.
This exam object attributes look like this:
@@ -102,26 +113,28 @@ This exam object attributes look like this:
## Create the event
### Create a new event for your object
-> (in *Admin* > *Manage events* > *Add new event*)
+
+> (in _Admin_ > _Manage events_ > _Add new event_)
-
-* The **reference object** of your event is the object for which you need to create an event: `Check`, `Piscine Go`, etc.
-* The **registration starts at** indicates when registration of the event begins.
-* The **registration ends at** indicates when registration of the event ends.
-* The **event starts at** indicates when the event begins.
+- The **reference object** of your event is the object for which you need to create an event: `Check`, `Piscine Go`, etc.
+- The **registration starts at** indicates when registration of the event begins.
+- The **registration ends at** indicates when registration of the event ends.
+- The **event starts at** indicates when the event begins.
> NB:
-> * End of registration can't be before its beginning.
-> * Start of event can't be before end of registration.
-> * Date and Time input is not yet working in firefox but should be added soon by mozilla. In the mean while use chrome for adding events
+>
+> - End of registration can't be before its beginning.
+> - Start of event can't be before end of registration.
+> - Date and Time input is not yet working in firefox but should be added soon by mozilla. In the mean while use chrome for adding events
### Settings for you event
> In the event you have created, 3 categories must be checked:
+>
> 1. General settings
> 2. Registration's settings
> 3. Event's settings
@@ -130,38 +143,38 @@ This exam object attributes look like this:
-General settings of your event can be set after creation of the event. By default, it is the values indicated in the **reference object**.
+General settings of your event can be set after creation of the event. By default, it is the values indicated in the **reference object**.
-* **Capacity**
- * During the regitration, the capacity doesn't apply. When registration ends, we register the amount defined by the **capacity** to the event *(ordered by registration date)*.
- * If someone unregister to the event during a registration, it release one place.
- * During a registration, users can see if their place is guaranteed or if they are in waiting list.
- * If the event has children which are event themselves, they will use by default the capacity of the parent event
+- **Capacity**
+ - During the regitration, the capacity doesn't apply. When registration ends, we register the amount defined by the **capacity** to the event _(ordered by registration date)_.
+ - If someone unregister to the event during a registration, it release one place.
+ - During a registration, users can see if their place is guaranteed or if they are in waiting list.
+ - If the event has children which are event themselves, they will use by default the capacity of the parent event
if no capacity was defined on this child.
-* **Description** (facultative)
- * It can be used to describe the topic of the event, or to add some practical informations: location, documents to provide, accessibility, etc.
+- **Description** (facultative)
+ - It can be used to describe the topic of the event, or to add some practical informations: location, documents to provide, accessibility, etc.
#### Registration
-* End of registration can't be after start of registration.
-* Dates can't be updated after it's passed.
-* The **registration duration** indicated in the **reference object** is reminded under the inputs to help you fill the informations.
-* Same for the **event start delay**.
-* The list of users in the registration, pending or accepeted, is accessible by clicking on the link 'N users registered', at the left bottom of this categrory.
+- End of registration can't be after start of registration.
+- Dates can't be updated after it's passed.
+- The **registration duration** indicated in the **reference object** is reminded under the inputs to help you fill the informations.
+- Same for the **event start delay**.
+- The list of users in the registration, pending or accepeted, is accessible by clicking on the link 'N users registered', at the left bottom of this categrory.
#### Event
-* End of event can't be after start of event.
-* Dates can't be updated after it's passed.
-* The **end of event** is calculated by default by adding the **event duration** indicated in the **reference object** to the **start of event** date.
- * If the event contains other events, the **end of event** can't be before the end of the last child event.
-* The **event duration** indicated in the **reference object** is reminded under the inputs to help you fill the informations.
- * If the event contains other events, the **minimum end of event** is indicated under the inputs to help you fill the informations.
-* The list of users selected for the event at its creation is accessible by clicking on the link 'N users registered', at the left bottom of this categrory.
+- End of event can't be after start of event.
+- Dates can't be updated after it's passed.
+- The **end of event** is calculated by default by adding the **event duration** indicated in the **reference object** to the **start of event** date.
+ - If the event contains other events, the **end of event** can't be before the end of the last child event.
+- The **event duration** indicated in the **reference object** is reminded under the inputs to help you fill the informations.
+ - If the event contains other events, the **minimum end of event** is indicated under the inputs to help you fill the informations.
+- The list of users selected for the event at its creation is accessible by clicking on the link 'N users registered', at the left bottom of this categrory.
#### Children (facultative)
@@ -169,9 +182,9 @@ General settings of your event can be set after creation of the event. By defaul
This category appears only if the event has children which are events itself.
-* Children settings can't be overloaded.
-* Each event child presents:
- * Its **Start** and **end** (according to the children settings of the **reference object**)
- * Its **capacity**
- * Its **groups size**
- * Reminder: in `hackatons` or `rushes`, candidates or students registered to the are divided in groups of N persons.
+- Children settings can't be overloaded.
+- Each event child presents:
+ - Its **Start** and **end** (according to the children settings of the **reference object**)
+ - Its **capacity**
+ - Its **groups size**
+ - Reminder: in `hackatons` or `rushes`, candidates or students registered to the are divided in groups of N persons.
diff --git a/docs/object-attribute-reference.md b/docs/object-attribute-reference.md
index a35f4867..6012b609 100644
--- a/docs/object-attribute-reference.md
+++ b/docs/object-attribute-reference.md
@@ -1,20 +1,21 @@
# Object Attribute Reference
+
## List all **USABLE** preset object attributes
-| Attribute | Type | Value | Description |
-|-------------------|-----------|-------|-------------|
-| `xp` | function | `exerciceExpCalculation`, `examExpCalculation` or `raidExpCalculation` | Amount of exeperience points that an object will give. |
-| `correctionPrice` | function | `correctionPrice` | Amount of correction points needed to test an exercise. |
-| `duration` | number | | |
-| `time` | string | | |
-| `info` | object | | |
+| Attribute | Type | Value | Description |
+| ----------------- | -------- | ---------------------------------------------------------------------- | ------------------------------------------------------- |
+| `xp` | function | `exerciceExpCalculation`, `examExpCalculation` or `raidExpCalculation` | Amount of experience points that an object will give. |
+| `correctionPrice` | function | `correctionPrice` | Amount of correction points needed to test an exercise. |
+| `duration` | number | | |
+| `time` | string | | |
+| `info` | object | | |
## List all **RESERVED** preset object attributes
-| Attribute | Type | Value | Description |
-|-------------------|-----------|-------|-------------|
-| `scopeStart` | function | | |
-| `scopeEnd` | function | | |
-| `startDay` | function | | |
-| `status` | function | | |
-| `week` | function | | |
+| Attribute | Type | Value | Description |
+| ------------ | -------- | ----- | ----------- |
+| `scopeStart` | function | | |
+| `scopeEnd` | function | | |
+| `startDay` | function | | |
+| `status` | function | | |
+| `week` | function | | |
diff --git a/docs/object-attribute-system.md b/docs/object-attribute-system.md
index 52d84ab0..5f403bc4 100644
--- a/docs/object-attribute-system.md
+++ b/docs/object-attribute-system.md
@@ -151,12 +151,15 @@ All done, now when rendering an object, attributes are merged like so:
```
First we apply the **default attributes** from the referenced object.
+
> Here `duration` and `language` are applied.
Then we apply the **children attributes** to every child.
+
> In this case we override every `duration` to 4800 and add the new `xp` attribute.
After that we apply the **relation attributes**, that are the most specific and as such,
override all others attributes.
+
> In this case only the `printalphabet` relation had attributes and so we apply
-the given `duration` to the final merged object.
+> the given `duration` to the final merged object.
diff --git a/docs/objects.md b/docs/objects.md
index 98c90405..81414db7 100644
--- a/docs/objects.md
+++ b/docs/objects.md
@@ -11,12 +11,12 @@ It structure can be visualized in two parts. The first one is the definition of
This is the minimal structure of an object:
-- name
-- type (`organisation`, `campus`, `onboarding`, `cursus`, `quest`, `exercise`)
-- status (`draft`, `online`, `offline`)
-- attrs {}
-- childrenAttrs {}
-- children {}
+- name
+- type (`organisation`, `campus`, `onboarding`, `cursus`, `quest`, `exercise`)
+- status (`draft`, `online`, `offline`)
+- attrs {}
+- childrenAttrs {}
+- children {}
## Browse Objects:
diff --git a/docs/piscine-go-curriculum.md b/docs/piscine-go-curriculum.md
index 16198562..e14d70f8 100644
--- a/docs/piscine-go-curriculum.md
+++ b/docs/piscine-go-curriculum.md
@@ -12,27 +12,27 @@ Notions: basic usage and interaction with a command line terminal.
Videos:
-- 1-2 Curl with the GitHub api and Example of Sh file | https://www.youtube.com/watch?v=A0Mqc215igw
-- 1-3 Touch , Chmod and Echo | https://www.youtube.com/watch?v=21h-vsuXgDU
-- 1-4 find and grep | https://www.youtube.com/watch?v=7a1JSWHhJlM
-- 1-5 cut sed and tr | https://www.youtube.com/watch?v=Nil7rVP3eMI
-- 1-6 jq and wc | https://www.youtube.com/watch?v=cQmcaOseuiA&
+- 1-2 Curl with the GitHub api and Example of Sh file | https://www.youtube.com/watch?v=A0Mqc215igw
+- 1-3 Touch , Chmod and Echo | https://www.youtube.com/watch?v=21h-vsuXgDU
+- 1-4 find and grep | https://www.youtube.com/watch?v=7a1JSWHhJlM
+- 1-5 cut sed and tr | https://www.youtube.com/watch?v=Nil7rVP3eMI
+- 1-6 jq and wc | https://www.youtube.com/watch?v=cQmcaOseuiA&
Exercices:
-- introduction | https://public.01-edu.org/subjects/introduction.en
-- make-it-better | https://public.01-edu.org/subjects/make-it-better.en
-- to-git-or-not-to-git | https://public.01-edu.org/subjects/to-git-or-not-to-git.en
-- who-are-you | https://public.01-edu.org/subjects/who-are-you.en
-- cl-camp1 | https://public.01-edu.org/subjects/cl-camp1.en
-- cl-camp2 | https://public.01-edu.org/subjects/cl-camp2.en
-- cl-camp3 | https://public.01-edu.org/subjects/cl-camp3.en
-- cl-camp4 | https://public.01-edu.org/subjects/cl-camp4.en
-- cl-camp5 | https://public.01-edu.org/subjects/cl-camp5.en
-- cl-camp6 | https://public.01-edu.org/subjects/cl-camp6.en
-- cl-camp7 | https://public.01-edu.org/subjects/cl-camp7.en
-- cl-camp8 | https://public.01-edu.org/subjects/cl-camp8.en
-- now-get-to-work | https://public.01-edu.org/subjects/now-get-to-work.en
+- introduction | https://public.01-edu.org/subjects/introduction.en
+- make-it-better | https://public.01-edu.org/subjects/make-it-better.en
+- to-git-or-not-to-git | https://public.01-edu.org/subjects/to-git-or-not-to-git.en
+- who-are-you | https://public.01-edu.org/subjects/who-are-you.en
+- cl-camp1 | https://public.01-edu.org/subjects/cl-camp1.en
+- cl-camp2 | https://public.01-edu.org/subjects/cl-camp2.en
+- cl-camp3 | https://public.01-edu.org/subjects/cl-camp3.en
+- cl-camp4 | https://public.01-edu.org/subjects/cl-camp4.en
+- cl-camp5 | https://public.01-edu.org/subjects/cl-camp5.en
+- cl-camp6 | https://public.01-edu.org/subjects/cl-camp6.en
+- cl-camp7 | https://public.01-edu.org/subjects/cl-camp7.en
+- cl-camp8 | https://public.01-edu.org/subjects/cl-camp8.en
+- now-get-to-work | https://public.01-edu.org/subjects/now-get-to-work.en
### Quest 2
@@ -42,21 +42,21 @@ Notions: Variables declaration, Loops, if and else statement, usage of z01.Print
Videos:
-- 02-01-If and Else Statements in Go | https://www.youtube.com/watch?v=rnF1_SfeGE4
-- 02-02-ForLoops | https://www.youtube.com/watch?v=Bt47lx6q2-4
-- 02-03-PrintRune function | https://www.youtube.com/watch?v=o8JrvI3jqoM
-- 02-04-Variables Declaration and ascii | https://www.youtube.com/watch?v=RCNOV8m0hJQ
+- 02-01-If and Else Statements in Go | https://www.youtube.com/watch?v=rnF1_SfeGE4
+- 02-02-ForLoops | https://www.youtube.com/watch?v=Bt47lx6q2-4
+- 02-03-PrintRune function | https://www.youtube.com/watch?v=o8JrvI3jqoM
+- 02-04-Variables Declaration and ascii | https://www.youtube.com/watch?v=RCNOV8m0hJQ
Exercices:
-- printalphabet | https://public.01-edu.org/subjects/printalphabet.en
-- printreversealphabet | https://public.01-edu.org/subjects/printreversealphabet.en
-- prindigits | https://public.01-edu.org/subjects/printdigits.en
-- isnegative | https://public.01-edu.org/subjects/isnegative.en
-- printcomb | https://public.01-edu.org/subjects/printcomb.en
-- printcomb2 | https://public.01-edu.org/subjects/printcomb2.en
-- printnbr | https://public.01-edu.org/subjects/printnbr.en
-- printcombn | https://public.01-edu.org/subjects/printcombn.en
+- printalphabet | https://public.01-edu.org/subjects/printalphabet.en
+- printreversealphabet | https://public.01-edu.org/subjects/printreversealphabet.en
+- prindigits | https://public.01-edu.org/subjects/printdigits.en
+- isnegative | https://public.01-edu.org/subjects/isnegative.en
+- printcomb | https://public.01-edu.org/subjects/printcomb.en
+- printcomb2 | https://public.01-edu.org/subjects/printcomb2.en
+- printnbr | https://public.01-edu.org/subjects/printnbr.en
+- printcombn | https://public.01-edu.org/subjects/printcombn.en
### Quest 3
@@ -66,25 +66,25 @@ Notions: String Manupulation, Range Loops, Pointers, Modulo and Division relativ
Videos:
-- 03-01-StringsManipulation | https://www.youtube.com/watch?v=8LplJN_8iOU
-- 03-02-RangeLoop | https://www.youtube.com/watch?v=i89N4cjh1-g
-- 03-03-Pointers on variables | https://www.youtube.com/watch?v=owVPa5b1BMc
-- 03-04-Modulo and Division | https://www.youtube.com/watch?v=NVan-9-Ioec
+- 03-01-StringsManipulation | https://www.youtube.com/watch?v=8LplJN_8iOU
+- 03-02-RangeLoop | https://www.youtube.com/watch?v=i89N4cjh1-g
+- 03-03-Pointers on variables | https://www.youtube.com/watch?v=owVPa5b1BMc
+- 03-04-Modulo and Division | https://www.youtube.com/watch?v=NVan-9-Ioec
Exercices:
-- pointone | https://public.01-edu.org/subjects/pointone.en
-- ultimatepointone | https://public.01-edu.org/subjects/ultimatepointone.en
-- divmod | https://public.01-edu.org/subjects/divmod.en
-- ultimatedivmod | https://public.01-edu.org/subjects/ultimatedivmod.en
-- printstr | https://public.01-edu.org/subjects/printstr.en
-- strlen | https://public.01-edu.org/subjects/strlen.en
-- swap | https://public.01-edu.org/subjects/swap.en
-- strrev | https://public.01-edu.org/subjects/strrev.en
-- basicatoi | https://public.01-edu.org/subjects/basicatoi.en
-- basicatoi2 | https://public.01-edu.org/subjects/basicatoi2.en
-- atoi | https://public.01-edu.org/subjects/atoi.en
-- sortintegerable | https://public.01-edu.org/subjects/sortintegertable.en
+- pointone | https://public.01-edu.org/subjects/pointone.en
+- ultimatepointone | https://public.01-edu.org/subjects/ultimatepointone.en
+- divmod | https://public.01-edu.org/subjects/divmod.en
+- ultimatedivmod | https://public.01-edu.org/subjects/ultimatedivmod.en
+- printstr | https://public.01-edu.org/subjects/printstr.en
+- strlen | https://public.01-edu.org/subjects/strlen.en
+- swap | https://public.01-edu.org/subjects/swap.en
+- strrev | https://public.01-edu.org/subjects/strrev.en
+- basicatoi | https://public.01-edu.org/subjects/basicatoi.en
+- basicatoi2 | https://public.01-edu.org/subjects/basicatoi2.en
+- atoi | https://public.01-edu.org/subjects/atoi.en
+- sortintegerable | https://public.01-edu.org/subjects/sortintegertable.en
### Exam 1 (4hours)
@@ -106,19 +106,19 @@ Notions: Iterative and recursive programmation
Videos:
-- 04-01-Iterativity and Recursivity | https://www.youtube.com/watch?v=oCZDdAID5Ik
+- 04-01-Iterativity and Recursivity | https://www.youtube.com/watch?v=oCZDdAID5Ik
Exercices:
-- iterativefactorial | https://public.01-edu.org/subjects/iterativefactorial.en
-- recursivefactorial | https://public.01-edu.org/subjects/recursivefactorial.en
-- iterativepower | https://public.01-edu.org/subjects/iterativepower.en
-- recursivepower | https://public.01-edu.org/subjects/recursivepower.en
-- fibonacci | https://public.01-edu.org/subjects/fibonacci.en
-- sqrt | https://public.01-edu.org/subjects/sqrt.en
-- isprime | https://public.01-edu.org/subjects/isprime.en
-- findnextprime | https://public.01-edu.org/subjects/findnextprime.en
-- eightqueens | https://public.01-edu.org/subjects/eightqueens.en
+- iterativefactorial | https://public.01-edu.org/subjects/iterativefactorial.en
+- recursivefactorial | https://public.01-edu.org/subjects/recursivefactorial.en
+- iterativepower | https://public.01-edu.org/subjects/iterativepower.en
+- recursivepower | https://public.01-edu.org/subjects/recursivepower.en
+- fibonacci | https://public.01-edu.org/subjects/fibonacci.en
+- sqrt | https://public.01-edu.org/subjects/sqrt.en
+- isprime | https://public.01-edu.org/subjects/isprime.en
+- findnextprime | https://public.01-edu.org/subjects/findnextprime.en
+- eightqueens | https://public.01-edu.org/subjects/eightqueens.en
### Quest 5
@@ -128,28 +128,28 @@ Notions: String Manipulation and medium-advanced algorithmia
Videos:
-- 05-01-Runes, Bytes and Strings | https://www.youtube.com/watch?v=-eIU5ISID64
+- 05-01-Runes, Bytes and Strings | https://www.youtube.com/watch?v=-eIU5ISID64
Exercices:
-- firstrune | https://public.01-edu.org/subjects/firstrune.en
-- nrune | https://public.01-edu.org/subjects/nrune.en
-- lastrune | https://public.01-edu.org/subjects/lastrune.en
-- index | https://public.01-edu.org/subjects/index.en
-- compare | https://public.01-edu.org/subjects/compare.en
-- toupper | https://public.01-edu.org/subjects/toupper.en
-- tolower | https://public.01-edu.org/subjects/tolower.en
-- capitalize | https://public.01-edu.org/subjects/capitalize.en
-- isalpha | https://public.01-edu.org/subjects/isalpha.en
-- isnumeric | https://public.01-edu.org/subjects/isnumeric.en
-- islower | https://public.01-edu.org/subjects/islower.en
-- isupper | https://public.01-edu.org/subjects/isupper.en
-- isprintable | https://public.01-edu.org/subjects/isprintable.en
-- concat | https://public.01-edu.org/subjects/concat.en
-- basicjoin | https://public.01-edu.org/subjects/basicjoin.en
-- join | https://public.01-edu.org/subjects/join.en
-- printnbrbase | https://public.01-edu.org/subjects/printnbrbase.en
-- atoibase | https://public.01-edu.org/subjects/atoibase.en
+- firstrune | https://public.01-edu.org/subjects/firstrune.en
+- nrune | https://public.01-edu.org/subjects/nrune.en
+- lastrune | https://public.01-edu.org/subjects/lastrune.en
+- index | https://public.01-edu.org/subjects/index.en
+- compare | https://public.01-edu.org/subjects/compare.en
+- toupper | https://public.01-edu.org/subjects/toupper.en
+- tolower | https://public.01-edu.org/subjects/tolower.en
+- capitalize | https://public.01-edu.org/subjects/capitalize.en
+- isalpha | https://public.01-edu.org/subjects/isalpha.en
+- isnumeric | https://public.01-edu.org/subjects/isnumeric.en
+- islower | https://public.01-edu.org/subjects/islower.en
+- isupper | https://public.01-edu.org/subjects/isupper.en
+- isprintable | https://public.01-edu.org/subjects/isprintable.en
+- concat | https://public.01-edu.org/subjects/concat.en
+- basicjoin | https://public.01-edu.org/subjects/basicjoin.en
+- join | https://public.01-edu.org/subjects/join.en
+- printnbrbase | https://public.01-edu.org/subjects/printnbrbase.en
+- atoibase | https://public.01-edu.org/subjects/atoibase.en
### Quest 6
@@ -159,14 +159,14 @@ Notions: Arguments manipulation in programs
Videos:
-- 06-01-Os.Args | https://www.youtube.com/watch?v=I1xt_TLRhF0
+- 06-01-Os.Args | https://www.youtube.com/watch?v=I1xt_TLRhF0
Exercices:
-- printprogramname | https://public.01-edu.org/subjects/printprogramname.en
-- printparams | https://public.01-edu.org/subjects/printparams.en
-- revparams | https://public.01-edu.org/subjects/revparams.en
-- sortparams | https://public.01-edu.org/subjects/sortparams.en
+- printprogramname | https://public.01-edu.org/subjects/printprogramname.en
+- printparams | https://public.01-edu.org/subjects/printparams.en
+- revparams | https://public.01-edu.org/subjects/revparams.en
+- sortparams | https://public.01-edu.org/subjects/sortparams.en
### Quest 7
@@ -176,17 +176,17 @@ Notions: Usage of Make and Append
Videos:
-- 07-01-Make and Append methods | https://www.youtube.com/watch?v=2HHVUM0YQuI
+- 07-01-Make and Append methods | https://www.youtube.com/watch?v=2HHVUM0YQuI
Exercices:
-- appendrange | https://public.01-edu.org/subjects/apprendrange.en
-- makerange | https://public.01-edu.org/subjects/makerange.en
-- concatparams | https://public.01-edu.org/subjects/concatparams.en
-- splitwhitespaces | https://public.01-edu.org/subjects/splitwhitespaces.en
-- printwordstables | https://public.01-edu.org/subjects/printwordstables.en
-- convertbase | https://public.01-edu.org/subjects/converbase.en
-- split | https://public.01-edu.org/subjects/split.en
+- appendrange | https://public.01-edu.org/subjects/apprendrange.en
+- makerange | https://public.01-edu.org/subjects/makerange.en
+- concatparams | https://public.01-edu.org/subjects/concatparams.en
+- splitwhitespaces | https://public.01-edu.org/subjects/splitwhitespaces.en
+- printwordstables | https://public.01-edu.org/subjects/printwordstables.en
+- convertbase | https://public.01-edu.org/subjects/converbase.en
+- split | https://public.01-edu.org/subjects/split.en
### Exam 2 (4hours)
@@ -208,16 +208,16 @@ Notions: Creation of struct types and file manipulation (Open, Read, Close metho
Videos:
-- 08-01-Structures in Go | https://www.youtube.com/watch?v=-24M7r7VuLY
-- 08-02-File Manipulation in go | https://www.youtube.com/watch?v=8vUgchQGhcQ
+- 08-01-Structures in Go | https://www.youtube.com/watch?v=-24M7r7VuLY
+- 08-02-File Manipulation in go | https://www.youtube.com/watch?v=8vUgchQGhcQ
Exercices:
-- bool | https://public.01-edu.org/subjects/bool.en
-- point | https://public.01-edu.org/subjects/point.en
-- displayfile | https://public.01-edu.org/subjects/displayfile.en
-- cat | https://public.01-edu.org/subjects/cat.en
-- ztail | https://public.01-edu.org/subjects/ztail.en
+- bool | https://public.01-edu.org/subjects/bool.en
+- point | https://public.01-edu.org/subjects/point.en
+- displayfile | https://public.01-edu.org/subjects/displayfile.en
+- cat | https://public.01-edu.org/subjects/cat.en
+- ztail | https://public.01-edu.org/subjects/ztail.en
### Quest 9
@@ -227,18 +227,18 @@ Notions: Advance function prototyping
Videos:
-- 09-01-Functions as Arguments | https://www.youtube.com/watch?v=lw8jUwsluAE
+- 09-01-Functions as Arguments | https://www.youtube.com/watch?v=lw8jUwsluAE
Exercices:
-- foreach | https://public.01-edu.org/subjects/foreach.en
-- map | https://public.01-edu.org/subjects/map.en
-- any | https://public.01-edu.org/subjects/any.en
-- countif | https://public.01-edu.org/subjects/countif.en
-- issorted | https://public.01-edu.org/subjects/issorted.en
-- doop | https://public.01-edu.org/subjects/doop.en
-- sortwordarr | https://public.01-edu.org/subjects/sortwordarr.en
-- advancedsortwordarr | https://public.01-edu.org/subjects/advancedsortwordarr.en
+- foreach | https://public.01-edu.org/subjects/foreach.en
+- map | https://public.01-edu.org/subjects/map.en
+- any | https://public.01-edu.org/subjects/any.en
+- countif | https://public.01-edu.org/subjects/countif.en
+- issorted | https://public.01-edu.org/subjects/issorted.en
+- doop | https://public.01-edu.org/subjects/doop.en
+- sortwordarr | https://public.01-edu.org/subjects/sortwordarr.en
+- advancedsortwordarr | https://public.01-edu.org/subjects/advancedsortwordarr.en
### Quest 10
@@ -248,18 +248,18 @@ Notions: All previously viewed concepts in team work
Exercices:
-- rot14 | https://public.01-edu.org/subjects/rot14.en
-- abort | https://public.01-edu.org/subjects/abort.en
-- collatzcountdown | https://public.01-edu.org/subjects/collatzcountdown.en
-- comcheck | https://public.01-edu.org/subjects/comcheck.en
-- enigma | https://public.01-edu.org/subjects/enigma.en
-- pilot | https://public.01-edu.org/subjects/pilot.en
-- fixthemain | https://public.01-edu.org/subjects/fixthemain.en
-- compact | https://public.01-edu.org/subjects/compact.en
-- activebits | https://public.01-edu.org/subjects/activebits.en
-- max | https://public.01-edu.org/subjects/max.en
-- join | https://public.01-edu.org/subjects/join.en
-- unmatch | https://public.01-edu.org/subjects/unmatch.en
+- rot14 | https://public.01-edu.org/subjects/rot14.en
+- abort | https://public.01-edu.org/subjects/abort.en
+- collatzcountdown | https://public.01-edu.org/subjects/collatzcountdown.en
+- comcheck | https://public.01-edu.org/subjects/comcheck.en
+- enigma | https://public.01-edu.org/subjects/enigma.en
+- pilot | https://public.01-edu.org/subjects/pilot.en
+- fixthemain | https://public.01-edu.org/subjects/fixthemain.en
+- compact | https://public.01-edu.org/subjects/compact.en
+- activebits | https://public.01-edu.org/subjects/activebits.en
+- max | https://public.01-edu.org/subjects/max.en
+- join | https://public.01-edu.org/subjects/join.en
+- unmatch | https://public.01-edu.org/subjects/unmatch.en
### Exam 3 (4hours)
@@ -281,25 +281,25 @@ Notions: Pointers manipulation and data structure
Videos:
-- 11-01-Linked Lists Introduction | https://www.youtube.com/watch?v=EPICVEbylU0
+- 11-01-Linked Lists Introduction | https://www.youtube.com/watch?v=EPICVEbylU0
Exercices:
-- listpushback | https://public.01-edu.org/subjects/listpushback.en
-- listpushfront | https://public.01-edu.org/subjects/listpushfront.en
-- listsize | https://public.01-edu.org/subjects/listsize.en
-- listlast | https://public.01-edu.org/subjects/listlast.en
-- listclear | https://public.01-edu.org/subjects/listclear.en
-- listat | https://public.01-edu.org/subjects/listat.en
-- listreverse | https://public.01-edu.org/subjects/listreverse.en
-- listforeach | https://public.01-edu.org/subjects/listforeach.en
-- listforeachif | https://public.01-edu.org/subjects/listforeachif.en
-- listfind | https://public.01-edu.org/subjects/listfind.en
-- listremoveif | https://public.01-edu.org/subjects/listremoveif.en
-- listmerge | https://public.01-edu.org/subjects/listmerge.en
-- listsort | https://public.01-edu.org/subjects/listsort.en
-- sortlistinsert | https://public.01-edu.org/subjects/sortlistinsert.en
-- sortedlistmerge | https://public.01-edu.org/subjects/sortedlistmerge.en
+- listpushback | https://public.01-edu.org/subjects/listpushback.en
+- listpushfront | https://public.01-edu.org/subjects/listpushfront.en
+- listsize | https://public.01-edu.org/subjects/listsize.en
+- listlast | https://public.01-edu.org/subjects/listlast.en
+- listclear | https://public.01-edu.org/subjects/listclear.en
+- listat | https://public.01-edu.org/subjects/listat.en
+- listreverse | https://public.01-edu.org/subjects/listreverse.en
+- listforeach | https://public.01-edu.org/subjects/listforeach.en
+- listforeachif | https://public.01-edu.org/subjects/listforeachif.en
+- listfind | https://public.01-edu.org/subjects/listfind.en
+- listremoveif | https://public.01-edu.org/subjects/listremoveif.en
+- listmerge | https://public.01-edu.org/subjects/listmerge.en
+- listsort | https://public.01-edu.org/subjects/listsort.en
+- sortlistinsert | https://public.01-edu.org/subjects/sortlistinsert.en
+- sortedlistmerge | https://public.01-edu.org/subjects/sortedlistmerge.en
### Quest 12
@@ -309,21 +309,21 @@ Notions: Advanced Data Structure using binary trees
Videos:
-- 12-01-Introduction to Binary Trees | https://www.youtube.com/watch?v=3g2WCqWNIVs
+- 12-01-Introduction to Binary Trees | https://www.youtube.com/watch?v=3g2WCqWNIVs
Exercices:
-- btreeinsertdata | https://public.01-edu.org/subjects/btreeinsertdata.en
-- btreeapplyinorder | https://public.01-edu.org/subjects/btreeapplyinorder.en
-- btreeapplypreorder | https://public.01-edu.org/subjects/btreeapplypreorder.en
-- btreesearchitem | https://public.01-edu.org/subjects/btreesearchitem.en
-- btreelevelcount | https://public.01-edu.org/subjects/btreelevelcount.en
-- btreeisbinary | https://public.01-edu.org/subjects/btreeisbinary.en
-- btreeapplylevel | https://public.01-edu.org/subjects/btreeapplylevel.en
-- btreemax | https://public.01-edu.org/subjects/btreemax.en
-- btreemin | https://public.01-edu.org/subjects/btreemin.en
-- btreetransplant | https://public.01-edu.org/subjects/btreetransplant.en
-- btreedeletenode | https://public.01-edu.org/subjects/btreedeletenode.en
+- btreeinsertdata | https://public.01-edu.org/subjects/btreeinsertdata.en
+- btreeapplyinorder | https://public.01-edu.org/subjects/btreeapplyinorder.en
+- btreeapplypreorder | https://public.01-edu.org/subjects/btreeapplypreorder.en
+- btreesearchitem | https://public.01-edu.org/subjects/btreesearchitem.en
+- btreelevelcount | https://public.01-edu.org/subjects/btreelevelcount.en
+- btreeisbinary | https://public.01-edu.org/subjects/btreeisbinary.en
+- btreeapplylevel | https://public.01-edu.org/subjects/btreeapplylevel.en
+- btreemax | https://public.01-edu.org/subjects/btreemax.en
+- btreemin | https://public.01-edu.org/subjects/btreemin.en
+- btreetransplant | https://public.01-edu.org/subjects/btreetransplant.en
+- btreedeletenode | https://public.01-edu.org/subjects/btreedeletenode.en
### Exam 4 - Final Exam (8hours)