Я преподаю в школе Flatiron School уже несколько месяцев. Я думал, что моя жизнь быстро изменилась, когда я прошел через саму программу, но я вырос в геометрической прогрессии, находясь по другую сторону от нее. Я не осознавал, сколько усилий прилагается к обучению, потому что я привык опускать голову и «просто делать это». Я наблюдал, как мои ученики переходили от миллиона и одного вопроса о хешах к созданию приложений JavaScript и спрашивая меня, почему их отладчик не работает внутри выборки.
Одна важная вещь, которую я узнал, находясь по ту сторону экрана?
Оставайтесь на связи.
Часто мои ученики задают вопросы, и я помню, как был на их месте несколько месяцев назад. Мне пришлось понять, что слишком легко принимать собственные знания как должное. Жаргон и другие формы сокращенного языка хороши, когда все в группе в курсе, и расстраивают людей, которые пытаются войти в ситуацию. Всегда лучше всего избегать предположений.
Например, я обнаружил, что веду студента через «сокращение» в Ruby. В документации говорится:
Объединяет все элементы перечисления, применяя бинарную операцию, заданную блоком или символом, который называет метод или оператор.
Бинарная операция? Enum? Символ? Я считаю само собой разумеющимся, что могу быстро обдумать это предложение и решить, подходит ли сокращение моим целям или нет. Однако я знаю, что, возможно, не чувствовал себя так несколько месяцев назад. У меня были рукописные заметки об общих методах работы с массивами, когда я пытался понять их смысл.
Я категорически за то, чтобы перейти от написания кода к разговору о том, как писать код. Рисую массив.
[ 1 ,2, 3, 4]
Мы шаг за шагом поговорим о том, как сложить все в массив.
0 + 1
1 + 2
3 + 3
6 + 4
=> 10
Есть начальное значение. Значение после выполнения операции, и это значение продолжает использоваться с каждой операцией, пока не будет получен единственный результат. Никакого упоминания о блоке, аккумуляторе или о перечислимых объектах в целом. Я считаю, что проще воплотить концепцию в жизнь, прежде чем мы перейдем к определению всего жаргона.
Затем я наблюдал, как этот студент учил кого-то еще, как решить, какой метод массива они хотят использовать.
Я никогда не хочу принимать как должное все, что я узнал за последний год. Основная часть программирования - и жизни - заключается в том, что вещи всегда будут меняться. Одна вещь, которая останется неизменной, - это всегда быть студентом.