LINUX.ORG.RU
ФорумJob

Вакансия: Разработчик perl в Москве

 ,


0

1

Требуется инженер-разработчик для разработки веб ориентированных высоконагруженных приложений в компанию контент-провайдера и аггрегатора VAS услуг мобильных операторов.

Требования:
1.Высшее образование (обязательно).
2.Perl (fast CGI), Postgresql, HTML, XML, Nginx. Разработка с использованием систем контроля версий (Subvertion/Mercurial)
3.Приветствуются: знание сетевых технологий и навыки их интеграции, навыки администрирования GNU/Linuх, FreeBSD.
4.Приветствуется знание PHP 5 (ООП), JavaScript, JQuery, Ajax, Yii, SMPP, WML, WAP, NoSQL(Redis, Memcached)
5.Приветствуется умение проектировать высоконагруженные системы.

От кандидата требуется целеустремленность, результативность, коммуникабельность, аналитическое мышление.

Условия:
1.Интересная работа в молодом, стремительно развивающемся коллективе,
2.З.п. белая от 70000 руб. (на испытательный срок), повышение по итогам достижения kpi
3.Оплата сотовой связи
4.Спорт и другие развлечения

Резюме можно слать на email: apodolin на vasmedia точка ru

★★★

Последнее исправление: UncleAndy (всего исправлений: 1)
Ответ на: комментарий от xpahos

Я могу забыть обработать исключение, но я никогда не забуду его создать. Мне не нужно будет выяснять из-за чего не работает кусок кода, т.к. всегда есть исключения и я могу ими нормально управлять, могу создавать свои и уже в самом исключении закладывать часть логики.

Ты не поверишь, но в перле всё точно также.

Любой человек, который знает синтаксис python открывает код и понимает что делает код, ему не нужно разбираться где ты там создал исключение, как ты его создал и какие параметры были переданы. Что будет с твоим кодом после 3х лет? Ты точно сможешь открыть его и понять что ты обрабатывал?

Ты не поверишь, но любой человек, который знает синтаксис perl откроет код через 3 года и тоже поймет что это всё значит. Да в перле некоторые вещи сделаны не так как в «традиционных» языках, но ничего плохого в этом нет и к этим нюансам привыкаешь через день работы с кодом.

Само по себе использование eval - моветон. Как минимум это не безопасно.

Подробнее можно?

Reset ★★★★★
()
Ответ на: комментарий от Reset

Ты не поверишь, но в перле всё точно также.

что-то я не заметил. Я вижу, что у тебя вызывается eval и только в нем можно поймать исключение. В python я могу это делать в любом месте.

Ты не поверишь, но любой человек, который знает синтаксис perl откроет код через 3 года и тоже поймет что это всё значит. Да в перле некоторые вещи сделаны не так как в «традиционных» языках, но ничего плохого в этом нет и к этим нюансам привыкаешь через день работы с кодом.

Выше я уже писал, что у меня есть опыт работы с Perl и сейчас я абсолютно не понимают то, что писал 6 лет назад. Это просто набор рекэкспов.

Подробнее можно?

Изначально это не безопасно. Вот тебе прям ссылка на вики http://en.wikipedia.org/wiki/Eval#Security_risks

Eval ухудшает читаемость кода. Тут я думаю разъяснения не нужны.

Eval затрудняет дебаггинг. Ну вот я не представляю как ты будешь вызывать что-то подобное pdb в своем eval и какие результаты это принесет.

Может еще расскажешь мне про классы в Perl? Как они создаются, про передачу параметров и проверку их же. Про self в классах. Может быть про тонну кода, который нужно написать для наследования одного только класса. Может быть поговорим о том, что в Perl можно накосячить даже в Assert, просто забыв добавить пару ковычек. Ну и как дела у Perl обстоят с list, dict, итераторами? Как разворачивать списки. Даже просто аналог args,kwargs для Perl в классах/методах есть?

xpahos ★★★★★
()
Ответ на: комментарий от Reset

Ты не поверишь, но в перле всё точно также.

Да плохо всё в перле с исключениями. Есть несколько костыльных реализаций в CPAN + самопальные велосипеды + много модулей, где вообще исключения не используют. Такой зоопарк создаёт гемор на ровном месте. То же самое с объектными системами - каждый изголяется по-своему. Уж лучше бы совсем не было этих объектов разномастных. Хотя мне одно время нравилось на тикле свою объектную систему велосипедить. Вот уж где раздолье. А на перле уныло как то. Что там нынче в моде: Moose, InsideOut? Лучше бы было простенькое ОО из коробки с удобным синтаксисом, глядишь перл не слил бы так позорно web-нишу пых-пыху.

