Выпуск 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 г. | Содержание
Нас уже 1370. Больше подписчиков — лучше выпуски!

Комментарии к статье

Чат