Что важно в образовании — накопление знаний или искренняя любовь к самому обучению? Важно ли знать как можно больше языков программирования и технологий? В чем секрет работы, которая дарит вдохновение и силы для преодоления любых трудностей? Продолжаем беседу с Виталием Николаевичем Ляпотой, преподавателем кафедры программной инженерии.
Начинающий программист непременно задается вопросом — какой язык программирования (ЯП) выбрать первым? Для каких целей он лучше подходит? Своим жизненным опытом с нами поделился Виталий Николаевич, вспоминая свои студенческие годы и рассказывая о сегодняшних трудовых буднях.
— Какие языки программирования попадались вам на пути?
— На 1-м курсе я познакомился с C++ и мне тогда очень понравился этот язык. Помню, что я зачитывался книжкой в авторстве Дейтел и Дейтел, прям как художественной. Активно использовал плюсы в олимпиадах по спортивному программированию, конечно. Писал на нём курсовой в C++ Builder (приятная среда разработки от того же разработчика, что и Delphi). Да и сейчас использую C++ в рамках предмета по алгоритмам на 2-м курсе (он там основной у нас).
Ещё во время учёбы в универе я знакомился с Assembler’ом (как и все, в рамках соответствующих предметов, которые тогда были). Но я понял, что настолько «низкий уровень» — это всё-таки не моё. Ещё имел дело с языком Lisp (в рамках Visual LISP в AutoCAD, писал скриптики для папиного знакомого, ему нужно было по работе), но тоже не особо впечатлился этим языком.
Став преподавателем, некоторое время читал лекционные курсы по Java (было очень страшно, что в первые годы пришлось читать лекции, но это был удивительный опыт). И для этого, конечно, пришлось погрузиться в Java довольно глубоко. У Дмитрия Олеговича Колесникова было много классных тестов (он подходил к их придумыванию с душой), и вот они мне очень помогли разобраться во многих тонкостях и деталях. Язык мне действительно нравился, особенно подкупала новая на то время идея виртуальной машины и кроссплатформенности. Но любимым для меня он всё-таки так и не стал, хоть и оставил после себя весьма приятные впечатления.
Также, конечно, был на моём пути и C#, первое знакомство ещё в студенчестве для написания лаб, а потом опять же для лаб, но уже в качестве преподавателя. Используем этот язык для предмета «Объектно-ориентированного программирования» до сих пор. Активно развивающийся ЯП с кучей интересного синтаксического сахара.
Ещё безусловно JavaScript, ведь в веб-разработке без него никуда. Использовать его частенько приходится, но я не большой специалист в нём. Хотелось бы лучше подучить парочку популярных фреймворков (React и Vue), но всё никак не хватает на это времени. А так как и острой необходимости в них у меня сейчас нет, то это как-то постоянно откладывается.
И последний ЯП, который упомяну, это, пожалуй, Lua. Использовал его для написания особо хитрых (и не очень) шаблонов для Викисловаря. Знания языка у меня поверхностные, но их вполне хватает, чтобы писать что-то работоспособное и полезное. Ещё приятно, что он чем-то на Python похож. Даже получилось написать не очень сложный скрипт по преобразованию кода из Lua в Python и обратно. Тем самым я могу писать и отлаживать шаблоны прямо на Python у себя в консольке, а потом конвертировать в Lua и загружать в Викисловарь. Весьма удобно выходит.
К сожалению, до новых модных языков Kotlin, Dart, Rust, Go и прочих у меня руки так и не дошли, и в ближайшем будущем, скорее всего, пока так и останется. Слишком уж много работы и других планов сейчас.
— Какая ваша основная сфера разработки на данный момент? Совпадает ли она с вашими интересами?
— Основная сфера по профессиональной деятельности — это всё-таки веб-разработка (на Python, с использованием очень любимого мною фреймворка Django). Дополнительная сфера деятельности — это написание телеграм-ботиков и всяких полезных скриптов, но это больше именно pet-проекты.
И исходя из выше написанного — да, совпадает. Django-фреймворк — любимый и очень нравится, а pet-проекты — любимые по определению.
— Бывало ли такое, что вы разочаровывались в своей деятельности, и вам казалось, что больше не хотите заниматься программированием?
— К счастью, у меня этого никогда не было. Но я наслышан о таком и от друзей, и от знакомых, да и просто по сообщениям в интернете. Может быть, я с подобным не столкнулся потому, что программирование для меня не столько работа, сколько хобби (которое я применяю, в том числе и для работы). А если хобби настоящее, то это, обычно, надолго, а может даже и на всю жизнь. К слову, к преподаванию я тоже отношусь в некоторой степени как к хобби. Но тут только именно в некоторой степени. И вот говоря о преподавании – тут у меня таки случались «почти разочарования». Иногда казалось, что я слишком строг и жестокосерден, иногда, что недостаточно компетентен. Бывало ощущение, что не достигаю целей преподавания, а порой меня немного душила организационная составляющая (когда к основной работе преподавателя добавлялась дополнительная нерелевантная нагрузка). Были моменты, когда я всерьёз задумывался о том, чтобы бросить универ. Но всегда меня останавливала искренняя благодарность студентов за мой труд и понимание нужности моей работы. И пока есть эти две составляющие — я буду оставаться.
— Что бы вы посоветовали вашим студентам?
— Верить в себя, слушать свою интуицию, развиваться и не забывать отдыхать.
Виталий Николаевич своим открытым интервью подкрепил утверждение Уильяма Батлера Йейтса: «Образование — это не заполнение ведра водой, а зажжение огня». Очень важно, чтобы преподаватель вдохновлял своих студентов, показывал им горизонты — а дальше они отправятся в дальнее плавание, каждый в своём собственном направлении.
Выражаем благодарность Виталию Николаевичу за интервью.
Беседу вела Алиса Бондарь