Hjorn
()
Ответ на: комментарий от xpahos

что-то я не заметил. Я вижу, что у тебя вызывается eval и только в нем можно поймать исключение. В python я могу это делать в любом месте.

Ты не поверишь, но в перле eval точно также можно вызвать в любом месте как и try/except в питоне.

Выше я уже писал, что у меня есть опыт работы с Perl и сейчас я абсолютно не понимают то, что писал 6 лет назад. Это просто набор рекэкспов.

Ага, опыта месяц от силы.

Изначально это не безопасно. Вот тебе прям ссылка на вики http://en.wikipedia.org/wiki/Eval#Security_risks

Верно только для строкового eval'а, а мы сейчас говорим не о нем.

Eval ухудшает читаемость кода. Тут я думаю разъяснения не нужны.

Каким образом?

Ну вот я не представляю как ты будешь вызывать что-то подобное pdb в своем eval и какие результаты это принесет.

А в чем проблема?

Может быть про тонну кода, который нужно написать для наследования одного только класса.

Где тут тонна кода?

use base qw(Base)

Может еще расскажешь мне про классы в Perl? Как они создаются, про передачу параметров и проверку их же.

Создаются не так как в питоне, но плохого ничего в этом не вижу.

Ну и как дела у Perl обстоят с list, dict, итераторами?

Хорошо обстоят.

Как разворачивать списки.

Всмысле?

Даже просто аналог args,kwargs для Perl в классах/методах есть?

В перле принято передавать ссылки на хеши.

Reset ★★★★★
()
Ответ на: комментарий от Reset

Ага, опыта месяц от силы.

месяц, год, 3 года. По твоим словам я должен был разбираться уже в коде, т.к. сам мог написать пару строк регэкспов.

Где тут тонна кода?

package Boss;
use Employee;        # :-)
@ISA = qw(Employee);  

просто пример из документации.

import bla

class new_bla(bla.bla):
    pass

есть разница?

В перле принято передавать ссылки на хеши.

и к спискам. http://www.python.org/dev/peps/pep-3102/

По поводу eval и чтения кода. Просто посмотри на мои примеры и на свои. Что проще читать и дебажить? :)

А давай про декораторы теперь еще? :)

xpahos ★★★★★
()
Ответ на: комментарий от Reset

пых-пых это упрощенный перл для бедных. никакого позора нет в этом «сливе»

В том то и проблема перла - во всех его нишах появились языки попроще и поудобнее. А перлу крыть то нечем, никаких особых преимуществ у него нет. В общем, легаси, ничего с этим не поделаешь. Для админских скриптов в самый раз, а делать на нём новые большие проекты - это тупик.

Hjorn
()
Ответ на: комментарий от xpahos

есть разница?

Нет

По поводу eval и чтения кода. Просто посмотри на мои примеры и на свои. Что проще читать и дебажить? :)

Однохренственно.

А давай про декораторы теперь еще? :)

Декораторы в перле есть, прикручиваются каким-то модулем из cpan, у нас даже где-то в проекте используются, разницы с питоновскими никакой.

Reset ★★★★★
()
Ответ на: комментарий от xpahos

просто пример из документации. есть разница?

Ты лучше конструктор на перле покажи - вот где жесть. Тыщи перловиков пишут тыщи раз одну и ту же хрень с блессом хэша, продвинутые берут какой-нибудь Class::Super, что на самом деле ещё хуже. Конечно, для того кто каждый день пишет эту тайнопись всё читается на раз-два. А со стороны посмотришь - мрак. Или вот ещё пляски с разыменованием ссылок - тут и на пых-пых захочешь свалить (что большинство перло-писателей и сделали в своё время).

Hjorn
()
Ответ на: комментарий от xpahos

Выше я уже писал, что у меня есть опыт работы с Perl и сейчас я абсолютно не понимают то, что писал 6 лет назад. Это просто набор рекэкспов.

Это значит что ты так писал, не более того ;)))

Т.е скорее всего из двух вариантов foreach (@list) и foreach my $iterator (@list) ты всегда выбирал первый.

Кажется тут дело не в перле.

OxiD ★★★★
()
Ответ на: комментарий от xpahos

тонну кода, который нужно написать для наследования одного только класса.

use base 'Parent' %)

OxiD ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.