https://github.com/olekscode/isloop2025
Course materials for isLoop 2025
https://github.com/olekscode/isloop2025
Last synced: 3 months ago
JSON representation
Course materials for isLoop 2025
- Host: GitHub
- URL: https://github.com/olekscode/isloop2025
- Owner: olekscode
- License: mit
- Created: 2025-01-31T10:48:06.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-02-07T20:06:26.000Z (5 months ago)
- Last Synced: 2025-02-07T20:32:43.913Z (5 months ago)
- Size: 28.9 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# isLoop 2025: Course Materials
This repository contains materials for [isLoop 2025: International School on Live Object-Oriented Programming](https://isloop.pharo.org)
given by O.Zaitsev, S. Jordan Montaño, S. Ducasse and Mega on February 3-7, 2024 in Montpellier.- Exercise descriptions are in the folder Exercises
- Install Pharo using the PharoLauncher from http://www.pharo.org## Monday, 3 February, 2025
#### 1. Welcome (40 min)
- _(Oleks)_ Welcome words
- _(Sebas)_ What is Pharo? [[slides]](./slides/C019-W1S02-WhatIsPharo.pdf)
- _(together)_ Install Pharo
- _(Mega)_ First look and Hello World in Pharo environment
- _(Mega)_ First look at the environment: Playground, Inspector, System Browser, Debugger#### 2. Exercise: ProfStef (30 min)
#### 3. Core elements (1.30 h)
- _(Oleks)_ Pharo object model in a nutshell [[slides]](./slides/C019-W1S04-PharoModelInaNushell.pdf)
- _(Oleks)_ Class and method definition [[slides]](./slides/C019-W1S06-ClassAndMethodDefinition.pdf)#### 4. Exercise: Counter
#### Recommended videos
- [Understanding return](https://youtu.be/dEUcZolohlw)
- [yourself](http://rmod-pharo-mooc.lille.inria.fr/MOOC/PharoMOOC-Videos/EN/Week2/C019SD-W2-S10-EN-V1.mp4)
- [Class methods](http://rmod-pharo-mooc.lille.inria.fr/MOOC/PharoMOOC-Videos/EN/Week3/C019SD-W3-S6-EN-V1.mp4)## Tuesday, 4 February, 2025
#### 1. Exercise: Counter (30 min strict!)
#### 2. Kata: Rock-Paper-Scissors if-else (1 hour)
#### Lunch (2 hours)
#### 3. Lecture: Inheritance (1 hour)
- _(Mega)_ Inheritance Basics [[slides]](./slides/M1-3-Essence-03-Inheritance-Basic.pdf)
- _(Mega)_ Inheritance and Lookup: self [[slides]](./slides/M1-4-Essence-04-Self.pdf)#### 4. Kata: Rock-Paper-Scissors double dispatch (2 hours)
Ask advanced people to do live coding
#### Tasks for advanced people
- **Andrzej:** Visitor, Robot
- **Jovan:** Network
- **Omar:** Double dispatch, Visitor
- **Kyla:** _(ask Sebas)_#### Recommended videos
- [Essence of dispatch: Taking Pharo Booleans as Example](https://rmod-pharo-mooc.lille.inria.fr/AdvancedDesignMooc/Videos/M01_S1.mp4)
- [Essence of Dispatch: Let the receiver decide](https://rmod-pharo-mooc.lille.inria.fr/AdvancedDesignMooc/Videos/M01_S2_V2.mp4)
- [Inheritance Basics](https://rmod-pharo-mooc.lille.inria.fr/AdvancedDesignMooc/Videos/M01_S3.mp4)
- [Inheritance and Lookup: Self - Understand lookup once for all](https://rmod-pharo-mooc.lille.inria.fr/AdvancedDesignMooc/Videos/M01_S4.mp4)## Wednesday, 5 February 2025
#### 1. Exercise (1 hour 30 min)
- Finish Rock-Paper-Scissors with beginners
- Pair-program with advanced students on their exercises#### 2. Lecture: Messages (1 hour)
- _(Sebas)_ Understanding messages [[slides]](./slides/C019-W2S01-Messages.pdf)
- _(Sebas)_ Message composition and precedence [[slides]](./slides/C019-W2S03-Messages-Precedence.pdf)
- _(Sebas)_ Message sequence and cascade messages [[slides]](./slides/C019-W2S04-Messages-Sequence.pdf)#### Lunch (2 hours)
#### 3. Stephane's lectures
## Follow-up Materials
#### Lectures
- MOOC videos of our lectures
- Associated videos for topics we couldn't cover
- collections
- class methods
- XTDD
- Exception handling
- Iceberg
- Chapters for our lectures#### General Pharo
- PBE
- Deep into Pharo
- MOOC
- AMOOC
- Spec book
- Learning OOP with Pharo
- Pharo with Style
- Testing on Pharo#### Fun stuff
- Pharo things
- Roassal graphics
- Phausto
- Thales VR
- Pharo JS
- Cormas
- Reflective kernel#### Events
- GSoC
- ESUG
- UK Smalltalk
- MISS ABMS#### Community
- Discord
- Mailing lists
- Mastodon
- Pharo Association