From shonorio em gmail.com Mon Jan 1 11:33:22 2007 From: shonorio em gmail.com (Solli Honorio) Date: Mon, 1 Jan 2007 17:33:22 -0200 Subject: [Cascavel-pm] ... adeus ano velho, feliz ano novo ... Message-ID: <12d1f4ee0701011133i25d0bd4fv2d60647921551dbc@mail.gmail.com> Pessoal, Hoje iniciamos o novo ciclo no nosso calendário, momento este de reafirma os desejos de boa sorte, prosperidade, emancipação e a avaliação do que fora realizado. No que refere-se a nossa comunidade, o ano de 2006 apresentou-se esplendoroso com a realização de 2 eventos YAPC com a presença de nomes importantes como o Randal, Audrey e o fglock, e com a quase presença do Larry Wall. Estes eventos contribuiram muito com a intereção com as demais comunidade de software livre, contribuindo com isto para a expansão da línguagem. Mesmo a falta de recursos (tanto de dinheiro, quanto de tempo) que impôs limitações durante a organização, não inviabilizou a promoção e realização desdes eventos. O ano de 2006 também foi marcado com o realização do nosso site, importante ferramenta de comunicação para a nossa comunidade, e o continuo crescimento da comunidade. Falando do São Paulo-PM ocorreu um crescimento de 20 % no ano de 2006. Mesmo com estas realizações, os desafios para 2007 são enormes e exigirá a participação de todos, nos quais eu tenho a liberdade de enumerar algumas : - Inventivar a migração dos sites dos Perlmongers brasileiros para o www.perl.org, inclusíve do sppm; - Promover e inventivar a tradução dos documentos do PerlDoc; - Promover e inventivar a tradução de apostilhas, artigos e outros materiais sobre Perl para o português; - Atrair os programodores de Perl que ainda não fazem parte da nossa comunidade. Pelos menos em São Paulo, tenho observado diversos profissionais com diferentes níveis de conhecimento de Perl nas empresas mas que não conhecem as nossas comunidades; - Estruturar melhor os encontros técnicos do sp-pm e comunidade próximas, e quem sabe até mesmo um encontro técnico rio-sp :); - Promover e interagir melhor com as demais comunidade de software livre. Diante destes desafios, eu gostaria de contar com a criatividades de todos e apresentar sugestões como atingir estas metas. Desejo a melhor sorte para todos e até mais. Solli Moreira Honório -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070101/9dcbfee4/attachment.html From fosforo em gmail.com Mon Jan 1 12:01:59 2007 From: fosforo em gmail.com (=?UTF-8?Q?F=C3=B3sforo?=) Date: Mon, 1 Jan 2007 18:01:59 -0200 Subject: [Cascavel-pm] =?utf-8?q?Retornar_endere=C3=A7o_IP_do_realizador_d?= =?utf-8?q?a_query_usando_POE=3A=3AComponent=3A=3AServer=3A=3ADNS?= Message-ID: <6e285e810701011201k72f2ca65j4fe3823a737c74e3@mail.gmail.com> Boa tarde. Gostaria de saber como posso retornar determinado endereço IP do realizador de uma query DNS. Estou utilizando como base o código fonte de um servidor de DNS de exemplo disponível em: http://search.cpan.org/~bingos/POE-Component-Server-DNS-0.02/lib/POE/Component/Server/DNS.pm (em SYNOPSIS) Estou tentando há algum tempo acessar tal informação através do método resolver(), que é uma referência para POE::Component::Client::DNS, ou do $callback, mas creio não estar sabendo a sintaxe correta. Desde já agradeço [] Fósforo From shonorio em gmail.com Mon Jan 1 13:42:38 2007 From: shonorio em gmail.com (Solli Honorio) Date: Mon, 1 Jan 2007 19:42:38 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?REGEX_retorna_vari=E1veis_com_tamanh?= =?iso-8859-1?q?o_maior_que_o_conte=FAdo=2E=2E=2E?= Message-ID: <12d1f4ee0701011342o56cbaa3ai9300198c093f29b3@mail.gmail.com> Pessoal, Lí o post http://www.perlmonks.com/?node_id=592424 do Perlmonks e achei muito interessante e bastante útil. Ysth apresentou um código, que segue abaixo, demonstrando que o armazenamento de variáveis capturadas via REGEX ocupam mais espaços do que o esperado. Segundo a própria explicação dele, isto ocorre porque a variável passa por uma transformação interna do tipo PV (tipo scalar) para PVMG (um tipo mágico, segundo a própria definição do B - The Perl Compiler http://search.cpan.org/~nwclark/perl-5.8.8/ext/B/B.pm). O interessante é que para resolver o problema, é só colocar as aspas-duplas no momento da atribuição dos valores capturado pelo REGEX. Eu acredito que esta informação possa ser muito interessante de parser de longos arquivos. Dê uma olhada no código abaixo : use Test::More "no_plan"; use Devel::Size "total_size"; my $val = "a00"; my (%hash1,%hash2); # cria um loop de aa..zz para popular # dois hashes. foreach my $key ( "aa" .. "zz" ) { # popula o primeiro hash $hash1{$key} = $val; # popula o segundo hash, agora utilizando # a captura de grupo do regex "$key$val" =~ /(..)(...)/ and $hash2{$1} = $2; ++$val; } # utiliza as funcoes do Test::More para garantir que # os hashes populados possuem a mesma quantidade de # elementos, e os mesmos elementos, mas neste caso # com tamanho diferente. is(keys(%hash1), keys(%hash2), "same numbe of keys"); is_deeply(\%hash1, \%hash2, "is_deeply same"); is(total_size(\%hash1),total_size(\%hash2)); ok 1 - same numbe of keys ok 2 - is_deeply same # Failed test in teste.pl at line 15. not ok 3 1..3 # got: '39308' # expected: '52828' # Looks like you failed 1 test of 3. Para resolver o problema é só alterar a linha : "$key$val" =~ /(..)(...)/ and $hash2{$1} = $2; para : "$key$val" =~ /(..)(...)/ and $hash2{$1} = "$2"; ... e aí o último teste será concluído com sucesso. E isso aí pessoal. Solli Moreira Honório -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070101/6822f46f/attachment.html From shonorio em gmail.com Mon Jan 1 14:42:33 2007 From: shonorio em gmail.com (Solli Honorio) Date: Mon, 1 Jan 2007 20:42:33 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?=5BOT=5D_Revista_eletr=F4nica_Guia_d?= =?iso-8859-1?q?o_Hardware?= Message-ID: <12d1f4ee0701011442r51a7b69dyf599d122ba5bc7a0@mail.gmail.com> Pessoal, O Morimoto disponibilizou a edição eletrônica da revista "Guia do Hardware", mas uma midia do já consagrado site www.guiadohardware.net. A revista está acessível no link http://www.guiadohardware.net/revista/ Abraços, Solli M. Honório -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070101/65be1e6a/attachment.html From shonorio em gmail.com Mon Jan 1 17:17:08 2007 From: shonorio em gmail.com (Solli Honorio) Date: Mon, 1 Jan 2007 23:17:08 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" Message-ID: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> Pessoal, No post "Perl Golf Ethics" http://www.perlmonks.com/?node_id=592386, o cara comenta sobre um desafio de Perl Golf da empresa Fonality. Curioso entrei na parte de Carrers e fiquei curioso sobre o desafio proposto pela empresa para determinar o grau de conhecimento na linguagem. Segundo eles, o "Junior Perl Developer" tem que compreender o segundo código "s|(\d)|length(9 x $1)|eg;". Bom, este é fácil, só não sei para que serve, já que na minha leitura não funciona. Já o "Senior Perl Developer" tem que explicar o código : s;(?:SEEKING)?;PERLqny~%|fsyx%~tz&;?$^X=~m.\w+$. :DEVELOPERS;s"$&"Ktsf"i;s^.^chr ord($&)-5^eg;$\=$/;print||" ;) " ... e este eu compreendi nada. Será que algum santo poderia explicar o que significa isto ? Abraços, Solli M. Honório -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070101/b0e99a08/attachment.html From acid06 em gmail.com Mon Jan 1 19:47:24 2007 From: acid06 em gmail.com (Nilson Santos Figueiredo Junior) Date: Tue, 2 Jan 2007 01:47:24 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> Message-ID: <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> On 1/1/07, Solli Honorio wrote: > Já o "Senior Perl Developer" tem que explicar o código : > s;(?:SEEKING)?;PERLqny~%|fsyx%~tz&;?$^X=~m.\w+$. > :DEVELOPERS;s"$&"Ktsf"i;s^.^chr ord($&)-5^eg;$\=$/;print||" ;) " > ... e este eu compreendi nada. Nem souberam fazer o golf ser cross platform. Fonality--. Enfim, basta rodar um "perl -MO=Deparse" no código e o próprio Perl desobfusca pra você, ele só perde as constantes. Um código equivalente ao acima é o seguinte: s/(?:SEEKING)?/PERLqny~%|fsyx%~tz&/ ? $^X =~ /\w+$/ : 'DEVELOPERS'; s/$&/Ktsf/i; s/./chr ord($&) - 5;/eg; $\ = $/; ' ;) ' unless print $_; O golf não é cross platform porque ele assume que a variável $^X vai terminar em "perl", o que nem sempre vai ser verdade (às vezes, nem mesmo em um Unix isso será verdade). Mas vamos lá, linha a linha. s/(?:SEEKING)?/PERLqny~%|fsyx%~tz&/ ? $^X =~ /\w+$/ : 'DEVELOPERS'; Essa linha pode ser quebrada em duas partes: s/(?:SEEKING)?/PERLqny~%|fsyx%~tz&/ Só serve pra colocar a string "PERLqny~%|fsyx%~tz&" na variável $_ (ela substitui a string vazia por isso). $^X =~ /\w+$/ Essa parte serviria pra popular a variável especial $& com a palavra "perl", porém, sob Windows, ela popula a variável com a palavra "exe". Isso acontece porque a expressão regular tenta pegar a última seqüência de caracteres alfanuméricos dentro da variável $^X, que contém o caminho do binário do perl. No Windows, o conteúdo de $^X será algo como "C:\perl\bin\perl.exe" (última seqüência = "exe") no Linux isso será algo como "/usr/bin/perl" (última seqüência = "perl"). A variável $& será populada com isso porque ela guarda o valor do último match de uma expressão regular. Na prática, seu uso é desaconselhado pois ela infere problemas de performance em todo o aplicativo do seu uso pra frente. Em seguida, vem a linha: s/$&/Ktsf/i; Que seriviria pra substituir o "PERL" na string anterior em "Ktsf" (funciona pois tem /i ou seja, case-insensitive). Por fim, vem a substituição propriamente dita: s/./chr ord($&) - 5;/eg; Que simplesmente substitui cada um dos caracteres pelo caracter de código 5 unidades menor na tabela ASCII. Por exemplo, o caracter 'f' (102) será substituído pelo caracter 'a' (97). O lado direito da expressão regular é executado por causa da flag /e. Por fim, a linha $\ = $/; É apenas o toque final, pra imprimir o \n no final da mensagem. A variável $\ guarda o "output record separator" que é um conjunto de caracteres que sera usado como sufixo de todos os print()s. A variável $/ é o "input record separator" que contém o caracter \n por padrão. Depois, vem um print() que faz com que a mensagem seja impressa na tela. Na seção de Obfuscation do PerlMonks tem alguns bem mais complexos e difíceis de enteder que esses. -Nilson Santos F. Jr. From shonorio em gmail.com Tue Jan 2 04:07:02 2007 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 2 Jan 2007 10:07:02 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> Message-ID: <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> Nilson, obrigado pela ajuda... e já que você inicio estou com algumas dúvidas, sedo elas : On 1/2/07, Nilson Santos Figueiredo Junior wrote: > > On 1/1/07, Solli Honorio wrote: > > Já o "Senior Perl Developer" tem que explicar o código : > > s;(?:SEEKING)?;PERLqny~%|fsyx%~tz&;?$^X=~m.\w+$. > > :DEVELOPERS;s"$&"Ktsf"i;s^.^chr ord($&)-5^eg;$\=$/;print||" ;) " > > ... e este eu compreendi nada. > > Nem souberam fazer o golf ser cross platform. Fonality--. > > Enfim, basta rodar um "perl -MO=Deparse" no código e o próprio Perl > desobfusca pra você, ele só perde as constantes. Um código equivalente > ao acima é o seguinte: > > s/(?:SEEKING)?/PERLqny~%|fsyx%~tz&/ ? $^X =~ /\w+$/ : 'DEVELOPERS'; > s/$&/Ktsf/i; > s/./chr ord($&) - 5;/eg; > $\ = $/; > ' ;) ' unless print $_; > > O golf não é cross platform porque ele assume que a variável $^X vai > terminar em "perl", o que nem sempre vai ser verdade (às vezes, nem > mesmo em um Unix isso será verdade). > > Mas vamos lá, linha a linha. > > s/(?:SEEKING)?/PERLqny~%|fsyx%~tz&/ ? $^X =~ /\w+$/ : 'DEVELOPERS'; Ah... agora ví o operador ternário '?' que executará o "$^X =~ /\w+$/" ou apenas atribuirá "DEVELOPERS" de acordo com o retorno de "s/(?:SEEKING)?/PERLqny~%|fsyx%~tz&/", que acredito eu sempre será true. Essa linha pode ser quebrada em duas partes: > > s/(?:SEEKING)?/PERLqny~%|fsyx%~tz&/ o que significa "(?:SEEKING)?" ? Eu não consegui encontrar alguma coisa sobre este agrupamento. Só serve pra colocar a string "PERLqny~%|fsyx%~tz&" na variável $_ > (ela substitui a string vazia por isso). > > $^X =~ /\w+$/ > > Essa parte serviria pra popular a variável especial $& com a palavra > "perl", porém, sob Windows, ela popula a variável com a palavra "exe". > Isso acontece porque a expressão regular tenta pegar a última > seqüência de caracteres alfanuméricos dentro da variável $^X, que > contém o caminho do binário do perl. No Windows, o conteúdo de $^X > será algo como "C:\perl\bin\perl.exe" (última seqüência = "exe") no > Linux isso será algo como "/usr/bin/perl" (última seqüência = "perl"). > > A variável $& será populada com isso porque ela guarda o valor do > último match de uma expressão regular. Na prática, seu uso é > desaconselhado pois ela infere problemas de performance em todo o > aplicativo do seu uso pra frente. Sério ? Eu não tinha este informação de performance... então não é aconcelhável utilizar o $& nos programas ? Deve apenas fazer a atribuição "my $a = $&" ! Em seguida, vem a linha: > > s/$&/Ktsf/i; > > Que seriviria pra substituir o "PERL" na string anterior em "Ktsf" > (funciona pois tem /i ou seja, case-insensitive). > > Por fim, vem a substituição propriamente dita: > > s/./chr ord($&) - 5;/eg; > > Que simplesmente substitui cada um dos caracteres pelo caracter de > código 5 unidades menor na tabela ASCII. Por exemplo, o caracter 'f' > (102) será substituído pelo caracter 'a' (97). O lado direito da > expressão regular é executado por causa da flag /e. > > Por fim, a linha > > $\ = $/; > > É apenas o toque final, pra imprimir o \n no final da mensagem. A > variável $\ guarda o "output record separator" que é um conjunto de > caracteres que sera usado como sufixo de todos os print()s. A variável > $/ é o "input record separator" que contém o caracter \n por padrão. > > Depois, vem um print() que faz com que a mensagem seja impressa na tela. E a mensagem será "Fonality wants you!".... que meigo hein ? Na seção de Obfuscation do PerlMonks tem alguns bem mais complexos e > difíceis de enteder que esses. Temos que começar de algum lugar, e uma das minhas promessas para este ano é estudar estes Obfuscation, e quem sabe no final do ano publicar o meu primeiro código obfuscation :). -Nilson Santos F. Jr. > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/eb747260/attachment-0001.html From edencardim em gmail.com Tue Jan 2 04:17:30 2007 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 2 Jan 2007 09:17:30 -0300 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> Message-ID: <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> On 1/2/07, Solli Honorio wrote: > o que significa "(?:SEEKING)?" ? Eu não consegui encontrar alguma coisa > sobre este agrupamento. Isto é um agrupamento sem captura, é mais rápido do que usar agrupamentos normais, que capturam por padrão, afetando a performance da regex como o Nilson já mencionou. Vide perldoc perlre. -- Eden Cardim Instituto Baiano de Biotecnologia Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas Laboratório de Bioinformática -- "you seem to think that 'close enough' is close enough... please learn to be 'literal' around programming." merlyn - on irc.freenode.net#perl From shonorio em gmail.com Tue Jan 2 04:57:48 2007 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 2 Jan 2007 10:57:48 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> Message-ID: <12d1f4ee0701020457s13a038fw1e19e5986caa6cb4@mail.gmail.com> > > > A variável $& será populada com isso porque ela guarda o valor do > > último match de uma expressão regular. Na prática, seu uso é > > desaconselhado pois ela infere problemas de performance em todo o > > aplicativo do seu uso pra frente. > > > Sério ? Eu não tinha este informação de performance... então não é > aconcelhável utilizar o $& nos programas ? Deve apenas fazer a atribuição > "my $a = $&" ! > *Lendo o perlre encontrei isto... WARNING*: Once Perl sees that you need one of $&, $` , or $'anywhere in the program, it has to provide them for every pattern match. This may substantially slow your program. Perl uses the same mechanism to produce $1, $2, etc, so you also pay a price for each pattern that contains capturing parentheses. (To avoid this cost while retaining the grouping behaviour, use the extended regular expression (?: ... ) instead.) But if you never use $& , $`or $' , then patterns * without* capturing parentheses will not be penalized. So avoid $&, $' , and $`if you can, but if you can't (and some algorithms really appreciate them), once you've used them once, use them at will, because you've already paid the price. As of 5.005, $&is not so costly as the other two. -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/e617528f/attachment.html From shonorio em gmail.com Tue Jan 2 05:33:40 2007 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 2 Jan 2007 11:33:40 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> Message-ID: <12d1f4ee0701020533k4a77a7fcr2d6d0616849263d4@mail.gmail.com> On 1/2/07, Eden Cardim wrote: > > On 1/2/07, Solli Honorio wrote: > > o que significa "(?:SEEKING)?" ? Eu não consegui encontrar alguma coisa > > sobre este agrupamento. > > Isto é um agrupamento sem captura, é mais rápido do que usar > agrupamentos normais, que capturam por padrão, afetando a performance > da regex como o Nilson já mencionou. Vide perldoc perlre. > > Eden, hoje estou empenhado em terminar o dia com um novo conhecimento do Perl... e este negócio e uma daquelas coisas que eu ví um monte de vezes e fiz cara de conteúdo. Lí o perlre neste ponto e fiquei mais confuso ainda... primeiro sobre o código "(?:SEEKING)?". De cara eu pensei que o "SEEKING" fosse uma palavra reservada, mas pelo jeito não é. Esta palavra está aí para nada ? Ou está apenas tentando dar um match nesta palavra, que não existe ? Agora sobre o "?:", que segundo o perlre é para agrupamento e não para captura. Hummm alguém pode me dar um exemplo para dummy sobre isto ? Eu tentei escrever alguns código bobo para tentar entender isto, mas sem sucesso. Obrigado, Solli M. Honório -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/6822fed9/attachment.html From shonorio em gmail.com Tue Jan 2 05:49:23 2007 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 2 Jan 2007 11:49:23 -0200 Subject: [Cascavel-pm] [Rio-pm] Fwd: Contribuindo para Perl Advent Calendar 2006 In-Reply-To: <73ddeb6c0612171302y27b7f3e0qb183a77acf0a82a4@mail.gmail.com> References: <73ddeb6c0612161229w3e222503m4875102c24ebbe5e@mail.gmail.com> <42dcdd750612161427x61793f3dgbf9d3b10fc16c654@mail.gmail.com> <73ddeb6c0612171302y27b7f3e0qb183a77acf0a82a4@mail.gmail.com> Message-ID: <12d1f4ee0701020549n4f6f6b37o8f377e365e048baf@mail.gmail.com> Adriano, Também vou participar desda tradução.... mas durante a minha férias, quem sabe conseguimos tudo isto até o final de janeiro. Outra coisa, os links do calendário estão erradas. Estão sendo redirecionadas para "http://perladvent.pm.org/2006/2006/1/", enquanto deveria ser "http://perladvent.pm.org/2006/1/". Avise o pessoal lá . Abraços, Solli M. Honório On 12/17/06, Adriano Ferreira wrote: > > Obrigado pela força, MDA (que divulgou a mensagem anterior para o Rio-pm)! > > Aqui está a primeira tradução (por acaso do primeiro dia do advento). > Merece revisão ainda, mas acho que está quase lá. > > http://ferreira.nfshost.com/perl/br-01.html > > Como eu disse, as traduções serão adicionadas ao perladvent.pm.org > quando (e se) tivermos a tradução de todos os artigos já publicados. > Está nesta URL temporariamente. > > Correções, sugestões, dúvidas, sejam bem vindos. > > Adriano. > > > On 12/16/06, Marco A P D'Andrade wrote: > > Pessoal, > > > > Achei a iniciativa do Adriano bem interessante. Alguem se habilita ? > > > > Bem, se não houver interesse em traduzir, sugiro ao menos que > > aproveitem o conteúdo! > > > > O artigo do Adriano, do dia 13, já faz parte da lista de aprendizado > > do Julio Neves ;) > > > > Sds, > > Marco Antonio > > > > ---------- Forwarded message ---------- > > From: Adriano Ferreira > > Date: 16/12/2006 18:29 > > Subject: [Cascavel-pm] Contribuindo para Perl Advent Calendar 2006 > > To: Cascavel Perl Mongers > > > > > > Sobre o Calendário Perl do Advento de 2006 de que eu falei antes, eu > > coloquei um anúncio no perlmonks.org procurando por mais > > contribuidores para os artigos dos próximos dias. > > > > http://www.perlmonks.org/?node_id=590223 > > > > Só lembrando, o calendário mesmo está aqui: > > > > http://perladvent.pm.org/ > > http://perladvent.pm.org/FAQ.html (a idéia do projeto) > > http://perladvent.pm.org/FAQ-submit.html (como submeter) > > > > Daí procurando por artigos sobre o mesmo assunto, achei este sobre o > > Catalyst Advent de 2005, onde na segunda resposta o cara falava da > > tradução do Calendário para chinês. > > > > http://www.perlmonks.org/?node_id=516907 > > > > Então perguntei sobre uma possibilidade para o Jerrad Pierce que cuida > > do Calendário Perl neste ano e ele concordou desde que eu cuide de > > tudo. A idéia é prover a tradução para português brasileiro (porque > > nós não escrevemos em português europeu, mesmo que seja muito fácil > > para os portugueses entender e vice-versa) de cada um dos vinte cinco > > artigos do calendário deste ano. Estas traduções seriam acessíveis por > > links no artigo original -- ainda estamos discutindo os detalhes. > > > > A primeira pessoa com quem falei a respeito foi o Gabriel Vieira. Eu > > disse que como foi uma idéia inusitada, infelizmente teríamos de > > deixar bem claro que a oferta de livros da O'Reilly não se estenderia > > a este trabalho. O Gabriel me puxou a orelha pois o pessoal vai > > traduzir um texto e, pelo mesmo texto, quem escreveu recebeu um livro > > enquanto sobraram bolotas para este segundo voluntário. É, é isto > > mesmo -- sob um certo aspecto. > > > > A minha idéia foi para não sobrecarregar ninguém (inclusive eu mesmo), > > achar cerca de 25 contribuidores (ou até mais) para cada um traduzir > > um artigo. (Precisaremos de um corpo editorial também -- mas eu sou o > > voluntário desta iniciativa e cuidarei disto, não necessariamente > > sozinho.) Para estes, não foi planejado nenhum tipo de gratificação > > (porque a idéia foi um improviso, uma coisa pensada depois). A > > recompensa seria contribuir ao Perl no Brasil, porque quem lê em > > inglês não quer saber de versões em outras línguas. Mas quem não lê em > > inglês ou tem dificuldades de ler mas sabe português, pode então > > aproveitar. E além do mais isto vai trazer um ponto de visibilidade > > para a comunidade Perl do Brasil. "Olha, os caras traduzirem isto para > > a língua deles -- tem gente de Perl lá. Eles foram os primeiros nesta > > iniciativa, legal!" > > > > Olha, eu não sei se isto vai funcionar. É só uma idéia. Como eu disse > > ao Gabriel, se você é um voluntário neste esforço, minha sugestão é > > que faça o download de um dos artigos nas URLs como > > http://perladvent.pm.org/2006/1/ e comece a traduzir o conteúdo do > > HTML. Vamos discutir os detalhes sobre tradução de comentários e do > > script original de cada artigo (talvez ele seja deixado intacto e só a > > versão em HTML modificada ou notas introduzidas). > > > > A minha proposta para o Jerrad é que estas páginas sejam disponíveis > > no mesmo servidor que a versão original em inglês. A contrapartida é > > que faremos o trabalho até o fim. Por isto, a primeira coisa a trazer > > para ele é a tradução dos artigos já publicados e um cronograma para > > os dias seguintes. Na verdade fui eu que propus assim. Se a gente não > > conseguir fazer isto é porque a proposta não foi para frente e é > > melhor não colocar algo que vai ficar incompleto a nível de um > > subdomínio do pm.org (que é o perladvent.pm.org). Na verdade, seria > > muito bom que tívessemos muito mais pessoas trabalhando junto, porque > > podíamos fazer um cronograma inclusive com extras que poderiam > > substituir o tradutor titular no caso de imprevistos (e sempre há > > imprevistos -- como sabem todos desenvolvedores, analistas e > > administradores de sistemas). > > > > Quem estiver a fim, levanta a mão. Após esta mensagem vou mandar outra > > com a primeira lista de artigos que já estão designados. E também com > > a lista de pessoas dispostas a ajudar. Inclusive sejam bem vindos quem > > quiser ajudar na parte editorial. Vou pedir a desculpa/permissão dos > > assinantes para criar longas threads monótonas sobre isto. Assim a > > qualquer momento será mais fácil ter a visão do cronograma que está > > valendo. Quem for voluntário, escreve qual artigo escolheu e inclui > > seu nome entre os voluntários. Assim será possível evitar repetição de > > trabalho. Precisamos também de gente para traduzir os próximos artigos > > -- façam seus compromissos. > > > > Prometo que cada dia coloco uma atualização desta para resolver > > possíveis conflitos. Quem terminar a tradução de um artigo, manda o > > HTML para mim. Se vingar a idéia, talvez precisemos de espaço no wiki > > -- mas minha preferência é fazer tudo por e-mail, que eu acho mais > > universalmente acessível (além do mais, Gmail rocks). > > > > Esta experiência é interessante porque quero ver como podemos nos sair > > como um grupo. Obviamente posso descobrir que a proposta que para mim > > é interessante não chama a atenção dos outros. Tudo bem -- "toda > > unanimidade é burra" como dizia Ulisses Guimarães (deve ser a única > > boa frase dele) e a diversidade (inclusive de opiniões) é demais e tem > > tudo a ver com Perl. > > > > Alea jacta est. > > > > Adriano Ferreira. > > > > > > NOTA. No perladvent, quem contribuir com mais de um artigo como é o > > caso do Jerrad e do Jeff Lavallee, vai receber um único livro conforme > > as regras da O'Reilly. Só para o conhecimento de vocês. > > > > OUTRA NOTA (Yet Another Remark). Para o pessoal que participa de > > outros grupos locais, peço que considerem a divulgação deste anúncio > > para seu grupo (assim podemos atingir maior massa crítica). > > _______________________________________________ > > Cascavel-pm mailing list > > Cascavel-pm em pm.org > > http://mail.pm.org/mailman/listinfo/cascavel-pm > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/46450a25/attachment-0001.html From joenio em gmail.com Tue Jan 2 05:54:58 2007 From: joenio em gmail.com (Joenio Marques) Date: Tue, 2 Jan 2007 11:54:58 -0200 Subject: [Cascavel-pm] ... adeus ano velho, feliz ano novo ... In-Reply-To: <12d1f4ee0701011133i25d0bd4fv2d60647921551dbc@mail.gmail.com> References: <12d1f4ee0701011133i25d0bd4fv2d60647921551dbc@mail.gmail.com> Message-ID: <65934b450701020554w15ed19dbne00cae838ad1b66a@mail.gmail.com> Olá Solli, Muito bom voce tocar nesse assunto, estamos em periodo de organização do YAPC::SA::2007 que ocorre junto ao Fisl 8.0 em Abril, tem muito trabalho a ser feito até lá e precisamos de toda ajuda. O site do evento http://yapcsa.perl.org.br está em fase de construção (precisando de alguem pra ajudar...). A chamada de trabalhos para o evento está aberta e voces podem enviar suas propostas para yapcsa2007 em perl.org.br, estamos dando mais ênfase aos lightning-talks / mini-palestras, já que os assuntos "grandes" podem ser inscritos como palestras normais no próprio Fisl. Além disso existem várias coisas onde voces podem ajudar, camisas do evento, producao de adesivos, captacao de recursos, propaganda, trabalho grafico, etc, etc... Abraços, Feliz 2007! 2007/1/1, Solli Honorio : > Pessoal, > > Hoje iniciamos o novo ciclo no nosso calendário, momento este de reafirma os > desejos de boa sorte, prosperidade, emancipação e a avaliação do que fora > realizado. > > No que refere-se a nossa comunidade, o ano de 2006 apresentou-se > esplendoroso com a realização de 2 eventos YAPC com a presença de nomes > importantes como o Randal, Audrey e o fglock, e com a quase presença do > Larry Wall. Estes eventos contribuiram muito com a intereção com as demais > comunidade de software livre, contribuindo com isto para a expansão da > línguagem. > > Mesmo a falta de recursos (tanto de dinheiro, quanto de tempo) que impôs > limitações durante a organização, não inviabilizou a promoção e realização > desdes eventos. > > O ano de 2006 também foi marcado com o realização do nosso site, importante > ferramenta de comunicação para a nossa comunidade, e o continuo crescimento > da comunidade. Falando do São Paulo-PM ocorreu um crescimento de 20 % no ano > de 2006. > > Mesmo com estas realizações, os desafios para 2007 são enormes e exigirá a > participação de todos, nos quais eu tenho a liberdade de enumerar algumas : > > Inventivar a migração dos sites dos Perlmongers brasileiros para o > www.perl.org, inclusíve do sppm; > Promover e inventivar a tradução dos documentos do PerlDoc; > Promover e inventivar a tradução de apostilhas, artigos e outros materiais > sobre Perl para o português; > Atrair os programodores de Perl que ainda não fazem parte da nossa > comunidade. Pelos menos em São Paulo, tenho observado diversos profissionais > com diferentes níveis de conhecimento de Perl nas empresas mas que não > conhecem as nossas comunidades; > Estruturar melhor os encontros técnicos do sp-pm e comunidade próximas, e > quem sabe até mesmo um encontro técnico rio-sp :); > Promover e interagir melhor com as demais comunidade de software livre. > Diante destes desafios, eu gostaria de contar com a criatividades de todos e > apresentar sugestões como atingir estas metas. > > Desejo a melhor sorte para todos e até mais. > > Solli Moreira Honório > > > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > > -- Joenio Marques - Salvador Perl Mongers From edencardim em gmail.com Tue Jan 2 05:59:24 2007 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 2 Jan 2007 10:59:24 -0300 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <12d1f4ee0701020533k4a77a7fcr2d6d0616849263d4@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> <12d1f4ee0701020533k4a77a7fcr2d6d0616849263d4@mail.gmail.com> Message-ID: <3de55ead0701020559i44edc2bfhaa33efbd87ee2e00@mail.gmail.com> On 1/2/07, Solli Honorio wrote: > Eden, hoje estou empenhado em terminar o dia com um novo conhecimento do > Perl... e este negócio e uma daquelas coisas que eu ví um monte de vezes e > fiz cara de conteúdo. > Segundo eles, o "Junior Perl Developer" tem que compreender o segundo código > "s|(\d)|length(9 x $1)|eg;". Bom, este é fácil, só não sei para que serve, já que na > minha leitura não funciona. Isso funciona mas é um no-op inútil. Cada dígito é capturado, e substituido pelo tamanho em caracteres da multiplicacao da string "9" pelo dígito capturado. Esse tamanho vai sempre ser o mesmo número (a não ser que eu esteja esquecendo de algum detalhe pernicioso sobre tamanho de strings). > Lí o perlre neste ponto e fiquei mais confuso ainda... primeiro sobre o > código "(?:SEEKING)?". De cara eu pensei que o "SEEKING" fosse uma palavra > reservada, mas pelo jeito não é. Esta palavra está aí para nada ? Ou está > apenas tentando dar um match nesta palavra, que não existe ? Sim, ele está tentando dar um match opcional na palavra SEEKING. A palavra precisa ser agrupada, pro quantificador ? operar sobre a palavra inteira. Se a regex fosse /SEEKING?/, apenas o 'G' seria opcional. Porém, os agrupadores também capturam o que foi dado match dentro do grupo, reduzindo a performance. Observe que é meio inútil capturar um trecho literal em uma regex: $string =~ /(SEEKING)?/; print $1; Logo, a prática correta nesse caso, é usar os agrupadores sem captura, para não prejudicar o desempenho do sistema. > Agora sobre o "?:", que segundo o perlre é para agrupamento e não para > captura. Hummm alguém pode me dar um exemplo para dummy sobre isto ? Eu > tentei escrever alguns código bobo para tentar entender isto, mas sem > sucesso. O uso de (?:) é exatamente igual ao uso de (): s/use\s+(Java|Python|PHP)/Perl/g; Pode ser escrito assim: s/use\s+(?:Java|Python|PHP)/Perl/g; Isso se vc não fizer questão de saber quem foi substituido. -- Eden Cardim Instituto Baiano de Biotecnologia Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas Laboratório de Bioinformática -- "you seem to think that 'close enough' is close enough... please learn to be 'literal' around programming." merlyn - on irc.freenode.net#perl From shonorio em gmail.com Tue Jan 2 06:24:38 2007 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 2 Jan 2007 12:24:38 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <3de55ead0701020559i44edc2bfhaa33efbd87ee2e00@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> <12d1f4ee0701020533k4a77a7fcr2d6d0616849263d4@mail.gmail.com> <3de55ead0701020559i44edc2bfhaa33efbd87ee2e00@mail.gmail.com> Message-ID: <12d1f4ee0701020624o6c619478gd8be3dc60677df09@mail.gmail.com> > > > Lí o perlre neste ponto e fiquei mais confuso ainda... primeiro sobre o > > código "(?:SEEKING)?". De cara eu pensei que o "SEEKING" fosse uma > palavra > > reservada, mas pelo jeito não é. Esta palavra está aí para nada ? Ou > está > > apenas tentando dar um match nesta palavra, que não existe ? > > Sim, ele está tentando dar um match opcional na palavra SEEKING. > A palavra precisa ser agrupada, pro quantificador ? operar sobre a > palavra inteira. Então eu posso ler o comando "s/(?:SEEKING)?/PERLqny~%|fsyx%~tz&/" da seguinte maneira : substitua o agrupamento SEEKING ou qualquer outra coisa da variável $_ para PERLqny~%|fsyx%~tz&. Eu poderia alterar isto para "s//PERLqny~%|fsyx%~tz&/" com o mesmo resultado, mas sem esta pseudo confusão, certo ? O uso de (?:) é exatamente igual ao uso de (): > > > s/use\s+(Java|Python|PHP)/Perl/g; > > > Pode ser escrito assim: > > > s/use\s+(?:Java|Python|PHP)/Perl/g; > > > Isso se vc não fizer questão de saber quem foi substituido. > > Interessante, agora compreendi que neste caso não tenho as informações extras fornecidas pelo regex. O cara simplesmente executa e segue em frente. Obrigado novamente... mais uma para a minha evolução no Perl. Solli M. Honório -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/3cd35139/attachment.html From edencardim em gmail.com Tue Jan 2 06:32:46 2007 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 2 Jan 2007 11:32:46 -0300 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <12d1f4ee0701020624o6c619478gd8be3dc60677df09@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> <12d1f4ee0701020533k4a77a7fcr2d6d0616849263d4@mail.gmail.com> <3de55ead0701020559i44edc2bfhaa33efbd87ee2e00@mail.gmail.com> <12d1f4ee0701020624o6c619478gd8be3dc60677df09@mail.gmail.com> Message-ID: <3de55ead0701020632y5d5cdbbdjb388d433b4c08e7a@mail.gmail.com> On 1/2/07, Solli Honorio wrote: > > > > Lí o perlre neste ponto e fiquei mais confuso ainda... primeiro sobre o > > > código "(?:SEEKING)?". De cara eu pensei que o "SEEKING" fosse uma > palavra > > > reservada, mas pelo jeito não é. Esta palavra está aí para nada ? Ou > está > > > apenas tentando dar um match nesta palavra, que não existe ? > > > > Sim, ele está tentando dar um match opcional na palavra SEEKING. > > A palavra precisa ser agrupada, pro quantificador ? operar sobre a > > palavra inteira. > > Então eu posso ler o comando > "s/(?:SEEKING)?/PERLqny~%|fsyx%~tz&/" da seguinte maneira : > substitua o agrupamento SEEKING ou qualquer outra coisa da variável $_ para > PERLqny~%|fsyx%~tz&. Qualquer outra coisa não, se der match na palavra SEEKING, vai substituir só esta palavra, senão substitui tudo. Experimenta isso: perl -e'$_="foo"; print if s/(?:SEEKING)?/bar/;' perl -e'$_="SEEKINGfoo"; print if s/(?:SEEKING)?/bar/;' > Eu poderia alterar isto para "s//PERLqny~%|fsyx%~tz&/" > com o mesmo resultado, mas sem esta pseudo confusão, certo ? O código acima deve responder essa pergunta. -- Eden Cardim Instituto Baiano de Biotecnologia Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas Laboratório de Bioinformática -- "you seem to think that 'close enough' is close enough... please learn to be 'literal' around programming." merlyn - on irc.freenode.net#perl From shonorio em gmail.com Tue Jan 2 06:53:08 2007 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 2 Jan 2007 12:53:08 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <3de55ead0701020632y5d5cdbbdjb388d433b4c08e7a@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> <12d1f4ee0701020533k4a77a7fcr2d6d0616849263d4@mail.gmail.com> <3de55ead0701020559i44edc2bfhaa33efbd87ee2e00@mail.gmail.com> <12d1f4ee0701020624o6c619478gd8be3dc60677df09@mail.gmail.com> <3de55ead0701020632y5d5cdbbdjb388d433b4c08e7a@mail.gmail.com> Message-ID: <12d1f4ee0701020653o1d44b427kf77226489a43f49f@mail.gmail.com> > > > Qualquer outra coisa não, se der match na palavra SEEKING, vai > substituir só esta palavra, senão substitui tudo. Experimenta isso: > > perl -e'$_="foo"; print if s/(?:SEEKING)?/bar/;' > > perl -e'$_="SEEKINGfoo"; print if s/(?:SEEKING)?/bar/;' > > > hummm para mim todos os prints resultaram em 'barfoo', mas o primeiro cara não deveria apenas imprimir bar ? Solli M. Honorio -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/573db00c/attachment.html From acid06 em gmail.com Tue Jan 2 07:18:23 2007 From: acid06 em gmail.com (Nilson Santos Figueiredo Junior) Date: Tue, 2 Jan 2007 13:18:23 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <3de55ead0701020632y5d5cdbbdjb388d433b4c08e7a@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> <12d1f4ee0701020533k4a77a7fcr2d6d0616849263d4@mail.gmail.com> <3de55ead0701020559i44edc2bfhaa33efbd87ee2e00@mail.gmail.com> <12d1f4ee0701020624o6c619478gd8be3dc60677df09@mail.gmail.com> <3de55ead0701020632y5d5cdbbdjb388d433b4c08e7a@mail.gmail.com> Message-ID: <9a08c9b40701020718q4673a9a9o7ff27a0c1120cbfd@mail.gmail.com> On 1/2/07, Eden Cardim wrote: > Qualquer outra coisa não, se der match na palavra SEEKING, vai > substituir só esta palavra, senão substitui tudo. Experimenta isso: Na verdade, o "SEEKING" é quase que só um enfeite. Assim como o "DEVELOPERS". A expressão s/(?:SEEKING)?/PERLqny~%|fsyx%~tz&/ é lida exatamente da segunte maneira: substitua "SEEKING" ou a string vazia por "PERLqny~%|fsyx%~tz&". Então, se o conteúdo anterior de $_ for vazio (como é, no início do programa), vai funcionar exatamente como uma atribuição. Se $_ tivesse qualquer outra coisa como, por exemplo, $_ = "foo", depois da substituição o conteúdo seria "PERLqny~%|fsyx%~tz&foo". Deu pra entender ou ainda está confuso? -Nilson Santos F. Jr. From edencardim em gmail.com Tue Jan 2 07:25:06 2007 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 2 Jan 2007 12:25:06 -0300 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <12d1f4ee0701020653o1d44b427kf77226489a43f49f@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> <12d1f4ee0701020533k4a77a7fcr2d6d0616849263d4@mail.gmail.com> <3de55ead0701020559i44edc2bfhaa33efbd87ee2e00@mail.gmail.com> <12d1f4ee0701020624o6c619478gd8be3dc60677df09@mail.gmail.com> <3de55ead0701020632y5d5cdbbdjb388d433b4c08e7a@mail.gmail.com> <12d1f4ee0701020653o1d44b427kf77226489a43f49f@mail.gmail.com> Message-ID: <3de55ead0701020725r278a4f8eq3d20d70768032c6d@mail.gmail.com> On 1/2/07, Solli Honorio wrote: > hummm para mim todos os prints resultaram em 'barfoo', mas o primeiro cara > não deveria apenas imprimir bar ? Ops, viajei, tanto no exemplo como na explicação... perl -e'$_="SEEKING"; print if s/(?:SEEKING)?/bar/;' Aqui da match com SEEKING porque regexes são gulosas por padrão. perl -e'$_="SEEKING"; print if s/(?:SEEKING)??/bar/;' Aqui eu desativei a 'gula' então vai dar match com a string vazia que tem antes do 'SEEKING' perl -e'$_="foo"; print if s/(?:SEEKING)?/bar/;' Aqui da match com a string vazia que tem antes de 'foo'. perl -e'$_="fooSEEKING"; print if s/(?:SEEKING)?/bar/;' Aqui da match com a string vazia que tem antes de 'foo' porque este é o primeiro match possível. perl -e'$_="fooSEEKING"; print if s/(?:SEEKING)?/bar/g;' Tada! Bem, o importante é perceber que s/(?:SEEKING)?/bar/ é diferente de s//bar/. Os bugs criados por detalhes como esses em regexes são bastante difíceis de depurar (pelo menos pra mim). -- Eden Cardim Instituto Baiano de Biotecnologia Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas Laboratório de Bioinformática -- "you seem to think that 'close enough' is close enough... please learn to be 'literal' around programming." merlyn - on irc.freenode.net#perl From edencardim em gmail.com Tue Jan 2 07:28:56 2007 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 2 Jan 2007 12:28:56 -0300 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <9a08c9b40701020718q4673a9a9o7ff27a0c1120cbfd@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> <12d1f4ee0701020533k4a77a7fcr2d6d0616849263d4@mail.gmail.com> <3de55ead0701020559i44edc2bfhaa33efbd87ee2e00@mail.gmail.com> <12d1f4ee0701020624o6c619478gd8be3dc60677df09@mail.gmail.com> <3de55ead0701020632y5d5cdbbdjb388d433b4c08e7a@mail.gmail.com> <9a08c9b40701020718q4673a9a9o7ff27a0c1120cbfd@mail.gmail.com> Message-ID: <3de55ead0701020728g74ad0c14r765a4c3272fb0254@mail.gmail.com> On 1/2/07, Nilson Santos Figueiredo Junior wrote: > Se $_ tivesse qualquer outra coisa como, por exemplo, $_ = "foo", > depois da substituição o conteúdo seria "PERLqny~%|fsyx%~tz&foo". Qualquer outra coisa que não comece com 'SEEKING'. -- Eden Cardim Instituto Baiano de Biotecnologia Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas Laboratório de Bioinformática -- "you seem to think that 'close enough' is close enough... please learn to be 'literal' around programming." merlyn - on irc.freenode.net#perl From shonorio em gmail.com Tue Jan 2 07:30:27 2007 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 2 Jan 2007 13:30:27 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <9a08c9b40701020718q4673a9a9o7ff27a0c1120cbfd@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> <12d1f4ee0701020533k4a77a7fcr2d6d0616849263d4@mail.gmail.com> <3de55ead0701020559i44edc2bfhaa33efbd87ee2e00@mail.gmail.com> <12d1f4ee0701020624o6c619478gd8be3dc60677df09@mail.gmail.com> <3de55ead0701020632y5d5cdbbdjb388d433b4c08e7a@mail.gmail.com> <9a08c9b40701020718q4673a9a9o7ff27a0c1120cbfd@mail.gmail.com> Message-ID: <12d1f4ee0701020730s2367ad1cwb8445529a4265ab9@mail.gmail.com> Nilson, consegui compreender isto sim... obrigado :) -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/e756dc31/attachment.html From shonorio em gmail.com Tue Jan 2 07:38:32 2007 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 2 Jan 2007 13:38:32 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <3de55ead0701020725r278a4f8eq3d20d70768032c6d@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <9a08c9b40701011947q613a130bt36bf355e7a0d31d3@mail.gmail.com> <12d1f4ee0701020407y6111c80dgc9f2ce717c6f0112@mail.gmail.com> <3de55ead0701020417m3cce3c6nc5fa3dbea59f158a@mail.gmail.com> <12d1f4ee0701020533k4a77a7fcr2d6d0616849263d4@mail.gmail.com> <3de55ead0701020559i44edc2bfhaa33efbd87ee2e00@mail.gmail.com> <12d1f4ee0701020624o6c619478gd8be3dc60677df09@mail.gmail.com> <3de55ead0701020632y5d5cdbbdjb388d433b4c08e7a@mail.gmail.com> <12d1f4ee0701020653o1d44b427kf77226489a43f49f@mail.gmail.com> <3de55ead0701020725r278a4f8eq3d20d70768032c6d@mail.gmail.com> Message-ID: <12d1f4ee0701020738w9b64608qfcefec1683ebc417@mail.gmail.com> Eden, muito obrigado pela paciência e pela explicação... realmente agora ficou claro esta peculiaridade. O segundo exemplo ajudou muito !!! Obrigado, Solli M. Honório On 1/2/07, Eden Cardim wrote: > > On 1/2/07, Solli Honorio wrote: > > hummm para mim todos os prints resultaram em 'barfoo', mas o primeiro > cara > > não deveria apenas imprimir bar ? > > Ops, viajei, tanto no exemplo como na explicação... > > perl -e'$_="SEEKING"; print if s/(?:SEEKING)?/bar/;' > Aqui da match com SEEKING porque regexes são gulosas por padrão. > > perl -e'$_="SEEKING"; print if s/(?:SEEKING)??/bar/;' > Aqui eu desativei a 'gula' então vai dar match com a string vazia que > tem antes do 'SEEKING' > > perl -e'$_="foo"; print if s/(?:SEEKING)?/bar/;' > Aqui da match com a string vazia que tem antes de 'foo'. > > perl -e'$_="fooSEEKING"; print if s/(?:SEEKING)?/bar/;' > Aqui da match com a string vazia que tem antes de 'foo' porque este é > o primeiro match possível. > > perl -e'$_="fooSEEKING"; print if s/(?:SEEKING)?/bar/g;' > Tada! > > Bem, o importante é perceber que s/(?:SEEKING)?/bar/ é diferente de > s//bar/. Os bugs criados por detalhes como esses em regexes são > bastante difíceis de depurar (pelo menos pra mim). > > -- > Eden Cardim > Instituto Baiano de Biotecnologia > Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas > Laboratório de Bioinformática > -- > "you seem to think that 'close enough' is close enough... > please learn to be 'literal' around programming." > merlyn - on irc.freenode.net#perl > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/9740033c/attachment.html From ariarantes em gmail.com Tue Jan 2 08:38:38 2007 From: ariarantes em gmail.com (Ari Arantes) Date: Tue, 2 Jan 2007 14:38:38 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= Message-ID: Pessoal, Fiz um daemon para ficar lendo do /var/log/maillog e ficar gravando numa tabela do mysql, porém gostaria de saber qual é a melhor maneira de conectar no banco de dados. Segue o script: #!/usr/bin/perl use DBI; $arqlog="/var/log/maillog"; # Connect info $server = "localhost"; $login = "log"; $password = "senha"; $db = "log"; open(LOG,"tail -F $arqlog |"); while($log=) { chomp($log); #substitui ' por '' para evitar erro no sql $log =~ s/'/''/g; #substitui \ por \\ $log =~ s/\\/\\\\/g; #Abre Conexao Mysql $str_conexao="DBI:mysql:database=$db;host=$server;port=3306"; $dbh = DBI->connect($str_conexao, $login, $password); $s = "insert into syslog (data, msg) values (now(), '$log')"; $sql = $dbh->prepare($s); ($sql->execute()) || die '$DBI::errstr'; $rc = $dbh->disconnect; } Para rodar o script eu coloco no rc.local: /scripts/syslog.pl & Minhas dúvidas: - é melhor conectar e desconectar em cada insert como está atualmente no script? - ou coloco a conexão no início do script, antes do "while" - nesse caso, e se o banco restartar? o daemon não termina? - como fazer para se reconectar se preciso? - essa é a melhor maneira de inserir os dados do maillog no mysql? Obrigado, Ari From edencardim em gmail.com Tue Jan 2 09:39:10 2007 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 2 Jan 2007 14:39:10 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= In-Reply-To: References: Message-ID: <3de55ead0701020939t6539f6d2ia6e7a9615c2ccc0b@mail.gmail.com> On 1/2/07, Ari Arantes wrote: > - é melhor conectar e desconectar em cada insert como está atualmente no script? Não, a não ser que você tenha um motivo muito bom para fazê-lo. > - ou coloco a conexão no início do script, antes do "while" Isso. > - nesse caso, e se o banco restartar? o daemon não termina? Agora sim, um motivo para você conectar em cada insert, dentro do while, se o banco desligar, vc vai perder a conexão e aí vai precisar conectar de novo. > - como fazer para se reconectar se preciso? Use o método 'connect_cached', ele funciona como o 'connect' só que armazena a conexão num cache. Se vc conectar e já houver uma conexao disponível, ele automaticamente usa ela invés de conectar de novo. Se o banco tiver caído, a conexão é reestabelecida. > - essa é a melhor maneira de inserir os dados do maillog no mysql? Bem, podem haver controvérsias, mas não vejo motivos pruma aplicação simples como a sua usar DBI diretamente. Use DBIx::Class, vai ficar bem mais simples desenvolver e manter sua aplicação. Fora a resposta de suas dúvidas, tem alguns problemas relacionados ao seu script que podem lhe dar dores de cabeça mais tarde: acrescente use strict; use warnings; enquanto ainda há tempo. > (snip...) > open(LOG,"tail -F $arqlog |"); > (snip...) E se o comando tail falhar? E se o arquivo indicado por $arqlog não existir ou for removido? E se o sistema for vítima de DOS e acabar sua memória? Sempre teste o resultado da função open, ela retorna falso se houver algum problema e disponibiliza um diagnóstico na variável $!. Usar um comando de shell externo para fazer alguma coisa no seu programa geralmente é uma má ideia. Use bibliotecas do CPAN invés disso: http://search.cpan.org/~dmuey/File-Tail-App-v0.0.2/App.pm -- Eden Cardim Instituto Baiano de Biotecnologia Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas Laboratório de Bioinformática -- "you seem to think that 'close enough' is close enough... please learn to be 'literal' around programming." merlyn - on irc.freenode.net#perl From edencardim em gmail.com Tue Jan 2 09:59:14 2007 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 2 Jan 2007 14:59:14 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= In-Reply-To: References: Message-ID: <3de55ead0701020959y2e1d9f46p91e4f5afb81c895f@mail.gmail.com> On 1/2/07, Ari Arantes wrote: > Pessoal, > > Fiz um daemon para ficar lendo do /var/log/maillog e ficar gravando > numa tabela do mysql, porém gostaria de saber qual é a melhor maneira > de conectar no banco de dados. > (snip...) > /scripts/syslog.pl & Ops, mais um detalhe: Colocar o programa pra rodar em background não significa que ele é um daemon. Para ser um daemon, o programa precisa se desacoplar do terminal invocador. Em sistemas *nix isso significa dar um fork e encerrar o processo pai. Além disso, todos os descritores de arquivos precisam ser fechados, e você precisa prover uma forma de iniciar/encerrar/reiniciar o daemon já que não haverá controle via terminal (usar kill é feio e mal-educado né?). O módulo Daemon::Generic (http://search.cpan.org/~muir/Daemon-Generic-0.3/lib/Daemon/Generic.pod) diz que faz tudo isso por você. -- Eden Cardim Instituto Baiano de Biotecnologia Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas Laboratório de Bioinformática -- "you seem to think that 'close enough' is close enough... please learn to be 'literal' around programming." merlyn - on irc.freenode.net#perl From igor.sutton em gmail.com Tue Jan 2 10:13:41 2007 From: igor.sutton em gmail.com (Igor Sutton) Date: Tue, 2 Jan 2007 18:13:41 +0000 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= In-Reply-To: References: Message-ID: <6c65a53f0701021013r5bb29ecckcf14fe04a9e01ff1@mail.gmail.com> Boa tarde Ari, 2007/1/2, Ari Arantes : > > Pessoal, > > Fiz um daemon para ficar lendo do /var/log/maillog e ficar gravando > numa tabela do mysql, porém gostaria de saber qual é a melhor maneira > de conectar no banco de dados. Eu faria isto da seguinte maneira: 1. Usaria o POE::Wheel::FollowTail, que cuida da parte chata de verificação de existencia de arquivo, se ele foi truncado, etc; 2. Teria uma conexão aberta para a aplicação, evitando ter que abrir e fechar a conexão a cada linha - isso gera um overhead imenso; 3. Teria um prepared statement pronto para fazer a inserção dos dados. Isto ajuda a base de dados a fazer a validação do SQL antes da inserção - economizando mais uns ciclos de CPU; 4. Teria todas as minhas expressões regulares compiladas - isto é, ao invés de utilizar m//; utilize m//o; Estou verificando um código de exemplo. Assim que tiver, eu posto. -- Igor Sutton Lopes -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/f10b101f/attachment-0001.html From joenio em gmail.com Tue Jan 2 10:29:46 2007 From: joenio em gmail.com (Joenio Marques) Date: Tue, 2 Jan 2007 16:29:46 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?REGEX_retorna_vari=E1veis_com_tamanh?= =?iso-8859-1?q?o_maior_que_o_conte=FAdo=2E=2E=2E?= In-Reply-To: <12d1f4ee0701011342o56cbaa3ai9300198c093f29b3@mail.gmail.com> References: <12d1f4ee0701011342o56cbaa3ai9300198c093f29b3@mail.gmail.com> Message-ID: <65934b450701021029x4c2e3fbfv373552ccd2ba397@mail.gmail.com> Hummnn... Isto explica este problema que relatei a algum tempo atras: http://mail.pm.org/pipermail/cascavel-pm/2005-December/004514.html Att, 2007/1/1, Solli Honorio : > Pessoal, > > Lí o post http://www.perlmonks.com/?node_id=592424 do > Perlmonks e achei muito interessante e bastante útil. Ysth apresentou um > código, que segue abaixo, demonstrando que o armazenamento de variáveis > capturadas via REGEX ocupam mais espaços do que o esperado. > > Segundo a própria explicação dele, isto ocorre porque a variável passa por > uma transformação interna do tipo PV (tipo scalar) para PVMG (um tipo > mágico, segundo a própria definição do B - The Perl Compiler > http://search.cpan.org/~nwclark/perl-5.8.8/ext/B/B.pm). > > O interessante é que para resolver o problema, é só colocar as aspas-duplas > no momento da atribuição dos valores capturado pelo REGEX. Eu acredito que > esta informação possa ser muito interessante de parser de longos arquivos. > > Dê uma olhada no código abaixo : > > > use Test::More "no_plan"; > use Devel::Size "total_size"; > > my $val = "a00"; > my (%hash1,%hash2); > > # cria um loop de aa..zz para popular > # dois hashes. > foreach my $key ( "aa" .. "zz" ) { > # popula o primeiro hash > $hash1{$key} = $val; > > # popula o segundo hash, agora utilizando > # a captura de grupo do regex > "$key$val" =~ /(..)(...)/ and $hash2{$1} = $2; > ++$val; > } > > # utiliza as funcoes do Test::More para garantir que > # os hashes populados possuem a mesma quantidade de > # elementos, e os mesmos elementos, mas neste caso > # com tamanho diferente. > is(keys(%hash1), keys(%hash2), "same numbe of keys"); > is_deeply(\%hash1, \%hash2, "is_deeply same"); > is(total_size(\%hash1),total_size(\%hash2)); > > > ok 1 - same numbe of keys > ok 2 - is_deeply same > # Failed test in teste.pl at line 15. > not ok 3 > 1..3 > # got: '39308' > # expected: '52828' > # Looks like you failed 1 test of 3. > > > Para resolver o problema é só alterar a linha : > "$key$val" =~ /(..)(...)/ and $hash2{$1} = $2; > para : > "$key$val" =~ /(..)(...)/ and $hash2{$1} = "$2"; > ... e aí o último teste será concluído com sucesso. > > E isso aí pessoal. > > Solli Moreira Honório > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > > -- Joenio Marques - Salvador Perl Mongers From shonorio em gmail.com Tue Jan 2 10:31:16 2007 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 2 Jan 2007 16:31:16 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= In-Reply-To: <3de55ead0701020939t6539f6d2ia6e7a9615c2ccc0b@mail.gmail.com> References: <3de55ead0701020939t6539f6d2ia6e7a9615c2ccc0b@mail.gmail.com> Message-ID: <12d1f4ee0701021031p69a2df18jfaab42d439df559c@mail.gmail.com> > > Bem, podem haver controvérsias, mas não vejo motivos pruma aplicação > simples como a sua usar DBI diretamente. Use DBIx::Class, vai ficar > bem mais simples desenvolver e manter sua aplicação. > > Performance não seria um bom motivo ? Posso esta muito enganado, mas já passei por uma situação de "vexame" em performance por utilizar do DBI::Class ao invéz do DBI puro. Solli M. Honório -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/e3711564/attachment.html From edencardim em gmail.com Tue Jan 2 10:39:37 2007 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 2 Jan 2007 15:39:37 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= In-Reply-To: <12d1f4ee0701021031p69a2df18jfaab42d439df559c@mail.gmail.com> References: <3de55ead0701020939t6539f6d2ia6e7a9615c2ccc0b@mail.gmail.com> <12d1f4ee0701021031p69a2df18jfaab42d439df559c@mail.gmail.com> Message-ID: <3de55ead0701021039v797db2e7y844496bc4bfdb83c@mail.gmail.com> On 1/2/07, Solli Honorio wrote: > Performance não seria um bom motivo ? Posso esta muito enganado, mas já > passei por uma situação de "vexame" em performance por utilizar do > DBI::Class ao invéz do DBI puro. Sim, performance seria um bom motivo. Porém, não vejo onde uma aplicação de registro de log precisaria de performance. -- Eden Cardim Instituto Baiano de Biotecnologia Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas Laboratório de Bioinformática -- "you seem to think that 'close enough' is close enough... please learn to be 'literal' around programming." merlyn - on irc.freenode.net#perl From igor.sutton em gmail.com Tue Jan 2 10:47:06 2007 From: igor.sutton em gmail.com (Igor Sutton) Date: Tue, 2 Jan 2007 18:47:06 +0000 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= In-Reply-To: <6c65a53f0701021013r5bb29ecckcf14fe04a9e01ff1@mail.gmail.com> References: <6c65a53f0701021013r5bb29ecckcf14fe04a9e01ff1@mail.gmail.com> Message-ID: <6c65a53f0701021047i534752b2pcc5f165e96e07ed@mail.gmail.com> > Estou verificando um código de exemplo. Assim que tiver, eu posto. Isto é um bom começo: use strict; use warnings; use POE qw(Wheel::FollowTail Component::Daemon); my $FILENAME = 'input.txt'; POE::Component::Daemon->spawn( detach => 1, max_children => 3 ); POE::Session->create( inline_states => { _start => sub { my ( $kernel, $heap, $session ) = @_[ KERNEL, HEAP, SESSION ]; $heap->{tail} = POE::Wheel::FollowTail->new( Filename => $FILENAME, InputEvent => 'got_line', ); }, got_line => sub { my ( $kernel, $input ) = $_[ KERNEL, ARG0 ]; print "got_line(): $input\n"; }, } ); POE::Kernel->run(); Agora só falta implementar a conexão ao banco de dados :) -- Igor Sutton Lopes -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/cbd9cc7d/attachment.html From fglock em gmail.com Tue Jan 2 11:52:02 2007 From: fglock em gmail.com (Flavio S. Glock) Date: Tue, 2 Jan 2007 17:52:02 -0200 Subject: [Cascavel-pm] ... adeus ano velho, feliz ano novo ... In-Reply-To: <65934b450701020554w15ed19dbne00cae838ad1b66a@mail.gmail.com> References: <12d1f4ee0701011133i25d0bd4fv2d60647921551dbc@mail.gmail.com> <65934b450701020554w15ed19dbne00cae838ad1b66a@mail.gmail.com> Message-ID: 2007/1/2, Joenio Marques : > > Muito bom voce tocar nesse assunto, estamos em periodo de organização > do YAPC::SA::2007 que ocorre junto ao Fisl 8.0 em Abril, tem muito > trabalho a ser feito até lá e precisamos de toda ajuda. As inscrições de palestras estão abertas até dia 7/jan: http://fisl.softwarelivre.org - Flavio S. Glock From acid06 em gmail.com Tue Jan 2 11:53:52 2007 From: acid06 em gmail.com (Nilson Santos Figueiredo Junior) Date: Tue, 2 Jan 2007 17:53:52 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= In-Reply-To: <12d1f4ee0701021031p69a2df18jfaab42d439df559c@mail.gmail.com> References: <3de55ead0701020939t6539f6d2ia6e7a9615c2ccc0b@mail.gmail.com> <12d1f4ee0701021031p69a2df18jfaab42d439df559c@mail.gmail.com> Message-ID: <9a08c9b40701021153q5dcfa75fk2427d40783ac95a7@mail.gmail.com> On 1/2/07, Solli Honorio wrote: > Performance não seria um bom motivo ? Posso esta muito enganado, mas já > passei por uma situação de "vexame" em performance por utilizar do > DBI::Class ao invéz do DBI puro. Não, você passou "vexame" com o Class::DBI, não com o DBIx::Class. São dois módulos completamente diferentes e o segundo foi feito justamente para corrigir os problemas do primeiro. -Nilson Santos F. Jr. From matheuscucoloto em gmail.com Tue Jan 2 12:01:54 2007 From: matheuscucoloto em gmail.com (Matheus Cucoloto) Date: Tue, 2 Jan 2007 18:01:54 -0200 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte Message-ID: Ola pessoal, espero que eu consiga me expressar. De que maneira eu posso encriptar o meu codigo fonte em Perl? O objetivo é bloquear o codigo fonte, para quem terceiros nao possam ver. Abraços -- Matheus Cucoloto Administrador de Redes From andre.garcia.carneir em terra.com.br Tue Jan 2 12:05:42 2007 From: andre.garcia.carneir em terra.com.br (=?iso-8859-1?b?QW5kcukgR2FyY2lhIENhcm5laXJv?=) Date: Tue, 2 Jan 2007 17:05:42 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= Message-ID: Igor, Nesse caso, sugiro manter tudo muito simples e usar o DBI puro mesmo... talvez um 'RaiseError' no seu 'connect' não seja má idéia, e não me lembro quem postou a sugestão de usar um connect_cached(nunca usei), mas achei interessante, se você quiser deixar alguns processos como redundância, sem precisar refazer um connect toda a vez , sei lá... Usar DBIx::Class pode ser uma boa também, mas é que para o que você precisa acho que não é necessário, a não ser por questão de organização. Se você precisar utilizar outro SGBD, que não o MySQL por exemplo, terá que mudar pouquíssimas coisas(só para se conectar, se não esqueci de nada), e nada de SQL, já que está tudo 'abstraído' através do módulo DBIx::Class. Questão de escolha... vc decide!! Mas se me perguntar, acho mais rápido fazer via DBI mesmo... : ) Cheers! ---------- Cabeçalho original ----------- De: cascavel-pm-bounces+andre.garcia.carneir=terra.com.br em pm.org Para: "Cascavel Perl Mongers" cascavel-pm em pm.org Cópia: Data: Tue, 2 Jan 2007 18:13:41 +0000 Assunto: Re: [Cascavel-pm] Conexão com mysql em daemon > Boa tarde Ari, > > 2007/1/2, Ari Arantes : > > > > Pessoal, > > > > Fiz um daemon para ficar lendo do /var/log/maillog e ficar gravando > > numa tabela do mysql, porém gostaria de saber qual é a melhor maneira > > de conectar no banco de dados. > > > Eu faria isto da seguinte maneira: > > 1. Usaria o POE::Wheel::FollowTail, que cuida da parte chata de verificação > de existencia de arquivo, se ele foi truncado, etc; > 2. Teria uma conexão aberta para a aplicação, evitando ter que abrir e > fechar a conexão a cada linha - isso gera um overhead imenso; > 3. Teria um prepared statement pronto para fazer a inserção dos dados. Isto > ajuda a base de dados a fazer a validação do SQL antes da inserção - > economizando mais uns ciclos de CPU; > 4. Teria todas as minhas expressões regulares compiladas - isto é, ao invés > de utilizar m//; utilize m//o; > > Estou verificando um código de exemplo. Assim que tiver, eu posto. > -- > Igor Sutton Lopes > > E-mail classificado pelo Identificador de Spam Inteligente Terra. > Para alterar a categoria classificada, visite > http://mail.terra.com.br/protected_email/imail/imail.cgi?+_u=andre.garcia.carneir&_l=1,1167761652.206107.3866.morondava.hst.terra.com.br,6713,Des15,Des15 > > Esta mensagem foi verificada pelo E-mail Protegido Terra. > Scan engine: McAfee VirusScan / Atualizado em 02/01/2007 / Versão: 5.1.00/4930 > Proteja o seu e-mail Terra: http://mail.terra.com.br/ > > -- André Garcia Carneiro Developer(Perl/PHP) Member of "São Paulo Perl Mongers" - http://sao-paulo.pm.org From andre.garcia.carneir em terra.com.br Tue Jan 2 12:17:01 2007 From: andre.garcia.carneir em terra.com.br (=?iso-8859-1?b?QW5kcukgR2FyY2lhIENhcm5laXJv?=) Date: Tue, 2 Jan 2007 17:17:01 -0300 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte Message-ID: Matheus, Pensando num jeito rápido, você pode compilar, por exemplo, usando o perlcc(Exemplo idiota, por favor faça RTFM para explorar melhor as opções: perlcc -o ). Atente para problemas de performance, pois dependendo da aplicação você pode perder bastante em performance. E arquivos compilados ocupam mais espaço. Testei o perlcc agora com um arquivo de 5KB, e o compilado foi para mais de 1MB. Novamente, RTFM... Se você utiliza muitos módulos no seu programa, é essencial que você faça RTFM do perlcc, caso contrário terá dificuldades para compilar o seu programa. Se mesmo depois de RTFM você tiver dúvidas, tenho certeza de que todos terão prazer em ajudá-lo! :) Cheers! ---------- Cabeçalho original ----------- De: cascavel-pm-bounces+andre.garcia.carneir=terra.com.br em pm.org Para: cascavel-pm em pm.org Cópia: Data: Tue, 2 Jan 2007 18:01:54 -0200 Assunto: [Cascavel-pm] Encriptar/Ofuscar codigo fonte > Ola pessoal, espero que eu consiga me expressar. > > De que maneira eu posso encriptar o meu codigo fonte em Perl? O > objetivo é bloquear o codigo fonte, para quem terceiros nao possam > ver. > > Abraços > > -- > > Matheus Cucoloto > Administrador de Redes > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > > E-mail classificado pelo Identificador de Spam Inteligente Terra. > Para alterar a categoria classificada, visite > http://mail.terra.com.br/protected_email/imail/imail.cgi?+_u=andre.garcia.carneir&_l=1,1167768161.189642.8646.sotovento.hst.terra.com.br,3569,Des15,Des15 > > Esta mensagem foi verificada pelo E-mail Protegido Terra. > Scan engine: McAfee VirusScan / Atualizado em 02/01/2007 / Versão: 5.1.00/4930 > Proteja o seu e-mail Terra: http://mail.terra.com.br/ > > -- André Garcia Carneiro Developer(Perl/PHP) Member of "São Paulo Perl Mongers" - http://sao-paulo.pm.org From ariarantes em gmail.com Tue Jan 2 12:26:01 2007 From: ariarantes em gmail.com (Ari Arantes) Date: Tue, 2 Jan 2007 18:26:01 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= In-Reply-To: <9a08c9b40701021153q5dcfa75fk2427d40783ac95a7@mail.gmail.com> References: <3de55ead0701020939t6539f6d2ia6e7a9615c2ccc0b@mail.gmail.com> <12d1f4ee0701021031p69a2df18jfaab42d439df559c@mail.gmail.com> <9a08c9b40701021153q5dcfa75fk2427d40783ac95a7@mail.gmail.com> Message-ID: Galera, Muito obrigado pelas dicas. Ainda estou engatinhando com o perl... Vou tentar sofisticar o script com as dicas passadas! Valeu. Ari From acid06 em gmail.com Tue Jan 2 12:29:21 2007 From: acid06 em gmail.com (Nilson Santos Figueiredo Junior) Date: Tue, 2 Jan 2007 18:29:21 -0200 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte In-Reply-To: References: Message-ID: <9a08c9b40701021229o60da085fj2a18ed3b8d5c586a@mail.gmail.com> On 1/2/07, Matheus Cucoloto wrote: > De que maneira eu posso encriptar o meu codigo fonte em Perl? O > objetivo é bloquear o codigo fonte, para quem terceiros nao possam > ver. Impossível de ser feito em Perl de forma satisfatória. O melhor que você consegue é gerar um executável empacotado usando o PAR. Mas qualquer pessoa com conhecimento um pouco avançado de Perl vai conseguir pegar seu código. Se seu alvo for gerar programas pra Windows, o PDK da ActiveState possui uma ferramenta comercial (o PerlApp) que é um grau mais difícil de ser quebrado, pois ela faz o carregamento direto na memória ao invés de extrair os arquivos em disco. Mas mesmo assim, tudo ainda estará na memória. Note que o que você está procurando é um ofuscador de código e não um "encriptador" (sic). -Nilson Santos F. Jr. From edencardim em gmail.com Tue Jan 2 12:38:22 2007 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 2 Jan 2007 17:38:22 -0300 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte In-Reply-To: References: Message-ID: <3de55ead0701021238r47d4312apd8d1d1fa310a3b70@mail.gmail.com> On 1/2/07, Matheus Cucoloto wrote: > Ola pessoal, espero que eu consiga me expressar. > > De que maneira eu posso encriptar o meu codigo fonte em Perl? O > objetivo é bloquear o codigo fonte, para quem terceiros nao possam > ver. Essa questão é meio controversial e já foi até arduamente discutida aqui e no Perl Monks. Estou com preguiça de procurar nos arquivos a discussão toda então vou expressar minha opinião de novo aqui mesmo. A princípio, não há nenhuma forma eficaz de "bloquear" código fonte em perl. Você pode até obfuscar o código para dificultar a leitura, mesmo assim, qualquer programador Perl razoável conseguirá ler o seu código. Você pode gerar código com perlcc também, mas se você RTFM, verá que o código gerado assim não tem garantia nenhuma de funcionar. Não vejo porque obfuscar código, principalmente relacionado a administração de sistemas. Se você está tentando obter "security through obscurity", pare enquanto ainda há tempo. O único prejudicado será você mesmo, quando seu código estiver "imanutenível", tão cheio de bugs que qualquer moleque leitor das notícias do security focus irá conseguir burlar seu sistema. Se estiver querendo impedir que outras pessoas descubram os "truques e macetes" que "só você sabe". Taí uma receita do Casey West: map{s[[^\@\$]][]go=>chomp,$_=[split/(\@+\$*)/=>$_]=>map{$_?do{s( (\@+)(\$*))(chr((length$1)*10+length$2))ex=>print}:1}@$_},__END__ sub proto(@@@@@@@$$$$@@@@@@@@@@@$$$$$$$@@@@@@@@@@@$$$$$ @@@@@@@@@@@$$$$$$@@@$$@@@@@@@@@$$$$$$$@@@@@@@@@@@ @@@@@@@@@@@$@@@@@@@@@@@$$$$$$@@@@@@@@@@$$$$ @@@@@@@@@@$@@@@@@@@@@@$$$$@@@$$@@@@@@@@ @@@@@@@@@@$@@@@@@@@@@@$$$$@@@@@@@@@@$$$$$$$$ @@@$$@@@@@@@$$@@@@@@@@@$$$$$$$@@@@@@@@@$$$$$$$$$ @@@@@@@@@@$$$$$$$@@@@@@@@@@$@@@@@@@@@@@$$$$@){&proto} Perl só existe e é bom porque pessoas colaboraram e nos disponibilizaram o seu trabalho, se depender de mim, vai continuar sendo assim. -- Eden Cardim Instituto Baiano de Biotecnologia Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas Laboratório de Bioinformática -- "you seem to think that 'close enough' is close enough... please learn to be 'literal' around programming." merlyn - on irc.freenode.net#perl From shonorio em gmail.com Tue Jan 2 12:50:19 2007 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 2 Jan 2007 18:50:19 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= In-Reply-To: <9a08c9b40701021153q5dcfa75fk2427d40783ac95a7@mail.gmail.com> References: <3de55ead0701020939t6539f6d2ia6e7a9615c2ccc0b@mail.gmail.com> <12d1f4ee0701021031p69a2df18jfaab42d439df559c@mail.gmail.com> <9a08c9b40701021153q5dcfa75fk2427d40783ac95a7@mail.gmail.com> Message-ID: <12d1f4ee0701021250y11c9e375sfb0c877b08f11f0f@mail.gmail.com> Ops... escrevi errado ... obrigado Nilson. Solli On 1/2/07, Nilson Santos Figueiredo Junior wrote: > > On 1/2/07, Solli Honorio wrote: > > Performance não seria um bom motivo ? Posso esta muito enganado, mas já > > passei por uma situação de "vexame" em performance por utilizar do > > DBI::Class ao invéz do DBI puro. > > Não, você passou "vexame" com o Class::DBI, não com o DBIx::Class. > São dois módulos completamente diferentes e o segundo foi feito > justamente para corrigir os problemas do primeiro. > > -Nilson Santos F. Jr. > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/6f8ac528/attachment.html From andre.garcia.carneir em terra.com.br Tue Jan 2 12:52:13 2007 From: andre.garcia.carneir em terra.com.br (=?iso-8859-1?b?QW5kcukgR2FyY2lhIENhcm5laXJv?=) Date: Tue, 2 Jan 2007 17:52:13 -0300 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte Message-ID: Matheus e Eden, Desculpe se vou me meter um pouco, mas eu só queria dizer que não há nada errado em querer proteger o seu código(Matheus), acho que o que o nosso amigo da Bahia quis dizer é que talvez você(Matheus) deva realmente pensar se vale a pena gastar tempo($) com isso, mesmo porque Perl está todo sob a filosofia OpenSource e, pensando nisso, e pelo que tenho visto e sentindo da comunidade Perl, coisas como proteção de código tem pouco sentido no mundo Perl (claro que eu posso estar errado). Cheers! ---------- Cabeçalho original ----------- De: cascavel-pm-bounces+andre.garcia.carneir=terra.com.br em pm.org Para: "Cascavel Perl Mongers" cascavel-pm em pm.org Cópia: Data: Tue, 2 Jan 2007 17:38:22 -0300 Assunto: Re: [Cascavel-pm] Encriptar/Ofuscar codigo fonte > On 1/2/07, Matheus Cucoloto wrote: > > Ola pessoal, espero que eu consiga me expressar. > > > > De que maneira eu posso encriptar o meu codigo fonte em Perl? O > > objetivo é bloquear o codigo fonte, para quem terceiros nao possam > > ver. > > Essa questão é meio controversial e já foi até arduamente discutida > aqui e no Perl Monks. Estou com preguiça de procurar nos arquivos a > discussão toda então vou expressar minha opinião de novo aqui mesmo. > > A princípio, não há nenhuma forma eficaz de "bloquear" código fonte em > perl. Você pode até obfuscar o código para dificultar a leitura, mesmo > assim, qualquer programador Perl razoável conseguirá ler o seu código. > Você pode gerar código com perlcc também, mas se você RTFM, verá que o > código gerado assim não tem garantia nenhuma de funcionar. > > Não vejo porque obfuscar código, principalmente relacionado a > administração de sistemas. Se você está tentando obter "security > through obscurity", pare enquanto ainda há tempo. O único prejudicado > será você mesmo, quando seu código estiver "imanutenível", tão cheio > de bugs que qualquer moleque leitor das notícias do security focus irá > conseguir burlar seu sistema. > > Se estiver querendo impedir que outras pessoas descubram os "truques e > macetes" que "só você sabe". Taí uma receita do Casey West: > > > map{s[[^\@\$]][]go=>chomp,$_=[split/(\@+\$*)/=>$_]=>map{$_?do{s( > (\@+)(\$*))(chr((length$1)*10+length$2))ex=>print}:1}@$_},__END__ > sub proto(@@@@@@@$$$$@@@@@@@@@@@$$$$$$$@@@@@@@@@@@$$$$$ > @@@@@@@@@@@$$$$$$@@@$$@@@@@@@@@$$$$$$$@@@@@@@@@@@ > @@@@@@@@@@@$@@@@@@@@@@@$$$$$$@@@@@@@@@@$$$$ > @@@@@@@@@@$@@@@@@@@@@@$$$$@@@$$@@@@@@@@ > @@@@@@@@@@$@@@@@@@@@@@$$$$@@@@@@@@@@$$$$$$$$ > @@@$$@@@@@@@$$@@@@@@@@@$$$$$$$@@@@@@@@@$$$$$$$$$ > @@@@@@@@@@$$$$$$$@@@@@@@@@@$@@@@@@@@@@@$$$$@){&proto} > > > Perl só existe e é bom porque pessoas colaboraram e nos > disponibilizaram o seu trabalho, se depender de mim, vai continuar > sendo assim. > > -- > Eden Cardim > Instituto Baiano de Biotecnologia > Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas > Laboratório de Bioinformática > -- > "you seem to think that 'close enough' is close enough... > please learn to be 'literal' around programming." > merlyn - on irc.freenode.net#perl > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > > E-mail classificado pelo Identificador de Spam Inteligente Terra. > Para alterar a categoria classificada, visite > http://mail.terra.com.br/protected_email/imail/imail.cgi?+_u=andre.garcia.carneir&_l=1,1167770332.437814.4661.vacoas.hst.terra.com.br,5839,Des15,Des15 > > Esta mensagem foi verificada pelo E-mail Protegido Terra. > Scan engine: McAfee VirusScan / Atualizado em 02/01/2007 / Versão: 5.1.00/4930 > Proteja o seu e-mail Terra: http://mail.terra.com.br/ > > -- André Garcia Carneiro Developer(Perl/PHP) Member of "São Paulo Perl Mongers" - http://sao-paulo.pm.org From edencardim em gmail.com Tue Jan 2 13:52:02 2007 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 2 Jan 2007 18:52:02 -0300 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte In-Reply-To: References: Message-ID: <3de55ead0701021352j7ff4570fhdfd50b473846a37e@mail.gmail.com> On 1/2/07, André Garcia Carneiro wrote: > Desculpe se vou me meter um pouco, mas eu só queria dizer que não há nada errado em querer proteger o seu > código(Matheus) Proteger de quem? De alguem que poderia melhora-lo? Já pensou se os colaboradores do CPAN pensassem assim? Mesmo se houvesse proteção via software, a forma menos deficiente de proteger código (na minha opinião, é claro), é com um contrato e um bom advogado, mas isso já é OT. > acho que o que o nosso amigo da Bahia quis dizer é que talvez você(Matheus) deva realmente > pensar se vale a pena gastar tempo($) com isso, mesmo porque Perl está todo sob a filosofia OpenSource e, > pensando nisso, e pelo que tenho visto e sentindo da comunidade Perl, coisas como proteção de código tem pouco > sentido no mundo Perl (claro que eu posso estar errado). É por aí mesmo... Eu também quis dizer que não é ético pedir informação ao público em geral sobre como ocultar informação. Pelo que tenho lido a respeito do assunto, a maioria dos profissionais da área não gostam do fato de que eles podem passar a manter amanhã, código que foi obfuscado propositalmente por alguém hoje. E seria pior ainda, psicologicamente, se descobrissem que foram eles mesmos que ensinaram como fazer a obfuscação. -- Eden Cardim Instituto Baiano de Biotecnologia Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas Laboratório de Bioinformática -- "you seem to think that 'close enough' is close enough... please learn to be 'literal' around programming." merlyn - on irc.freenode.net#perl From a.r.ferreira em gmail.com Tue Jan 2 16:07:30 2007 From: a.r.ferreira em gmail.com (Adriano Ferreira) Date: Tue, 2 Jan 2007 22:07:30 -0200 Subject: [Cascavel-pm] ... adeus ano velho, feliz ano novo ... In-Reply-To: References: <12d1f4ee0701011133i25d0bd4fv2d60647921551dbc@mail.gmail.com> <65934b450701020554w15ed19dbne00cae838ad1b66a@mail.gmail.com> Message-ID: <73ddeb6c0701021607p32c849ebp22694d7e3bb834cc@mail.gmail.com> On 1/2/07, Flavio S. Glock wrote: > As inscrições de palestras estão abertas até dia 7/jan: > > http://fisl.softwarelivre.org > > - Flavio S. Glock Já temos convidados do mundo afora? Além do Randal Schwartz, para quem aparentemente nem foi preciso de convite. Adriano. From matheuscucoloto em gmail.com Tue Jan 2 17:27:16 2007 From: matheuscucoloto em gmail.com (Matheus Cucoloto) Date: Tue, 2 Jan 2007 23:27:16 -0200 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte In-Reply-To: <3de55ead0701021352j7ff4570fhdfd50b473846a37e@mail.gmail.com> References: <3de55ead0701021352j7ff4570fhdfd50b473846a37e@mail.gmail.com> Message-ID: Bom pessoal, obrigado pelas respostas. Vou detalhar melhor... Desenvolvi uma interface web para gerenciar varios servidores (FreeBSD), com as seguintes features: Controle de Firewall (pf); Controle de Banda (pf+altq); Controle de Proxy (Squid+dansguardian+amavis); Controle de VPN (OpenVPN); Controle de DNS (Bind); Controle de Dhcp (isc-dhcp); O gerenciador roda em uma maquina central com BD Postgres, e cada maquina servidora controlada roda um socket em perl que recebe comandos e retorna resultados. Preciso da ofuscação e ou encriptacao pois esse sistema eh intalado em empresas tercerizadas. E o que eu vendo eh apenas a solucao e nao o codigo fonte. Ja tomei outras atitudes como encriptar o disco inteiro com Geom. Mas mesmo assim eu fico com um pe atras. Tive problemas com outra solucao (gerenciador de Access Point com FreeBSD), o bunitao desfez contrato comigo, pegou o gerenciador e foi clonando pra tudo quanto eh lugar(vendendo). Nao estou sendo egoista ou coisa desses generos, estou apenas querendo proteger um produto meu onde me dediquei e hoje quero ter lucro do mesmo. Uns vao concordar outros nao, enfim ja usei um ofuscador, q ateh tem na net em uma pagina (nao me recordo) aonde vc cola o codigo e ele retorna em base64 algo assim... nao lembro mesmo. Queria saber mesmo se tem algo mais consistente! Mas eh isso ai... Abraços Galera. -- Matheus Cucoloto Administrador de Redes From acid06 em gmail.com Tue Jan 2 18:13:50 2007 From: acid06 em gmail.com (Nilson Santos Figueiredo Junior) Date: Wed, 3 Jan 2007 00:13:50 -0200 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte In-Reply-To: References: <3de55ead0701021352j7ff4570fhdfd50b473846a37e@mail.gmail.com> Message-ID: <9a08c9b40701021813w55b0150fpa8d0f698ce24980d@mail.gmail.com> On 1/2/07, Matheus Cucoloto wrote: > Tive problemas com outra solucao (gerenciador de Access Point com > FreeBSD), o bunitao desfez contrato comigo, pegou o gerenciador e foi > clonando pra tudo quanto eh lugar(vendendo). Pra isso existe registro de software e contratos (bem redigidos) de prestação de serviço. Entre na justiça contra o sujeito. Sim, o sistema judicial do Brasil não é eficiente, mas costuma funcionar nestes casos, mesmo que tardiamente (leia-se alguns anos de espera - mas sai). -Nilson Santos F. Jr. From shonorio em gmail.com Wed Jan 3 01:37:17 2007 From: shonorio em gmail.com (Solli Honorio) Date: Wed, 3 Jan 2007 07:37:17 -0200 Subject: [Cascavel-pm] ... adeus ano velho, feliz ano novo ... In-Reply-To: References: <12d1f4ee0701011133i25d0bd4fv2d60647921551dbc@mail.gmail.com> <65934b450701020554w15ed19dbne00cae838ad1b66a@mail.gmail.com> Message-ID: <12d1f4ee0701030137m15787965w429bd1a44b29e1e6@mail.gmail.com> Infelizmente, por questões orçamentárias, não vou participar do FISL. Mas estou a disposição para as demais contribuições. Abraços, Solli M. Honório On 1/2/07, Flavio S. Glock wrote: > > 2007/1/2, Joenio Marques : > > > > Muito bom voce tocar nesse assunto, estamos em periodo de organização > > do YAPC::SA::2007 que ocorre junto ao Fisl 8.0 em Abril, tem muito > > trabalho a ser feito até lá e precisamos de toda ajuda. > > As inscrições de palestras estão abertas até dia 7/jan: > > http://fisl.softwarelivre.org > > - Flavio S. Glock > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070103/238926fc/attachment.html From shonorio em gmail.com Wed Jan 3 01:55:12 2007 From: shonorio em gmail.com (Solli Honorio) Date: Wed, 3 Jan 2007 07:55:12 -0200 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte In-Reply-To: References: <3de55ead0701021352j7ff4570fhdfd50b473846a37e@mail.gmail.com> Message-ID: <12d1f4ee0701030155u714be56h85fed980bbb7bd84@mail.gmail.com> Matheus, Como já dito, o Perl não é uma linguagem que prevê este tipo de proteção, ao contrário de linguagens compiladas. Esta é uma questão muito interessante e importante, sempre abordada em todos os foruns de Perl no qual eu participo. Como proteger o meu código ? E a resposta simples é "Não tem como !". Colocando desta maneira, talvez os produtos da ActiveState possa ser a melhor alternativa para o desenvolvimento profissional em linguagens interpretada. O PDK (Perl Developer Kit) deles pode gerar código "compilado" em Windows/Linux de maneira que apenas (há controvérsia aqui também) eles possam efetuar o processo de "decompilação". Além desta ferramenta, eu recomendo (caso vc já não tenha feito) procurar uma ajuda jurídica para compreender como você pode preservar o seu produto além da questão do código, afinal mesmo compilado o cara pode copiar o arquivo e sair rodando por aí. Só finalizando, o PAR também prevê algun tipo de encriptação do código fonte. Dê um look no link http://par.perl.org/wiki/FAQ#Can_PAR_completely_hide_my_source_code.3F, e outros neste wiki. Abraços, Solli M. Honório On 1/2/07, Matheus Cucoloto wrote: > > Bom pessoal, obrigado pelas respostas. > Vou detalhar melhor... > > Desenvolvi uma interface web para gerenciar varios servidores > (FreeBSD), com as seguintes features: > > Controle de Firewall (pf); > Controle de Banda (pf+altq); > Controle de Proxy (Squid+dansguardian+amavis); > Controle de VPN (OpenVPN); > Controle de DNS (Bind); > Controle de Dhcp (isc-dhcp); > > O gerenciador roda em uma maquina central com BD Postgres, e cada > maquina servidora controlada roda um socket em perl que recebe > comandos e retorna resultados. > > Preciso da ofuscação e ou encriptacao pois esse sistema eh intalado em > empresas tercerizadas. E o que eu vendo eh apenas a solucao e nao o > codigo fonte. > > Ja tomei outras atitudes como encriptar o disco inteiro com Geom. Mas > mesmo assim eu fico com um pe atras. > > Tive problemas com outra solucao (gerenciador de Access Point com > FreeBSD), o bunitao desfez contrato comigo, pegou o gerenciador e foi > clonando pra tudo quanto eh lugar(vendendo). > > Nao estou sendo egoista ou coisa desses generos, estou apenas querendo > proteger um produto meu onde me dediquei e hoje quero ter lucro do > mesmo. > > Uns vao concordar outros nao, enfim ja usei um ofuscador, q ateh tem > na net em uma pagina (nao me recordo) aonde vc cola o codigo e ele > retorna em base64 algo assim... nao lembro mesmo. > > Queria saber mesmo se tem algo mais consistente! > > Mas eh isso ai... Abraços Galera. > > -- > > Matheus Cucoloto > Administrador de Redes > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070103/eebacda6/attachment.html From frederico em gmail.com Wed Jan 3 03:08:56 2007 From: frederico em gmail.com (Frederico Recsky) Date: Wed, 3 Jan 2007 09:08:56 -0200 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte In-Reply-To: References: <3de55ead0701021352j7ff4570fhdfd50b473846a37e@mail.gmail.com> Message-ID: <88fe68ee0701030308t6a88a76ap3324d533fc3439a2@mail.gmail.com> Olá! > Tive problemas com outra solucao (gerenciador de Access Point com > FreeBSD), o bunitao desfez contrato comigo, pegou o gerenciador e foi > clonando pra tudo quanto eh lugar(vendendo). > > Nao estou sendo egoista ou coisa desses generos, estou apenas querendo > proteger um produto meu onde me dediquei e hoje quero ter lucro do > mesmo. > > Uns vao concordar outros nao, enfim ja usei um ofuscador, q ateh tem > na net em uma pagina (nao me recordo) aonde vc cola o codigo e ele > retorna em base64 algo assim... nao lembro mesmo. Basicamente eu entendo o que você quer dizer, mas é pouco provavel que ninguem consiga pegar o codigo. Eu me lembro que tive o caso reverso do seu no meu antigo emprego, nos venderam um programa tão ruim que eu me empenhava em fazer engenharia reversa e conseguir o codigo fonte para melhorar o meu trabalho (reclamar para os superiores não adiantava muito). Se você quer realmente prote?ão, analise uma das varias licen?as de software disponiveis, tanto abertas como fechadas, e registre seu software. O segundo ponto é fazer um contrato realmente forte, cobrindo varios aspectos. E eu concordo com o Nilson, um bom advogado resolve seu problema. :) -- ____________________________ Frederico Recsky Linux User: 253572 http://www.fre.eti.br http://sao-paulo.pm.org/ From a.r.ferreira em gmail.com Wed Jan 3 03:23:16 2007 From: a.r.ferreira em gmail.com (Adriano Ferreira) Date: Wed, 3 Jan 2007 09:23:16 -0200 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte In-Reply-To: References: Message-ID: <73ddeb6c0701030323je8ddc18q856d5a9f2c3c9b8c@mail.gmail.com> On 1/2/07, Matheus Cucoloto wrote: > Ola pessoal, espero que eu consiga me expressar. > > De que maneira eu posso encriptar o meu codigo fonte em Perl? O > objetivo é bloquear o codigo fonte, para quem terceiros nao possam > ver. Matheus, Embora isto não possa ser feito de maneira absoluta com Perl, como os outros disseram, você pode conseguir alguma coisa se tiver absoluto controle do ambiente onde roda o script (do tipo ter um interpretador perl especialmente compilado e modificado para rodar o seu código, com chaves de software ou hardware) ou... há uma possibilidade se você partir da hipótese de que todos usando seu software terão um mínimo de senso de humor. Neste caso, você pode usar o Acme::DonMartin para transformar os seus programas como #!/usr/bin/perl print "Hello, World...\n"; em #!/usr/bin/perl use Acme::DonMartin; sklush klikrunk tear thwop skrazatz ferrip yukkle kawk stroinggoink furshglurk glikity prawk kik kik bluka din thuk zooka chimp sploosh pluf glomp whisk whisk tink ahweeeeee fip katy gashklitzka chook flizaff gukguk greedle floba thuk zingo O Acme::DonMartin foi criado com dois propósitos: para tornar os programas em Perl fáceis de ditar pelo telefone e, como um bônus, como uma medida de segurança. Espera-se que o espião ria tanto enquanto lê que ele não conseguirá recuperar seu código fonte. Estude esta possibilidade. Há outros módulos Acme com características interessantes também para estes fins: matar os outros de rir. Adriano. Nota: Don Martin foi cartunista da revista MAD, e o seu trabalho conhecido pelo uso de uma variedade imensa de onomatopéias que descreviam desde um sapo coaxando até um edifício caindo. Uma imagem típica de Don Martin: http://www.geocities.com/donmartinweb/images/chock.jpg Seu verbete na Wikipedia: http://en.wikipedia.org/wiki/Don_Martin Acme::DonMartin no CPAN: http://search.cpan.org/dist/Acme-DonMartin/ From shonorio em gmail.com Wed Jan 3 03:31:17 2007 From: shonorio em gmail.com (Solli Honorio) Date: Wed, 3 Jan 2007 09:31:17 -0200 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte In-Reply-To: <73ddeb6c0701030323je8ddc18q856d5a9f2c3c9b8c@mail.gmail.com> References: <73ddeb6c0701030323je8ddc18q856d5a9f2c3c9b8c@mail.gmail.com> Message-ID: <12d1f4ee0701030331v70e58bd7s90de0f40637f5ccc@mail.gmail.com> > > em > > #!/usr/bin/perl > > use Acme::DonMartin; > sklush klikrunk tear thwop skrazatz ferrip yukkle kawk stroinggoink > furshglurk glikity prawk kik kik bluka din thuk zooka chimp sploosh > pluf glomp whisk whisk tink ahweeeeee fip katy gashklitzka chook > flizaff gukguk greedle floba thuk zingo > > O Acme::DonMartin foi criado com dois propósitos: para tornar os > programas em Perl fáceis de ditar pelo telefone e, como um bônus, como > uma medida de segurança. Espera-se que o espião ria tanto enquanto lê > que ele não conseguirá recuperar seu código fonte. Fácil de ser ditado pelo telefone ? Realmente isto é um piada :) ! Adriano vc realmente me surpreende ;) !!! Solli M. Honório -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070103/459a7e52/attachment.html From edencardim em gmail.com Wed Jan 3 04:59:57 2007 From: edencardim em gmail.com (Eden Cardim) Date: Wed, 3 Jan 2007 09:59:57 -0300 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte In-Reply-To: References: <3de55ead0701021352j7ff4570fhdfd50b473846a37e@mail.gmail.com> Message-ID: <3de55ead0701030459va49afc3l55a80bc5a726c078@mail.gmail.com> On 1/2/07, Matheus Cucoloto wrote: > Preciso da ofuscação e ou encriptacao pois esse sistema eh intalado em > empresas tercerizadas. E o que eu vendo eh apenas a solucao e nao o > codigo fonte. Bem, já que você está usando Perl, acho que seria mais fácil você mudar seu modelo de negócio. Disponibilize sua solução à comunidade Perl, para que outras pessoas possam colaborar e tornar seu sistema mais robusto e competitivo, e cobre pela consultoria. É o que o pessoal do Catalyst, DBIx::Class, Bugzilla, tWiki e várias outras soluções fazem, e estão indo muito bem. Claro que isso pode ser menos viável em algumas situações, e só trará retorno a longo prazo, exatamente como irá ocorrer se você tentar resolver judicialmente. Há a vantagem de que desenvolver em conjunto com a comunidade é bem mais divertido do que correr atrás de advogado e puxar saco de juíz. Claro que isso é só o que eu acho, posso estar enganado. -- Eden Cardim Instituto Baiano de Biotecnologia Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas Laboratório de Bioinformática -- "you seem to think that 'close enough' is close enough... please learn to be 'literal' around programming." merlyn - on irc.freenode.net#perl From shonorio em gmail.com Wed Jan 3 15:39:37 2007 From: shonorio em gmail.com (Solli Honorio) Date: Wed, 3 Jan 2007 21:39:37 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Encontro_T=E9cnico?= Message-ID: <12d1f4ee0701031539s5cec3854k213f31172aa29122@mail.gmail.com> O São Paulo Perl Mongers o convida para o próximo 'Encontro Técnico de Perl' que será realizado às 9h 30m do dia 13/01/2007 na Faculdade Impacta Tecnologia (FIT), à Rua Arabé, 71 - Vl. Clementino ( http://www.impacta.edu.br/imagens/mapa_faculdade.gif) próximo ao metro Sta. Cruz. Este evento está recheado de assuntos bastante interessantes, sendo : Como distribuir seus sistemas desenvolvido em Perl. Palestrante : Solli Moreira Honório Descrição : Apresentará o PAR como uma alternativa para a distribuição de executáveis dos sistemas desenvolvido em Perl Mason::HTML, desenvolvendo para WEB Palestrante : Vitor Serra Mori Descrição : Aprsentará como efetuar o desenvolvimento de WEB com performance utilizando o módulo Mason::HTLM Catalyst : Seja bem vindo ao futuro do desenvolvimento com o Catalyst Palestrante : Lorn Descrição : Apresentará o poderoso framework de desenvolvimento baseado na técnica MVC ( *Modelo-Visão-Controlador*). A FIT disponibilizou uma excelente, e confortável, infra-estrutura para o evento que é aberto ao público em geral e extensível a todos os interessado. Fique a vontade de extender este convites aos amigos(as) e/ou divulgar nos meios que você tenha acesso. Conto com sua presença, Solli M. Honório -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070103/e7a6dda9/attachment.html From shonorio em gmail.com Thu Jan 4 01:53:49 2007 From: shonorio em gmail.com (Solli Honorio) Date: Thu, 4 Jan 2007 07:53:49 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Encontro_T=E9cnico?= In-Reply-To: <12d1f4ee0701031539s5cec3854k213f31172aa29122@mail.gmail.com> References: <12d1f4ee0701031539s5cec3854k213f31172aa29122@mail.gmail.com> Message-ID: <12d1f4ee0701040153h6ca66cbes2e18f2d9838693e1@mail.gmail.com> Pessoal, Andei pensando em fazer o "Encontro Social" depois do "Encontro Técnico", pois vou viajar e só retorno em fevereiro. Tanto pode ser numa choperia no Shopping Sta. Cruz, quanto em algum bar próximo a faculdade. Outra coisa, vou distribuir alguns livro, em ótimo estado de conservação, da minha biblioteca particular. E mais uma vez eu gostaria de contar com a presença de todos, afinal só o tema do Mason::HTML e Catalyst já vale qualquer delocamento de São Paulo e região (Campinas inclusive). Abraços, Solli M. Honório On 1/3/07, Solli Honorio wrote: > > O São Paulo Perl Mongers o convida para o próximo 'Encontro Técnico de > Perl' que será realizado às 9h 30m do dia 13/01/2007 na Faculdade Impacta > Tecnologia (FIT), à Rua Arabé, 71 - Vl. Clementino ( http://www.impacta.edu.br/imagens/mapa_faculdade.gif > ) próximo ao metro Sta. Cruz. > > Este evento está recheado de assuntos bastante interessantes, sendo : > > Como distribuir seus sistemas desenvolvido em Perl. > Palestrante : Solli Moreira Honório > Descrição : Apresentará o PAR como uma alternativa para a distribuição > de executáveis dos sistemas desenvolvido em Perl > > Mason::HTML, desenvolvendo para WEB > Palestrante : Vitor Serra Mori > Descrição : Aprsentará como efetuar o desenvolvimento de WEB com > performance utilizando o módulo Mason::HTLM > > Catalyst : Seja bem vindo ao futuro do desenvolvimento com o Catalyst > Palestrante : Lorn > Descrição : Apresentará o poderoso framework de desenvolvimento baseado > na técnica MVC ( *Modelo-Visão-Controlador*). > > A FIT disponibilizou uma excelente, e confortável, infra-estrutura para o > evento que é aberto ao público em geral e extensível a todos os interessado. > > > Fique a vontade de extender este convites aos amigos(as) e/ou divulgar nos > meios que você tenha acesso. > > Conto com sua presença, > > Solli M. Honório > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070104/0eebcc25/attachment.html From andre.garcia.carneir em terra.com.br Thu Jan 4 05:30:09 2007 From: andre.garcia.carneir em terra.com.br (=?iso-8859-1?b?QW5kcukgR2FyY2lhIENhcm5laXJv?=) Date: Thu, 4 Jan 2007 10:30:09 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?=5BSpam=5D_Re=3A__Encontro_T=E9cnico?= Message-ID: Solli, Eu topo o encontro social sim, mas queria perguntar, você está se mudando ou algo assim para se desfazer dos livros que você mencionou??? Sobre choperia, perguntei para o meu chefe sobre o shopping Santa Cruz, que por acaso é perto do meu trabalho(Borges Lagoa), e ele disse que tem uma boa choperia do lado do cinema. E é interessante pois o metrô é dentro do shopping. Se ficar muito bêbado não terá que andar muito para poder desmaiar e/ou vomitar dentro do metrô... :) Cheers! ---------- Cabeçalho original ----------- De: cascavel-pm-bounces+andre.garcia.carneir=terra.com.br em pm.org Para: saopaulo-pm em mail.pm.org,"Cascavel Perl Mongers" cascavel-pm em pm.org Cópia: Data: Thu, 4 Jan 2007 07:53:49 -0200 Assunto: [Spam] Re: [Cascavel-pm] Encontro Técnico > Pessoal, > > Andei pensando em fazer o "Encontro Social" depois do "Encontro Técnico", > pois vou viajar e só retorno em fevereiro. Tanto pode ser numa choperia no > Shopping Sta. Cruz, quanto em algum bar próximo a faculdade. > > Outra coisa, vou distribuir alguns livro, em ótimo estado de conservação, da > minha biblioteca particular. > > E mais uma vez eu gostaria de contar com a presença de todos, afinal só o > tema do Mason::HTML e Catalyst já vale qualquer delocamento de São Paulo e > região (Campinas inclusive). > > Abraços, > > Solli M. Honório > > On 1/3/07, Solli Honorio wrote: > > > > O São Paulo Perl Mongers o convida para o próximo 'Encontro Técnico de > > Perl' que será realizado às 9h 30m do dia 13/01/2007 na Faculdade Impacta > > Tecnologia (FIT), à Rua Arabé, 71 - Vl. Clementino ( http://www.impacta.edu.br/imagens/mapa_faculdade.gif > > ) próximo ao metro Sta. Cruz. > > > > Este evento está recheado de assuntos bastante interessantes, sendo : > > > > Como distribuir seus sistemas desenvolvido em Perl. > > Palestrante : Solli Moreira Honório > > Descrição : Apresentará o PAR como uma alternativa para a distribuição > > de executáveis dos sistemas desenvolvido em Perl > > > > Mason::HTML, desenvolvendo para WEB > > Palestrante : Vitor Serra Mori > > Descrição : Aprsentará como efetuar o desenvolvimento de WEB com > > performance utilizando o módulo Mason::HTLM > > > > Catalyst : Seja bem vindo ao futuro do desenvolvimento com o Catalyst > > Palestrante : Lorn > > Descrição : Apresentará o poderoso framework de desenvolvimento baseado > > na técnica MVC ( *Modelo-Visão-Controlador*). > > > > A FIT disponibilizou uma excelente, e confortável, infra-estrutura para o > > evento que é aberto ao público em geral e extensível a todos os interessado. > > > > > > Fique a vontade de extender este convites aos amigos(as) e/ou divulgar nos > > meios que você tenha acesso. > > > > Conto com sua presença, > > > > Solli M. Honório > > > > E-mail classificado pelo Identificador de Spam Inteligente Terra. > Para alterar a categoria classificada, visite > http://mail.terra.com.br/protected_email/imail/imail.cgi?+_u=andre.garcia.carneir&_l=1,1167904469.273091.2179.caneria.hst.terra.com.br,10635,20031127114101,20031127114101 > > Esta mensagem foi verificada pelo E-mail Protegido Terra. > Scan engine: McAfee VirusScan / Atualizado em 03/01/2007 / Versão: 5.1.00/4931 > Proteja o seu e-mail Terra: http://mail.terra.com.br/ > > -- André Garcia Carneiro Developer(Perl/PHP) Member of "São Paulo Perl Mongers" - http://sao-paulo.pm.org From shonorio em gmail.com Thu Jan 4 05:42:33 2007 From: shonorio em gmail.com (Solli Honorio) Date: Thu, 4 Jan 2007 11:42:33 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?=5BSpam=5D_Re=3A_Encontro_T=E9cnico?= In-Reply-To: References: Message-ID: <12d1f4ee0701040542n69bba161gb28edb5a6cb4196b@mail.gmail.com> On 1/4/07, André Garcia Carneiro wrote: > > Solli, > > Eu topo o encontro social sim, mas queria perguntar, você está se mudando > ou algo assim para se desfazer dos > livros que você mencionou??? Digamos que a minha esposa me convenceu de fazer uma limpeza na minha biblioteca >( !!! E além do mais estes livro já me foram úteis, e acredito que será útil para outros também. Sobre choperia, perguntei para o meu chefe sobre o shopping Santa Cruz, que > por acaso é perto do meu > trabalho(Borges Lagoa), e ele disse que tem uma boa choperia do lado do > cinema. E é interessante pois o metrô é > dentro do shopping. Se ficar muito bêbado não terá que andar muito para > poder desmaiar e/ou vomitar dentro do > metrô... :) É esta choperia mesmo que eu estava pensando... só que eu não sei como escreve o nome dela, se alguém souber é só postar. -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070104/708fca12/attachment.html From shonorio em gmail.com Thu Jan 4 05:58:14 2007 From: shonorio em gmail.com (Solli Honorio) Date: Thu, 4 Jan 2007 11:58:14 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?M=F3dulo_para_o_CPAN?= Message-ID: <12d1f4ee0701040558g75010c0exefe221b8952843cf@mail.gmail.com> Pessoal, Numa daquelas promessas de início de ano, a construção de pelo meno um módulo no CPAN está entre estas promessas. Mas agora estou com um problema, .... não sei o quê escrever de útil ? Sendo assim, eu quero aproveitar a criatividade do pessoal para sugerir algum módulo, ou até mesmo uma parceria. MDA eu pensei em fazer um módulo que conversasse com o OSBF-Lua, mas eu ainda não avancei no estudo deste cara e aí lhe pergunto, você vê alguma coisa útil que de um módulo do CPAN para o OSBF-Lua ? Abraços, Solli M. Honório -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070104/bc27bcd9/attachment-0001.html From acid06 em gmail.com Thu Jan 4 07:37:38 2007 From: acid06 em gmail.com (Nilson Santos Figueiredo Junior) Date: Thu, 4 Jan 2007 13:37:38 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?M=F3dulo_para_o_CPAN?= In-Reply-To: <12d1f4ee0701040558g75010c0exefe221b8952843cf@mail.gmail.com> References: <12d1f4ee0701040558g75010c0exefe221b8952843cf@mail.gmail.com> Message-ID: <9a08c9b40701040737v5ff1364ep604d64fe683a95c8@mail.gmail.com> On 1/4/07, Solli Honorio wrote: > Numa daquelas promessas de início de ano, a construção de pelo meno um > módulo no CPAN está entre estas promessas. Mas agora estou com um problema, > .... não sei o quê escrever de útil ? Uma das coisas mais importantes de um módulo é você escrever uma aplicação que faça uso do mesmo. Senão você nunca vai ter noção prática se ele é útil ou não e como ele pode melhorar pois deixa "isso, isso e aquilo". Então, acho que o melhor caminho pra começar a escrever um módulo da CPAN útil é pensar em fazer um aplicativo open-source útil em Perl. Aí, o(s) módulo(s) virão naturalmente. -Nilson Santos F. Jr. From shonorio em gmail.com Thu Jan 4 07:47:00 2007 From: shonorio em gmail.com (Solli Honorio) Date: Thu, 4 Jan 2007 13:47:00 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?M=F3dulo_para_o_CPAN?= In-Reply-To: <9a08c9b40701040737v5ff1364ep604d64fe683a95c8@mail.gmail.com> References: <12d1f4ee0701040558g75010c0exefe221b8952843cf@mail.gmail.com> <9a08c9b40701040737v5ff1364ep604d64fe683a95c8@mail.gmail.com> Message-ID: <12d1f4ee0701040747k5615b3ccr7776f6b3df115186@mail.gmail.com> > > > Então, acho que o melhor caminho pra começar a escrever um módulo da > CPAN útil é pensar em fazer um aplicativo open-source útil em Perl. > Aí, o(s) módulo(s) virão naturalmente. > > hummm é verdade.... mas vc tem alguma sugestão :) !!! Tô brincando .... Solli -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070104/46c94a7f/attachment.html From shonorio em gmail.com Thu Jan 4 08:07:23 2007 From: shonorio em gmail.com (Solli Honorio) Date: Thu, 4 Jan 2007 14:07:23 -0200 Subject: [Cascavel-pm] Encriptar/Ofuscar codigo fonte In-Reply-To: <3de55ead0701030459va49afc3l55a80bc5a726c078@mail.gmail.com> References: <3de55ead0701021352j7ff4570fhdfd50b473846a37e@mail.gmail.com> <3de55ead0701030459va49afc3l55a80bc5a726c078@mail.gmail.com> Message-ID: <12d1f4ee0701040807y208ae52rb79e7d1959d8b7f2@mail.gmail.com> Só mais uma coisa neste assunto .... fuçando no CPAN entrei estes módulos : http://search.cpan.org/~nbyrd/Apache-PAR-0.30/PAR.pm http://search.cpan.org/~autrijus/Apache2-PAR-0.00_01/PAR.pm Não sei com relação a performance, mas pode ser interessante. Abraços, Solli M. Honório -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070104/56c32200/attachment.html From agnaldo em starweb-software.com.br Thu Jan 4 08:49:51 2007 From: agnaldo em starweb-software.com.br (Agnaldo Macedo) Date: Thu, 4 Jan 2007 14:49:51 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Autentica=E7=E3o_LDAP/AD?= Message-ID: <002d01c73020$5ab64590$0100000a@starweb1> Olá pessoal. Preciso fazer um script cgi que valide usuário e senha em servidores LDAP e AD. Alguém poderia, por favor, me informar o(s) módulo(s) mais indicado(s) por onde eu devo começar. From andre.garcia.carneir em terra.com.br Thu Jan 4 09:10:50 2007 From: andre.garcia.carneir em terra.com.br (=?iso-8859-1?b?QW5kcukgR2FyY2lhIENhcm5laXJv?=) Date: Thu, 4 Jan 2007 14:10:50 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?Autentica=E7=E3o_LDAP/AD?= Message-ID: Agnaldo, Não sei em que ponto você está, mas já que perguntou por onde deve começar, sugiro que você comece instalando o openldap (www.openldap.org), e lendo o manual(RTFM). Sobre o melhor ou pior módulo eu não sei te dizer, porque na verdade não mexi muito com LDAP. Existe uma extensão do DBI que é o DBD::LDAP. Não usei, mas achei interessante, já que fica tudo 'em casa'(é só continuar usando o DBI normalmente, como se nada tivesse acontecido), desde que o LDAP esteja devidamente configurado, obviamente. Pessoas que mexem com LDAP, por favor se pronunciem.... Cheers! ---------- Cabeçalho original ----------- De: cascavel-pm-bounces+andre.garcia.carneir=terra.com.br em pm.org Para: cascavel-pm em pm.org Cópia: Data: Thu, 4 Jan 2007 14:49:51 -0200 Assunto: [Cascavel-pm] Autenticação LDAP/AD > Olá pessoal. > > Preciso fazer um script cgi que valide usuário e senha em servidores LDAP e > AD. > > Alguém poderia, por favor, me informar o(s) módulo(s) mais indicado(s) por > onde eu devo começar. > > > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > > E-mail classificado pelo Identificador de Spam Inteligente Terra. > Para alterar a categoria classificada, visite > http://mail.terra.com.br/protected_email/imail/imail.cgi?+_u=andre.garcia.carneir&_l=1,1167929422.93135.23339.balcomo.hst.terra.com.br,3582,Des15,Des15 > > Esta mensagem foi verificada pelo E-mail Protegido Terra. > Scan engine: McAfee VirusScan / Atualizado em 03/01/2007 / Versão: 5.1.00/4931 > Proteja o seu e-mail Terra: http://mail.terra.com.br/ > > -- André Garcia Carneiro Developer(Perl/PHP) Member of "São Paulo Perl Mongers" - http://sao-paulo.pm.org From daniel em ruoso.com Thu Jan 4 09:17:07 2007 From: daniel em ruoso.com (Daniel Ruoso) Date: Thu, 04 Jan 2007 17:17:07 +0000 Subject: [Cascavel-pm] =?iso-8859-1?q?Autentica=E7=E3o_LDAP/AD?= In-Reply-To: <002d01c73020$5ab64590$0100000a@starweb1> References: <002d01c73020$5ab64590$0100000a@starweb1> Message-ID: <1167931027.6007.0.camel@localhost> Qui, 2007-01-04 às 14:49 -0200, Agnaldo Macedo escreveu: > Olá pessoal. > Preciso fazer um script cgi que valide usuário e senha em servidores LDAP e > AD. > Alguém poderia, por favor, me informar o(s) módulo(s) mais indicado(s) por > onde eu devo começar. Com advogado permanente do Catalyst :), recomendo voce olhar, em primeiro lugar para o Catalyst, e em segunda para o plugin de autenticacao LDAP do Catalyst. daniel From sammuel.souza em gmail.com Thu Jan 4 11:52:16 2007 From: sammuel.souza em gmail.com (Sammuel Souza) Date: Thu, 4 Jan 2007 16:52:16 -0300 Subject: [Cascavel-pm] Projeto de E-commerce Message-ID: <836d1f310701041152s71c1bd0ck1bcbd73fc85f69be@mail.gmail.com> Ola, sei que a comunidade é para sanar duvidas sobre a linguagem PERL porem revirei os sites http://freshmeat.net http://www.hotscripts.com estou precisando de um sistema pronto e freeware de e-commerce feito em PERL achei alguns porem sao bem fraquinhos e as ultimas atualizacao foi em 2005 caso alguem conheça algum famoso e puder me ajudar []'s Sammuel -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070104/48426467/attachment.html From gabriel.vieira em gmail.com Thu Jan 4 12:48:38 2007 From: gabriel.vieira em gmail.com (Gabriel Vieira) Date: Thu, 4 Jan 2007 17:48:38 -0300 Subject: [Cascavel-pm] =?iso-8859-1?q?=5BOT=5D_Google_Code_Jam_Latin_Ameri?= =?iso-8859-1?q?ca_-_Inscri=E7=F5es_Abertas?= Message-ID: <83d8367f0701041248x1f342c9fnc6c752e273ec74bc@mail.gmail.com> http://googleblog.blogspot.com/2007/01/latin-american-code-jam-opens.html http://googlebrasilblog.blogspot.com/ Abertas as inscrições!!! :D São 75 mil dólares em prêmios ;) Sendo que o 1o colocado recebe 6mil! Boa Sorte aos que se aventurarem ;) -- Gabriel Vieira -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070104/65e2421b/attachment.html From andreoandre em gmail.com Thu Jan 4 14:03:07 2007 From: andreoandre em gmail.com (=?ISO-8859-1?Q?Andr=E9_Moura?=) Date: Thu, 4 Jan 2007 20:03:07 -0200 Subject: [Cascavel-pm] Projeto de E-commerce In-Reply-To: <836d1f310701041152s71c1bd0ck1bcbd73fc85f69be@mail.gmail.com> References: <836d1f310701041152s71c1bd0ck1bcbd73fc85f69be@mail.gmail.com> Message-ID: Tem o shoping Agora -> http://www.agoracart.com/ ele é open source e vem na maioria das hospedagem em GNU/Linux .... veja se te ajuda! -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070104/4440a545/attachment.html From a.r.ferreira em gmail.com Fri Jan 5 02:09:47 2007 From: a.r.ferreira em gmail.com (Adriano Ferreira) Date: Fri, 5 Jan 2007 08:09:47 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?=5BOT=5D_Google_Code_Jam_Latin_Ameri?= =?iso-8859-1?q?ca_-_Inscri=E7=F5es_Abertas?= In-Reply-To: <83d8367f0701041248x1f342c9fnc6c752e273ec74bc@mail.gmail.com> References: <83d8367f0701041248x1f342c9fnc6c752e273ec74bc@mail.gmail.com> Message-ID: <73ddeb6c0701050209o5b1b4adbgc01ad31fb3f47f62@mail.gmail.com> On 1/4/07, Gabriel Vieira wrote: > http://googleblog.blogspot.com/2007/01/latin-american-code-jam-opens.html > > http://googlebrasilblog.blogspot.com/ > > Abertas as inscrições!!! :D São 75 mil dólares em prêmios ;) Sendo que o 1o > colocado recebe 6mil! > > Boa Sorte aos que se aventurarem ;) Não entendi. Na verdade, o que você quis dizer foi: > Boa Sorte aos que se aventurarem ;) Nos encontraremos lá! Não é mesmo? From a.r.ferreira em gmail.com Fri Jan 5 02:14:27 2007 From: a.r.ferreira em gmail.com (Adriano Ferreira) Date: Fri, 5 Jan 2007 08:14:27 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?=5BOT=5D_Google_Code_Jam_Latin_Ameri?= =?iso-8859-1?q?ca_-_Inscri=E7=F5es_Abertas?= In-Reply-To: <83d8367f0701041248x1f342c9fnc6c752e273ec74bc@mail.gmail.com> References: <83d8367f0701041248x1f342c9fnc6c752e273ec74bc@mail.gmail.com> Message-ID: <73ddeb6c0701050214s43cd1704n821ef85eb18b1be@mail.gmail.com> On 1/4/07, Gabriel Vieira wrote: > http://googleblog.blogspot.com/2007/01/latin-american-code-jam-opens.html > > http://googlebrasilblog.blogspot.com/ > > Abertas as inscrições!!! :D São 75 mil dólares em prêmios ;) Sendo que o 1o > colocado recebe 6mil! > > Boa Sorte aos que se aventurarem ;) Não entendi. Na verdade, o que você quis dizer foi: > Boa Sorte aos que se aventurarem ;) Nos encontraremos lá! Não é mesmo? Mas pensando bem: olha só que f... The competition is available in five programming languages - Java, C++, C#, VB.NET and Python. From a.r.ferreira em gmail.com Fri Jan 5 02:19:12 2007 From: a.r.ferreira em gmail.com (Adriano Ferreira) Date: Fri, 5 Jan 2007 08:19:12 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?=5BOT=5D_Google_Code_Jam_Latin_Ameri?= =?iso-8859-1?q?ca_-_Inscri=E7=F5es_Abertas?= In-Reply-To: <83d8367f0701041248x1f342c9fnc6c752e273ec74bc@mail.gmail.com> References: <83d8367f0701041248x1f342c9fnc6c752e273ec74bc@mail.gmail.com> Message-ID: <73ddeb6c0701050219y56e37a50je634d04f8e6bcded@mail.gmail.com> On 1/4/07, Gabriel Vieira wrote: > http://googleblog.blogspot.com/2007/01/latin-american-code-jam-opens.html > > http://googlebrasilblog.blogspot.com/ > > Abertas as inscrições!!! :D São 75 mil dólares em prêmios ;) Sendo que o 1o > colocado recebe 6mil! > > Boa Sorte aos que se aventurarem ;) Não entendi. Na verdade, o que você quis dizer foi: > Boa Sorte aos que se aventurarem ;) Nos encontraremos lá! Não é mesmo? Mas pensando bem: olha só que f... The competition is available in five programming languages - Java, C++, C#, VB.NET and Python. From a.r.ferreira em gmail.com Fri Jan 5 03:00:44 2007 From: a.r.ferreira em gmail.com (Adriano Ferreira) Date: Fri, 5 Jan 2007 09:00:44 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> Message-ID: <73ddeb6c0701050300s5a6a1553r5b93bd904d74959b@mail.gmail.com> On 1/1/07, Solli Honorio wrote: > Pessoal, > > No post "Perl Golf Ethics" > http://www.perlmonks.com/?node_id=592386, o cara comenta > sobre um desafio de Perl Golf da empresa Fonality. Curioso entrei na parte > de Carrers e fiquei curioso sobre o desafio proposto pela empresa para > determinar o grau de conhecimento na linguagem. > > Segundo eles, o "Junior Perl Developer" tem que compreender o segundo código > "s|(\d)|length(9 x $1)|eg;". Bom, este é fácil, só não sei para que serve, > já que na minha leitura não funciona. > > Já o "Senior Perl Developer" tem que explicar o código : > s;(?:SEEKING)?;PERLqny~%|fsyx%~tz&;?$^X=~m.\w+$. > :DEVELOPERS;s"$&"Ktsf"i;s^.^chr ord($&)-5^eg;$\=$/;print||" ;) " > ... e este eu compreendi nada. > > Será que algum santo poderia explicar o que significa isto ? Solli, Como ainda uma outra explicação sobre estes trechos, tem o comentário do brian d foy em http://use.perl.org: http://use.perl.org/~brian_d_foy/journal/32072 As explicações são bem curtas e cheias de insight. Por exemplo, o código maior é reconhecido como uma caixa de César. O brian também faz uns comentários sobre coisas que era de se esperar do ponto de vista de desenvolvedor sênior. Divirta-se. Adriano. From fglock em gmail.com Fri Jan 5 03:02:39 2007 From: fglock em gmail.com (Flavio S. Glock) Date: Fri, 5 Jan 2007 09:02:39 -0200 Subject: [Cascavel-pm] ... adeus ano velho, feliz ano novo ... In-Reply-To: <73ddeb6c0701021607p32c849ebp22694d7e3bb834cc@mail.gmail.com> References: <12d1f4ee0701011133i25d0bd4fv2d60647921551dbc@mail.gmail.com> <65934b450701020554w15ed19dbne00cae838ad1b66a@mail.gmail.com> <73ddeb6c0701021607p32c849ebp22694d7e3bb834cc@mail.gmail.com> Message-ID: 2007/1/2, Adriano Ferreira : > > Já temos convidados do mundo afora? Além do Randal Schwartz, para quem > aparentemente nem foi preciso de convite. Sim o Randal está confirmado. Sobre outros palestrantes, ainda não há novidades... - Flavio S. Glock From shonorio em gmail.com Fri Jan 5 03:43:58 2007 From: shonorio em gmail.com (Solli Honorio) Date: Fri, 5 Jan 2007 09:43:58 -0200 Subject: [Cascavel-pm] Teste para "Perl Job Developer" In-Reply-To: <73ddeb6c0701050300s5a6a1553r5b93bd904d74959b@mail.gmail.com> References: <12d1f4ee0701011717w7b65c56ar758e9b5943473bd8@mail.gmail.com> <73ddeb6c0701050300s5a6a1553r5b93bd904d74959b@mail.gmail.com> Message-ID: <12d1f4ee0701050343h540aefa1lc1bd09fd69fe9828@mail.gmail.com> Adriano, Obrigado pela informação, realmente está bem interessante... além do mais tem o link para o novo link do brian_d_foy com outras informações interessante. Solli M. Honório On 1/5/07, Adriano Ferreira wrote: > > On 1/1/07, Solli Honorio wrote: > > Pessoal, > > > > No post "Perl Golf Ethics" > > http://www.perlmonks.com/?node_id=592386, o cara comenta > > sobre um desafio de Perl Golf da empresa Fonality. Curioso entrei na > parte > > de Carrers e fiquei curioso sobre o desafio proposto pela empresa para > > determinar o grau de conhecimento na linguagem. > > > > Segundo eles, o "Junior Perl Developer" tem que compreender o segundo > código > > "s|(\d)|length(9 x $1)|eg;". Bom, este é fácil, só não sei para que > serve, > > já que na minha leitura não funciona. > > > > Já o "Senior Perl Developer" tem que explicar o código : > > s;(?:SEEKING)?;PERLqny~%|fsyx%~tz&;?$^X=~m.\w+$. > > :DEVELOPERS;s"$&"Ktsf"i;s^.^chr ord($&)-5^eg;$\=$/;print||" ;) " > > ... e este eu compreendi nada. > > > > Será que algum santo poderia explicar o que significa isto ? > > Solli, > > Como ainda uma outra explicação sobre estes trechos, tem o comentário > do brian d foy em http://use.perl.org: > > http://use.perl.org/~brian_d_foy/journal/32072 > > As explicações são bem curtas e cheias de insight. Por exemplo, o > código maior é reconhecido como uma caixa de César. O brian também faz > uns comentários sobre coisas que era de se esperar do ponto de vista > de desenvolvedor sênior. > > Divirta-se. > Adriano. > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070105/26f0a9ba/attachment.html From lorn.br em gmail.com Fri Jan 5 04:09:17 2007 From: lorn.br em gmail.com (Lorn) Date: Fri, 5 Jan 2007 10:09:17 -0200 Subject: [Cascavel-pm] =?iso-8859-1?q?Conex=E3o_com_mysql_em_daemon?= In-Reply-To: <6c65a53f0701021047i534752b2pcc5f165e96e07ed@mail.gmail.com> References: <6c65a53f0701021013r5bb29ecckcf14fe04a9e01ff1@mail.gmail.com> <6c65a53f0701021047i534752b2pcc5f165e96e07ed@mail.gmail.com> Message-ID: Igor, não me leve a mal, mais isso não seria matar uma mosca com um caminhão? Eu acho o POE muito legal, mais ele é um mini-so, acho que para uma coisa tão simples não compensa usar ele, ou será que entendi errado? On 1/2/07, Igor Sutton wrote: > > > Estou verificando um código de exemplo. Assim que tiver, eu posto. > > > Isto é um bom começo: > > use strict; > use warnings; > > use POE qw(Wheel::FollowTail Component::Daemon); > > my $FILENAME = 'input.txt'; > > POE::Component::Daemon->spawn( detach => 1, max_children => 3 ); > > POE::Session->create( > inline_states => { > _start => sub { > my ( $kernel, $heap, $session ) = @_[ KERNEL, HEAP, SESSION ]; > $heap->{tail} = POE::Wheel::FollowTail->new( > Filename => $FILENAME, > InputEvent => 'got_line', > ); > }, > > got_line => sub { > my ( $kernel, $input ) = $_[ KERNEL, ARG0 ]; > print "got_line(): $input\n"; > }, > } > ); > > POE::Kernel->run(); > > Agora só falta implementar a conexão ao banco de dados :) > > -- > Igor Sutton Lopes > > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > > --