wiki:smalltalk_koans

Version 18 (modified by patrick.rein, 8 years ago) ( diff )

--

Smalltalk Koans

Smalltalk Koans will guide you as a Smalltalk novice from first steps in Smalltalk to your first small project. The path is simple: You get a task, you solve it and, in the process, learn something. The Koans Sensei (jap.: teacher) will be your guide and introduce you to fundamental concepts in Smalltalk such as strings, blocks, collections and many more.

How to Install

Environment
4.2 and later
4.1.1 (win)
r2499

Using Metacello, just run the following code in your workspace:

(Installer mc http: 'http://www.hpi.uni-potsdam.de/hirschfeld/squeaksource/')
   project: 'MetacelloRepository';
   install: 'ConfigurationOfSmalltalkKoans'.
(Smalltalk at: #ConfigurationOfSmalltalkKoans) load.

System categories

Koans-Core ... Core and UI Components bringing the Sensei to life.
Koans-Abouts ... All Smalltalk koan lessons.
Koans-Bonsai ... Additional classes used during lessons.

Version 1.0

  • initial release

Version 2.0

  • Improved UI
  • Simpler Infrastructure

How to Use

After you installed the Koans you find them in the 'Apps' Menu.

After starting the Koans you will see a window called Sensei. He will judge your progress and guide you to the next task. The three buttons at the bottom do the following:

  • 'Run' will judge your current solution and eventually let you proceed.
  • 'Browse' will open a new browser window showing you the current task.
  • 'Skip' will skip one complete lesson. You will be able to finish it later if you restart the Sensei.

The bar next to the buttons shows your overall progress on the journey to Smalltalk enlightenment.

The text box above all of this shows the evaluation of your current task and can point you to the problem and its solution.

Acknowledgments

The Smalltalk Koans were inspired by the Edgecase Ruby Koans project and the original "The little Lisper" book by Daniel P. Friedman and Matthias Felleisen.

To date the following people contributed to this project:

  • Eric Seckler
  • Robin Schreiber
  • Patrick Rein
  • Daniel Stolpe
  • Tobias Pape
  • Jakob Reschke
  • Willi Müller
  • Daniel Kurzynski

Attachments (1)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.