Perl Developer's Journal
[Most Recent Entries]
[Calendar View]
[Friends]
Below are the 20 most recent journal entries recorded in
Perl Developer's LiveJournal:
[ << Previous 20 ]
| Monday, July 13th, 2009 | 1:14 am [afiskon]
 |
Движок сайта, CMS или модуль CPAN
Господа, а не знает ли кто-нибудь модуля или движка, на базе которого можно разрабатывать сайты. Я имею ввиду не "use CGI", а нечто более сложное - релизующее кеширование страниц, поддержку шаблонов, поддержку mod_rewrite и тд. В общем ищу способ сделать разработку сайта более простой - чтобы часть базового функционала была уже написана. Ничего подобного не встречали? | | Sunday, July 12th, 2009 | 3:30 pm [eugene_toropov]
 |
Ищем удаленного фуллтайм perl-разработчика
Не прошло и полгода, как нам опять нужен новый спец, так что текст вакансии почти не изменился. Про вас: 1. Английский на уровне общения по мессенджеру или круче. 2. Высшее образование в соотв. или смежной области. 3. Good problem-solving skills. 4. Ability to work individually and in a team. 5. По крайней мере 3 года опыта работы perl-разработчиком в связке Linux/bash + Apache/mod_perl2 + MySQL + Perl 6. Вам не надо объяснять, что такое CVS/SVN, HTML, DOM, XML, JS/JQuery и как с этим хозяйством работать. 7. Большим плюсом будет опыт работы в travel-индустрии, а также с событийными фреймворками, в особенности AnyEvent.
Про нас: Skoosh ( http://www.skoosh.com ) - онлайн система бронирования отелей. Этим сказано точно не все, но достаточно много. Оплата: $3000 в месяц.
Don't forget to describe the biggest challenges that you have faced so far in your development career and explain how you solved these challenges. | | Wednesday, July 8th, 2009 | 10:26 am [shtaketon_]
 |
Здравствуйте! Поделитесь, пожалуйста, каким модулем пользуетесь для формирования сложных excel-файлов из Perl? У меня есть документ Торг-12, счет-фактура и другие подобные.. Записывать их с помощью SpreadSheet::WriteExcel, а потом еще и модифицировать - уходит вечность! Может быть есть что-то вразумительное с нормальными возможностями? | | Saturday, July 4th, 2009 | 12:18 pm [beffz] |
| 11:42 am [kun99]
 |
вопросик
Доброе время суток, Задача с асинхронными запросами переросла себя, на данный момент нужна такая схема: несколько независимых друг от друга процессов, у них один мастер, который в одно время посылает им всем задания, они выполняют их и отдают результаты мастеру. дочерние процессы никак не связанны, они сами по себе, мастер только один, данные никак не связаны между дочерними, нужно послать запрос всем дочерним, дождаться последнего ответа, и дальше работа мастера, дочерние ждут следующих запросов. ответы могут отдаться +- одновременно со всех дочерних, пока в голову приходит только банальный прием команд дочерними через сокеты, пайпы и запись в какой-то файл через лок или что-то в этом роде, чтоб другой ждал пока лок не снимется и дальше отдавал своё.. Есть какие-то варианты получше, быстрее, надежнее? Спасибо | | Thursday, July 2nd, 2009 | 4:55 pm [mollenhauer]
 |
use Carp?
Читал о пользе применения croak вместо die в модулях, но честно никогда не использовал этот механизм (всегда обходил это разными способами, либо не возникало необходимости). А тут заморочился с одной своей библиотекой, и решил реализовать ее так сказать для паблик, а потому переписать "правильно". Краткая справка о модуле Carp: Содержит функции carp() и croak() - аналогии функций warn() и die(). Они отображают сообщение с указанием подпрограммы и номера ее строки, откуда вызываются эти функции, тогда как warn() и die() отображают номер строки в коде всей программы.
Написал простейший вызов функции моего модуля, и определил вместо die при открытии файла croak. Любопытства ради прошелся отладчиком (хотя мог бы и сразу в модуль Carp залезть, но уж так вышло)... И слегка прифигел от этого кода: ( Далее ) | | Sunday, June 28th, 2009 | 12:29 pm [as_pushkin_by]
 |
| | Thursday, June 25th, 2009 | 12:18 pm [groooover]
 |
Проблема с модулем Digest::SHA256
Поставил из портов модуль Digest::SHA256. Версия perl v5.8.8 built for i386-freebsd-64int. ОС: 6.2-RELEASE FreeBSD При запуске тестового скрипта, состоящего из трех строчек: #!/usr/bin/perl use Digest::SHA256; my $context = new Digest::SHA256::new(256); Выдается ошибка: Bareword found where operator expected at test3.pl line 3, near "new Digest::SHA256::new" (Do you need to predeclare new?) syntax error at test3.pl line 3, near "new Digest::SHA256::new" Execution of test3.pl aborted due to compilation errors. Причем объект инициализируется так, как написано в документации модуля на CPAN. Кто-нибудь сталкивался с такой проблемой? Есть ли еще какой-нибудь модуль, реализующий функцию SHA256? | | Tuesday, June 23rd, 2009 | 1:45 pm [hr_mail_ru]
 |
Требуется: Perl-программист, Москва, Mail.Ru Mail.Ru объявляет конкурс на открытую вакансию Perl-программистУсловия работы Требования:• хорошее знание Perl • хорошее знание SQL, опыт работы с mysql или другими СУБД, оптимизация SQL-запросов, опыт проектирования структур БД • опыт разработки под *nix (FreeBSD, Linux) • умение работать в команде, коммуникабельность, желание развиваться Особыми плюсами являются:• опыт написания веб-приложений, общее представление об apache, протоколах, используемых в Web, инфраструктуре Web в целом • знание других языков программирования Обязанности:• разработка новых Web-проектов компании и поддержка существующих Резюме направляйте на Shokina@corp.mail.ru, контактный телефон: (495) 725-63-57 | | Friday, June 19th, 2009 | 9:17 am [odlbo]
 |
XS vs threads
Всем доброго времени суток! Недавно столкнулся с давольно непонятной для меня проблемой, так как я вляюсь новичком как в XS'е так и в Perl'е . ( Read more... ) | 9:48 am [despairr]
 |
Открытый SVN-репозиторий REG.RU
Как мы все прекрасно знаем, "правильное" использование OpenSource-технологий предполагает не только их потребление, но и готовность делиться собственными разработками с сообществом. Если говорить о Perl, то такая возможность делиться, это, безусловно -- CPAN. Однако, чтобы выложить модуль на CPAN, он, как ни крути, должен обладать определённой степенью зрелости -- нужна хотя бы минимальная документация и какая-то уверенность, что интерфейсы не поменяются в ближайшее время радикальным образом. Возникает вопрос -- как же делиться теми разработками, до "причёсывания" которых пока не дошли руки? В нашей компании мы решили этот вопрос так -- создали отдельный SVN-репозиторий специально для открытых разработок: URL: https://svn.reg.ru/ossРазумеется, есть открытый анонимный readonly-доступ ;) Там все наши CPAN-дистрибутивы и то, что пока на CPAN не выложено. Также отдельные скрипты, мини-утилиты, патчи для стороннего открытого софта и т. п. Конечно, в репозитории могло бы быть намного больше модулей, т. к. существенную часть модулей их наших проектов можно после некоторого обобщения и причёсывания отделить в "открытый доступ". Но отпиливание и выкладывание кусков системы -- это только вопрос времени, т. к. намерение это делать есть. ( Read more... ) | | Monday, June 15th, 2009 | 9:42 pm [spirit_nn]
 |
sablotron
проблема: имеем такой вот код my $xsl_file=shift; my $xml=shift; my $xsl=shift; $xsl=“file://$main::StylePath/templates/ ” if (!$xsl); $convertUTF = Text::Iconv->new(“windows-1251”, “UTF-8”); $convertWIN = Text::Iconv->new(“UTF-8”, “windows-1251”); $xml=$convertUTF->convert($xml); $sab = new XML::Sablotron(); $sab->setBase(“$xsl”); $sab->runProcessor($xsl.$xsl_file, “arg:/data”, “arg:/result”, undef, [“data”, $xml] ); ругается следующим образом: 5-th argument to SablotProcess has to be ARRAYREF at /usr/local/lib/perl/5.10.0/XML/Sablotron.p m line 115. perl 5.10 Sablotron 1.0.1 как так? ведь очевидно, что 5й аргумент ARRAYREF для чистоты попробовали безумный вариант: @arraytmp = (“data”, $xml); $sab->runProcessor($xsl.$xsl_file, “arg:/data”, “arg:/result”, undef, \@arraytmp ); не помогло. код заведомо работает в другом месте, там perl 5.08 и Sablotron 0.97 поставили здесь 0.97 - результат тот же куда копать? | 2:24 pm [sadmitry]
 |
CGI.pm & meta tags
Имеем: debian:~/work/test# perl -v This is perl, v5.10.0 built for i486-linux-gnu-thread-multi Copyright 1987-2007, Larry Wall Делаю простенький скрипт: debian:~/work/test# cat test1.cgi #!/usr/bin/perl -w use CGI qw/:standard/; my $q = new CGI; print $q->header( "text/html; charset=UTF-8" ); print $q->start_html(-head=>[ Link({-rel=>'stylesheet', -type=>'text/css', -href=>'/status.css'}), meta({-http_equiv => 'Content-Type', -content => 'text/html; charset=UTF-8'}), ], -title=>( "Statistics" ), -class=>("status") ); print $q->p($CGI::revision); print "\n"; print $q->p($CGI::VERSION); print "\n"; Получаю: debian:~/work/test# cat test1.cgi.2 HTTP/1.1 200 OK Date: Mon, 15 Jun 2009 10:09:57 GMT Server: Apache/1.3.41 (Unix) mod_ssl/2.8.31 OpenSSL/0.9.8g Connection: close Content-Type: text/html; charset=UTF-8 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns=" http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US"> <head> <title>Statistics</title> <link type="text/css" rel="stylesheet" href="/status.css" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> </head> <body class="status"> <p>$Id: CGI.pm,v 1.234 2007/04/16 16:58:46 lstein Exp $</p> <p>3.29</p> Как видно, тег meta дублирован. Вот здесь http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=418915 сказано, что есть такой баг. ФФ показывает страничку нормально (русские буквы выводятся в UTF-8 как и должно быть), но насколько это правильно ? Не будет ли проблем ? | 9:41 am [domrachevivan] |
| | Thursday, June 11th, 2009 | 5:33 pm [panki_ru]
 |
Программист python / perl / java / ruby
Для работы над серверной частью ММО игры с flash клиентом, требуется ведущий программист. Обязанности: Построение архитектуры серверной части Проектирование базы данных Разработка системных служб и сетевых сервисов Разработка игровой механики Разработка игрового инструментария Требования Отличное знание одного из языков Perl/Java/Python/Ruby Отличное знание реляционных баз данных, опыт работы с MySQL и/или PostgreSQL Хорошая алгоритмическая подготовка Желательно Опыт участия в игровых проектах (с client/server архитектурой) Опыт написания сетевых протоколов Опыт оптимизации приложений Опыт программирования на C++ Знание сетевых технологий и протоколов Законченное высшее техническое образование Условия Полный рабочий день, м.Красные ворота Гибкий график работы Заработная плата от 80000р по результатам собеседования Оформление по ТК РФ Профессиональная команда разработчиков Любовь и забота руководства Контакты Панько Александр email/jabber: god@panki.ru icq: 10619 + 7 926 479-2443 | | Wednesday, June 10th, 2009 | 3:19 am [klopp]
 |
Нинавижу тесты
Как дубль, при виде официальных бумажек - рву их и убегаю. А при слове "тест" отсутствие мозга выключается полностью. Стресс, блин. Или это в говнокод? use `test`;
drop table if exists `tree_test`;
create table `tree_test`
(
`id` int(4) unsigned auto_increment not null,
`parent` int(4) unsigned default '0',
`data` blob,
primary key(`id`),
key(`parent`)
);
insert into `tree_test` ( `parent`, `data` ) values ( 0, 'root' );
insert into `tree_test` ( `parent`, `data` ) values ( 1, 'subroot-1' );
insert into `tree_test` ( `parent`, `data` ) values ( 1, 'subroot-2' );
insert into `tree_test` ( `parent`, `data` ) values ( 2, 'subsubroot-1' );
insert into `tree_test` ( `parent`, `data` ) values ( 2, 'subsubroot-1' );
insert into `tree_test` ( `parent`, `data` ) values ( 3, 'subsubroot-2' );
insert into `tree_test` ( `parent`, `data` ) values ( 3, 'subsubroot-2' );#!/usr/bin/perl
# --------------------------------------------------------------------
use strict;
use DBI;
# --------------------------------------------------------------------
my $db = DBI->connect( 'DBI:mysql:database=test;host=127.0.0.1','*********','*********' );
die "$DBI::errstr\n" unless $db;
my $sth = $db->prepare( 'select * from `tree_test` order by `parent`' );
die "$sth->errstr\n" unless $sth->execute();
# --------------------------------------------------------------------
my %sections;
my %parents;
for( my $i = 0; $i < $sth->rows(); $i++ )
{
my $data = $sth->fetchrow_hashref();
$parents{$data->{'parent'}}++;
$sections{$data->{'id'}} = $data;
}
$sth->finish();
$db->disconnect();
print_sections(0, 0);
# --------------------------------------------------------------------
sub print_sections
{
my ( $parent, $level ) = @_;
foreach my $k ( keys %sections )
{
my $data = $sections{$k};
next unless $data->{'parent'} eq $parent;
print ' ' x $level;
print 'id: '.$data->{'id'}.', parent: '.
$data->{'parent'}.', data: '.$data->{'data'}."\n";
print_sections( $data->{'id'}, $level+1 )
if defined $parents{$data->{'id'}};
}
}
# -------------------------------------------------------------------- | | Tuesday, June 9th, 2009 | 2:13 pm [afiskon]
 |
Экспорт данных в PDF и HTML
Есть база данных, информацию из которой нужно 1) Отображать на веб-сайте 2) Экспортировать в PDF используются таблицы, гистограммы, графики. Что можете посоветовать? Идей много, начиная от написания собственного класса, заканчивая использованием PDF::FromHTML (пока пакет собирается, не знаю как он дружит с картинкамми). | | Saturday, June 6th, 2009 | 5:44 pm [kun99]
 |
need help с задачкой
Доброе время суток, товарищи. Такая вот задачка у меня: 1) есть сайты, в количестве от 2 до 10 2) надо сделать в одно время запросы на все 10 сайтов 3) при получании последнего из них нужно обработать их все 4) после паузы повторяем с первого пункта Как бы задача не трудная, сделать чтоб работало это не проблема, но хочется узнать может есть готовые решения или методы чтобы было наиболее быстро и удобно (с учетом таймаутов, чтоб не ждать какой-то подвисший запрос)? | | Saturday, May 30th, 2009 | 10:16 pm [knutov]
 |
Буферизация и FastCGI
Все-таки CGI::WebOut нельзя заставить работать полнофункционально под FastCGI. Последнее с чем столкнулся - при включенной буферизации оно не отдает заголовки (судя по логам - вообще, даже если потом вручную Flush сделать), а при отключенной оно отправляет все заголовки до редиректа. Отсюда вопрос - что тогда использовать для буферизации хотя бы заголовков? Чтобы без CGI.pm. И чтобы они гарантированно отдавались клиенту, даже если скрипт делает warn или die. | | Friday, May 29th, 2009 | 3:18 pm [slonik_v_domene]
 |
|
[ << Previous 20 ]
|