RubyKoans — набор unit-тестов с игрофицированным процессом их прохождения.

Этот инструмент поможет как новичкам, так и опытным товарищам проверить и повысить свой уровень знания синтаксиса и особенностей языка программирования.

Выглядит это все очень приятно:

  def test_parallel_assignment_with_one_variable
    first_name, = ['John', 'Smith']
    assert_equal ___, first_name
  end

К примеру, в этом тесте нужно просто вписать результат выполнения выражения

first_name

в «___»

Так же программа показывает прогресс выполнения, добавляет свои комментарии, подсказывает решение и само расположение текущего теста в коде.
Все это можно увидеть на примере моего прохождения 118 тестов:
code

На мой взгляд прохождение таких тестов хорошо помогает разобраться во всех аспектах синтаксиса.
А с учетом специфичных особенностей языка, koans иногда к unit-тесту оставляет комментарии-подсказки 🙂

Я могу обосновать свой выбор тем, что даже после прочтения книги по синтаксису не всегда приходит это понимание.
На одной теории далеко не уедешь.
Все познается в примерах, а синтаксис языка программирования тем более.
Особенно, если все самые основные аспекты собраны в одном месте.

Так что я, с чистой совестью, советую вам использовать этот инструмент и делиться им с друзьями!

Появилось желание подтянуть свои знания в ruby?
Welcome to rubykoans.com

Ну а если выбор пал на другой язык, то это тоже не беда.
В интернете я нашел много koans для других языков программирования:

А еще лучше выберите их сами на github