|
|
|
# Piscine Go curriculum
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
## Week One
|
|
|
|
|
|
|
|
### Quest 1
|
|
|
|
|
|
|
|
#### Introduction to shell
|
|
|
|
|
|
|
|
Notions: basic usage and interaction with a command line terminal.
|
|
|
|
|
|
|
|
Videos:
|
|
|
|
|
Refactor & Beautify & destruction commit
return early, remove else branches, reorder conditions and top-level functions, remove empty lines, remove unnecessary append(), fix typos, stop using testing package, remove dead code, fix mistakes in subjects, tests and solutions, remove disclaimers, reformat comments, simplify solutions, tests, add more instructions to subjects, remove obsolete files, etc.
Some of the reasons behind those modifications will be added to good-practices.en.md
Some of the exercises are now broken, they will have to be fixed, most of them have a "TODO:" comment.
5 years ago
|
|
|
- 1-2 `curl` with the GitHub api and Example of shell 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
|
|
|
|
- make-it-better | https://public.01-edu.org/subjects/make-it-better
|
|
|
|
- to-git-or-not-to-git | https://public.01-edu.org/subjects/to-git-or-not-to-git
|
|
|
|
- who-are-you | https://public.01-edu.org/subjects/who-are-you
|
|
|
|
- cl-camp1 | https://public.01-edu.org/subjects/cl-camp1
|
|
|
|
- cl-camp2 | https://public.01-edu.org/subjects/cl-camp2
|
|
|
|
- cl-camp3 | https://public.01-edu.org/subjects/cl-camp3
|
|
|
|
- cl-camp4 | https://public.01-edu.org/subjects/cl-camp4
|
|
|
|
- cl-camp5 | https://public.01-edu.org/subjects/cl-camp5
|
|
|
|
- cl-camp6 | https://public.01-edu.org/subjects/cl-camp6
|
|
|
|
- cl-camp7 | https://public.01-edu.org/subjects/cl-camp7
|
|
|
|
- cl-camp8 | https://public.01-edu.org/subjects/cl-camp8
|
|
|
|
- now-get-to-work | https://public.01-edu.org/subjects/now-get-to-work
|
|
|
|
|
|
|
|
### Quest 2
|
|
|
|
|
|
|
|
#### Introduction to Go Lang and basic programmation concepts
|
|
|
|
|
|
|
|
Notions: Variables declaration, Loops, if and else statement, usage of z01.PrintRune function.
|
|
|
|
|
|
|
|
Videos:
|
|
|
|
|
Refactor & Beautify & destruction commit
return early, remove else branches, reorder conditions and top-level functions, remove empty lines, remove unnecessary append(), fix typos, stop using testing package, remove dead code, fix mistakes in subjects, tests and solutions, remove disclaimers, reformat comments, simplify solutions, tests, add more instructions to subjects, remove obsolete files, etc.
Some of the reasons behind those modifications will be added to good-practices.en.md
Some of the exercises are now broken, they will have to be fixed, most of them have a "TODO:" comment.
5 years ago
|
|
|
- 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
|
|
|
|
- printreversealphabet | https://public.01-edu.org/subjects/printreversealphabet
|
|
|
|
- prindigits | https://public.01-edu.org/subjects/printdigits
|
|
|
|
- isnegative | https://public.01-edu.org/subjects/isnegative
|
|
|
|
- printcomb | https://public.01-edu.org/subjects/printcomb
|
|
|
|
- printcomb2 | https://public.01-edu.org/subjects/printcomb2
|
|
|
|
- printnbr | https://public.01-edu.org/subjects/printnbr
|
|
|
|
- printcombn | https://public.01-edu.org/subjects/printcombn
|
|
|
|
|
|
|
|
### Quest 3
|
|
|
|
|
|
|
|
#### Introduction to Go Lang and basic programmation concepts II
|
|
|
|
|
|
|
|
Notions: String Manupulation, Range Loops, Pointers, Modulo and Division relative to computer science.
|
|
|
|
|
|
|
|
Videos:
|
|
|
|
|
Refactor & Beautify & destruction commit
return early, remove else branches, reorder conditions and top-level functions, remove empty lines, remove unnecessary append(), fix typos, stop using testing package, remove dead code, fix mistakes in subjects, tests and solutions, remove disclaimers, reformat comments, simplify solutions, tests, add more instructions to subjects, remove obsolete files, etc.
Some of the reasons behind those modifications will be added to good-practices.en.md
Some of the exercises are now broken, they will have to be fixed, most of them have a "TODO:" comment.
5 years ago
|
|
|
- 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
|
|
|
|
- ultimatepointone | https://public.01-edu.org/subjects/ultimatepointone
|
|
|
|
- divmod | https://public.01-edu.org/subjects/divmod
|
|
|
|
- ultimatedivmod | https://public.01-edu.org/subjects/ultimatedivmod
|
|
|
|
- printstr | https://public.01-edu.org/subjects/printstr
|
|
|
|
- strlen | https://public.01-edu.org/subjects/strlen
|
|
|
|
- swap | https://public.01-edu.org/subjects/swap
|
|
|
|
- strrev | https://public.01-edu.org/subjects/strrev
|
|
|
|
- basicatoi | https://public.01-edu.org/subjects/basicatoi
|
|
|
|
- basicatoi2 | https://public.01-edu.org/subjects/basicatoi2
|
|
|
|
- atoi | https://public.01-edu.org/subjects/atoi
|
|
|
|
- sortintegerable | https://public.01-edu.org/subjects/sortintegertable
|
|
|
|
|
|
|
|
### Exam 1 (4hours)
|
|
|
|
|
|
|
|
#### Basic functions and programs skills evaluation, based on Quest 2 and Quest 3
|
|
|
|
|
|
|
|
### Raid 1 - Square Drawing
|
|
|
|
|
|
|
|
#### First Group project. Problem resolution. Usage of first knowledge (loop and if/else)
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
## Week Two
|
|
|
|
|
|
|
|
### Quest 4
|
|
|
|
|
|
|
|
#### Algorithmia concepts
|
|
|
|
|
|
|
|
Notions: Iterative and recursive programmation
|
|
|
|
|
|
|
|
Videos:
|
|
|
|
|
Refactor & Beautify & destruction commit
return early, remove else branches, reorder conditions and top-level functions, remove empty lines, remove unnecessary append(), fix typos, stop using testing package, remove dead code, fix mistakes in subjects, tests and solutions, remove disclaimers, reformat comments, simplify solutions, tests, add more instructions to subjects, remove obsolete files, etc.
Some of the reasons behind those modifications will be added to good-practices.en.md
Some of the exercises are now broken, they will have to be fixed, most of them have a "TODO:" comment.
5 years ago
|
|
|
- 04-01-Iterativity and Recursivity | https://www.youtube.com/watch?v=oCZDdAID5Ik
|
|
|
|
|
|
|
|
Exercices:
|
|
|
|
|
|
|
|
- iterativefactorial | https://public.01-edu.org/subjects/iterativefactorial
|
|
|
|
- recursivefactorial | https://public.01-edu.org/subjects/recursivefactorial
|
|
|
|
- iterativepower | https://public.01-edu.org/subjects/iterativepower
|
|
|
|
- recursivepower | https://public.01-edu.org/subjects/recursivepower
|
|
|
|
- fibonacci | https://public.01-edu.org/subjects/fibonacci
|
|
|
|
- sqrt | https://public.01-edu.org/subjects/sqrt
|
|
|
|
- isprime | https://public.01-edu.org/subjects/isprime
|
|
|
|
- findnextprime | https://public.01-edu.org/subjects/findnextprime
|
|
|
|
- eightqueens | https://public.01-edu.org/subjects/eightqueens
|
|
|
|
|
|
|
|
### Quest 5
|
|
|
|
|
|
|
|
#### Application of previously viewed concepts.
|
|
|
|
|
|
|
|
Notions: String Manipulation and medium-advanced algorithmia
|
|
|
|
|
|
|
|
Videos:
|
|
|
|
|
Refactor & Beautify & destruction commit
return early, remove else branches, reorder conditions and top-level functions, remove empty lines, remove unnecessary append(), fix typos, stop using testing package, remove dead code, fix mistakes in subjects, tests and solutions, remove disclaimers, reformat comments, simplify solutions, tests, add more instructions to subjects, remove obsolete files, etc.
Some of the reasons behind those modifications will be added to good-practices.en.md
Some of the exercises are now broken, they will have to be fixed, most of them have a "TODO:" comment.
5 years ago
|
|
|
- 05-01-Runes, Bytes and Strings | https://www.youtube.com/watch?v=-eIU5ISID64
|
|
|
|
|
|
|
|
Exercices:
|
|
|
|
|
|
|
|
- firstrune | https://public.01-edu.org/subjects/firstrune
|
|
|
|
- nrune | https://public.01-edu.org/subjects/nrune
|
|
|
|
- lastrune | https://public.01-edu.org/subjects/lastrune
|
|
|
|
- index | https://public.01-edu.org/subjects/index
|
|
|
|
- compare | https://public.01-edu.org/subjects/compare
|
|
|
|
- toupper | https://public.01-edu.org/subjects/toupper
|
|
|
|
- tolower | https://public.01-edu.org/subjects/tolower
|
|
|
|
- capitalize | https://public.01-edu.org/subjects/capitalize
|
|
|
|
- isalpha | https://public.01-edu.org/subjects/isalpha
|
|
|
|
- isnumeric | https://public.01-edu.org/subjects/isnumeric
|
|
|
|
- islower | https://public.01-edu.org/subjects/islower
|
|
|
|
- isupper | https://public.01-edu.org/subjects/isupper
|
|
|
|
- isprintable | https://public.01-edu.org/subjects/isprintable
|
|
|
|
- concat | https://public.01-edu.org/subjects/concat
|
|
|
|
- basicjoin | https://public.01-edu.org/subjects/basicjoin
|
|
|
|
- join | https://public.01-edu.org/subjects/join
|
|
|
|
- printnbrbase | https://public.01-edu.org/subjects/printnbrbase
|
|
|
|
- atoibase | https://public.01-edu.org/subjects/atoibase
|
|
|
|
|
|
|
|
### Quest 6
|
|
|
|
|
|
|
|
#### Usage of OS.Args
|
|
|
|
|
|
|
|
Notions: Arguments manipulation in programs
|
|
|
|
|
|
|
|
Videos:
|
|
|
|
|
Refactor & Beautify & destruction commit
return early, remove else branches, reorder conditions and top-level functions, remove empty lines, remove unnecessary append(), fix typos, stop using testing package, remove dead code, fix mistakes in subjects, tests and solutions, remove disclaimers, reformat comments, simplify solutions, tests, add more instructions to subjects, remove obsolete files, etc.
Some of the reasons behind those modifications will be added to good-practices.en.md
Some of the exercises are now broken, they will have to be fixed, most of them have a "TODO:" comment.
5 years ago
|
|
|
- 06-01-Os.Args | https://www.youtube.com/watch?v=I1xt_TLRhF0
|
|
|
|
|
|
|
|
Exercices:
|
|
|
|
|
|
|
|
- printprogramname | https://public.01-edu.org/subjects/printprogramname
|
|
|
|
- printparams | https://public.01-edu.org/subjects/printparams
|
|
|
|
- revparams | https://public.01-edu.org/subjects/revparams
|
|
|
|
- sortparams | https://public.01-edu.org/subjects/sortparams
|
|
|
|
|
|
|
|
### Quest 7
|
|
|
|
|
|
|
|
#### The Memory Allocation in GoLang
|
|
|
|
|
|
|
|
Notions: Usage of Make and Append
|
|
|
|
|
|
|
|
Videos:
|
|
|
|
|
Refactor & Beautify & destruction commit
return early, remove else branches, reorder conditions and top-level functions, remove empty lines, remove unnecessary append(), fix typos, stop using testing package, remove dead code, fix mistakes in subjects, tests and solutions, remove disclaimers, reformat comments, simplify solutions, tests, add more instructions to subjects, remove obsolete files, etc.
Some of the reasons behind those modifications will be added to good-practices.en.md
Some of the exercises are now broken, they will have to be fixed, most of them have a "TODO:" comment.
5 years ago
|
|
|
- 07-01-Make and Append methods | https://www.youtube.com/watch?v=2HHVUM0YQuI
|
|
|
|
|
|
|
|
Exercices:
|
|
|
|
|
|
|
|
- appendrange | https://public.01-edu.org/subjects/apprendrange
|
|
|
|
- makerange | https://public.01-edu.org/subjects/makerange
|
|
|
|
- concatparams | https://public.01-edu.org/subjects/concatparams
|
|
|
|
- splitwhitespaces | https://public.01-edu.org/subjects/splitwhitespaces
|
|
|
|
- printwordstables | https://public.01-edu.org/subjects/printwordstables
|
|
|
|
- convertbase | https://public.01-edu.org/subjects/converbase
|
|
|
|
- split | https://public.01-edu.org/subjects/split
|
|
|
|
|
|
|
|
### Exam 2 (4hours)
|
|
|
|
|
|
|
|
#### Basic functions and programs skills evaluation, based on Quest 2 and Quest 6
|
|
|
|
|
|
|
|
### Raid 2 - Sudoku
|
|
|
|
|
|
|
|
#### Second Group project. Problem resolution. Usage of Memory manipulation tools
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
## Week Three
|
|
|
|
|
|
|
|
### Quest 8
|
|
|
|
|
|
|
|
#### Introduction to Structures and advanced types in GoLang
|
|
|
|
|
|
|
|
Notions: Creation of struct types and file manipulation (Open, Read, Close methods)
|
|
|
|
|
|
|
|
Videos:
|
|
|
|
|
Refactor & Beautify & destruction commit
return early, remove else branches, reorder conditions and top-level functions, remove empty lines, remove unnecessary append(), fix typos, stop using testing package, remove dead code, fix mistakes in subjects, tests and solutions, remove disclaimers, reformat comments, simplify solutions, tests, add more instructions to subjects, remove obsolete files, etc.
Some of the reasons behind those modifications will be added to good-practices.en.md
Some of the exercises are now broken, they will have to be fixed, most of them have a "TODO:" comment.
5 years ago
|
|
|
- 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
|
|
|
|
- point | https://public.01-edu.org/subjects/point
|
|
|
|
- displayfile | https://public.01-edu.org/subjects/displayfile
|
|
|
|
- cat | https://public.01-edu.org/subjects/cat
|
|
|
|
- ztail | https://public.01-edu.org/subjects/ztail
|
|
|
|
|
|
|
|
### Quest 9
|
|
|
|
|
|
|
|
#### Functions as argument
|
|
|
|
|
|
|
|
Notions: Advance function prototyping
|
|
|
|
|
|
|
|
Videos:
|
|
|
|
|
Refactor & Beautify & destruction commit
return early, remove else branches, reorder conditions and top-level functions, remove empty lines, remove unnecessary append(), fix typos, stop using testing package, remove dead code, fix mistakes in subjects, tests and solutions, remove disclaimers, reformat comments, simplify solutions, tests, add more instructions to subjects, remove obsolete files, etc.
Some of the reasons behind those modifications will be added to good-practices.en.md
Some of the exercises are now broken, they will have to be fixed, most of them have a "TODO:" comment.
5 years ago
|
|
|
- 09-01-Functions as Arguments | https://www.youtube.com/watch?v=lw8jUwsluAE
|
|
|
|
|
|
|
|
Exercices:
|
|
|
|
|
|
|
|
- foreach | https://public.01-edu.org/subjects/foreach
|
|
|
|
- map | https://public.01-edu.org/subjects/map
|
|
|
|
- any | https://public.01-edu.org/subjects/any
|
|
|
|
- countif | https://public.01-edu.org/subjects/countif
|
|
|
|
- issorted | https://public.01-edu.org/subjects/issorted
|
|
|
|
- doop | https://public.01-edu.org/subjects/doop
|
|
|
|
- sortwordarr | https://public.01-edu.org/subjects/sortwordarr
|
|
|
|
- advancedsortwordarr | https://public.01-edu.org/subjects/advancedsortwordarr
|
|
|
|
|
|
|
|
### Quest 10
|
|
|
|
|
|
|
|
#### Hackathon
|
|
|
|
|
|
|
|
Notions: All previously viewed concepts in team work
|
|
|
|
|
|
|
|
Exercices:
|
|
|
|
|
|
|
|
- rot14 | https://public.01-edu.org/subjects/rot14
|
|
|
|
- abort | https://public.01-edu.org/subjects/abort
|
|
|
|
- collatzcountdown | https://public.01-edu.org/subjects/collatzcountdown
|
|
|
|
- comcheck | https://public.01-edu.org/subjects/comcheck
|
|
|
|
- enigma | https://public.01-edu.org/subjects/enigma
|
|
|
|
- pilot | https://public.01-edu.org/subjects/pilot
|
|
|
|
- fixthemain | https://public.01-edu.org/subjects/fixthemain
|
|
|
|
- compact | https://public.01-edu.org/subjects/compact
|
|
|
|
- activebits | https://public.01-edu.org/subjects/activebits
|
|
|
|
- max | https://public.01-edu.org/subjects/max
|
|
|
|
- join | https://public.01-edu.org/subjects/join
|
|
|
|
- unmatch | https://public.01-edu.org/subjects/unmatch
|
|
|
|
|
|
|
|
### Exam 3 (4hours)
|
|
|
|
|
|
|
|
#### Basic functions and programs skills evaluation, based on Quest 2 and Quest 8
|
|
|
|
|
|
|
|
### Raid 3 - File Reader
|
|
|
|
|
|
|
|
#### Second Group project. Problem resolution. File manipulation based on Raid 1
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
## Week Four
|
|
|
|
|
|
|
|
### Quest 11
|
|
|
|
|
|
|
|
#### Linked lists in GoLang
|
|
|
|
|
|
|
|
Notions: Pointers manipulation and data structure
|
|
|
|
|
|
|
|
Videos:
|
|
|
|
|
Refactor & Beautify & destruction commit
return early, remove else branches, reorder conditions and top-level functions, remove empty lines, remove unnecessary append(), fix typos, stop using testing package, remove dead code, fix mistakes in subjects, tests and solutions, remove disclaimers, reformat comments, simplify solutions, tests, add more instructions to subjects, remove obsolete files, etc.
Some of the reasons behind those modifications will be added to good-practices.en.md
Some of the exercises are now broken, they will have to be fixed, most of them have a "TODO:" comment.
5 years ago
|
|
|
- 11-01-Linked Lists Introduction | https://www.youtube.com/watch?v=EPICVEbylU0
|
|
|
|
|
|
|
|
Exercices:
|
|
|
|
|
|
|
|
- listpushback | https://public.01-edu.org/subjects/listpushback
|
|
|
|
- listpushfront | https://public.01-edu.org/subjects/listpushfront
|
|
|
|
- listsize | https://public.01-edu.org/subjects/listsize
|
|
|
|
- listlast | https://public.01-edu.org/subjects/listlast
|
|
|
|
- listclear | https://public.01-edu.org/subjects/listclear
|
|
|
|
- listat | https://public.01-edu.org/subjects/listat
|
|
|
|
- listreverse | https://public.01-edu.org/subjects/listreverse
|
|
|
|
- listforeach | https://public.01-edu.org/subjects/listforeach
|
|
|
|
- listforeachif | https://public.01-edu.org/subjects/listforeachif
|
|
|
|
- listfind | https://public.01-edu.org/subjects/listfind
|
|
|
|
- listremoveif | https://public.01-edu.org/subjects/listremoveif
|
|
|
|
- listmerge | https://public.01-edu.org/subjects/listmerge
|
|
|
|
- listsort | https://public.01-edu.org/subjects/listsort
|
|
|
|
- sortlistinsert | https://public.01-edu.org/subjects/sortlistinsert
|
|
|
|
- sortedlistmerge | https://public.01-edu.org/subjects/sortedlistmerge
|
|
|
|
|
|
|
|
### Quest 12
|
|
|
|
|
|
|
|
#### Binary Trees
|
|
|
|
|
|
|
|
Notions: Advanced Data Structure using binary trees
|
|
|
|
|
|
|
|
Videos:
|
|
|
|
|
Refactor & Beautify & destruction commit
return early, remove else branches, reorder conditions and top-level functions, remove empty lines, remove unnecessary append(), fix typos, stop using testing package, remove dead code, fix mistakes in subjects, tests and solutions, remove disclaimers, reformat comments, simplify solutions, tests, add more instructions to subjects, remove obsolete files, etc.
Some of the reasons behind those modifications will be added to good-practices.en.md
Some of the exercises are now broken, they will have to be fixed, most of them have a "TODO:" comment.
5 years ago
|
|
|
- 12-01-Introduction to Binary Trees | https://www.youtube.com/watch?v=3g2WCqWNIVs
|
|
|
|
|
|
|
|
Exercices:
|
|
|
|
|
|
|
|
- btreeinsertdata | https://public.01-edu.org/subjects/btreeinsertdata
|
|
|
|
- btreeapplyinorder | https://public.01-edu.org/subjects/btreeapplyinorder
|
|
|
|
- btreeapplypreorder | https://public.01-edu.org/subjects/btreeapplypreorder
|
|
|
|
- btreesearchitem | https://public.01-edu.org/subjects/btreesearchitem
|
|
|
|
- btreelevelcount | https://public.01-edu.org/subjects/btreelevelcount
|
|
|
|
- btreeisbinary | https://public.01-edu.org/subjects/btreeisbinary
|
|
|
|
- btreeapplylevel | https://public.01-edu.org/subjects/btreeapplylevel
|
|
|
|
- btreemax | https://public.01-edu.org/subjects/btreemax
|
|
|
|
- btreemin | https://public.01-edu.org/subjects/btreemin
|
|
|
|
- btreetransplant | https://public.01-edu.org/subjects/btreetransplant
|
|
|
|
- btreedeletenode | https://public.01-edu.org/subjects/btreedeletenode
|
|
|
|
|
|
|
|
### Exam 4 - Final Exam (8hours)
|
|
|
|
|
|
|
|
#### Functions and programs skills evaluation, based on Quest 2 and Quest 11
|