Интервью с Сергеем Лопатиным
 
09.09.2003
Юрий Романов


 
стр. 1
стр. 2 >>

Сергей Лопатин (slop@bios.iuf.net) — начинающий «шароварщик» (как он сам о себе говорит), автор известного Advanced Viewer.

Почему народ идет в программисты?
— Как правило, все начинается со школьных занятий по информатике или покупки компьютера. У подростка много свободного времени, и компьютер быстро становится центром досуга, хобби. Если у человека есть творческая жилка, его сразу привлекает огромный креативный потенциал компьютера как инструмента. Например, в детстве я увлекался конструкторами, конструированием и т. п., но на такое хобби нужны инструменты и материалы, что требует денег. А компьютер требует только времени… Расходуя немного электричества и много свободного времени, можно воплотить в жизнь все свои замыслы — это зависит только от упорства и желания. В последнее время появилась возможность выложить любое свое творение на всеобщее обозрение в Интернете, некоторым это позволяет самоутвердиться. Но настоящие программеры занимаются своим делом скорее потому, что им интересно, а не из-за того, что им нужно самоутвердиться или мешают спать лавры Билла Гейтса.

Сменить профессию практически невозможно, все-таки она очень творческая, а для человека с реализовавшимся творческим потенциалом отказаться от нее почти невозможно (это сильнее наркотика, любой настоящий художник, писатель и т. п. подтвердит). Вот и приходится идти в вуз по соответствующей специальности, а там замечаешь, что программы обучения слабее твоих знаний. Хотя обретенная инженерная и фундаментальная подготовка потом все-таки помогает. Учась в вузе, получить сто,ящую квалификацию невозможно. Программы обучения компьютерным специальностям страшно устарели и далеки от реальности. Все приходится изучать самому. Поэтому нужно придирчиво выбирать специализацию, а их — тьма, и каждая в миниатюре — отдельная профессия со всеми вытекающими сложностями.

Программистом становишься как-то плавно и в начале незаметно для себя, а потом уже не выбраться… 99% знакомых так и стали программистами, а не тыкая наугад в список профессий, выбирая куда поступать.

Самое страшное начинается позже, когда диплом с отличием уже год как есть, а работы все нет. Иногда нужно сделать усилие и заниматься не тем, что тебе интересно, а тем, на что есть спрос. В общем, налево пойдешь… направо пойдешь… не все дороги ведут к заработку.

Какие нынче «наиболее живые» направления в программировании?
— Направления я условно разделил бы на:
- программирование несетевых приложений для персоналок;
- программирование сетевых приложений, баз данных, скриптов и т. п.;
- системное администрирование;
- веб-дизайн.
Сейчас спрос есть только на последние три пункта. Первый пункт могут себе позволить лишь крупные компании, разрабатывающие специализированный софт, или «шароварщики».

Что нужно изучить, чтобы стать программистом в том или ином направлении?
— Разные специализации практически являются разными профессиями и требуют разных знаний. Список того, что нужно изучить, постоянно растет. Учишь одно, а через полгода все это уже устарело, и, чтобы не отстать, приходится постоянно повышать квалификацию. Известны курьезные случаи, когда работодатель требует, скажем, трехлетнего опыта работы с некоторой технологией, а сама технология существует только полтора года. Разумеется, опыт очень важен. «Вычитанными» знаниями не обойтись, так как часто приходится разрешать конфликты между тем или иным ПО, протоколами и т. п. Для сисадминов опыт вообще имеет первостепенное значение.

«Классическим» программистам нужно знать рабочую среду (Visual Studo, Delphi и пр.), язык программирования, особенности работы операционной системы (Windows API). Тем, кто работает с базами данных, — особенности конкретных БД, их интерфейсов и протоколов. Тем, кто делает бизнес-приложения для Интернета, — скриптовые языки, протоколы, особенности работы и настройки серверного ПО. Веб-дизайнерам — графические редакторы типа Photoshop, язык HTML, скриптовые языки, среды разработки сайтов (Dreamvawer, FrontPage). Сисадминам нужно знать программное обеспечение, с которым они работают, и способы решения сопутствующих ему проблем.

Что изучать не стоит?
— Трудно сказать, актуален скорее правильный подбор инструментов. Бывает, например, нужно использовать Delphi, а человек выбирает слабенький Visual Basic и т. п. Ошибаются с выбором инсталляторов. Для небольших продуктов используют тяжеловесные инсталляторы, ориентированные на большие дистрибутивы. Очень важно правильно выбрать средства разработки при реализации баз данных. Часто существуют альтернативные конкурирующие пути решения (в таких случаях начинающим программистам обязательно нужно советоваться с более опытными):
- DirectX vs OpenGl;
- PHP vs Perl;
- Java Script vs VBA и т. д.

Где брать «задачки» для самостоятельных упражнений в программировании и какие это должны быть задачки, чтобы на них можно было бы ссылаться в резюме работодателю?
— Как правило, на этапе изучения средств разработки решаются самые элементарные задачи и разбираются примеры из документации к среде разработки. Затем начинаешь реализовывать то, чего не хватает в этих примерах, или делать проекты, которые хочешь научиться реализовывать. Зеленому новичку надо начинать с учебников, по мере повышения квалификации надобность в книгах отпадает, хватает документации к ПО, с которым работаешь.
Что показывать работодателю? Программистам — какой-нибудь реализованный проект, лишь бы он имел законченную форму. Неплохо, если он есть в Сети, хорошо посещается, имеет известность/награды софт-каталогов. Веб-дизайнерам — несколько реализованных сайтов. Сисадминам — главным образом, отзывы с предыдущих мест работы, иногда наборы «фирменных» скриптов.


 
стр. 1
стр. 2 >>

<<Сам себе хозяин
Все материалы номера
tut@deneg.net >>