Выпуск 27. Май 2015
← Обзор CPAN за апрель 2015 г. | СодержаниеИнтервью с Сюзанной Шмидт
Сюзанна Шмидт (sushee) — политолог, которая стала Perl-программистом
Когда и как научились программировать?
Хм… Я начала изучать программирование, когда мне было уже 26 лет и я уже почти закончила университет по специальности политолог.
В 1994 меня зацепили компьютеры и Linux, когда мой друг рассказал мне про свободный софт и интернет, поэтому я забросила политологию и переключилась на компьютеры.
В Берлине было по-особенному, потому что интернет, веб и Linux появились примерно в одно и тоже время, и я пыталась за всем уследить.
Я почти ничего не знала о компьютерах, кроме как писать статьи в Ворде DOS. Но у меня появился компьютер, и я установила — совершенно не понимая, что происходит — Linux с помощью немецкого IRC-канала. Но мне хотелось научиться программировать.
Поэтому я пыталась найти понятные для себя книги по программированию и, конечно, все говорили совершенно разное, с чего же мне стоит начать. «Pascal! Он для обучения!», «C! Это Unix!», «Lisp! Потому что это единственный настоящий язык» и так далее, и тому подобное.
В то время книги были написаны в основном для ученых, поэтому у меня не получалось чему-то из них научиться, программирование было для меня чем-то чужим, мне не далась даже K&R — я просто ее не поняла.
Учитывая то, что веб только начал развиваться, я помню интернет по протоколу gopher и тому подобное :) Я сделала домашнюю страничку. На HTML. Потом я нашла книгу Perl 4 издательства O’Reilly и вскоре после этого «Programming Perl», и тогда это была ТА книга, которая рассказывала о «есть такой список вещей» и «есть еще контекст» (я политолог и, конечно, У ВСЕГО ЕСТЬ СВОЙ КОНТЕКСТ, А КАК ЖЕ ИНАЧЕ? ;), и неожиданно все стало понятным.
Когда и как познакомились с Perl?
Perl был поим первым языком, и на самом деле благодаря стилю, в котором была написала книга, мне удалось понять, как использовать циклы и регулярные выражения для переформатирования большого документа… поэтому я познакомилась с Perl и регулярными выражениями до всего остального.
Веб только начинался, и первой моей работой было администрирование (связанное с Linux) и веб-разработка (HTML и Perl), и постепенно я продвигалась вверх, как и многие из моего поколения.
Какой редактор используете?
С самого начала Vi и немножко pico, благодаря elm ;) Также некоторое время я пользовалась emacs, но вернулась на vi/vim и никогда об этом не пожалела. (И да, у меня тоже не получалось из него выйти, я просто выдергивала модемный кабель и переподключалась… ;)
С какими другими языками интересно работать?
В какой-то момент я заметила, что мне хорошо дается SQL, и что мне очень нравятся регулярки, поэтому я обратила внимание на Prolog (почитайте Wikipedia-статью про декларативные языки). Мне нравится шелл, нравится минимализм C и ассемблера, мне нравится продуктивность R и также нравится привлекательность Ruby. В конце концов мне нравятся небольшие языки, в особенности минималистичные, такие как Scheme, например.
Что, по-вашему, является самым большим преимуществом Perl?
Он не стоит на пути как другие языки. Я часто замечаю, что у Perl есть своеобразная мягкость, с которой он соединяет вещи между собой. Мне нравится, что на Perl можно писать в разном стиле — ООП (здесь я имею в виду определение ООП, данное Аланом Кейем — отправка сообщений…) или функциональном, как угодно. До недавнего времени у CPAN было сильное преимущество, но сейчас у каждого языка есть нечто подобное.
Что, по-вашему, является самым важным свойством языков будущего?
Простота расширения языков, как хорошо взаимодействуют между собой компоненты и сторонние модули. Насколько они поддаются модификации. Возможно, как хорошо языки поддерживают функциональную парадигму. Мне кажется, это и есть будущие тенденции.
Что думаете о Perl 6?
Мне очень грустно. Я была так воодушевлена в… 200* и писала оды замечательным возможностям Perl 6… но он сильно перегружен, очень запутанный и сложный язык. Мне хотелось лучшего Perl. И конечно, его выход сильно затянулся, чтобы стать чем-то важным — на сегодняшний день есть столько изящных и замечательных языков, зачем вообще смотреть на Perl 6? Несколько раз я пыталась, но это просто не для меня. Я придерживаюсь современного минималистичного стиля Perl 5, и мне это очень нравится (например, Mojolicious или модули LeoNerd) или смотрю на другие языки.
Что для вас сообщество программистов? Считаете ли вы себя частью сообщества Perl?
Обычно это группа единомышленников и сочувствующих — те кто пишет код или что-то с большой пользовательской базой (как, например, у R). Эти люди живут в особой культуре, и обычно это и есть «сообщество».
Я считаю себя лишь наполовину в Perl сообществе, мне стоит усилий не зацикливаться только на Perl и заниматься другими вещами. Я не хочу по прошествии времени обнаружить только Perl у себя в резюме.
Где сейчас работаете, сколько времени проводите за написанием Perl-кода?
Половина времени это Postgres, половина время это Perl, потому что я занимаюсь бекендом :) Еще немного шелла, make, JavaScript там и сям.
Какие плюсы и минусы работы из дома?
Пожалуй, я отвечу самым лучшим комиксом на эту тему:
http://theoatmeal.com/comics/working_home ;)
- Плюсы: концентрация и тишина, гибкость
- Минусы: концентрация и тишина, гибкость (раздражители :)
Стоит ли сейчас молодым программистам советовать учить Perl?
Да! Я считаю Perl «классикой», и мне кажется, что каждый должен знать классику: Unix, C, Smalltalk, Lisp, Perl и так далее.
Вопросы от читателей
Уже прошло три месяца с вашей регистрации на PAUSE, где загрузки? :)
Очень сильно занята, честно :) И на CPAN уже почти все есть, не нужно спешить, чтобы что-нибудь добавить.
Считаете ли вы, что постинг картинок котов важен для современной эры интернета?
ДА. Как иначе людям правильно расслабляться? И каждому нужна ежедневная доза няшек. ♥ ;)
← Обзор CPAN за апрель 2015 г. | Содержание