Так как я являюсь .NET разработчиком, но поступил в аспирантуру в высшую школу экономики, то и преподавать взялся программирование на C#.
Доклады в Microsoft user group я читал, на научных конференциях выступал, в общем, какой-то опыт публичных выступлений у меня имеется. Кроме того, на С# я пишу уже около 6 лет, 4,5 из которых зарабатываю этим… Короче, проблем с преподаванием не должно было возникнуть. Но, к сожалению, это оказалось не совсем тем, что я ожидал… Когда я учился, то видел процесс со стороны студента, а, став преподавателем, посмотрел на это, так сказать, с другой стороны баррикад. Вот тут-то я и понял, что ну не то это. Пришлось идти на компромиссы, которые я не люблю. Про свои компромиссы я и расскажу.
Как все начиналось:
Договорились с научником, завотделением, с преподавателями. Т.к. программа/расписание/нагрузки на преподавателей были уже распределены, то я мог только неофициально встроиться в текущий процесс. Это и была моя первая проблема, потому что ровно в середине рабочего дня (13:40) в понедельник я выпадал из рабочего процесса. Думаю, многих людей, работающих в компаниях, где отсутствует гибкий график, это остановило бы! Но у нас в Abbyy «главное работу работать, а не время отсиживать».
В итоге, решение-компромисс нашлось: договорился на работе, что работаю из дома и время дорабатываю в другие дни на свое усмотрение.
Вторая проблема проявила себя также быстро, еще до начала преподавания… Научник сказал мне: «Твоя задача не сделать из них супер-специалистов, а вдолбить прописные истины.» Мол, сделать из человека хорошего специалиста невозможно, он должен сделать его сам.
Как-же так?! Я ведь собирался нести большое и светлое! А тут, оказывается, нужно маленькое и серое…
Решив, что это, опять же, не проблема, и я смогу найти, где развернуться: вдалбливая одновременно основы и рассказывая что-то из реальной разработки и личного опыта.
Итак:
• Мне неофициально дали 1 группу в понедельник в 13.40, которая «по-сильнее и по-интереснее».
• Я нигде не числился, преподаватель присутствовал на занятии, но не учувствовал в нем, кроме вопросов типа «когда можно что-то сдать» и «методики выставления оценок», в которых я ничего не знал и не понимал. Преподавание стало мои хобби, неоплачиваемым.
Первый плюс
На первом же занятии я понял, что группа действительно сильнее других. Это стало очевидно, когда я посетил еще 2 семинара у других студентов. (На фоне остальных они интересуются и имеют желание учиться, тк остальные группы часто были как шум поглощающее покрытие в аудитории и на любые вопросы-звуки преподавателя в класс я не слышал ни каких звуков в ответ…).
Прописные истины
Я понял, что веду семинары у группы в 12 человек (на потоке их около 200), а остальные семинары ведут другие люди и совсем по-другому. Лекции читаю тоже не я. Следовательно, ты им на семинаре одно, а преподаватель на лекции другое. То, что считаешь важным ты, как практикующий разработчик и то, что считает важным лектор, — это разные вещи… А ты должен вести так, чтобы они сдали экзамен.
Целеполагание и важность
Сейчас, после окончания вуза, я могу сказать ему огромное спасибо за 2 вещи:
• Были хорошие предметы вроде мат. моделирования, мат. анализа, теории вероятностей, численных методов и т.п. Их было немного, но они были.
• Остальные предметы и вузе, в целом, не мешали мне учиться. Довольно странное определение, смысл которого в том, что я был уверен, что меня не выгонят из-за всяких психологий и политологий, и я могу спокойно работать и изучать то, что считаю нужным.
В вышке же с дисциплиной и требованиями все серьезно (серьезнее, чем в вузе, который я окончил). За не сдачу любого предмета можно вылететь, следовательно, сдать «измором» тяжелее. Это и плюс, и минус. Минус – что все боятся не сдать. Плюс – есть хоть какая-то дисциплина.
В итоге, как-то раз я спросил: «Вам как лучше: так, чтобы вы экзамен сдали, или так, чтобы вы лучше C# понимали?» Я бы ответил второе даже на 1 курсе… но для них было важнее не вылететь из вуза.
Сленг разработчиков
Еще до первого занятия, когда я просто пришел посмотреть, как ведут занятия другие семинаристы стало понятно, что мы разговариваем на разных языках.
Пример:
Правильно говорить так: «привести объект типа Obj1 к ссылке типа ObjBase». Но для меня это произнести тяжело и долго. Я бы сказал: «кастануть (cast) obj1 к objbase». И таких мелочей много. Ты уже давно используешь либо сленг, либо англоязычные варианты, а тут должен говорить на правильном русско-программистском языке.
Очень тяжело контролировать свою речь, когда 5 лет говоришь по-другому… еще тяжелее контролировать, когда начинается поток сознания … Я так и не смог справиться.
Внешние факторы
Мне достаточно быстро пришло понимание, что в понедельник я очень сильно выпадаю из разработки, работая из дома. Человек, который пишет интерфейс, поверх моего api в понедельник не может полноценно работать. Когда ты это понимаешь, то совесть шепчет, что ты не должен своими проблемами сковывать других разработчиков — это снижает скорость реализации проекта.
Накопленные проблемы:
• Тяжело нести большое и светлое, когда ты часть большой системы, изменить которую еще долго не получится.
• Проблема со скоростью разработки проекта на работе.
• Слишком много компромиссов с самим собой, с которыми я не готов был мириться.
Вывод:
Я решил уйти от преподавания.
Что я хотел сказать этим текстом
Подумайте, прежде чем идти преподавателем-идеалистом. Скорее всего, вы столкнётесь со всеми проблемами, которые описаны выше. Что касается меня, то я получил очень интересный опыт для себя, но продолжить преподавать дальше для меня не вариант.
ссылка на оригинал статьи http://habrahabr.ru/post/170963/
Добавить комментарий