From braun.lima em gmail.com Thu Jul 1 03:45:23 2010 From: braun.lima em gmail.com (Marco Lima) Date: Thu, 1 Jul 2010 07:45:23 -0300 Subject: [Rio-pm] ESX Rio=PM <- [SP-pm] Quando vai ser o ES desse mes??? In-Reply-To: References: Message-ID: $sinuca_da_lapa = q{ Pé-sujo na Rua do Riachuelo, com várias mesas de sinuca e cerveja de garrafa }; Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" Em 1 de julho de 2010 01:05, Diogo Leal escreveu: > pé-sujo na Rua do Riachuelo, com várias mesas de > > sinuca e cerveja de garrafa > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From cpaqui em gmail.com Thu Jul 1 05:12:37 2010 From: cpaqui em gmail.com (GmailPaqui) Date: Thu, 01 Jul 2010 09:12:37 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> Message-ID: <4C2C8635.1020001@gmail.com> Um anexo em HTML foi limpo... URL: From blum em pobox.com Thu Jul 1 05:21:08 2010 From: blum em pobox.com (Gabriel Blum) Date: Thu, 1 Jul 2010 09:21:08 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: <4C2C8635.1020001@gmail.com> References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: Veja bem, não é ruim. É bom. Ocorre que pra certos tipos, como escalar ou arrays (como no exemplo do colega), em perl, devido à forma como os parametros são feitos, é ligeiramente mais rápido sem a referência, mas veja bem, precisei rodar 30 milhões de vezes pra produzir alguma diferença significativa :-D Já para hashs é melhor por referência, normalmente. 2010/7/1 GmailPaqui > Caros, bom dia! > > Se a passagem de parâmetros por referência é ruim, como proceder no caso > onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro é > opcional? > Devo testar se hash está completo, pares de valor? > > -- > *Cleive Paqui* > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From andregarciacarneiro em gmail.com Thu Jul 1 05:46:22 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Thu, 1 Jul 2010 09:46:22 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: 7 segundos não é um tempo significativo para grande parte dos problemas. Se é necessário tanto desempenho assim, aliás, desempenho não, velocidade mesmo, ou se é necessário um sistema em 'tempo real', melhor fazer em C ou fazer com outra ferramenta mais adequada. Cheers! 2010/7/1 Gabriel Blum > Veja bem, não é ruim. É bom. Ocorre que pra certos tipos, como escalar ou > arrays (como no exemplo do colega), em perl, devido à forma como os > parametros são feitos, é ligeiramente mais rápido sem a referência, mas veja > bem, precisei rodar 30 milhões de vezes pra produzir alguma diferença > significativa :-D > > Já para hashs é melhor por referência, normalmente. > > 2010/7/1 GmailPaqui > >> Caros, bom dia! >> >> Se a passagem de parâmetros por referência é ruim, como proceder no caso >> onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro é >> opcional? >> Devo testar se hash está completo, pares de valor? >> >> -- >> *Cleive Paqui* >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From jc em joaocoutinho.com.br Thu Jul 1 05:49:05 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Thu, 1 Jul 2010 09:49:05 -0300 Subject: [Rio-pm] ESX Rio=PM <- [SP-pm] Quando vai ser o ES desse mes??? In-Reply-To: References: Message-ID: Isso! Alguma outra sugestão? On 7/1/10, Marco Lima wrote: > $sinuca_da_lapa = q{ Pé-sujo na Rua do Riachuelo, com várias mesas de sinuca > e cerveja de garrafa }; > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta > paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > Em 1 de julho de 2010 01:05, Diogo Leal escreveu: > > > > pé-sujo na Rua do Riachuelo, com várias mesas de > > > sinuca e cerveja de garrafa > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From shonorio em gmail.com Thu Jul 1 06:12:40 2010 From: shonorio em gmail.com (Solli Honorio) Date: Thu, 1 Jul 2010 10:12:40 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: Em 1 de julho de 2010 10:09, Solli Honorio escreveu: > 2010/7/1 GmailPaqui > >> Caros, bom dia! >> >> >> Se a passagem de parâmetros por referência é ruim, como proceder no caso >> onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro é >> opcional? >> Devo testar se hash está completo, pares de valor? >> >> -- >> *Cleive Paqui* >> >> >> > Cleive, > > Como disse o Gabriel, não é ruim, só estamos extrapolando uma questão > técnica. A passagem por referência é uma opção válida e está dentro (e muito > utilizada) do estilo de programação Perl. O único cuidado que é preciso ter > quando você passa o valor por referência é ter a consciência de que as > alterações dos valores nestas referencias dentro da função resultará na > alteração do valor fora da função. > > Dito isto, a tua pergunta permite a discussão da(s) boa(s) prática(s) para > os parâmetros, e eu achei que alguém iria abordar isto antes. Seguindo o > PBP (Perl Best Practice - http://amzn.to/aDbCpR ) temos algumas > recomendações sobre este assunto, sendo eles (não lembro de todos pois não > estou com o PBP aqui agora) : > > * return - não misture interface de erro com interface de dados. Se você > utilizar o return para erro, só utilize para isto. Se utilizar para retornar > o resultado da função, utilize apenas para isto. NUNCA faça as duas coisas > ao mesmo tempo (ou pelo mesmo canal); > > * parâmetros > 1o. nunca manipule diretamente os valores através do $_[0], $_[1] ..., a > menos que você realmente saiba o que está fazendo. E se você realmente > souber, não fará isto numa programa sério. Além ter de alterar os valores > originais, isto deixa o programa ilegível; > > 2o. utilize a atribuição simples (sem passagem de referencia) apenas quando > for utilizado até 2 parâmetros scalares ou apenas um parâmetro de grupo > (hash ou array); > > 3o. é fortemente recomendado utilizar a técnica de "named arguments". Isto > significa passar os argumentos através de uma hash, onde a tua função poderá > saber se todos os argumentos obrigatórios estão presente. > > 4o. considere retornar o resultado de uma função via um argumento de > referencia. > > Um exemplo, meu, para uma subrotina seria assim : > > > > sub minha_rotina { > my %args = @_; > > # verifica argumentos obrigatórios > > for my $arg ( qw (arg1 arg3 arg4 ) ) { > die "Argumento $arg é obrigatório mas não foi informado" if ! exist > $args{$arg}; > } > > ... faça alguma coisa com os argumentos ... > > } > > > > Outras fontes sobre isto : > > http://www.perl.com/pub/a/2006/02/23/advanced_subroutines.html (mas por > favor, nunca utilize prototypes) > http://perldesignpatterns.com/?NamedArguments > http://www.devshed.com/c/a/Perl/Subroutines-in-Perl/3/ > http://www.cs.cf.ac.uk/Dave/PERL/node126.html > > > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > "o animal satisfeito dorme". - Guimarães Rosa > -- "o animal satisfeito dorme". - Guimarães Rosa -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From andregarciacarneiro em gmail.com Thu Jul 1 06:33:46 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Thu, 1 Jul 2010 10:33:46 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: 2010/7/1 Solli Honorio > > Em 1 de julho de 2010 10:09, Solli Honorio escreveu: > > >> 2010/7/1 GmailPaqui >> >>> Caros, bom dia! >>> >>> >>> Se a passagem de parâmetros por referência é ruim, como proceder no caso >>> onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro é >>> opcional? >>> Devo testar se hash está completo, pares de valor? >>> >>> -- >>> *Cleive Paqui* >>> >>> >>> >> Cleive, >> >> Como disse o Gabriel, não é ruim, só estamos extrapolando uma questão >> técnica. A passagem por referência é uma opção válida e está dentro (e muito >> utilizada) do estilo de programação Perl. O único cuidado que é preciso ter >> quando você passa o valor por referência é ter a consciência de que as >> alterações dos valores nestas referencias dentro da função resultará na >> alteração do valor fora da função. >> >> Dito isto, a tua pergunta permite a discussão da(s) boa(s) prática(s) para >> os parâmetros, e eu achei que alguém iria abordar isto antes. Seguindo o >> PBP (Perl Best Practice - http://amzn.to/aDbCpR ) temos algumas >> recomendações sobre este assunto, sendo eles (não lembro de todos pois não >> estou com o PBP aqui agora) : >> >> * return - não misture interface de erro com interface de dados. Se você >> utilizar o return para erro, só utilize para isto. Se utilizar para retornar >> o resultado da função, utilize apenas para isto. NUNCA faça as duas coisas >> ao mesmo tempo (ou pelo mesmo canal); >> >> * parâmetros >> 1o. nunca manipule diretamente os valores através do $_[0], $_[1] ..., a >> menos que você realmente saiba o que está fazendo. E se você realmente >> souber, não fará isto numa programa sério. Além ter de alterar os valores >> originais, isto deixa o programa ilegível; >> > Traduzindo... assim que obter $_[0] , $_[1], ou mesmo $1, $2(oriundas de expressões regulares), trate de colocar numa variável declarada o mais rápido possível! > >> 2o. utilize a atribuição simples (sem passagem de referencia) apenas >> quando for utilizado até 2 parâmetros scalares ou apenas um parâmetro de >> grupo (hash ou array); >> > Eu já vi isso no PBP, mas acho discutível. No caso do meu trabalho, normalmente trabalho com alguns objetos relativamente grandes(estou falando de HTML::TreeBuilder::XPath). Nesse caso eu prefiro passar por referência para evitar a cópia desse objeto. Mas você tem razão ao dizer que tem que se tomar muito cuidado com o que se faz, depois que a função para qual se passou a referência termina, pois o objeto ainda estará ativo fora do escopo dessa função. Um exemplo que eu tenho sempre por aqui... . . . my $tree = HTML::TreeBuilder::XPath->new_from_content($string); $self->treat_tree(\$tree); $tree = $tree->delete; # Isso aqui destroi o objeto !!! . . . sub treat_three { my ($self, $tree) = @_; my pedaco_de_html = ${$tree}->findnodes("/html//body/... "); . . . } Solli, você acha esse tipo de coisa válida ou eu realmente deveria passar $tree sem a referência? Eu pessoalmente prefiro passar por referência como disse, para evitar a cópia do objeto, e também, para evitar que eu tivesse que destruir o objeto HTML::TreeBuilder::XPath duas vezes no caso(uma na função e outra fora dela). Por favor me dê sua opinião sobre esse caso. > >> 3o. é fortemente recomendado utilizar a técnica de "named arguments". Isto >> significa passar os argumentos através de uma hash, onde a tua função poderá >> saber se todos os argumentos obrigatórios estão presente. >> >> 4o. considere retornar o resultado de uma função via um argumento de >> referencia. >> >> Um exemplo, meu, para uma subrotina seria assim : >> >> >> >> sub minha_rotina { >> my %args = @_; >> >> # verifica argumentos obrigatórios >> >> for my $arg ( qw (arg1 arg3 arg4 ) ) { >> die "Argumento $arg é obrigatório mas não foi informado" if ! exist >> $args{$arg}; >> } >> >> ... faça alguma coisa com os argumentos ... >> >> } >> >> >> >> Outras fontes sobre isto : >> >> http://www.perl.com/pub/a/2006/02/23/advanced_subroutines.html (mas por >> favor, nunca utilize prototypes) >> http://perldesignpatterns.com/?NamedArguments >> http://www.devshed.com/c/a/Perl/Subroutines-in-Perl/3/ >> http://www.cs.cf.ac.uk/Dave/PERL/node126.html >> >> >> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> >> -- >> "o animal satisfeito dorme". - Guimarães Rosa >> > > > > -- > "o animal satisfeito dorme". - Guimarães Rosa > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From shonorio em gmail.com Thu Jul 1 06:46:00 2010 From: shonorio em gmail.com (Solli Honorio) Date: Thu, 1 Jul 2010 10:46:00 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: 2010/7/1 Andre Carneiro > > > 2010/7/1 Solli Honorio > > >> Em 1 de julho de 2010 10:09, Solli Honorio escreveu: >> >> >>> 2010/7/1 GmailPaqui >>> >>>> Caros, bom dia! >>>> >>>> >>>> Se a passagem de parâmetros por referência é ruim, como proceder no caso >>>> onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro é >>>> opcional? >>>> Devo testar se hash está completo, pares de valor? >>>> >>>> -- >>>> *Cleive Paqui* >>>> >>>> >>>> >>> Cleive, >>> >>> Como disse o Gabriel, não é ruim, só estamos extrapolando uma questão >>> técnica. A passagem por referência é uma opção válida e está dentro (e muito >>> utilizada) do estilo de programação Perl. O único cuidado que é preciso ter >>> quando você passa o valor por referência é ter a consciência de que as >>> alterações dos valores nestas referencias dentro da função resultará na >>> alteração do valor fora da função. >>> >>> Dito isto, a tua pergunta permite a discussão da(s) boa(s) prática(s) >>> para os parâmetros, e eu achei que alguém iria abordar isto antes. Seguindo >>> o PBP (Perl Best Practice - http://amzn.to/aDbCpR ) temos algumas >>> recomendações sobre este assunto, sendo eles (não lembro de todos pois não >>> estou com o PBP aqui agora) : >>> >>> * return - não misture interface de erro com interface de dados. Se você >>> utilizar o return para erro, só utilize para isto. Se utilizar para retornar >>> o resultado da função, utilize apenas para isto. NUNCA faça as duas coisas >>> ao mesmo tempo (ou pelo mesmo canal); >>> >>> * parâmetros >>> 1o. nunca manipule diretamente os valores através do $_[0], $_[1] ..., a >>> menos que você realmente saiba o que está fazendo. E se você realmente >>> souber, não fará isto numa programa sério. Além ter de alterar os valores >>> originais, isto deixa o programa ilegível; >>> >> > Traduzindo... assim que obter $_[0] , $_[1], ou mesmo $1, $2(oriundas de > expressões regulares), trate de colocar numa variável declarada o mais > rápido possível! > > >> >>> 2o. utilize a atribuição simples (sem passagem de referencia) apenas >>> quando for utilizado até 2 parâmetros scalares ou apenas um parâmetro de >>> grupo (hash ou array); >>> >> > Eu já vi isso no PBP, mas acho discutível. No caso do meu trabalho, > normalmente trabalho com alguns objetos relativamente grandes(estou falando > de HTML::TreeBuilder::XPath). Nesse caso eu prefiro passar por referência > para evitar a cópia desse objeto. Mas você tem razão ao dizer que tem que se > tomar muito cuidado com o que se faz, depois que a função para qual se > passou a referência termina, pois o objeto ainda estará ativo fora do escopo > dessa função. Um exemplo que eu tenho sempre por aqui... > > > > . > . > . > my $tree = HTML::TreeBuilder::XPath->new_from_content($string); > $self->treat_tree(\$tree); > $tree = $tree->delete; # Isso aqui destroi o objeto !!! > > . > . > . > > sub treat_three { > my ($self, $tree) = @_; > > my pedaco_de_html = ${$tree}->findnodes("/html//body/... "); > > . > . > . > > } > > > > > Solli, você acha esse tipo de coisa válida ou eu realmente deveria passar > $tree sem a referência? Eu pessoalmente prefiro passar por referência como > disse, para evitar a cópia do objeto, e também, para evitar que eu tivesse > que destruir o objeto HTML::TreeBuilder::XPath duas vezes no caso(uma na > função e outra fora dela). Por favor me dê sua opinião sobre esse caso. > Eu recomendo passagem por referência mesmo, a minha preocupação aqui nem é desempenho e sim consumo de recurso. Sabemos que as linguagens dinâmicas não gostam de liberar memória após o uso, então quando estou lidando com objetos pesados eu gosto de utilizar referências para evitar problema com este recurso. > > >> >>> 3o. é fortemente recomendado utilizar a técnica de "named arguments". >>> Isto significa passar os argumentos através de uma hash, onde a tua função >>> poderá saber se todos os argumentos obrigatórios estão presente. >>> >>> 4o. considere retornar o resultado de uma função via um argumento de >>> referencia. >>> >>> Um exemplo, meu, para uma subrotina seria assim : >>> >>> >>> >>> sub minha_rotina { >>> my %args = @_; >>> >>> # verifica argumentos obrigatórios >>> >>> for my $arg ( qw (arg1 arg3 arg4 ) ) { >>> die "Argumento $arg é obrigatório mas não foi informado" if ! exist >>> $args{$arg}; >>> } >>> >>> ... faça alguma coisa com os argumentos ... >>> >>> } >>> >>> >>> >>> Outras fontes sobre isto : >>> >>> http://www.perl.com/pub/a/2006/02/23/advanced_subroutines.html (mas >>> por favor, nunca utilize prototypes) >>> http://perldesignpatterns.com/?NamedArguments >>> http://www.devshed.com/c/a/Perl/Subroutines-in-Perl/3/ >>> http://www.cs.cf.ac.uk/Dave/PERL/node126.html >>> >>> >>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> >>> -- >>> "o animal satisfeito dorme". - Guimarães Rosa >>> >> >> >> >> -- >> "o animal satisfeito dorme". - Guimarães Rosa >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > André Garcia Carneiro > Analista/Desenvolvedor Perl > (11)82907780 > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- "o animal satisfeito dorme". - Guimarães Rosa -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From andregarciacarneiro em gmail.com Thu Jul 1 06:47:38 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Thu, 1 Jul 2010 10:47:38 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: Achei que diria isso mesmo, obrigado! Cheers! 2010/7/1 Solli Honorio > > 2010/7/1 Andre Carneiro > > >> >> 2010/7/1 Solli Honorio >> >> >>> Em 1 de julho de 2010 10:09, Solli Honorio escreveu: >>> >>> >>>> 2010/7/1 GmailPaqui >>>> >>>>> Caros, bom dia! >>>>> >>>>> >>>>> Se a passagem de parâmetros por referência é ruim, como proceder no >>>>> caso onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro >>>>> é opcional? >>>>> Devo testar se hash está completo, pares de valor? >>>>> >>>>> -- >>>>> *Cleive Paqui* >>>>> >>>>> >>>>> >>>> Cleive, >>>> >>>> Como disse o Gabriel, não é ruim, só estamos extrapolando uma questão >>>> técnica. A passagem por referência é uma opção válida e está dentro (e muito >>>> utilizada) do estilo de programação Perl. O único cuidado que é preciso ter >>>> quando você passa o valor por referência é ter a consciência de que as >>>> alterações dos valores nestas referencias dentro da função resultará na >>>> alteração do valor fora da função. >>>> >>>> Dito isto, a tua pergunta permite a discussão da(s) boa(s) prática(s) >>>> para os parâmetros, e eu achei que alguém iria abordar isto antes. Seguindo >>>> o PBP (Perl Best Practice - http://amzn.to/aDbCpR ) temos algumas >>>> recomendações sobre este assunto, sendo eles (não lembro de todos pois não >>>> estou com o PBP aqui agora) : >>>> >>>> * return - não misture interface de erro com interface de dados. Se você >>>> utilizar o return para erro, só utilize para isto. Se utilizar para retornar >>>> o resultado da função, utilize apenas para isto. NUNCA faça as duas coisas >>>> ao mesmo tempo (ou pelo mesmo canal); >>>> >>>> * parâmetros >>>> 1o. nunca manipule diretamente os valores através do $_[0], $_[1] ..., a >>>> menos que você realmente saiba o que está fazendo. E se você realmente >>>> souber, não fará isto numa programa sério. Além ter de alterar os valores >>>> originais, isto deixa o programa ilegível; >>>> >>> >> Traduzindo... assim que obter $_[0] , $_[1], ou mesmo $1, $2(oriundas de >> expressões regulares), trate de colocar numa variável declarada o mais >> rápido possível! >> >> >>> >>>> 2o. utilize a atribuição simples (sem passagem de referencia) apenas >>>> quando for utilizado até 2 parâmetros scalares ou apenas um parâmetro de >>>> grupo (hash ou array); >>>> >>> >> Eu já vi isso no PBP, mas acho discutível. No caso do meu trabalho, >> normalmente trabalho com alguns objetos relativamente grandes(estou falando >> de HTML::TreeBuilder::XPath). Nesse caso eu prefiro passar por referência >> para evitar a cópia desse objeto. Mas você tem razão ao dizer que tem que se >> tomar muito cuidado com o que se faz, depois que a função para qual se >> passou a referência termina, pois o objeto ainda estará ativo fora do escopo >> dessa função. Um exemplo que eu tenho sempre por aqui... >> >> >> >> . >> . >> . >> my $tree = HTML::TreeBuilder::XPath->new_from_content($string); >> $self->treat_tree(\$tree); >> $tree = $tree->delete; # Isso aqui destroi o objeto !!! >> >> . >> . >> . >> >> sub treat_three { >> my ($self, $tree) = @_; >> >> my pedaco_de_html = ${$tree}->findnodes("/html//body/... "); >> >> . >> . >> . >> >> } >> >> >> >> >> Solli, você acha esse tipo de coisa válida ou eu realmente deveria passar >> $tree sem a referência? Eu pessoalmente prefiro passar por referência como >> disse, para evitar a cópia do objeto, e também, para evitar que eu tivesse >> que destruir o objeto HTML::TreeBuilder::XPath duas vezes no caso(uma na >> função e outra fora dela). Por favor me dê sua opinião sobre esse caso. >> > > Eu recomendo passagem por referência mesmo, a minha preocupação aqui nem é > desempenho e sim consumo de recurso. Sabemos que as linguagens dinâmicas não > gostam de liberar memória após o uso, então quando estou lidando com objetos > pesados eu gosto de utilizar referências para evitar problema com este > recurso. > > >> >> >>> >>>> 3o. é fortemente recomendado utilizar a técnica de "named arguments". >>>> Isto significa passar os argumentos através de uma hash, onde a tua função >>>> poderá saber se todos os argumentos obrigatórios estão presente. >>>> >>>> 4o. considere retornar o resultado de uma função via um argumento de >>>> referencia. >>>> >>>> Um exemplo, meu, para uma subrotina seria assim : >>>> >>>> >>>> >>>> sub minha_rotina { >>>> my %args = @_; >>>> >>>> # verifica argumentos obrigatórios >>>> >>>> for my $arg ( qw (arg1 arg3 arg4 ) ) { >>>> die "Argumento $arg é obrigatório mas não foi informado" if ! exist >>>> $args{$arg}; >>>> } >>>> >>>> ... faça alguma coisa com os argumentos ... >>>> >>>> } >>>> >>>> >>>> >>>> Outras fontes sobre isto : >>>> >>>> http://www.perl.com/pub/a/2006/02/23/advanced_subroutines.html (mas >>>> por favor, nunca utilize prototypes) >>>> http://perldesignpatterns.com/?NamedArguments >>>> http://www.devshed.com/c/a/Perl/Subroutines-in-Perl/3/ >>>> http://www.cs.cf.ac.uk/Dave/PERL/node126.html >>>> >>>> >>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>> >>>> >>>> >>>> -- >>>> "o animal satisfeito dorme". - Guimarães Rosa >>>> >>> >>> >>> >>> -- >>> "o animal satisfeito dorme". - Guimarães Rosa >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> >> -- >> André Garcia Carneiro >> Analista/Desenvolvedor Perl >> (11)82907780 >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > "o animal satisfeito dorme". - Guimarães Rosa > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From fernandocorrea em gmail.com Thu Jul 1 07:17:08 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Thu, 1 Jul 2010 11:17:08 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: Eu não entendí... objs já são referencias... Vc só passa objs por referencia mesmo... Just another Perl Hacker, Fernando (SmokeMachine) http://perl-e.org 2010/7/1 Andre Carneiro > > > Achei que diria isso mesmo, obrigado! > > > Cheers! > > > 2010/7/1 Solli Honorio > >> >> 2010/7/1 Andre Carneiro >> >> >>> >>> 2010/7/1 Solli Honorio >>> >>> >>>> Em 1 de julho de 2010 10:09, Solli Honorio escreveu: >>>> >>>> >>>>> 2010/7/1 GmailPaqui >>>>> >>>>>> Caros, bom dia! >>>>>> >>>>>> >>>>>> Se a passagem de parâmetros por referência é ruim, como proceder no >>>>>> caso onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro >>>>>> é opcional? >>>>>> Devo testar se hash está completo, pares de valor? >>>>>> >>>>>> -- >>>>>> *Cleive Paqui* >>>>>> >>>>>> >>>>>> >>>>> Cleive, >>>>> >>>>> Como disse o Gabriel, não é ruim, só estamos extrapolando uma questão >>>>> técnica. A passagem por referência é uma opção válida e está dentro (e muito >>>>> utilizada) do estilo de programação Perl. O único cuidado que é preciso ter >>>>> quando você passa o valor por referência é ter a consciência de que as >>>>> alterações dos valores nestas referencias dentro da função resultará na >>>>> alteração do valor fora da função. >>>>> >>>>> Dito isto, a tua pergunta permite a discussão da(s) boa(s) prática(s) >>>>> para os parâmetros, e eu achei que alguém iria abordar isto antes. Seguindo >>>>> o PBP (Perl Best Practice - http://amzn.to/aDbCpR ) temos algumas >>>>> recomendações sobre este assunto, sendo eles (não lembro de todos pois não >>>>> estou com o PBP aqui agora) : >>>>> >>>>> * return - não misture interface de erro com interface de dados. Se >>>>> você utilizar o return para erro, só utilize para isto. Se utilizar para >>>>> retornar o resultado da função, utilize apenas para isto. NUNCA faça as duas >>>>> coisas ao mesmo tempo (ou pelo mesmo canal); >>>>> >>>>> * parâmetros >>>>> 1o. nunca manipule diretamente os valores através do $_[0], $_[1] ..., >>>>> a menos que você realmente saiba o que está fazendo. E se você realmente >>>>> souber, não fará isto numa programa sério. Além ter de alterar os valores >>>>> originais, isto deixa o programa ilegível; >>>>> >>>> >>> Traduzindo... assim que obter $_[0] , $_[1], ou mesmo $1, $2(oriundas de >>> expressões regulares), trate de colocar numa variável declarada o mais >>> rápido possível! >>> >>> >>>> >>>>> 2o. utilize a atribuição simples (sem passagem de referencia) apenas >>>>> quando for utilizado até 2 parâmetros scalares ou apenas um parâmetro de >>>>> grupo (hash ou array); >>>>> >>>> >>> Eu já vi isso no PBP, mas acho discutível. No caso do meu trabalho, >>> normalmente trabalho com alguns objetos relativamente grandes(estou falando >>> de HTML::TreeBuilder::XPath). Nesse caso eu prefiro passar por referência >>> para evitar a cópia desse objeto. Mas você tem razão ao dizer que tem que se >>> tomar muito cuidado com o que se faz, depois que a função para qual se >>> passou a referência termina, pois o objeto ainda estará ativo fora do escopo >>> dessa função. Um exemplo que eu tenho sempre por aqui... >>> >>> >>> >>> . >>> . >>> . >>> my $tree = HTML::TreeBuilder::XPath->new_from_content($string); >>> $self->treat_tree(\$tree); >>> $tree = $tree->delete; # Isso aqui destroi o objeto !!! >>> >>> . >>> . >>> . >>> >>> sub treat_three { >>> my ($self, $tree) = @_; >>> >>> my pedaco_de_html = ${$tree}->findnodes("/html//body/... "); >>> >>> . >>> . >>> . >>> >>> } >>> >>> >>> >>> >>> Solli, você acha esse tipo de coisa válida ou eu realmente deveria passar >>> $tree sem a referência? Eu pessoalmente prefiro passar por referência como >>> disse, para evitar a cópia do objeto, e também, para evitar que eu tivesse >>> que destruir o objeto HTML::TreeBuilder::XPath duas vezes no caso(uma na >>> função e outra fora dela). Por favor me dê sua opinião sobre esse caso. >>> >> >> Eu recomendo passagem por referência mesmo, a minha preocupação aqui nem é >> desempenho e sim consumo de recurso. Sabemos que as linguagens dinâmicas não >> gostam de liberar memória após o uso, então quando estou lidando com objetos >> pesados eu gosto de utilizar referências para evitar problema com este >> recurso. >> >> >>> >>> >>>> >>>>> 3o. é fortemente recomendado utilizar a técnica de "named arguments". >>>>> Isto significa passar os argumentos através de uma hash, onde a tua função >>>>> poderá saber se todos os argumentos obrigatórios estão presente. >>>>> >>>>> 4o. considere retornar o resultado de uma função via um argumento de >>>>> referencia. >>>>> >>>>> Um exemplo, meu, para uma subrotina seria assim : >>>>> >>>>> >>>>> >>>>> sub minha_rotina { >>>>> my %args = @_; >>>>> >>>>> # verifica argumentos obrigatórios >>>>> >>>>> for my $arg ( qw (arg1 arg3 arg4 ) ) { >>>>> die "Argumento $arg é obrigatório mas não foi informado" if ! exist >>>>> $args{$arg}; >>>>> } >>>>> >>>>> ... faça alguma coisa com os argumentos ... >>>>> >>>>> } >>>>> >>>>> >>>>> >>>>> Outras fontes sobre isto : >>>>> >>>>> http://www.perl.com/pub/a/2006/02/23/advanced_subroutines.html (mas >>>>> por favor, nunca utilize prototypes) >>>>> http://perldesignpatterns.com/?NamedArguments >>>>> http://www.devshed.com/c/a/Perl/Subroutines-in-Perl/3/ >>>>> http://www.cs.cf.ac.uk/Dave/PERL/node126.html >>>>> >>>>> >>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>> >>>> >>>> >>>> >>>> -- >>>> "o animal satisfeito dorme". - Guimarães Rosa >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> >>> -- >>> André Garcia Carneiro >>> Analista/Desenvolvedor Perl >>> (11)82907780 >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> >> -- >> "o animal satisfeito dorme". - Guimarães Rosa >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > André Garcia Carneiro > Analista/Desenvolvedor Perl > (11)82907780 > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From blum em pobox.com Thu Jul 1 07:21:52 2010 From: blum em pobox.com (Gabriel Blum) Date: Thu, 1 Jul 2010 11:21:52 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: Pois é, mas o perl de alguma maneira emula que vc está trabalhando com uma cópia. Provavelmente se vc tentar escrever no objeto passado por parametro (mas secretamente referenciado), ele deve efetivamente copiar. Sei lá 2010/7/1 Fernando Oliveira > Eu não entendí... objs já são referencias... > Vc só passa objs por referencia mesmo... > Just another Perl Hacker, > Fernando (SmokeMachine) > http://perl-e.org > > > > 2010/7/1 Andre Carneiro > >> >> >> Achei que diria isso mesmo, obrigado! >> >> >> Cheers! >> >> >> 2010/7/1 Solli Honorio >> >>> >>> 2010/7/1 Andre Carneiro >>> >>> >>>> >>>> 2010/7/1 Solli Honorio >>>> >>>> >>>>> Em 1 de julho de 2010 10:09, Solli Honorio escreveu: >>>>> >>>>> >>>>>> 2010/7/1 GmailPaqui >>>>>> >>>>>>> Caros, bom dia! >>>>>>> >>>>>>> >>>>>>> Se a passagem de parâmetros por referência é ruim, como proceder no >>>>>>> caso onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro >>>>>>> é opcional? >>>>>>> Devo testar se hash está completo, pares de valor? >>>>>>> >>>>>>> -- >>>>>>> *Cleive Paqui* >>>>>>> >>>>>>> >>>>>>> >>>>>> Cleive, >>>>>> >>>>>> Como disse o Gabriel, não é ruim, só estamos extrapolando uma questão >>>>>> técnica. A passagem por referência é uma opção válida e está dentro (e muito >>>>>> utilizada) do estilo de programação Perl. O único cuidado que é preciso ter >>>>>> quando você passa o valor por referência é ter a consciência de que as >>>>>> alterações dos valores nestas referencias dentro da função resultará na >>>>>> alteração do valor fora da função. >>>>>> >>>>>> Dito isto, a tua pergunta permite a discussão da(s) boa(s) prática(s) >>>>>> para os parâmetros, e eu achei que alguém iria abordar isto antes. Seguindo >>>>>> o PBP (Perl Best Practice - http://amzn.to/aDbCpR ) temos algumas >>>>>> recomendações sobre este assunto, sendo eles (não lembro de todos pois não >>>>>> estou com o PBP aqui agora) : >>>>>> >>>>>> * return - não misture interface de erro com interface de dados. Se >>>>>> você utilizar o return para erro, só utilize para isto. Se utilizar para >>>>>> retornar o resultado da função, utilize apenas para isto. NUNCA faça as duas >>>>>> coisas ao mesmo tempo (ou pelo mesmo canal); >>>>>> >>>>>> * parâmetros >>>>>> 1o. nunca manipule diretamente os valores através do $_[0], $_[1] ..., >>>>>> a menos que você realmente saiba o que está fazendo. E se você realmente >>>>>> souber, não fará isto numa programa sério. Além ter de alterar os valores >>>>>> originais, isto deixa o programa ilegível; >>>>>> >>>>> >>>> Traduzindo... assim que obter $_[0] , $_[1], ou mesmo $1, $2(oriundas de >>>> expressões regulares), trate de colocar numa variável declarada o mais >>>> rápido possível! >>>> >>>> >>>>> >>>>>> 2o. utilize a atribuição simples (sem passagem de referencia) apenas >>>>>> quando for utilizado até 2 parâmetros scalares ou apenas um parâmetro de >>>>>> grupo (hash ou array); >>>>>> >>>>> >>>> Eu já vi isso no PBP, mas acho discutível. No caso do meu trabalho, >>>> normalmente trabalho com alguns objetos relativamente grandes(estou falando >>>> de HTML::TreeBuilder::XPath). Nesse caso eu prefiro passar por referência >>>> para evitar a cópia desse objeto. Mas você tem razão ao dizer que tem que se >>>> tomar muito cuidado com o que se faz, depois que a função para qual se >>>> passou a referência termina, pois o objeto ainda estará ativo fora do escopo >>>> dessa função. Um exemplo que eu tenho sempre por aqui... >>>> >>>> >>>> >>>> . >>>> . >>>> . >>>> my $tree = HTML::TreeBuilder::XPath->new_from_content($string); >>>> $self->treat_tree(\$tree); >>>> $tree = $tree->delete; # Isso aqui destroi o objeto !!! >>>> >>>> . >>>> . >>>> . >>>> >>>> sub treat_three { >>>> my ($self, $tree) = @_; >>>> >>>> my pedaco_de_html = ${$tree}->findnodes("/html//body/... "); >>>> >>>> . >>>> . >>>> . >>>> >>>> } >>>> >>>> >>>> >>>> >>>> Solli, você acha esse tipo de coisa válida ou eu realmente deveria >>>> passar $tree sem a referência? Eu pessoalmente prefiro passar por referência >>>> como disse, para evitar a cópia do objeto, e também, para evitar que eu >>>> tivesse que destruir o objeto HTML::TreeBuilder::XPath duas vezes no >>>> caso(uma na função e outra fora dela). Por favor me dê sua opinião sobre >>>> esse caso. >>>> >>> >>> Eu recomendo passagem por referência mesmo, a minha preocupação aqui nem >>> é desempenho e sim consumo de recurso. Sabemos que as linguagens dinâmicas >>> não gostam de liberar memória após o uso, então quando estou lidando com >>> objetos pesados eu gosto de utilizar referências para evitar problema com >>> este recurso. >>> >>> >>>> >>>> >>>>> >>>>>> 3o. é fortemente recomendado utilizar a técnica de "named arguments". >>>>>> Isto significa passar os argumentos através de uma hash, onde a tua função >>>>>> poderá saber se todos os argumentos obrigatórios estão presente. >>>>>> >>>>>> 4o. considere retornar o resultado de uma função via um argumento de >>>>>> referencia. >>>>>> >>>>>> Um exemplo, meu, para uma subrotina seria assim : >>>>>> >>>>>> >>>>>> >>>>>> sub minha_rotina { >>>>>> my %args = @_; >>>>>> >>>>>> # verifica argumentos obrigatórios >>>>>> >>>>>> for my $arg ( qw (arg1 arg3 arg4 ) ) { >>>>>> die "Argumento $arg é obrigatório mas não foi informado" if ! >>>>>> exist $args{$arg}; >>>>>> } >>>>>> >>>>>> ... faça alguma coisa com os argumentos ... >>>>>> >>>>>> } >>>>>> >>>>>> >>>>>> >>>>>> Outras fontes sobre isto : >>>>>> >>>>>> http://www.perl.com/pub/a/2006/02/23/advanced_subroutines.html (mas >>>>>> por favor, nunca utilize prototypes) >>>>>> http://perldesignpatterns.com/?NamedArguments >>>>>> http://www.devshed.com/c/a/Perl/Subroutines-in-Perl/3/ >>>>>> http://www.cs.cf.ac.uk/Dave/PERL/node126.html >>>>>> >>>>>> >>>>>> >>>>>>> _______________________________________________ >>>>>>> Rio-pm mailing list >>>>>>> Rio-pm em pm.org >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>> >>>> >>>> >>>> -- >>>> André Garcia Carneiro >>>> Analista/Desenvolvedor Perl >>>> (11)82907780 >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> >>> -- >>> "o animal satisfeito dorme". - Guimarães Rosa >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> >> -- >> André Garcia Carneiro >> Analista/Desenvolvedor Perl >> (11)82907780 >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From fernandocorrea em gmail.com Thu Jul 1 07:25:28 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Thu, 1 Jul 2010 11:25:28 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: Me parece q não... fernando em sgs-Labs:~$ perl -MSOAP::Lite -e'$a=SOAP::Lite->new; print $a, $/; teste($a); sub teste{print $b = shift, $/; $a->serializer; print $a, $/}' SOAP::Lite=HASH(0xa00e3a0) SOAP::Lite=HASH(0xa00e3a0) SOAP::Lite=HASH(0xa00e3a0) fernando em sgs-Labs:~$ tudo referencia p/ 1 mesmo obj... Just another Perl Hacker, Fernando (SmokeMachine) http://perl-e.org 2010/7/1 Gabriel Blum > Pois é, mas o perl de alguma maneira emula que vc está trabalhando com uma > cópia. Provavelmente se vc tentar escrever no objeto passado por parametro > (mas secretamente referenciado), ele deve efetivamente copiar. Sei lá > > 2010/7/1 Fernando Oliveira > > Eu não entendí... objs já são referencias... >> Vc só passa objs por referencia mesmo... >> Just another Perl Hacker, >> Fernando (SmokeMachine) >> http://perl-e.org >> >> >> >> 2010/7/1 Andre Carneiro >> >>> >>> >>> Achei que diria isso mesmo, obrigado! >>> >>> >>> Cheers! >>> >>> >>> 2010/7/1 Solli Honorio >>> >>>> >>>> 2010/7/1 Andre Carneiro >>>> >>>> >>>>> >>>>> 2010/7/1 Solli Honorio >>>>> >>>>> >>>>>> Em 1 de julho de 2010 10:09, Solli Honorio escreveu: >>>>>> >>>>>> >>>>>>> 2010/7/1 GmailPaqui >>>>>>> >>>>>>>> Caros, bom dia! >>>>>>>> >>>>>>>> >>>>>>>> Se a passagem de parâmetros por referência é ruim, como proceder no >>>>>>>> caso onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro >>>>>>>> é opcional? >>>>>>>> Devo testar se hash está completo, pares de valor? >>>>>>>> >>>>>>>> -- >>>>>>>> *Cleive Paqui* >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> Cleive, >>>>>>> >>>>>>> Como disse o Gabriel, não é ruim, só estamos extrapolando uma questão >>>>>>> técnica. A passagem por referência é uma opção válida e está dentro (e muito >>>>>>> utilizada) do estilo de programação Perl. O único cuidado que é preciso ter >>>>>>> quando você passa o valor por referência é ter a consciência de que as >>>>>>> alterações dos valores nestas referencias dentro da função resultará na >>>>>>> alteração do valor fora da função. >>>>>>> >>>>>>> Dito isto, a tua pergunta permite a discussão da(s) boa(s) prática(s) >>>>>>> para os parâmetros, e eu achei que alguém iria abordar isto antes. Seguindo >>>>>>> o PBP (Perl Best Practice - http://amzn.to/aDbCpR ) temos algumas >>>>>>> recomendações sobre este assunto, sendo eles (não lembro de todos pois não >>>>>>> estou com o PBP aqui agora) : >>>>>>> >>>>>>> * return - não misture interface de erro com interface de dados. Se >>>>>>> você utilizar o return para erro, só utilize para isto. Se utilizar para >>>>>>> retornar o resultado da função, utilize apenas para isto. NUNCA faça as duas >>>>>>> coisas ao mesmo tempo (ou pelo mesmo canal); >>>>>>> >>>>>>> * parâmetros >>>>>>> 1o. nunca manipule diretamente os valores através do $_[0], $_[1] >>>>>>> ..., a menos que você realmente saiba o que está fazendo. E se você >>>>>>> realmente souber, não fará isto numa programa sério. Além ter de alterar os >>>>>>> valores originais, isto deixa o programa ilegível; >>>>>>> >>>>>> >>>>> Traduzindo... assim que obter $_[0] , $_[1], ou mesmo $1, $2(oriundas >>>>> de expressões regulares), trate de colocar numa variável declarada o mais >>>>> rápido possível! >>>>> >>>>> >>>>>> >>>>>>> 2o. utilize a atribuição simples (sem passagem de referencia) apenas >>>>>>> quando for utilizado até 2 parâmetros scalares ou apenas um parâmetro de >>>>>>> grupo (hash ou array); >>>>>>> >>>>>> >>>>> Eu já vi isso no PBP, mas acho discutível. No caso do meu trabalho, >>>>> normalmente trabalho com alguns objetos relativamente grandes(estou falando >>>>> de HTML::TreeBuilder::XPath). Nesse caso eu prefiro passar por referência >>>>> para evitar a cópia desse objeto. Mas você tem razão ao dizer que tem que se >>>>> tomar muito cuidado com o que se faz, depois que a função para qual se >>>>> passou a referência termina, pois o objeto ainda estará ativo fora do escopo >>>>> dessa função. Um exemplo que eu tenho sempre por aqui... >>>>> >>>>> >>>>> >>>>> . >>>>> . >>>>> . >>>>> my $tree = HTML::TreeBuilder::XPath->new_from_content($string); >>>>> $self->treat_tree(\$tree); >>>>> $tree = $tree->delete; # Isso aqui destroi o objeto !!! >>>>> >>>>> . >>>>> . >>>>> . >>>>> >>>>> sub treat_three { >>>>> my ($self, $tree) = @_; >>>>> >>>>> my pedaco_de_html = ${$tree}->findnodes("/html//body/... "); >>>>> >>>>> . >>>>> . >>>>> . >>>>> >>>>> } >>>>> >>>>> >>>>> >>>>> >>>>> Solli, você acha esse tipo de coisa válida ou eu realmente deveria >>>>> passar $tree sem a referência? Eu pessoalmente prefiro passar por referência >>>>> como disse, para evitar a cópia do objeto, e também, para evitar que eu >>>>> tivesse que destruir o objeto HTML::TreeBuilder::XPath duas vezes no >>>>> caso(uma na função e outra fora dela). Por favor me dê sua opinião sobre >>>>> esse caso. >>>>> >>>> >>>> Eu recomendo passagem por referência mesmo, a minha preocupação aqui nem >>>> é desempenho e sim consumo de recurso. Sabemos que as linguagens dinâmicas >>>> não gostam de liberar memória após o uso, então quando estou lidando com >>>> objetos pesados eu gosto de utilizar referências para evitar problema com >>>> este recurso. >>>> >>>> >>>>> >>>>> >>>>>> >>>>>>> 3o. é fortemente recomendado utilizar a técnica de "named arguments". >>>>>>> Isto significa passar os argumentos através de uma hash, onde a tua função >>>>>>> poderá saber se todos os argumentos obrigatórios estão presente. >>>>>>> >>>>>>> 4o. considere retornar o resultado de uma função via um argumento de >>>>>>> referencia. >>>>>>> >>>>>>> Um exemplo, meu, para uma subrotina seria assim : >>>>>>> >>>>>>> >>>>>>> >>>>>>> sub minha_rotina { >>>>>>> my %args = @_; >>>>>>> >>>>>>> # verifica argumentos obrigatórios >>>>>>> >>>>>>> for my $arg ( qw (arg1 arg3 arg4 ) ) { >>>>>>> die "Argumento $arg é obrigatório mas não foi informado" if ! >>>>>>> exist $args{$arg}; >>>>>>> } >>>>>>> >>>>>>> ... faça alguma coisa com os argumentos ... >>>>>>> >>>>>>> } >>>>>>> >>>>>>> >>>>>>> >>>>>>> Outras fontes sobre isto : >>>>>>> >>>>>>> http://www.perl.com/pub/a/2006/02/23/advanced_subroutines.html >>>>>>> (mas por favor, nunca utilize prototypes) >>>>>>> http://perldesignpatterns.com/?NamedArguments >>>>>>> http://www.devshed.com/c/a/Perl/Subroutines-in-Perl/3/ >>>>>>> http://www.cs.cf.ac.uk/Dave/PERL/node126.html >>>>>>> >>>>>>> >>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Rio-pm mailing list >>>>>>>> Rio-pm em pm.org >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> André Garcia Carneiro >>>>> Analista/Desenvolvedor Perl >>>>> (11)82907780 >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>> >>>> >>>> >>>> -- >>>> "o animal satisfeito dorme". - Guimarães Rosa >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> >>> -- >>> André Garcia Carneiro >>> Analista/Desenvolvedor Perl >>> (11)82907780 >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From fernandocorrea em gmail.com Thu Jul 1 07:30:14 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Thu, 1 Jul 2010 11:30:14 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: outro exemplo: fernando em sgs-Labs:~$ perl -e ' package teste; use Moose; has "a" => (is => "rw"); package main; $a = teste->new; print $a, $/; lalala($a); print $a->a, $/; sub lalala{ $b = shift; print $b, $/; $b->a(42); print $b, $/; print $b->a, $/ } ' teste=HASH(0xa189550) teste=HASH(0xa189550) teste=HASH(0xa189550) 42 42 fernando em sgs-Labs:~$ Just another Perl Hacker, Fernando (SmokeMachine) http://perl-e.org Em 1 de julho de 2010 11:25, Fernando Oliveira escreveu: > Me parece q não... > > fernando em sgs-Labs:~$ perl -MSOAP::Lite -e'$a=SOAP::Lite->new; print $a, > $/; teste($a); sub teste{print $b = shift, $/; $a->serializer; print $a, > $/}' > SOAP::Lite=HASH(0xa00e3a0) > SOAP::Lite=HASH(0xa00e3a0) > SOAP::Lite=HASH(0xa00e3a0) > fernando em sgs-Labs:~$ > > tudo referencia p/ 1 mesmo obj... > > Just another Perl Hacker, > Fernando (SmokeMachine) > http://perl-e.org > > > 2010/7/1 Gabriel Blum > > Pois é, mas o perl de alguma maneira emula que vc está trabalhando com uma >> cópia. Provavelmente se vc tentar escrever no objeto passado por parametro >> (mas secretamente referenciado), ele deve efetivamente copiar. Sei lá >> >> 2010/7/1 Fernando Oliveira >> >> Eu não entendí... objs já são referencias... >>> Vc só passa objs por referencia mesmo... >>> Just another Perl Hacker, >>> Fernando (SmokeMachine) >>> http://perl-e.org >>> >>> >>> >>> 2010/7/1 Andre Carneiro >>> >>>> >>>> >>>> Achei que diria isso mesmo, obrigado! >>>> >>>> >>>> Cheers! >>>> >>>> >>>> 2010/7/1 Solli Honorio >>>> >>>>> >>>>> 2010/7/1 Andre Carneiro >>>>> >>>>> >>>>>> >>>>>> 2010/7/1 Solli Honorio >>>>>> >>>>>> >>>>>>> Em 1 de julho de 2010 10:09, Solli Honorio escreveu: >>>>>>> >>>>>>> >>>>>>>> 2010/7/1 GmailPaqui >>>>>>>> >>>>>>>>> Caros, bom dia! >>>>>>>>> >>>>>>>>> >>>>>>>>> Se a passagem de parâmetros por referência é ruim, como proceder no >>>>>>>>> caso onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro >>>>>>>>> é opcional? >>>>>>>>> Devo testar se hash está completo, pares de valor? >>>>>>>>> >>>>>>>>> -- >>>>>>>>> *Cleive Paqui* >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> Cleive, >>>>>>>> >>>>>>>> Como disse o Gabriel, não é ruim, só estamos extrapolando uma >>>>>>>> questão técnica. A passagem por referência é uma opção válida e está dentro >>>>>>>> (e muito utilizada) do estilo de programação Perl. O único cuidado que é >>>>>>>> preciso ter quando você passa o valor por referência é ter a consciência de >>>>>>>> que as alterações dos valores nestas referencias dentro da função resultará >>>>>>>> na alteração do valor fora da função. >>>>>>>> >>>>>>>> Dito isto, a tua pergunta permite a discussão da(s) boa(s) >>>>>>>> prática(s) para os parâmetros, e eu achei que alguém iria abordar isto >>>>>>>> antes. Seguindo o PBP (Perl Best Practice - http://amzn.to/aDbCpR ) >>>>>>>> temos algumas recomendações sobre este assunto, sendo eles (não lembro de >>>>>>>> todos pois não estou com o PBP aqui agora) : >>>>>>>> >>>>>>>> * return - não misture interface de erro com interface de dados. Se >>>>>>>> você utilizar o return para erro, só utilize para isto. Se utilizar para >>>>>>>> retornar o resultado da função, utilize apenas para isto. NUNCA faça as duas >>>>>>>> coisas ao mesmo tempo (ou pelo mesmo canal); >>>>>>>> >>>>>>>> * parâmetros >>>>>>>> 1o. nunca manipule diretamente os valores através do $_[0], $_[1] >>>>>>>> ..., a menos que você realmente saiba o que está fazendo. E se você >>>>>>>> realmente souber, não fará isto numa programa sério. Além ter de alterar os >>>>>>>> valores originais, isto deixa o programa ilegível; >>>>>>>> >>>>>>> >>>>>> Traduzindo... assim que obter $_[0] , $_[1], ou mesmo $1, $2(oriundas >>>>>> de expressões regulares), trate de colocar numa variável declarada o mais >>>>>> rápido possível! >>>>>> >>>>>> >>>>>>> >>>>>>>> 2o. utilize a atribuição simples (sem passagem de referencia) apenas >>>>>>>> quando for utilizado até 2 parâmetros scalares ou apenas um parâmetro de >>>>>>>> grupo (hash ou array); >>>>>>>> >>>>>>> >>>>>> Eu já vi isso no PBP, mas acho discutível. No caso do meu trabalho, >>>>>> normalmente trabalho com alguns objetos relativamente grandes(estou falando >>>>>> de HTML::TreeBuilder::XPath). Nesse caso eu prefiro passar por referência >>>>>> para evitar a cópia desse objeto. Mas você tem razão ao dizer que tem que se >>>>>> tomar muito cuidado com o que se faz, depois que a função para qual se >>>>>> passou a referência termina, pois o objeto ainda estará ativo fora do escopo >>>>>> dessa função. Um exemplo que eu tenho sempre por aqui... >>>>>> >>>>>> >>>>>> >>>>>> . >>>>>> . >>>>>> . >>>>>> my $tree = HTML::TreeBuilder::XPath->new_from_content($string); >>>>>> $self->treat_tree(\$tree); >>>>>> $tree = $tree->delete; # Isso aqui destroi o objeto !!! >>>>>> >>>>>> . >>>>>> . >>>>>> . >>>>>> >>>>>> sub treat_three { >>>>>> my ($self, $tree) = @_; >>>>>> >>>>>> my pedaco_de_html = ${$tree}->findnodes("/html//body/... "); >>>>>> >>>>>> . >>>>>> . >>>>>> . >>>>>> >>>>>> } >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> Solli, você acha esse tipo de coisa válida ou eu realmente deveria >>>>>> passar $tree sem a referência? Eu pessoalmente prefiro passar por referência >>>>>> como disse, para evitar a cópia do objeto, e também, para evitar que eu >>>>>> tivesse que destruir o objeto HTML::TreeBuilder::XPath duas vezes no >>>>>> caso(uma na função e outra fora dela). Por favor me dê sua opinião sobre >>>>>> esse caso. >>>>>> >>>>> >>>>> Eu recomendo passagem por referência mesmo, a minha preocupação aqui >>>>> nem é desempenho e sim consumo de recurso. Sabemos que as linguagens >>>>> dinâmicas não gostam de liberar memória após o uso, então quando estou >>>>> lidando com objetos pesados eu gosto de utilizar referências para evitar >>>>> problema com este recurso. >>>>> >>>>> >>>>>> >>>>>> >>>>>>> >>>>>>>> 3o. é fortemente recomendado utilizar a técnica de "named >>>>>>>> arguments". Isto significa passar os argumentos através de uma hash, onde a >>>>>>>> tua função poderá saber se todos os argumentos obrigatórios estão presente. >>>>>>>> >>>>>>>> 4o. considere retornar o resultado de uma função via um argumento de >>>>>>>> referencia. >>>>>>>> >>>>>>>> Um exemplo, meu, para uma subrotina seria assim : >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> sub minha_rotina { >>>>>>>> my %args = @_; >>>>>>>> >>>>>>>> # verifica argumentos obrigatórios >>>>>>>> >>>>>>>> for my $arg ( qw (arg1 arg3 arg4 ) ) { >>>>>>>> die "Argumento $arg é obrigatório mas não foi informado" if ! >>>>>>>> exist $args{$arg}; >>>>>>>> } >>>>>>>> >>>>>>>> ... faça alguma coisa com os argumentos ... >>>>>>>> >>>>>>>> } >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> Outras fontes sobre isto : >>>>>>>> >>>>>>>> http://www.perl.com/pub/a/2006/02/23/advanced_subroutines.html >>>>>>>> (mas por favor, nunca utilize prototypes) >>>>>>>> http://perldesignpatterns.com/?NamedArguments >>>>>>>> http://www.devshed.com/c/a/Perl/Subroutines-in-Perl/3/ >>>>>>>> http://www.cs.cf.ac.uk/Dave/PERL/node126.html >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Rio-pm mailing list >>>>>>>>> Rio-pm em pm.org >>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rio-pm mailing list >>>>>>> Rio-pm em pm.org >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> André Garcia Carneiro >>>>>> Analista/Desenvolvedor Perl >>>>>> (11)82907780 >>>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>> >>>> >>>> >>>> -- >>>> André Garcia Carneiro >>>> Analista/Desenvolvedor Perl >>>> (11)82907780 >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From shonorio em gmail.com Thu Jul 1 07:32:38 2010 From: shonorio em gmail.com (Solli Honorio) Date: Thu, 1 Jul 2010 11:32:38 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: Ok, este é o problema da nomenclatura. Quando eu disse objeto, não estava me referindo a uma classe instânciada, eu estava em mente um recurso de memória instanciada .... ou seja, um grande array ou um grande hash. 2010/7/1 Fernando Oliveira > Eu não entendí... objs já são referencias... > Vc só passa objs por referencia mesmo... > Just another Perl Hacker, > Fernando (SmokeMachine) > http://perl-e.org > > > 2010/7/1 Andre Carneiro > >> >> >> Achei que diria isso mesmo, obrigado! >> >> >> Cheers! >> >> >> 2010/7/1 Solli Honorio >> >>> >>> 2010/7/1 Andre Carneiro >>> >>> >>>> >>>> 2010/7/1 Solli Honorio >>>> >>>> >>>>> Em 1 de julho de 2010 10:09, Solli Honorio escreveu: >>>>> >>>>> >>>>>> 2010/7/1 GmailPaqui >>>>>> >>>>>>> Caros, bom dia! >>>>>>> >>>>>>> >>>>>>> Se a passagem de parâmetros por referência é ruim, como proceder no >>>>>>> caso onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro >>>>>>> é opcional? >>>>>>> Devo testar se hash está completo, pares de valor? >>>>>>> >>>>>>> -- >>>>>>> *Cleive Paqui* >>>>>>> >>>>>>> >>>>>>> >>>>>> Cleive, >>>>>> >>>>>> Como disse o Gabriel, não é ruim, só estamos extrapolando uma questão >>>>>> técnica. A passagem por referência é uma opção válida e está dentro (e muito >>>>>> utilizada) do estilo de programação Perl. O único cuidado que é preciso ter >>>>>> quando você passa o valor por referência é ter a consciência de que as >>>>>> alterações dos valores nestas referencias dentro da função resultará na >>>>>> alteração do valor fora da função. >>>>>> >>>>>> Dito isto, a tua pergunta permite a discussão da(s) boa(s) prática(s) >>>>>> para os parâmetros, e eu achei que alguém iria abordar isto antes. Seguindo >>>>>> o PBP (Perl Best Practice - http://amzn.to/aDbCpR ) temos algumas >>>>>> recomendações sobre este assunto, sendo eles (não lembro de todos pois não >>>>>> estou com o PBP aqui agora) : >>>>>> >>>>>> * return - não misture interface de erro com interface de dados. Se >>>>>> você utilizar o return para erro, só utilize para isto. Se utilizar para >>>>>> retornar o resultado da função, utilize apenas para isto. NUNCA faça as duas >>>>>> coisas ao mesmo tempo (ou pelo mesmo canal); >>>>>> >>>>>> * parâmetros >>>>>> 1o. nunca manipule diretamente os valores através do $_[0], $_[1] ..., >>>>>> a menos que você realmente saiba o que está fazendo. E se você realmente >>>>>> souber, não fará isto numa programa sério. Além ter de alterar os valores >>>>>> originais, isto deixa o programa ilegível; >>>>>> >>>>> >>>> Traduzindo... assim que obter $_[0] , $_[1], ou mesmo $1, $2(oriundas de >>>> expressões regulares), trate de colocar numa variável declarada o mais >>>> rápido possível! >>>> >>>> >>>>> >>>>>> 2o. utilize a atribuição simples (sem passagem de referencia) apenas >>>>>> quando for utilizado até 2 parâmetros scalares ou apenas um parâmetro de >>>>>> grupo (hash ou array); >>>>>> >>>>> >>>> Eu já vi isso no PBP, mas acho discutível. No caso do meu trabalho, >>>> normalmente trabalho com alguns objetos relativamente grandes(estou falando >>>> de HTML::TreeBuilder::XPath). Nesse caso eu prefiro passar por referência >>>> para evitar a cópia desse objeto. Mas você tem razão ao dizer que tem que se >>>> tomar muito cuidado com o que se faz, depois que a função para qual se >>>> passou a referência termina, pois o objeto ainda estará ativo fora do escopo >>>> dessa função. Um exemplo que eu tenho sempre por aqui... >>>> >>>> >>>> >>>> . >>>> . >>>> . >>>> my $tree = HTML::TreeBuilder::XPath->new_from_content($string); >>>> $self->treat_tree(\$tree); >>>> $tree = $tree->delete; # Isso aqui destroi o objeto !!! >>>> >>>> . >>>> . >>>> . >>>> >>>> sub treat_three { >>>> my ($self, $tree) = @_; >>>> >>>> my pedaco_de_html = ${$tree}->findnodes("/html//body/... "); >>>> >>>> . >>>> . >>>> . >>>> >>>> } >>>> >>>> >>>> >>>> >>>> Solli, você acha esse tipo de coisa válida ou eu realmente deveria >>>> passar $tree sem a referência? Eu pessoalmente prefiro passar por referência >>>> como disse, para evitar a cópia do objeto, e também, para evitar que eu >>>> tivesse que destruir o objeto HTML::TreeBuilder::XPath duas vezes no >>>> caso(uma na função e outra fora dela). Por favor me dê sua opinião sobre >>>> esse caso. >>>> >>> >>> Eu recomendo passagem por referência mesmo, a minha preocupação aqui nem >>> é desempenho e sim consumo de recurso. Sabemos que as linguagens dinâmicas >>> não gostam de liberar memória após o uso, então quando estou lidando com >>> objetos pesados eu gosto de utilizar referências para evitar problema com >>> este recurso. >>> >>> >>>> >>>> >>>>> >>>>>> 3o. é fortemente recomendado utilizar a técnica de "named arguments". >>>>>> Isto significa passar os argumentos através de uma hash, onde a tua função >>>>>> poderá saber se todos os argumentos obrigatórios estão presente. >>>>>> >>>>>> 4o. considere retornar o resultado de uma função via um argumento de >>>>>> referencia. >>>>>> >>>>>> Um exemplo, meu, para uma subrotina seria assim : >>>>>> >>>>>> >>>>>> >>>>>> sub minha_rotina { >>>>>> my %args = @_; >>>>>> >>>>>> # verifica argumentos obrigatórios >>>>>> >>>>>> for my $arg ( qw (arg1 arg3 arg4 ) ) { >>>>>> die "Argumento $arg é obrigatório mas não foi informado" if ! >>>>>> exist $args{$arg}; >>>>>> } >>>>>> >>>>>> ... faça alguma coisa com os argumentos ... >>>>>> >>>>>> } >>>>>> >>>>>> >>>>>> >>>>>> Outras fontes sobre isto : >>>>>> >>>>>> http://www.perl.com/pub/a/2006/02/23/advanced_subroutines.html (mas >>>>>> por favor, nunca utilize prototypes) >>>>>> http://perldesignpatterns.com/?NamedArguments >>>>>> http://www.devshed.com/c/a/Perl/Subroutines-in-Perl/3/ >>>>>> http://www.cs.cf.ac.uk/Dave/PERL/node126.html >>>>>> >>>>>> >>>>>> >>>>>>> _______________________________________________ >>>>>>> Rio-pm mailing list >>>>>>> Rio-pm em pm.org >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>> >>>> >>>> >>>> -- >>>> André Garcia Carneiro >>>> Analista/Desenvolvedor Perl >>>> (11)82907780 >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> >>> -- >>> "o animal satisfeito dorme". - Guimarães Rosa >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> >> -- >> André Garcia Carneiro >> Analista/Desenvolvedor Perl >> (11)82907780 >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- "o animal satisfeito dorme". - Guimarães Rosa -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From fernandocorrea em gmail.com Thu Jul 1 07:36:17 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Thu, 1 Jul 2010 11:36:17 -0300 Subject: [Rio-pm] hash como parametro In-Reply-To: References: <4C2B66BF.7000900@gmail.com> <4C2C8635.1020001@gmail.com> Message-ID: Solli, Ah! Blz!!! Foi mau! Just another Perl Hacker, Fernando (SmokeMachine) http://perl-e.org 2010/7/1 Solli Honorio > Ok, este é o problema da nomenclatura. Quando eu disse objeto, não estava > me referindo a uma classe instânciada, eu estava em mente um recurso de > memória instanciada .... ou seja, um grande array ou um grande hash. > > 2010/7/1 Fernando Oliveira > >> Eu não entendí... objs já são referencias... >> Vc só passa objs por referencia mesmo... >> Just another Perl Hacker, >> Fernando (SmokeMachine) >> http://perl-e.org >> >> >> 2010/7/1 Andre Carneiro >> >>> >>> >>> Achei que diria isso mesmo, obrigado! >>> >>> >>> Cheers! >>> >>> >>> 2010/7/1 Solli Honorio >>> >>>> >>>> 2010/7/1 Andre Carneiro >>>> >>>> >>>>> >>>>> 2010/7/1 Solli Honorio >>>>> >>>>> >>>>>> Em 1 de julho de 2010 10:09, Solli Honorio escreveu: >>>>>> >>>>>> >>>>>>> 2010/7/1 GmailPaqui >>>>>>> >>>>>>>> Caros, bom dia! >>>>>>>> >>>>>>>> >>>>>>>> Se a passagem de parâmetros por referência é ruim, como proceder no >>>>>>>> caso onde tenho dois parâmetros, um hash e um scalar, e o segundo parâmetro >>>>>>>> é opcional? >>>>>>>> Devo testar se hash está completo, pares de valor? >>>>>>>> >>>>>>>> -- >>>>>>>> *Cleive Paqui* >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> Cleive, >>>>>>> >>>>>>> Como disse o Gabriel, não é ruim, só estamos extrapolando uma questão >>>>>>> técnica. A passagem por referência é uma opção válida e está dentro (e muito >>>>>>> utilizada) do estilo de programação Perl. O único cuidado que é preciso ter >>>>>>> quando você passa o valor por referência é ter a consciência de que as >>>>>>> alterações dos valores nestas referencias dentro da função resultará na >>>>>>> alteração do valor fora da função. >>>>>>> >>>>>>> Dito isto, a tua pergunta permite a discussão da(s) boa(s) prática(s) >>>>>>> para os parâmetros, e eu achei que alguém iria abordar isto antes. Seguindo >>>>>>> o PBP (Perl Best Practice - http://amzn.to/aDbCpR ) temos algumas >>>>>>> recomendações sobre este assunto, sendo eles (não lembro de todos pois não >>>>>>> estou com o PBP aqui agora) : >>>>>>> >>>>>>> * return - não misture interface de erro com interface de dados. Se >>>>>>> você utilizar o return para erro, só utilize para isto. Se utilizar para >>>>>>> retornar o resultado da função, utilize apenas para isto. NUNCA faça as duas >>>>>>> coisas ao mesmo tempo (ou pelo mesmo canal); >>>>>>> >>>>>>> * parâmetros >>>>>>> 1o. nunca manipule diretamente os valores através do $_[0], $_[1] >>>>>>> ..., a menos que você realmente saiba o que está fazendo. E se você >>>>>>> realmente souber, não fará isto numa programa sério. Além ter de alterar os >>>>>>> valores originais, isto deixa o programa ilegível; >>>>>>> >>>>>> >>>>> Traduzindo... assim que obter $_[0] , $_[1], ou mesmo $1, $2(oriundas >>>>> de expressões regulares), trate de colocar numa variável declarada o mais >>>>> rápido possível! >>>>> >>>>> >>>>>> >>>>>>> 2o. utilize a atribuição simples (sem passagem de referencia) apenas >>>>>>> quando for utilizado até 2 parâmetros scalares ou apenas um parâmetro de >>>>>>> grupo (hash ou array); >>>>>>> >>>>>> >>>>> Eu já vi isso no PBP, mas acho discutível. No caso do meu trabalho, >>>>> normalmente trabalho com alguns objetos relativamente grandes(estou falando >>>>> de HTML::TreeBuilder::XPath). Nesse caso eu prefiro passar por referência >>>>> para evitar a cópia desse objeto. Mas você tem razão ao dizer que tem que se >>>>> tomar muito cuidado com o que se faz, depois que a função para qual se >>>>> passou a referência termina, pois o objeto ainda estará ativo fora do escopo >>>>> dessa função. Um exemplo que eu tenho sempre por aqui... >>>>> >>>>> >>>>> >>>>> . >>>>> . >>>>> . >>>>> my $tree = HTML::TreeBuilder::XPath->new_from_content($string); >>>>> $self->treat_tree(\$tree); >>>>> $tree = $tree->delete; # Isso aqui destroi o objeto !!! >>>>> >>>>> . >>>>> . >>>>> . >>>>> >>>>> sub treat_three { >>>>> my ($self, $tree) = @_; >>>>> >>>>> my pedaco_de_html = ${$tree}->findnodes("/html//body/... "); >>>>> >>>>> . >>>>> . >>>>> . >>>>> >>>>> } >>>>> >>>>> >>>>> >>>>> >>>>> Solli, você acha esse tipo de coisa válida ou eu realmente deveria >>>>> passar $tree sem a referência? Eu pessoalmente prefiro passar por referência >>>>> como disse, para evitar a cópia do objeto, e também, para evitar que eu >>>>> tivesse que destruir o objeto HTML::TreeBuilder::XPath duas vezes no >>>>> caso(uma na função e outra fora dela). Por favor me dê sua opinião sobre >>>>> esse caso. >>>>> >>>> >>>> Eu recomendo passagem por referência mesmo, a minha preocupação aqui nem >>>> é desempenho e sim consumo de recurso. Sabemos que as linguagens dinâmicas >>>> não gostam de liberar memória após o uso, então quando estou lidando com >>>> objetos pesados eu gosto de utilizar referências para evitar problema com >>>> este recurso. >>>> >>>> >>>>> >>>>> >>>>>> >>>>>>> 3o. é fortemente recomendado utilizar a técnica de "named arguments". >>>>>>> Isto significa passar os argumentos através de uma hash, onde a tua função >>>>>>> poderá saber se todos os argumentos obrigatórios estão presente. >>>>>>> >>>>>>> 4o. considere retornar o resultado de uma função via um argumento de >>>>>>> referencia. >>>>>>> >>>>>>> Um exemplo, meu, para uma subrotina seria assim : >>>>>>> >>>>>>> >>>>>>> >>>>>>> sub minha_rotina { >>>>>>> my %args = @_; >>>>>>> >>>>>>> # verifica argumentos obrigatórios >>>>>>> >>>>>>> for my $arg ( qw (arg1 arg3 arg4 ) ) { >>>>>>> die "Argumento $arg é obrigatório mas não foi informado" if ! >>>>>>> exist $args{$arg}; >>>>>>> } >>>>>>> >>>>>>> ... faça alguma coisa com os argumentos ... >>>>>>> >>>>>>> } >>>>>>> >>>>>>> >>>>>>> >>>>>>> Outras fontes sobre isto : >>>>>>> >>>>>>> http://www.perl.com/pub/a/2006/02/23/advanced_subroutines.html >>>>>>> (mas por favor, nunca utilize prototypes) >>>>>>> http://perldesignpatterns.com/?NamedArguments >>>>>>> http://www.devshed.com/c/a/Perl/Subroutines-in-Perl/3/ >>>>>>> http://www.cs.cf.ac.uk/Dave/PERL/node126.html >>>>>>> >>>>>>> >>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Rio-pm mailing list >>>>>>>> Rio-pm em pm.org >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> "o animal satisfeito dorme". - Guimarães Rosa >>>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> André Garcia Carneiro >>>>> Analista/Desenvolvedor Perl >>>>> (11)82907780 >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>> >>>> >>>> >>>> -- >>>> "o animal satisfeito dorme". - Guimarães Rosa >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> >>> -- >>> André Garcia Carneiro >>> Analista/Desenvolvedor Perl >>> (11)82907780 >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > "o animal satisfeito dorme". - Guimarães Rosa > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From diana.g.a.rosa em gmail.com Thu Jul 1 10:57:10 2010 From: diana.g.a.rosa em gmail.com (Diana Rosa) Date: Thu, 1 Jul 2010 14:57:10 -0300 Subject: [Rio-pm] ESX Rio=PM <- [SP-pm] Quando vai ser o ES desse mes??? In-Reply-To: References: Message-ID: Pé-sujo na Rua do Riachuelo, com várias mesas de sinuca e cerveja de garrafa... e karaoke feliz! 2010/7/1 João C. Coutinho > Isso! > > Alguma outra sugestão? > > > On 7/1/10, Marco Lima wrote: > > $sinuca_da_lapa = q{ Pé-sujo na Rua do Riachuelo, com várias mesas de > sinuca > > e cerveja de garrafa }; > > > > Marco Lima > > braun.lima em gmail.com > > im:mago em jabber-br.org > > > > Register Linux User #355235 > > Slackware Linux, for the subgenius > > > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento > é > > um dever de quem tem." > > > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta > > paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa > > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." > > > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > > possa ensinar" > > > > > > > > Em 1 de julho de 2010 01:05, Diogo Leal > escreveu: > > > > > > pé-sujo na Rua do Riachuelo, com várias mesas de > > > > sinuca e cerveja de garrafa > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Thu Jul 1 14:23:54 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Thu, 1 Jul 2010 18:23:54 -0300 Subject: [Rio-pm] ESX Rio=PM <- [SP-pm] Quando vai ser o ES desse mes??? In-Reply-To: References: Message-ID: Quando vai ser isso? Hoje? 2010/7/1 Diana Rosa > Pé-sujo na Rua do Riachuelo, com várias mesas de sinuca > e cerveja de garrafa... e karaoke feliz! > > 2010/7/1 João C. Coutinho > > Isso! >> >> Alguma outra sugestão? >> >> >> On 7/1/10, Marco Lima wrote: >> > $sinuca_da_lapa = q{ Pé-sujo na Rua do Riachuelo, com várias mesas de >> sinuca >> > e cerveja de garrafa }; >> > >> > Marco Lima >> > braun.lima em gmail.com >> > im:mago em jabber-br.org >> > >> > Register Linux User #355235 >> > Slackware Linux, for the subgenius >> > >> > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >> é >> > um dever de quem tem." >> > >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta >> > paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa >> > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." >> > >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> > possa ensinar" >> > >> > >> > >> > Em 1 de julho de 2010 01:05, Diogo Leal >> escreveu: >> > > >> > > pé-sujo na Rua do Riachuelo, com várias mesas de >> > > > sinuca e cerveja de garrafa >> > >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Thu Jul 1 14:26:02 2010 From: eu em samircury.eng.br (Samir Cury) Date: Thu, 1 Jul 2010 18:26:02 -0300 Subject: [Rio-pm] ESX Rio=PM <- [SP-pm] Quando vai ser o ES desse mes??? In-Reply-To: References: Message-ID: acho que amanha cara 2010/7/1 Oscar Marques > Quando vai ser isso? Hoje? > > 2010/7/1 Diana Rosa > > Pé-sujo na Rua do Riachuelo, com várias mesas de sinuca >> e cerveja de garrafa... e karaoke feliz! >> >> 2010/7/1 João C. Coutinho >> >> Isso! >>> >>> Alguma outra sugestão? >>> >>> >>> On 7/1/10, Marco Lima wrote: >>> > $sinuca_da_lapa = q{ Pé-sujo na Rua do Riachuelo, com várias mesas de >>> sinuca >>> > e cerveja de garrafa }; >>> > >>> > Marco Lima >>> > braun.lima em gmail.com >>> > im:mago em jabber-br.org >>> > >>> > Register Linux User #355235 >>> > Slackware Linux, for the subgenius >>> > >>> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>> conhecimento é >>> > um dever de quem tem." >>> > >>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>> Esta >>> > paixão é, na realidade, uma atividade significativa, inspiradora e >>> prazerosa >>> > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." >>> > >>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>> > possa ensinar" >>> > >>> > >>> > >>> > Em 1 de julho de 2010 01:05, Diogo Leal >>> escreveu: >>> > > >>> > > pé-sujo na Rua do Riachuelo, com várias mesas de >>> > > > sinuca e cerveja de garrafa >>> > >>> > >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From fernandocorrea em gmail.com Thu Jul 1 14:42:47 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Thu, 1 Jul 2010 18:42:47 -0300 Subject: [Rio-pm] ESX Rio=PM <- [SP-pm] Quando vai ser o ES desse mes??? In-Reply-To: References: Message-ID: Amanhã, 6a feira! Just another Perl Hacker, Fernando (SmokeMachine) http://perl-e.org 2010/7/1 Samir Cury > acho que amanha cara > > 2010/7/1 Oscar Marques > > Quando vai ser isso? Hoje? >> >> 2010/7/1 Diana Rosa >> >> Pé-sujo na Rua do Riachuelo, com várias mesas de sinuca >>> e cerveja de garrafa... e karaoke feliz! >>> >>> 2010/7/1 João C. Coutinho >>> >>> Isso! >>>> >>>> Alguma outra sugestão? >>>> >>>> >>>> On 7/1/10, Marco Lima wrote: >>>> > $sinuca_da_lapa = q{ Pé-sujo na Rua do Riachuelo, com várias mesas de >>>> sinuca >>>> > e cerveja de garrafa }; >>>> > >>>> > Marco Lima >>>> > braun.lima em gmail.com >>>> > im:mago em jabber-br.org >>>> > >>>> > Register Linux User #355235 >>>> > Slackware Linux, for the subgenius >>>> > >>>> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>>> conhecimento é >>>> > um dever de quem tem." >>>> > >>>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>>> paixão. Esta >>>> > paixão é, na realidade, uma atividade significativa, inspiradora e >>>> prazerosa >>>> > para o indivíduo, seja ela rotulada como "trabalho" ou como >>>> "diversão." >>>> > >>>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >>>> não >>>> > possa ensinar" >>>> > >>>> > >>>> > >>>> > Em 1 de julho de 2010 01:05, Diogo Leal >>>> escreveu: >>>> > > >>>> > > pé-sujo na Rua do Riachuelo, com várias mesas de >>>> > > > sinuca e cerveja de garrafa >>>> > >>>> > >>>> > _______________________________________________ >>>> > Rio-pm mailing list >>>> > Rio-pm em pm.org >>>> > http://mail.pm.org/mailman/listinfo/rio-pm >>>> > >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Thu Jul 1 14:46:36 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Thu, 1 Jul 2010 18:46:36 -0300 Subject: [Rio-pm] ESX Rio=PM <- [SP-pm] Quando vai ser o ES desse mes??? In-Reply-To: References: Message-ID: Beleza, irei comparecer. Sexta Feira na Sinuca da Lapa? 2010/7/1 Fernando Oliveira > Amanhã, 6a feira! > > Just another Perl Hacker, > Fernando (SmokeMachine) > http://perl-e.org > > > 2010/7/1 Samir Cury > > acho que amanha cara >> >> 2010/7/1 Oscar Marques >> >> Quando vai ser isso? Hoje? >>> >>> 2010/7/1 Diana Rosa >>> >>> Pé-sujo na Rua do Riachuelo, com várias mesas de sinuca >>>> e cerveja de garrafa... e karaoke feliz! >>>> >>>> 2010/7/1 João C. Coutinho >>>> >>>> Isso! >>>>> >>>>> Alguma outra sugestão? >>>>> >>>>> >>>>> On 7/1/10, Marco Lima wrote: >>>>> > $sinuca_da_lapa = q{ Pé-sujo na Rua do Riachuelo, com várias mesas de >>>>> sinuca >>>>> > e cerveja de garrafa }; >>>>> > >>>>> > Marco Lima >>>>> > braun.lima em gmail.com >>>>> > im:mago em jabber-br.org >>>>> > >>>>> > Register Linux User #355235 >>>>> > Slackware Linux, for the subgenius >>>>> > >>>>> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>>>> conhecimento é >>>>> > um dever de quem tem." >>>>> > >>>>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>>>> paixão. Esta >>>>> > paixão é, na realidade, uma atividade significativa, inspiradora e >>>>> prazerosa >>>>> > para o indivíduo, seja ela rotulada como "trabalho" ou como >>>>> "diversão." >>>>> > >>>>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >>>>> não >>>>> > possa ensinar" >>>>> > >>>>> > >>>>> > >>>>> > Em 1 de julho de 2010 01:05, Diogo Leal >>>>> escreveu: >>>>> > > >>>>> > > pé-sujo na Rua do Riachuelo, com várias mesas de >>>>> > > > sinuca e cerveja de garrafa >>>>> > >>>>> > >>>>> > _______________________________________________ >>>>> > Rio-pm mailing list >>>>> > Rio-pm em pm.org >>>>> > http://mail.pm.org/mailman/listinfo/rio-pm >>>>> > >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>> >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From diana.g.a.rosa em gmail.com Fri Jul 2 10:38:45 2010 From: diana.g.a.rosa em gmail.com (Diana Rosa) Date: Fri, 2 Jul 2010 14:38:45 -0300 Subject: [Rio-pm] ESX Rio=PM <- [SP-pm] Quando vai ser o ES desse mes??? In-Reply-To: References: Message-ID: ops.. o do karaoke é o sinuca de bico perto da cruz vermelha na r. riachuelo.. se o sinuca da lapa estiver cheio, la é uma boa opção também.. 2010/7/1 Oscar Marques > Beleza, irei comparecer. > Sexta Feira na Sinuca da Lapa? > > 2010/7/1 Fernando Oliveira > > Amanhã, 6a feira! >> >> Just another Perl Hacker, >> Fernando (SmokeMachine) >> http://perl-e.org >> >> >> 2010/7/1 Samir Cury >> >> acho que amanha cara >>> >>> 2010/7/1 Oscar Marques >>> >>> Quando vai ser isso? Hoje? >>>> >>>> 2010/7/1 Diana Rosa >>>> >>>> Pé-sujo na Rua do Riachuelo, com várias mesas de sinuca >>>>> e cerveja de garrafa... e karaoke feliz! >>>>> >>>>> 2010/7/1 João C. Coutinho >>>>> >>>>> Isso! >>>>>> >>>>>> Alguma outra sugestão? >>>>>> >>>>>> >>>>>> On 7/1/10, Marco Lima wrote: >>>>>> > $sinuca_da_lapa = q{ Pé-sujo na Rua do Riachuelo, com várias mesas >>>>>> de sinuca >>>>>> > e cerveja de garrafa }; >>>>>> > >>>>>> > Marco Lima >>>>>> > braun.lima em gmail.com >>>>>> > im:mago em jabber-br.org >>>>>> > >>>>>> > Register Linux User #355235 >>>>>> > Slackware Linux, for the subgenius >>>>>> > >>>>>> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>>>>> conhecimento é >>>>>> > um dever de quem tem." >>>>>> > >>>>>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>>>>> paixão. Esta >>>>>> > paixão é, na realidade, uma atividade significativa, inspiradora e >>>>>> prazerosa >>>>>> > para o indivíduo, seja ela rotulada como "trabalho" ou como >>>>>> "diversão." >>>>>> > >>>>>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >>>>>> não >>>>>> > possa ensinar" >>>>>> > >>>>>> > >>>>>> > >>>>>> > Em 1 de julho de 2010 01:05, Diogo Leal >>>>>> escreveu: >>>>>> > > >>>>>> > > pé-sujo na Rua do Riachuelo, com várias mesas de >>>>>> > > > sinuca e cerveja de garrafa >>>>>> > >>>>>> > >>>>>> > _______________________________________________ >>>>>> > Rio-pm mailing list >>>>>> > Rio-pm em pm.org >>>>>> > http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> > >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>> >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From bruno.buss em gmail.com Sat Jul 3 11:54:43 2010 From: bruno.buss em gmail.com (Bruno Buss) Date: Sat, 3 Jul 2010 15:54:43 -0300 Subject: [Rio-pm] Golf: "Word frequency chart" no Stack Overflow Message-ID: E ai pessoal, alguem quer dar uma tacada la no S.O.? http://stackoverflow.com/questions/3169051/code-golf-word-frequency-chart [ ]'s -- Bruno C. Buss http://brunobuss.wordpress.com/ http://www.dcc.ufrj.br/~brunobuss/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From indiox em gentoobr.org Mon Jul 5 17:39:08 2010 From: indiox em gentoobr.org (Claudio Pereira) Date: Mon, 5 Jul 2010 21:39:08 -0300 Subject: [Rio-pm] =?iso-8859-1?q?=5BOT=5D_ajuda_na_instala=E7=E3o_do_Movab?= =?iso-8859-1?q?le_Type?= Message-ID: Caros Monges, acho que deve ser o cansaço e não encontro o problema. Detonei o meu blog que era Wordpress para iniciar um novo com MovableType.org mas estou encontrando dificuldades. O meu vhost indiox.net é configurado desta forma: Options ExecCGI FollowSymLinks Indexes MultiViews AllowOverride AuthConfig Indexes Limit Order allow,deny Allow from all No path /home/indiox/www eu coloquei o conteudo do MTOS-5.02-en.zip disponivel em movabletype.org e configurei o seu mt-config.cgi deste modo: [indiox em web48 www]$ cat mt-config.cgi |grep -v ^# CGIPath http://www.indiox.net/cgi-bin/ StaticWebPath http://www.indiox.net/blog ObjectDriver DBI::mysql Database indiox DBUser indiox DBPassword senhafacildedescobrir:P DBHost mysql.indiox.net DefaultLanguage en_US E continuo tendo Internal Server Error, já mudei permissões, diretorios (/cgi-bin e etc...) da variavel CGIPath e StaticWebPath e não to conseguindo resolver. ps: Não tenho acesso aos logs do Apache no momento. Caso, alguém tenha alguma idéia, pode dar o seu pitaco! :-) Obrigado, Claudio P Costa (aka IndioX) From alpbs2003 em gmail.com Tue Jul 6 04:39:53 2010 From: alpbs2003 em gmail.com (Andre Luis) Date: Tue, 6 Jul 2010 08:39:53 -0300 Subject: [Rio-pm] =?iso-8859-1?q?=5BOT=5D_ajuda_na_instala=E7=E3o_do_Movab?= =?iso-8859-1?q?le_Type?= In-Reply-To: References: Message-ID: Fala claudio. tenta colocar no seu vhost algo assim : Options FollowSymLinks +MultiViews Indexes +ExecCGI AddHandler cgi-script .cgi .pl abs Em 5 de julho de 2010 21:39, Claudio Pereira escreveu: > Caros Monges, acho que deve ser o cansaço e não encontro o problema. > > Detonei o meu blog que era Wordpress para iniciar um novo com > MovableType.org mas estou encontrando dificuldades. > > O meu vhost indiox.net é configurado desta forma: > > > Options ExecCGI FollowSymLinks Indexes MultiViews > AllowOverride AuthConfig Indexes Limit > Order allow,deny > Allow from all > > > No path /home/indiox/www eu coloquei o conteudo do MTOS-5.02-en.zip > disponivel em movabletype.org e configurei o seu mt-config.cgi deste > modo: > > [indiox em web48 www]$ cat mt-config.cgi |grep -v ^# > > CGIPath http://www.indiox.net/cgi-bin/ > StaticWebPath http://www.indiox.net/blog > > ObjectDriver DBI::mysql > Database indiox > DBUser indiox > DBPassword senhafacildedescobrir:P > DBHost mysql.indiox.net > > DefaultLanguage en_US > > E continuo tendo Internal Server Error, já mudei permissões, > diretorios (/cgi-bin e etc...) da variavel CGIPath e StaticWebPath e > não to conseguindo resolver. > > ps: Não tenho acesso aos logs do Apache no momento. > > Caso, alguém tenha alguma idéia, pode dar o seu pitaco! :-) > > Obrigado, > Claudio P Costa (aka IndioX) > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From rhtriscal em gmail.com Tue Jul 6 07:38:59 2010 From: rhtriscal em gmail.com (RH Triscal) Date: Tue, 6 Jul 2010 11:38:59 -0300 Subject: [Rio-pm] Oportunidade de Perl - RJ Message-ID: Prezado Consultor, *A TRISCAL - *Consultoria em Tecnologia de Informação, com 18 anos de mercado atendendo a empresas de médio e grande porte, busca para projeto no Rio de Janeiro *Desenvolvedor Perl* Indispensável experiência em Perl e MySQL Enviar currículo ( rh em triscal.com.br ) informando pretensão salarial e disponibilidade e/ou entrar em contato com tel: 21-2507-2010 - Patrícia *Caso, não tenha interesse, solicito divulgar a oportunidade entre seu grupo de amigos. * ** Obrigada abraços .............................................................. Patrícia Guimarães - RH | TRISCAL .............................................................. Rio de Janeiro | (21) 2507-2039 São Paulo | (11) 3167-0526 www.triscal.com.br .............................................................. -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From german.valenzuela em gmail.com Tue Jul 6 08:37:51 2010 From: german.valenzuela em gmail.com (German Valenzuela) Date: Tue, 6 Jul 2010 13:37:51 -0200 Subject: [Rio-pm] Gerar stub XML::Compile::WSDL11 Message-ID: Prezados alguém sabe como gero ou se é possível gerar um stub do wsdl com o XML::Compile::WSDL11? Valeu German -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From lorn.br em gmail.com Tue Jul 6 13:19:36 2010 From: lorn.br em gmail.com (Lindolfo "Lorn" Rodrigues) Date: Tue, 6 Jul 2010 17:19:36 -0300 Subject: [Rio-pm] Gerar stub XML::Compile::WSDL11 In-Reply-To: References: Message-ID: Eu acho que não, mas caso vá trabalhar com SOAP em Perl recomendo esse modulo: http://search.cpan.org/~mkutter/SOAP-WSDL-2.00.10/lib/SOAP/WSDL/Client.pm http://search.cpan.org/~berle/SOAP-Simple-0.00_03/lib/SOAP/Simple.pm 2010/7/6 German Valenzuela > Prezados > > alguém sabe como gero ou se é possível gerar um stub do wsdl com o > XML::Compile::WSDL11? > > Valeu > German > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- lorn at lornlab dot org Lindolfo "Lorn" Rodrigues -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From jc em joaocoutinho.com.br Tue Jul 6 15:28:22 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Tue, 6 Jul 2010 19:28:22 -0300 Subject: [Rio-pm] ES de Julho Message-ID: Perlsoal, o ES é na próxima quinta. Onde vai ser? Na cervejaria que a Diana recomendou? Ou no Heavy Duty? Ou no Mercadinho? Ou onde sugerem? [ ]'s, João -- perl -E '@O=("\x61\x6e\x6f\x74\x68\x65\x72","\x50\x65\x72\x6c","\x68\x61\x63\x6b\x65\x72\x2c\xa");$J0="\x4a\x75\x73\x74\x20";say"$J0 em O"' João C. Coutinho From eu em samircury.eng.br Tue Jul 6 17:31:17 2010 From: eu em samircury.eng.br (Samir Cury) Date: Tue, 6 Jul 2010 21:31:17 -0300 Subject: [Rio-pm] ES de Julho In-Reply-To: References: Message-ID: Mercadinho ou HD, se os tijucanos quiserem Olimpiadas pra mim tambem esta maneiro. PS: Amanha tem Dojo na lapa, alguem ta afim de fechar a truta pra resolvermos em Perl? Abs 2010/7/6 João C. Coutinho > Perlsoal, > > o ES é na próxima quinta. Onde vai ser? Na cervejaria que a Diana > recomendou? Ou no Heavy Duty? Ou no Mercadinho? Ou onde sugerem? > > [ ]'s, > > João > > > > -- > perl -E > '@O=("\x61\x6e\x6f\x74\x68\x65\x72","\x50\x65\x72\x6c","\x68\x61\x63\x6b\x65\x72\x2c\xa");$J0="\x4a\x75\x73\x74\x20";say"$J0 em O > "' > > João C. Coutinho > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Tue Jul 6 17:44:20 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Tue, 6 Jul 2010 21:44:20 -0300 Subject: [Rio-pm] ES de Julho In-Reply-To: References: Message-ID: Amanhã eu nao devo ir no Dojo mas gostaria que a galera fosse. Terei happy hour com amigos do curso de alemão. Poderei sugerir irmos no Ernesto na Lapa (local onde se realiza o pós Dojo, lá é um local alemão) Seria uma boa fazer isso. 2010/7/6 Samir Cury > Mercadinho ou HD, se os tijucanos quiserem Olimpiadas pra mim tambem esta > maneiro. > > PS: Amanha tem Dojo na lapa, alguem ta afim de fechar a truta pra > resolvermos em Perl? > > Abs > > 2010/7/6 João C. Coutinho > > Perlsoal, >> >> o ES é na próxima quinta. Onde vai ser? Na cervejaria que a Diana >> recomendou? Ou no Heavy Duty? Ou no Mercadinho? Ou onde sugerem? >> >> [ ]'s, >> >> João >> >> >> >> -- >> perl -E >> '@O=("\x61\x6e\x6f\x74\x68\x65\x72","\x50\x65\x72\x6c","\x68\x61\x63\x6b\x65\x72\x2c\xa");$J0="\x4a\x75\x73\x74\x20";say"$J0 em O >> "' >> >> João C. Coutinho >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From indiox em gentoobr.org Wed Jul 7 07:33:11 2010 From: indiox em gentoobr.org (Claudio Pereira) Date: Wed, 7 Jul 2010 11:33:11 -0300 Subject: [Rio-pm] ES de Julho In-Reply-To: References: Message-ID: 2010/7/6 João C. Coutinho : > Perlsoal, > > o ES é na próxima quinta. Onde vai ser? Na cervejaria que a Diana > recomendou? Ou no Heavy Duty? Ou no Mercadinho? Ou onde sugerem? Eu voto no Heavy Duty por ser meio termo pra mim, entre o Centro (trabalho) e Casa (JPA ou Tijuca). Poderiamos tentar alguma opção no Centro do RJ, faz tempo que não tem algum por aqui. Mas também estou com saudades do Mercadinho. :-) From lfarias.rj em gmail.com Wed Jul 7 09:36:45 2010 From: lfarias.rj em gmail.com (Leonardo Farias) Date: Wed, 7 Jul 2010 13:36:45 -0300 Subject: [Rio-pm] ES de Julho In-Reply-To: References: Message-ID: Heavy Duty! Rules!!!! Saudações, Leonardo Farias Go Berserker Em 7 de julho de 2010 11:33, Claudio Pereira escreveu: > 2010/7/6 João C. Coutinho : > > Perlsoal, > > > > o ES é na próxima quinta. Onde vai ser? Na cervejaria que a Diana > > recomendou? Ou no Heavy Duty? Ou no Mercadinho? Ou onde sugerem? > > Eu voto no Heavy Duty por ser meio termo pra mim, entre o Centro > (trabalho) e Casa (JPA ou Tijuca). > > Poderiamos tentar alguma opção no Centro do RJ, faz tempo que não tem > algum por aqui. Mas também estou com saudades do Mercadinho. :-) > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Saudações, Leonardo Farias Go berserkers -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From maia em eduardomaia.com Wed Jul 7 16:53:15 2010 From: maia em eduardomaia.com (Eduardo Maia) Date: Wed, 7 Jul 2010 20:53:15 -0300 Subject: [Rio-pm] ES de Julho In-Reply-To: References: Message-ID: Monges, Estava viajando direto a trabalho, o que estava impedindo meu comparecimento aos encontros do grupo. Por conta disso, seguindo sugestão da Camila, quase puxei um ESX numa semana que eu estava no Rio Apesar de gostar muito do HD, o barulho lá é grande, o que impede de podermos conversar na boa. Desta forma, minha sugestão seria o Mercadinho. Mothé, Rafael, Camila... vamos nessa? Abraços! -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Wed Jul 7 17:07:45 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Wed, 7 Jul 2010 21:07:45 -0300 Subject: [Rio-pm] ES de Julho In-Reply-To: References: Message-ID: Mercadinho!!!! Enviado via Milestone / Sent by Milestone. Em 07/07/2010 20:53, "Eduardo Maia" escreveu: Monges, Estava viajando direto a trabalho, o que estava impedindo meu comparecimento aos encontros do grupo. Por conta disso, seguindo sugestão da Camila, quase puxei um ESX numa semana que eu estava no Rio Apesar de gostar muito do HD, o barulho lá é grande, o que impede de podermos conversar na boa. Desta forma, minha sugestão seria o Mercadinho. Mothé, Rafael, Camila... vamos nessa? Abraços! _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From diana.g.a.rosa em gmail.com Wed Jul 7 17:53:40 2010 From: diana.g.a.rosa em gmail.com (Diana Rosa) Date: Wed, 7 Jul 2010 21:53:40 -0300 Subject: [Rio-pm] ES de Julho In-Reply-To: References: Message-ID: Mercadinho =) 2010/7/7 Oscar Marques > Mercadinho!!!! > > Enviado via Milestone / Sent by Milestone. > > Em 07/07/2010 20:53, "Eduardo Maia" escreveu: > > > Monges, > > Estava viajando direto a trabalho, o que estava impedindo meu > comparecimento aos encontros do grupo. Por conta disso, seguindo sugestão da > Camila, quase puxei um ESX numa semana que eu estava no Rio > > Apesar de gostar muito do HD, o barulho lá é grande, o que impede de > podermos conversar na boa. Desta forma, minha sugestão seria o Mercadinho. > > Mothé, Rafael, Camila... vamos nessa? > > Abraços! > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Wed Jul 7 18:14:59 2010 From: eu em samircury.eng.br (Samir Cury) Date: Wed, 7 Jul 2010 22:14:59 -0300 Subject: [Rio-pm] ES de Julho In-Reply-To: References: Message-ID: Para o bem de todos e felicidade geral da nacao, mudo meu voto(?) para o mercadinho! 2010/7/7 Diana Rosa > Mercadinho =) > > 2010/7/7 Oscar Marques > > Mercadinho!!!! >> >> Enviado via Milestone / Sent by Milestone. >> >> Em 07/07/2010 20:53, "Eduardo Maia" escreveu: >> >> >> Monges, >> >> Estava viajando direto a trabalho, o que estava impedindo meu >> comparecimento aos encontros do grupo. Por conta disso, seguindo sugestão da >> Camila, quase puxei um ESX numa semana que eu estava no Rio >> >> Apesar de gostar muito do HD, o barulho lá é grande, o que impede de >> podermos conversar na boa. Desta forma, minha sugestão seria o Mercadinho. >> >> Mothé, Rafael, Camila... vamos nessa? >> >> Abraços! >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From jc em joaocoutinho.com.br Wed Jul 7 19:13:47 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Wed, 7 Jul 2010 23:13:47 -0300 Subject: [Rio-pm] ES de Julho In-Reply-To: References: Message-ID: Então vai ser no Mercadinho? Vejo vocês lá amanhã! On 07/07/2010, Samir Cury wrote: > Para o bem de todos e felicidade geral da nacao, mudo meu voto(?) para o > mercadinho! > > 2010/7/7 Diana Rosa > >> Mercadinho =) >> >> 2010/7/7 Oscar Marques >> >> Mercadinho!!!! >>> >>> Enviado via Milestone / Sent by Milestone. >>> >>> Em 07/07/2010 20:53, "Eduardo Maia" escreveu: >>> >>> >>> Monges, >>> >>> Estava viajando direto a trabalho, o que estava impedindo meu >>> comparecimento aos encontros do grupo. Por conta disso, seguindo sugestão >>> da >>> Camila, quase puxei um ESX numa semana que eu estava no Rio >>> >>> Apesar de gostar muito do HD, o barulho lá é grande, o que impede de >>> podermos conversar na boa. Desta forma, minha sugestão seria o >>> Mercadinho. >>> >>> Mothé, Rafael, Camila... vamos nessa? >>> >>> Abraços! >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > -- perl -E '@O=("\x61\x6e\x6f\x74\x68\x65\x72","\x50\x65\x72\x6c","\x68\x61\x63\x6b\x65\x72\x2c\xa");$J0="\x4a\x75\x73\x74\x20";say"$J0 em O"' João C. Coutinho From lfarias.rj em gmail.com Wed Jul 7 19:21:34 2010 From: lfarias.rj em gmail.com (Leonardo Farias) Date: Wed, 7 Jul 2010 23:21:34 -0300 Subject: [Rio-pm] ES de Julho In-Reply-To: References: Message-ID: Barulho? hahahahhaha 2010/7/7 Eduardo Maia > Monges, > > Estava viajando direto a trabalho, o que estava impedindo meu > comparecimento aos encontros do grupo. Por conta disso, seguindo sugestão da > Camila, quase puxei um ESX numa semana que eu estava no Rio > > Apesar de gostar muito do HD, o barulho lá é grande, o que impede de > podermos conversar na boa. Desta forma, minha sugestão seria o Mercadinho. > > Mothé, Rafael, Camila... vamos nessa? > > Abraços! > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Saudações, Leonardo Farias Go berserkers -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From jasimioni em gmail.com Fri Jul 9 13:48:41 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Fri, 9 Jul 2010 17:48:41 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura Message-ID: Caros, tenho um script para testar cerca de 4700 equipamentos, usando ping. Queria usar cerca 250 threads para isso, então o que eu fiz foi quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para cada. Não há nenhum problema com o código, o que acontece é que o tempo de abertura das threads é muito alto. E quanto mais threads eu abro, maior o tempo para abertura das próximas. As primeiras abrem em 30ms, mas perto da thread 70 esse tempo já vai para quase 1 segundo. Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra solução? Segue o output do script como exemplo: Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 elementos cada Trying to create thread in Fri Jul  9 17:46:50 2010.61858 Created thread 1 (1) - took 0.030138 seconds to create Trying to create thread in Fri Jul  9 17:46:50 2010.92080 Created thread 2 (2) - took 0.042668 seconds to create Trying to create thread in Fri Jul  9 17:46:50 2010.134968 Created thread 3 (3) - took 0.064245 seconds to create Trying to create thread in Fri Jul  9 17:46:50 2010.199430 Created thread 4 (4) - took 0.082642 seconds to create Trying to create thread in Fri Jul  9 17:46:50 2010.282278 Created thread 5 (5) - took 0.128257 seconds to create Trying to create thread in Fri Jul  9 17:46:50 2010.410769 Created thread 6 (6) - took 0.136458 seconds to create Trying to create thread in Fri Jul  9 17:46:50 2010.547383 Created thread 7 (7) - took 0.208085 seconds to create Trying to create thread in Fri Jul  9 17:46:50 2010.755594 Created thread 8 (8) - took 0.173014 seconds to create Trying to create thread in Fri Jul  9 17:46:50 2010.928756 Created thread 9 (9) - took 0.132713 seconds to create Trying to create thread in Fri Jul  9 17:46:51 2010.61608 Created thread 10 (10) - took 0.127795 seconds to create Trying to create thread in Fri Jul  9 17:46:51 2010.189536 Created thread 11 (11) - took 0.301836 seconds to create Obrigado João André Simioni #!/usr/bin/perl use strict; use DBI; use Net::Ping; use Time::HiRes qw/usleep tv_interval gettimeofday/; use threads ('yield', 'stack_size' => 32*4096, 'exit' => 'threads_only', 'stringify'); my $host = '192.168.160.179'; my $sid  = 'HOMOLOG'; my $user = 'mac_user'; my $pass = 'mac_user'; my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, { AutoCommit => 1 }); my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND CPE_ATIVO = ?'); $sth->execute('1', 'A'); my @cpes; while (my (@row) = $sth->fetchrow_array) {     push @cpes, [ @row ]; } $dbh->disconnect(); my $maxThreads = 250; my $total      = @cpes; my $cpePerThread = int($total / $maxThreads); my @toMonitor; my $i = 0; my $c = 0; foreach my $cpe (@cpes) {     push @{$toMonitor[$i]}, $cpe;     $c++;     if ($c > $cpePerThread) {         $i++;         $c = 0;     } } print "Para $total cpes, e $maxThreads threads, tenho no final $i grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; sub processResult {     my $r = shift;     if (ref $r ne 'ARRAY') {         print STDERR "Erro na thread\n";         return 0;     }     my ($result, $host, $ifs) = @$r; } sub testeClient {     my $threadNum = shift;     my $cpeGroup  = shift;     foreach my $cpe (@{$cpeGroup}) {         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = @$cpe;         my $pingOk = &checkIp($cpeIp);         my $status = $pingOk ? 'RESPONDE' : 'MORTO';         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf, $status), "\n";     }     # print "Finishing thread $threadNum\n";     return([1, 0]); } my $threadCount = 1; foreach my $cpeGroup (@toMonitor) {     print "Trying to create thread";     my $t0 = [gettimeofday];     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n";     my $thr = threads->create({scalar => '1'}, 'testeClient', $threadCount, $cpeGroup);     my $elapsed = tv_interval ( $t0, [gettimeofday]);     print "Created thread $thr ($threadCount) - took $elapsed seconds to create\n";     $threadCount++;     while (threads->list() >= $maxThreads) {         my @joinable = threads->list(threads::joinable);         for (@joinable) {             my $r = $_->join();             &processResult($r);         }         usleep(10000);     }     my $elapsed = tv_interval ( $t0, [gettimeofday]); } while (threads->list()) {     my @joinable = threads->list(threads::joinable);     for (@joinable) {         my $r = $_->join();         &processResult($r);     }     usleep(10000); } sub checkIp {     my $ip = shift;     my $pingOk = 0;     eval {         for (1..3) {             my $ping = `/bin/ping -c 1 -w 1 $ip`;             if (grep { / 0% packet loss/ } $ping) {                 $pingOk = 1;                 return 1;             }             if ($pingOk == 0) {                 my $p = Net::Ping->new('icmp');                 $p->service_check(1);                 if ($p->ping($ip, 1)) {                     $pingOk = 1;                     return 1;                 }             }             if ($pingOk == 0) {                 my $p = Net::Ping->new('udp');                 $p->service_check(1);                 if ($p->ping($ip, 1)) {                     $pingOk = 1;                     return 1;                 }             }             sleep 3;         }     };     return $pingOk; } From lorn.br em gmail.com Fri Jul 9 14:01:51 2010 From: lorn.br em gmail.com (Lindolfo "Lorn" Rodrigues) Date: Fri, 9 Jul 2010 18:01:51 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: João, estou com pressa agora e não posso detalhar muito o email, mas tente trocar sua solução de threads pelo POE http://search.cpan.org/~rcaputo/POE-1.289/lib/POE.pm Vai parecer um pouco complicado no inicio, mas depois que pega o jeito você vai gostar :) Tem muitos exemplos aqui http://poe.perl.org/?POE_Cookbook a maioria das coisas que fiz com ele eu usei como base algum script desse Cookbook. Enjoy! 2010/7/9 João André Simioni > Caros, > > tenho um script para testar cerca de 4700 equipamentos, usando ping. > Queria usar cerca 250 threads para isso, então o que eu fiz foi > quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para > cada. > > Não há nenhum problema com o código, o que acontece é que o tempo de > abertura das threads é muito alto. E quanto mais threads eu abro, > maior o tempo para abertura das próximas. As primeiras abrem em 30ms, > mas perto da thread 70 esse tempo já vai para quase 1 segundo. > > Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra solução? > > Segue o output do script como exemplo: > Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 elementos > cada > Trying to create thread in Fri Jul 9 17:46:50 2010.61858 > Created thread 1 (1) - took 0.030138 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.92080 > Created thread 2 (2) - took 0.042668 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.134968 > Created thread 3 (3) - took 0.064245 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.199430 > Created thread 4 (4) - took 0.082642 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.282278 > Created thread 5 (5) - took 0.128257 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.410769 > Created thread 6 (6) - took 0.136458 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.547383 > Created thread 7 (7) - took 0.208085 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.755594 > Created thread 8 (8) - took 0.173014 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.928756 > Created thread 9 (9) - took 0.132713 seconds to create > Trying to create thread in Fri Jul 9 17:46:51 2010.61608 > Created thread 10 (10) - took 0.127795 seconds to create > Trying to create thread in Fri Jul 9 17:46:51 2010.189536 > Created thread 11 (11) - took 0.301836 seconds to create > > Obrigado > > João André Simioni > > > > #!/usr/bin/perl > > use strict; > use DBI; > use Net::Ping; > use Time::HiRes qw/usleep tv_interval gettimeofday/; > use threads ('yield', 'stack_size' => 32*4096, 'exit' => > 'threads_only', 'stringify'); > > my $host = '192.168.160.179'; > my $sid = 'HOMOLOG'; > my $user = 'mac_user'; > my $pass = 'mac_user'; > > my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, > { AutoCommit => 1 }); > > my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, > CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND > CPE_ATIVO = ?'); > $sth->execute('1', 'A'); > > my @cpes; > > while (my (@row) = $sth->fetchrow_array) { > push @cpes, [ @row ]; > } > > $dbh->disconnect(); > > my $maxThreads = 250; > my $total = @cpes; > > my $cpePerThread = int($total / $maxThreads); > > my @toMonitor; > my $i = 0; > my $c = 0; > > foreach my $cpe (@cpes) { > push @{$toMonitor[$i]}, $cpe; > $c++; > > if ($c > $cpePerThread) { > $i++; > $c = 0; > } > } > > print "Para $total cpes, e $maxThreads threads, tenho no final $i > grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; > > sub processResult { > my $r = shift; > if (ref $r ne 'ARRAY') { > print STDERR "Erro na thread\n"; > return 0; > } > my ($result, $host, $ifs) = @$r; > > } > > sub testeClient { > my $threadNum = shift; > my $cpeGroup = shift; > foreach my $cpe (@{$cpeGroup}) { > my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = @$cpe; > my $pingOk = &checkIp($cpeIp); > my $status = $pingOk ? 'RESPONDE' : 'MORTO'; > # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, > $cpeIp, $cpeNode, $cpeIf, $status), "\n"; > } > # print "Finishing thread $threadNum\n"; > return([1, 0]); > } > > my $threadCount = 1; > foreach my $cpeGroup (@toMonitor) { > print "Trying to create thread"; > my $t0 = [gettimeofday]; > > print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; > > my $thr = threads->create({scalar => '1'}, 'testeClient', > $threadCount, $cpeGroup); > my $elapsed = tv_interval ( $t0, [gettimeofday]); > print "Created thread $thr ($threadCount) - took $elapsed seconds > to create\n"; > $threadCount++; > > while (threads->list() >= $maxThreads) { > my @joinable = threads->list(threads::joinable); > for (@joinable) { > my $r = $_->join(); > &processResult($r); > } > usleep(10000); > } > my $elapsed = tv_interval ( $t0, [gettimeofday]); > } > > while (threads->list()) { > my @joinable = threads->list(threads::joinable); > for (@joinable) { > my $r = $_->join(); > &processResult($r); > } > usleep(10000); > } > > sub checkIp { > my $ip = shift; > my $pingOk = 0; > > eval { > for (1..3) { > my $ping = `/bin/ping -c 1 -w 1 $ip`; > > if (grep { / 0% packet loss/ } $ping) { > $pingOk = 1; > return 1; > } > > if ($pingOk == 0) { > my $p = Net::Ping->new('icmp'); > $p->service_check(1); > if ($p->ping($ip, 1)) { > $pingOk = 1; > return 1; > } > } > > if ($pingOk == 0) { > my $p = Net::Ping->new('udp'); > $p->service_check(1); > if ($p->ping($ip, 1)) { > $pingOk = 1; > return 1; > } > } > > sleep 3; > } > }; > > return $pingOk; > } > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- lorn at lornlab dot org Lindolfo "Lorn" Rodrigues -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From fernandocorrea em gmail.com Fri Jul 9 14:31:20 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Fri, 9 Jul 2010 18:31:20 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: João, Vc não poderia, ao inves de criar varias vezes várias threads, criar um array shared com os ips q devem ser pingados e criar as 18 threads com um loop fazendo shift nesse array? No final vc teria apenas 18 threads... use threads; use threads::shared; my $max_threads = 18; my @ips : shared; my %result : shared; @ips = get_ips(); for(1 .. $max_threads){ threads->create(\&ping_thr)->detach; } sub ping_thr { while( my $ip = shift @ips) { $result{$ip} = testa_ping($ip); } } Isso é só um código de explicação, mas acho q ficou clara a minha ideia, não? outra coisa q vc pode tentar tb é não usar o threads, mas sim o forks, parece q a performance do forks é muito superior. Just another Perl Hacker, Fernando (SmokeMachine) http://perl-e.org 2010/7/9 Lindolfo "Lorn" Rodrigues > João, estou com pressa agora e não posso detalhar muito o email, mas tente > trocar sua solução de threads pelo POE > > http://search.cpan.org/~rcaputo/POE-1.289/lib/POE.pm > > Vai parecer um pouco complicado no inicio, mas depois que pega o jeito você > vai gostar :) > Tem muitos exemplos aqui http://poe.perl.org/?POE_Cookbook a maioria das > coisas que fiz com ele eu usei como base algum script desse Cookbook. > > Enjoy! > > > 2010/7/9 João André Simioni > > Caros, >> >> tenho um script para testar cerca de 4700 equipamentos, usando ping. >> Queria usar cerca 250 threads para isso, então o que eu fiz foi >> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para >> cada. >> >> Não há nenhum problema com o código, o que acontece é que o tempo de >> abertura das threads é muito alto. E quanto mais threads eu abro, >> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >> >> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra solução? >> >> Segue o output do script como exemplo: >> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 elementos >> cada >> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 >> Created thread 1 (1) - took 0.030138 seconds to create >> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 >> Created thread 2 (2) - took 0.042668 seconds to create >> Trying to create thread in Fri Jul 9 17:46:50 2010.134968 >> Created thread 3 (3) - took 0.064245 seconds to create >> Trying to create thread in Fri Jul 9 17:46:50 2010.199430 >> Created thread 4 (4) - took 0.082642 seconds to create >> Trying to create thread in Fri Jul 9 17:46:50 2010.282278 >> Created thread 5 (5) - took 0.128257 seconds to create >> Trying to create thread in Fri Jul 9 17:46:50 2010.410769 >> Created thread 6 (6) - took 0.136458 seconds to create >> Trying to create thread in Fri Jul 9 17:46:50 2010.547383 >> Created thread 7 (7) - took 0.208085 seconds to create >> Trying to create thread in Fri Jul 9 17:46:50 2010.755594 >> Created thread 8 (8) - took 0.173014 seconds to create >> Trying to create thread in Fri Jul 9 17:46:50 2010.928756 >> Created thread 9 (9) - took 0.132713 seconds to create >> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 >> Created thread 10 (10) - took 0.127795 seconds to create >> Trying to create thread in Fri Jul 9 17:46:51 2010.189536 >> Created thread 11 (11) - took 0.301836 seconds to create >> >> Obrigado >> >> João André Simioni >> >> >> >> #!/usr/bin/perl >> >> use strict; >> use DBI; >> use Net::Ping; >> use Time::HiRes qw/usleep tv_interval gettimeofday/; >> use threads ('yield', 'stack_size' => 32*4096, 'exit' => >> 'threads_only', 'stringify'); >> >> my $host = '192.168.160.179'; >> my $sid = 'HOMOLOG'; >> my $user = 'mac_user'; >> my $pass = 'mac_user'; >> >> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, >> { AutoCommit => 1 }); >> >> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >> CPE_ATIVO = ?'); >> $sth->execute('1', 'A'); >> >> my @cpes; >> >> while (my (@row) = $sth->fetchrow_array) { >> push @cpes, [ @row ]; >> } >> >> $dbh->disconnect(); >> >> my $maxThreads = 250; >> my $total = @cpes; >> >> my $cpePerThread = int($total / $maxThreads); >> >> my @toMonitor; >> my $i = 0; >> my $c = 0; >> >> foreach my $cpe (@cpes) { >> push @{$toMonitor[$i]}, $cpe; >> $c++; >> >> if ($c > $cpePerThread) { >> $i++; >> $c = 0; >> } >> } >> >> print "Para $total cpes, e $maxThreads threads, tenho no final $i >> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >> >> sub processResult { >> my $r = shift; >> if (ref $r ne 'ARRAY') { >> print STDERR "Erro na thread\n"; >> return 0; >> } >> my ($result, $host, $ifs) = @$r; >> >> } >> >> sub testeClient { >> my $threadNum = shift; >> my $cpeGroup = shift; >> foreach my $cpe (@{$cpeGroup}) { >> my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = >> @$cpe; >> my $pingOk = &checkIp($cpeIp); >> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >> # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >> } >> # print "Finishing thread $threadNum\n"; >> return([1, 0]); >> } >> >> my $threadCount = 1; >> foreach my $cpeGroup (@toMonitor) { >> print "Trying to create thread"; >> my $t0 = [gettimeofday]; >> >> print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >> >> my $thr = threads->create({scalar => '1'}, 'testeClient', >> $threadCount, $cpeGroup); >> my $elapsed = tv_interval ( $t0, [gettimeofday]); >> print "Created thread $thr ($threadCount) - took $elapsed seconds >> to create\n"; >> $threadCount++; >> >> while (threads->list() >= $maxThreads) { >> my @joinable = threads->list(threads::joinable); >> for (@joinable) { >> my $r = $_->join(); >> &processResult($r); >> } >> usleep(10000); >> } >> my $elapsed = tv_interval ( $t0, [gettimeofday]); >> } >> >> while (threads->list()) { >> my @joinable = threads->list(threads::joinable); >> for (@joinable) { >> my $r = $_->join(); >> &processResult($r); >> } >> usleep(10000); >> } >> >> sub checkIp { >> my $ip = shift; >> my $pingOk = 0; >> >> eval { >> for (1..3) { >> my $ping = `/bin/ping -c 1 -w 1 $ip`; >> >> if (grep { / 0% packet loss/ } $ping) { >> $pingOk = 1; >> return 1; >> } >> >> if ($pingOk == 0) { >> my $p = Net::Ping->new('icmp'); >> $p->service_check(1); >> if ($p->ping($ip, 1)) { >> $pingOk = 1; >> return 1; >> } >> } >> >> if ($pingOk == 0) { >> my $p = Net::Ping->new('udp'); >> $p->service_check(1); >> if ($p->ping($ip, 1)) { >> $pingOk = 1; >> return 1; >> } >> } >> >> sleep 3; >> } >> }; >> >> return $pingOk; >> } >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > lorn at lornlab dot org > Lindolfo "Lorn" Rodrigues > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From jasimioni em gmail.com Fri Jul 9 14:39:39 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Fri, 9 Jul 2010 18:39:39 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Com 18 threads, cada thread faria, sequencialmente, 261 testes. E esse é o grande problema. Os testes com sucesso são rápidos, mas as falhas demoram cerca de 15 segundos (3 tentativas, com 1 segundo de timeout cada, com um intervalo de 3 segundos entre eles). Por isso cada thread não pode ter muitos elementos para testar (20 é um bom número). E eu preciso otimizar esse código para executar a cada um minuto. O que eu estou fazendo para contornar o problema é abrir 8 processos distintos com fork, e cada processo abre um conjunto de 30 threads. Mas mesmo assim não é uma solução 'elegante'. O duro é ainda ver o pessoal de Java aqui do lado abrindo 800 threads tranquilamente hehe. Obrigado João André Simioni 2010/7/9 Fernando Oliveira : > João, > Vc não poderia, ao inves de criar varias vezes várias threads, criar um > array shared com os ips q devem ser pingados e criar as 18 threads com um > loop fazendo shift nesse array? No final vc teria apenas 18 threads... > > use threads; > use threads::shared; > my $max_threads = 18; > my @ips : shared; > my %result : shared; > @ips = get_ips(); > for(1 .. $max_threads){ >    threads->create(\&ping_thr)->detach; > } > sub ping_thr { >    while( my $ip = shift @ips) { >       $result{$ip} = testa_ping($ip); >    } > } > > Isso é só um código de explicação, mas acho q ficou clara a minha ideia, > não? > outra coisa q vc pode tentar tb é não usar o threads, mas sim o forks, > parece q a performance do forks é muito superior. > > > > Just another Perl Hacker, > Fernando (SmokeMachine) > http://perl-e.org > > > 2010/7/9 Lindolfo "Lorn" Rodrigues >> >> João, estou com pressa agora e não posso detalhar muito o email, mas tente >> trocar sua solução de threads pelo POE >> http://search.cpan.org/~rcaputo/POE-1.289/lib/POE.pm >> Vai parecer um pouco complicado no inicio, mas depois que pega o jeito >> você vai gostar :) >> Tem muitos exemplos aqui http://poe.perl.org/?POE_Cookbook a maioria das >> coisas que fiz com ele eu usei como base algum script desse Cookbook. >> Enjoy! >> >> 2010/7/9 João André Simioni >>> >>> Caros, >>> >>> tenho um script para testar cerca de 4700 equipamentos, usando ping. >>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para >>> cada. >>> >>> Não há nenhum problema com o código, o que acontece é que o tempo de >>> abertura das threads é muito alto. E quanto mais threads eu abro, >>> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>> >>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra >>> solução? >>> >>> Segue o output do script como exemplo: >>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 >>> elementos cada >>> Trying to create thread in Fri Jul  9 17:46:50 2010.61858 >>> Created thread 1 (1) - took 0.030138 seconds to create >>> Trying to create thread in Fri Jul  9 17:46:50 2010.92080 >>> Created thread 2 (2) - took 0.042668 seconds to create >>> Trying to create thread in Fri Jul  9 17:46:50 2010.134968 >>> Created thread 3 (3) - took 0.064245 seconds to create >>> Trying to create thread in Fri Jul  9 17:46:50 2010.199430 >>> Created thread 4 (4) - took 0.082642 seconds to create >>> Trying to create thread in Fri Jul  9 17:46:50 2010.282278 >>> Created thread 5 (5) - took 0.128257 seconds to create >>> Trying to create thread in Fri Jul  9 17:46:50 2010.410769 >>> Created thread 6 (6) - took 0.136458 seconds to create >>> Trying to create thread in Fri Jul  9 17:46:50 2010.547383 >>> Created thread 7 (7) - took 0.208085 seconds to create >>> Trying to create thread in Fri Jul  9 17:46:50 2010.755594 >>> Created thread 8 (8) - took 0.173014 seconds to create >>> Trying to create thread in Fri Jul  9 17:46:50 2010.928756 >>> Created thread 9 (9) - took 0.132713 seconds to create >>> Trying to create thread in Fri Jul  9 17:46:51 2010.61608 >>> Created thread 10 (10) - took 0.127795 seconds to create >>> Trying to create thread in Fri Jul  9 17:46:51 2010.189536 >>> Created thread 11 (11) - took 0.301836 seconds to create >>> >>> Obrigado >>> >>> João André Simioni >>> >>> >>> >>> #!/usr/bin/perl >>> >>> use strict; >>> use DBI; >>> use Net::Ping; >>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>> use threads ('yield', 'stack_size' => 32*4096, 'exit' => >>> 'threads_only', 'stringify'); >>> >>> my $host = '192.168.160.179'; >>> my $sid  = 'HOMOLOG'; >>> my $user = 'mac_user'; >>> my $pass = 'mac_user'; >>> >>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, >>> { AutoCommit => 1 }); >>> >>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>> CPE_ATIVO = ?'); >>> $sth->execute('1', 'A'); >>> >>> my @cpes; >>> >>> while (my (@row) = $sth->fetchrow_array) { >>>     push @cpes, [ @row ]; >>> } >>> >>> $dbh->disconnect(); >>> >>> my $maxThreads = 250; >>> my $total      = @cpes; >>> >>> my $cpePerThread = int($total / $maxThreads); >>> >>> my @toMonitor; >>> my $i = 0; >>> my $c = 0; >>> >>> foreach my $cpe (@cpes) { >>>     push @{$toMonitor[$i]}, $cpe; >>>     $c++; >>> >>>     if ($c > $cpePerThread) { >>>         $i++; >>>         $c = 0; >>>     } >>> } >>> >>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>> >>> sub processResult { >>>     my $r = shift; >>>     if (ref $r ne 'ARRAY') { >>>         print STDERR "Erro na thread\n"; >>>         return 0; >>>     } >>>     my ($result, $host, $ifs) = @$r; >>> >>> } >>> >>> sub testeClient { >>>     my $threadNum = shift; >>>     my $cpeGroup  = shift; >>>     foreach my $cpe (@{$cpeGroup}) { >>>         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = >>> @$cpe; >>>         my $pingOk = &checkIp($cpeIp); >>>         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>     } >>>     # print "Finishing thread $threadNum\n"; >>>     return([1, 0]); >>> } >>> >>> my $threadCount = 1; >>> foreach my $cpeGroup (@toMonitor) { >>>     print "Trying to create thread"; >>>     my $t0 = [gettimeofday]; >>> >>>     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>> >>>     my $thr = threads->create({scalar => '1'}, 'testeClient', >>> $threadCount, $cpeGroup); >>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>     print "Created thread $thr ($threadCount) - took $elapsed seconds >>> to create\n"; >>>     $threadCount++; >>> >>>     while (threads->list() >= $maxThreads) { >>>         my @joinable = threads->list(threads::joinable); >>>         for (@joinable) { >>>             my $r = $_->join(); >>>             &processResult($r); >>>         } >>>         usleep(10000); >>>     } >>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>> } >>> >>> while (threads->list()) { >>>     my @joinable = threads->list(threads::joinable); >>>     for (@joinable) { >>>         my $r = $_->join(); >>>         &processResult($r); >>>     } >>>     usleep(10000); >>> } >>> >>> sub checkIp { >>>     my $ip = shift; >>>     my $pingOk = 0; >>> >>>     eval { >>>         for (1..3) { >>>             my $ping = `/bin/ping -c 1 -w 1 $ip`; >>> >>>             if (grep { / 0% packet loss/ } $ping) { >>>                 $pingOk = 1; >>>                 return 1; >>>             } >>> >>>             if ($pingOk == 0) { >>>                 my $p = Net::Ping->new('icmp'); >>>                 $p->service_check(1); >>>                 if ($p->ping($ip, 1)) { >>>                     $pingOk = 1; >>>                     return 1; >>>                 } >>>             } >>> >>>             if ($pingOk == 0) { >>>                 my $p = Net::Ping->new('udp'); >>>                 $p->service_check(1); >>>                 if ($p->ping($ip, 1)) { >>>                     $pingOk = 1; >>>                     return 1; >>>                 } >>>             } >>> >>>             sleep 3; >>>         } >>>     }; >>> >>>     return $pingOk; >>> } >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> >> -- >> lorn at lornlab dot org >> Lindolfo "Lorn" Rodrigues >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From fernandocorrea em gmail.com Fri Jul 9 14:42:48 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Fri, 9 Jul 2010 18:42:48 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: João, Acho q não me expressei direito, o forks q eu falei é esse aqui: http://search.cpan.org/~rybskej/forks-0.34/lib/forks.pm Just another Perl Hacker, Fernando (SmokeMachine) http://perl-e.org Em 9 de julho de 2010 18:39, João André Simioni escreveu: > Com 18 threads, cada thread faria, sequencialmente, 261 testes. E esse > é o grande problema. Os testes com sucesso são rápidos, mas as falhas > demoram > cerca de 15 segundos (3 tentativas, com 1 segundo de timeout cada, com > um intervalo de 3 segundos entre eles). Por isso cada thread não pode > ter muitos elementos para testar (20 é um bom número). > > E eu preciso otimizar esse código para executar a cada um minuto. > > O que eu estou fazendo para contornar o problema é abrir 8 processos > distintos com fork, e cada processo abre um conjunto de 30 threads. > Mas mesmo assim não é uma solução 'elegante'. O duro é ainda ver o > pessoal de Java aqui do lado abrindo 800 threads tranquilamente hehe. > > Obrigado > > João André Simioni > > > 2010/7/9 Fernando Oliveira : > > João, > > Vc não poderia, ao inves de criar varias vezes várias threads, criar um > > array shared com os ips q devem ser pingados e criar as 18 threads com um > > loop fazendo shift nesse array? No final vc teria apenas 18 threads... > > > > use threads; > > use threads::shared; > > my $max_threads = 18; > > my @ips : shared; > > my %result : shared; > > @ips = get_ips(); > > for(1 .. $max_threads){ > > threads->create(\&ping_thr)->detach; > > } > > sub ping_thr { > > while( my $ip = shift @ips) { > > $result{$ip} = testa_ping($ip); > > } > > } > > > > Isso é só um código de explicação, mas acho q ficou clara a minha ideia, > > não? > > outra coisa q vc pode tentar tb é não usar o threads, mas sim o forks, > > parece q a performance do forks é muito superior. > > > > > > > > Just another Perl Hacker, > > Fernando (SmokeMachine) > > http://perl-e.org > > > > > > 2010/7/9 Lindolfo "Lorn" Rodrigues > >> > >> João, estou com pressa agora e não posso detalhar muito o email, mas > tente > >> trocar sua solução de threads pelo POE > >> http://search.cpan.org/~rcaputo/POE-1.289/lib/POE.pm > >> Vai parecer um pouco complicado no inicio, mas depois que pega o jeito > >> você vai gostar :) > >> Tem muitos exemplos aqui http://poe.perl.org/?POE_Cookbook a maioria > das > >> coisas que fiz com ele eu usei como base algum script desse Cookbook. > >> Enjoy! > >> > >> 2010/7/9 João André Simioni > >>> > >>> Caros, > >>> > >>> tenho um script para testar cerca de 4700 equipamentos, usando ping. > >>> Queria usar cerca 250 threads para isso, então o que eu fiz foi > >>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para > >>> cada. > >>> > >>> Não há nenhum problema com o código, o que acontece é que o tempo de > >>> abertura das threads é muito alto. E quanto mais threads eu abro, > >>> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, > >>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. > >>> > >>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra > >>> solução? > >>> > >>> Segue o output do script como exemplo: > >>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 > >>> elementos cada > >>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 > >>> Created thread 1 (1) - took 0.030138 seconds to create > >>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 > >>> Created thread 2 (2) - took 0.042668 seconds to create > >>> Trying to create thread in Fri Jul 9 17:46:50 2010.134968 > >>> Created thread 3 (3) - took 0.064245 seconds to create > >>> Trying to create thread in Fri Jul 9 17:46:50 2010.199430 > >>> Created thread 4 (4) - took 0.082642 seconds to create > >>> Trying to create thread in Fri Jul 9 17:46:50 2010.282278 > >>> Created thread 5 (5) - took 0.128257 seconds to create > >>> Trying to create thread in Fri Jul 9 17:46:50 2010.410769 > >>> Created thread 6 (6) - took 0.136458 seconds to create > >>> Trying to create thread in Fri Jul 9 17:46:50 2010.547383 > >>> Created thread 7 (7) - took 0.208085 seconds to create > >>> Trying to create thread in Fri Jul 9 17:46:50 2010.755594 > >>> Created thread 8 (8) - took 0.173014 seconds to create > >>> Trying to create thread in Fri Jul 9 17:46:50 2010.928756 > >>> Created thread 9 (9) - took 0.132713 seconds to create > >>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 > >>> Created thread 10 (10) - took 0.127795 seconds to create > >>> Trying to create thread in Fri Jul 9 17:46:51 2010.189536 > >>> Created thread 11 (11) - took 0.301836 seconds to create > >>> > >>> Obrigado > >>> > >>> João André Simioni > >>> > >>> > >>> > >>> #!/usr/bin/perl > >>> > >>> use strict; > >>> use DBI; > >>> use Net::Ping; > >>> use Time::HiRes qw/usleep tv_interval gettimeofday/; > >>> use threads ('yield', 'stack_size' => 32*4096, 'exit' => > >>> 'threads_only', 'stringify'); > >>> > >>> my $host = '192.168.160.179'; > >>> my $sid = 'HOMOLOG'; > >>> my $user = 'mac_user'; > >>> my $pass = 'mac_user'; > >>> > >>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, > >>> { AutoCommit => 1 }); > >>> > >>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, > >>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND > >>> CPE_ATIVO = ?'); > >>> $sth->execute('1', 'A'); > >>> > >>> my @cpes; > >>> > >>> while (my (@row) = $sth->fetchrow_array) { > >>> push @cpes, [ @row ]; > >>> } > >>> > >>> $dbh->disconnect(); > >>> > >>> my $maxThreads = 250; > >>> my $total = @cpes; > >>> > >>> my $cpePerThread = int($total / $maxThreads); > >>> > >>> my @toMonitor; > >>> my $i = 0; > >>> my $c = 0; > >>> > >>> foreach my $cpe (@cpes) { > >>> push @{$toMonitor[$i]}, $cpe; > >>> $c++; > >>> > >>> if ($c > $cpePerThread) { > >>> $i++; > >>> $c = 0; > >>> } > >>> } > >>> > >>> print "Para $total cpes, e $maxThreads threads, tenho no final $i > >>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; > >>> > >>> sub processResult { > >>> my $r = shift; > >>> if (ref $r ne 'ARRAY') { > >>> print STDERR "Erro na thread\n"; > >>> return 0; > >>> } > >>> my ($result, $host, $ifs) = @$r; > >>> > >>> } > >>> > >>> sub testeClient { > >>> my $threadNum = shift; > >>> my $cpeGroup = shift; > >>> foreach my $cpe (@{$cpeGroup}) { > >>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = > >>> @$cpe; > >>> my $pingOk = &checkIp($cpeIp); > >>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; > >>> # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, > >>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; > >>> } > >>> # print "Finishing thread $threadNum\n"; > >>> return([1, 0]); > >>> } > >>> > >>> my $threadCount = 1; > >>> foreach my $cpeGroup (@toMonitor) { > >>> print "Trying to create thread"; > >>> my $t0 = [gettimeofday]; > >>> > >>> print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; > >>> > >>> my $thr = threads->create({scalar => '1'}, 'testeClient', > >>> $threadCount, $cpeGroup); > >>> my $elapsed = tv_interval ( $t0, [gettimeofday]); > >>> print "Created thread $thr ($threadCount) - took $elapsed seconds > >>> to create\n"; > >>> $threadCount++; > >>> > >>> while (threads->list() >= $maxThreads) { > >>> my @joinable = threads->list(threads::joinable); > >>> for (@joinable) { > >>> my $r = $_->join(); > >>> &processResult($r); > >>> } > >>> usleep(10000); > >>> } > >>> my $elapsed = tv_interval ( $t0, [gettimeofday]); > >>> } > >>> > >>> while (threads->list()) { > >>> my @joinable = threads->list(threads::joinable); > >>> for (@joinable) { > >>> my $r = $_->join(); > >>> &processResult($r); > >>> } > >>> usleep(10000); > >>> } > >>> > >>> sub checkIp { > >>> my $ip = shift; > >>> my $pingOk = 0; > >>> > >>> eval { > >>> for (1..3) { > >>> my $ping = `/bin/ping -c 1 -w 1 $ip`; > >>> > >>> if (grep { / 0% packet loss/ } $ping) { > >>> $pingOk = 1; > >>> return 1; > >>> } > >>> > >>> if ($pingOk == 0) { > >>> my $p = Net::Ping->new('icmp'); > >>> $p->service_check(1); > >>> if ($p->ping($ip, 1)) { > >>> $pingOk = 1; > >>> return 1; > >>> } > >>> } > >>> > >>> if ($pingOk == 0) { > >>> my $p = Net::Ping->new('udp'); > >>> $p->service_check(1); > >>> if ($p->ping($ip, 1)) { > >>> $pingOk = 1; > >>> return 1; > >>> } > >>> } > >>> > >>> sleep 3; > >>> } > >>> }; > >>> > >>> return $pingOk; > >>> } > >>> _______________________________________________ > >>> Rio-pm mailing list > >>> Rio-pm em pm.org > >>> http://mail.pm.org/mailman/listinfo/rio-pm > >> > >> > >> > >> -- > >> lorn at lornlab dot org > >> Lindolfo "Lorn" Rodrigues > >> > >> > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From acid06 em gmail.com Fri Jul 9 14:55:09 2010 From: acid06 em gmail.com (Nilson Santos Figueiredo Jr.) Date: Fri, 9 Jul 2010 18:55:09 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: 2010/7/9 João André Simioni : > Não há nenhum problema com o código, o que acontece é que o tempo de > abertura das threads é muito alto. E quanto mais threads eu abro, > maior o tempo para abertura das próximas. As primeiras abrem em 30ms, > mas perto da thread 70 esse tempo já vai para quase 1 segundo. Qual plataforma você está utilizando? -Nilson From jasimioni em gmail.com Fri Jul 9 14:59:43 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Fri, 9 Jul 2010 18:59:43 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Red Hat - 64bits 2 Quad Core Intel Xeon. 8Gb RAM [g0003372 em svuxpmac1 ~]$ uname -a Linux svuxpmac1 2.6.18-164.9.1.el5 #1 SMP Wed Dec 9 03:27:37 EST 2009 x86_64 x86 _64 x86_64 GNU/Linux [g0003372 em svuxpmac1 ~]$ c [g0003372 em svuxpmac1 ~]$ uname -a Linux svuxpmac1 2.6.18-164.9.1.el5 #1 SMP Wed Dec 9 03:27:37 EST 2009 x86_64 x86_64 x86_64 GNU/Linux [g0003372 em svuxpmac1 ~]$ cat /etc/redhat-release Red Hat Enterprise Linux Server release 5.4 (Tikanga) [g0003372 em svuxpmac1 ~]$ cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz stepping : 6 cpu MHz : 2327.497 cache size : 6144 KB physical id : 0 siblings : 4 core id : 0 cpu cores : 4 apicid : 0 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 4654.99 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz stepping : 6 cpu MHz : 2327.497 cache size : 6144 KB physical id : 1 siblings : 4 core id : 0 cpu cores : 4 apicid : 4 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 4655.03 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: processor : 2 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz stepping : 6 cpu MHz : 2327.497 cache size : 6144 KB physical id : 0 siblings : 4 core id : 2 cpu cores : 4 apicid : 2 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 4655.00 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: processor : 3 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz stepping : 6 cpu MHz : 2327.497 cache size : 6144 KB physical id : 1 siblings : 4 core id : 2 cpu cores : 4 apicid : 6 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 4655.03 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: processor : 4 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz stepping : 6 cpu MHz : 2327.497 cache size : 6144 KB physical id : 0 siblings : 4 core id : 1 cpu cores : 4 apicid : 1 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 4655.02 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: processor : 5 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz stepping : 6 cpu MHz : 2327.497 cache size : 6144 KB physical id : 1 siblings : 4 core id : 1 cpu cores : 4 apicid : 5 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 4655.02 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: processor : 6 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz stepping : 6 cpu MHz : 2327.497 cache size : 6144 KB physical id : 0 siblings : 4 core id : 3 cpu cores : 4 apicid : 3 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 4655.02 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: processor : 7 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz stepping : 6 cpu MHz : 2327.497 cache size : 6144 KB physical id : 1 siblings : 4 core id : 3 cpu cores : 4 apicid : 7 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 4655.02 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: [g0003372 em svuxpmac1 ~]$ free total used free shared buffers cached Mem: 8042944 966580 7076364 0 165232 493632 -/+ buffers/cache: 307716 7735228 Swap: 8388600 0 8388600 [g0003372 em svuxpmac1 ~]$ 2010/7/9 Nilson Santos Figueiredo Jr. : > 2010/7/9 João André Simioni : >> Não há nenhum problema com o código, o que acontece é que o tempo de >> abertura das threads é muito alto. E quanto mais threads eu abro, >> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >> mas perto da thread 70 esse tempo já vai para quase 1 segundo. > > Qual plataforma você está utilizando? > > -Nilson > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From fernandocorrea em gmail.com Fri Jul 9 15:02:28 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Fri, 9 Jul 2010 19:02:28 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Retiro o q eu disse sobre o forks... perl -MTime::HiRes=gettimeofday,tv_interval -Mforks -e ' my $t=[gettimeofday]; threads->create(sub{$d=tv_interval($t,[gettimeofday]); print "forks delta: $d$/";sleep 10}) for 1 .. 100; ' ... forks delta: 3.61457 forks delta: 3.646931 forks delta: 3.679327 forks delta: 3.711787 forks delta: 3.747836 forks delta: 3.788677 forks delta: 4.668455 forks delta: 4.904759 forks delta: 5.036619 forks delta: 5.164817 forks delta: 5.549726 forks delta: 5.590726 forks delta: 5.720059 Perl exited with active threads: 100 running and unjoined 0 finished and unjoined 0 running and detached perl -MTime::HiRes=gettimeofday,tv_interval -Mthreads -e ' my $t=[gettimeofday]; threads->create(sub{$d=tv_interval($t,[gettimeofday]); print "threads delta: $d$/";sleep 10}) for 1 .. 100; ' ... threads delta: 0.18482 threads delta: 0.186635 threads delta: 0.188516 threads delta: 0.190278 threads delta: 0.192256 threads delta: 0.194475 threads delta: 0.196364 threads delta: 0.198189 threads delta: 0.199921 threads delta: 0.201665 threads delta: 0.203512 threads delta: 0.205205 threads delta: 0.206852 threads delta: 0.208517 Perl exited with active threads: 100 running and unjoined 0 finished and unjoined 0 running and detached Just another Perl Hacker, Fernando (SmokeMachine) http://perl-e.org Em 9 de julho de 2010 18:59, João André Simioni escreveu: > Red Hat - 64bits > > 2 Quad Core Intel Xeon. 8Gb RAM > > [g0003372 em svuxpmac1 ~]$ uname -a > Linux svuxpmac1 2.6.18-164.9.1.el5 #1 SMP Wed Dec 9 03:27:37 EST 2009 > x86_64 x86 > _64 x86_64 GNU/Linux > [g0003372 em svuxpmac1 ~]$ c > [g0003372 em svuxpmac1 ~]$ uname -a > Linux svuxpmac1 2.6.18-164.9.1.el5 #1 SMP Wed Dec 9 03:27:37 EST 2009 > x86_64 x86_64 x86_64 GNU/Linux > [g0003372 em svuxpmac1 ~]$ cat /etc/redhat-release > Red Hat Enterprise Linux Server release 5.4 (Tikanga) > [g0003372 em svuxpmac1 ~]$ cat /proc/cpuinfo > processor : 0 > vendor_id : GenuineIntel > cpu family : 6 > model : 23 > model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz > stepping : 6 > cpu MHz : 2327.497 > cache size : 6144 KB > physical id : 0 > siblings : 4 > core id : 0 > cpu cores : 4 > apicid : 0 > fpu : yes > fpu_exception : yes > cpuid level : 10 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall > nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr > sse4_1 lahf_lm > bogomips : 4654.99 > clflush size : 64 > cache_alignment : 64 > address sizes : 38 bits physical, 48 bits virtual > power management: > > processor : 1 > vendor_id : GenuineIntel > cpu family : 6 > model : 23 > model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz > stepping : 6 > cpu MHz : 2327.497 > cache size : 6144 KB > physical id : 1 > siblings : 4 > core id : 0 > cpu cores : 4 > apicid : 4 > fpu : yes > fpu_exception : yes > cpuid level : 10 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall > nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr > sse4_1 lahf_lm > bogomips : 4655.03 > clflush size : 64 > cache_alignment : 64 > address sizes : 38 bits physical, 48 bits virtual > power management: > > processor : 2 > vendor_id : GenuineIntel > cpu family : 6 > model : 23 > model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz > stepping : 6 > cpu MHz : 2327.497 > cache size : 6144 KB > physical id : 0 > siblings : 4 > core id : 2 > cpu cores : 4 > apicid : 2 > fpu : yes > fpu_exception : yes > cpuid level : 10 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall > nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr > sse4_1 lahf_lm > bogomips : 4655.00 > clflush size : 64 > cache_alignment : 64 > address sizes : 38 bits physical, 48 bits virtual > power management: > > processor : 3 > vendor_id : GenuineIntel > cpu family : 6 > model : 23 > model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz > stepping : 6 > cpu MHz : 2327.497 > cache size : 6144 KB > physical id : 1 > siblings : 4 > core id : 2 > cpu cores : 4 > apicid : 6 > fpu : yes > fpu_exception : yes > cpuid level : 10 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall > nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr > sse4_1 lahf_lm > bogomips : 4655.03 > clflush size : 64 > cache_alignment : 64 > address sizes : 38 bits physical, 48 bits virtual > power management: > > processor : 4 > vendor_id : GenuineIntel > cpu family : 6 > model : 23 > model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz > stepping : 6 > cpu MHz : 2327.497 > cache size : 6144 KB > physical id : 0 > siblings : 4 > core id : 1 > cpu cores : 4 > apicid : 1 > fpu : yes > fpu_exception : yes > cpuid level : 10 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall > nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr > sse4_1 lahf_lm > bogomips : 4655.02 > clflush size : 64 > cache_alignment : 64 > address sizes : 38 bits physical, 48 bits virtual > power management: > > processor : 5 > vendor_id : GenuineIntel > cpu family : 6 > model : 23 > model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz > stepping : 6 > cpu MHz : 2327.497 > cache size : 6144 KB > physical id : 1 > siblings : 4 > core id : 1 > cpu cores : 4 > apicid : 5 > fpu : yes > fpu_exception : yes > cpuid level : 10 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall > nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr > sse4_1 lahf_lm > bogomips : 4655.02 > clflush size : 64 > cache_alignment : 64 > address sizes : 38 bits physical, 48 bits virtual > power management: > > processor : 6 > vendor_id : GenuineIntel > cpu family : 6 > model : 23 > model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz > stepping : 6 > cpu MHz : 2327.497 > cache size : 6144 KB > physical id : 0 > siblings : 4 > core id : 3 > cpu cores : 4 > apicid : 3 > fpu : yes > fpu_exception : yes > cpuid level : 10 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall > nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr > sse4_1 lahf_lm > bogomips : 4655.02 > clflush size : 64 > cache_alignment : 64 > address sizes : 38 bits physical, 48 bits virtual > power management: > > processor : 7 > vendor_id : GenuineIntel > cpu family : 6 > model : 23 > model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz > stepping : 6 > cpu MHz : 2327.497 > cache size : 6144 KB > physical id : 1 > siblings : 4 > core id : 3 > cpu cores : 4 > apicid : 7 > fpu : yes > fpu_exception : yes > cpuid level : 10 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall > nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr > sse4_1 lahf_lm > bogomips : 4655.02 > clflush size : 64 > cache_alignment : 64 > address sizes : 38 bits physical, 48 bits virtual > power management: > > [g0003372 em svuxpmac1 ~]$ free > total used free shared buffers cached > Mem: 8042944 966580 7076364 0 165232 493632 > -/+ buffers/cache: 307716 7735228 > Swap: 8388600 0 8388600 > [g0003372 em svuxpmac1 ~]$ > > > 2010/7/9 Nilson Santos Figueiredo Jr. : > > 2010/7/9 João André Simioni : > >> Não há nenhum problema com o código, o que acontece é que o tempo de > >> abertura das threads é muito alto. E quanto mais threads eu abro, > >> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, > >> mas perto da thread 70 esse tempo já vai para quase 1 segundo. > > > > Qual plataforma você está utilizando? > > > > -Nilson > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From jasimioni em gmail.com Fri Jul 9 15:24:41 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Fri, 9 Jul 2010 19:24:41 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Que bom que você me passou esse teste - já ia implementar com forks hehe. 2010/7/9 Fernando Oliveira : > Retiro o q eu disse sobre o forks... > perl -MTime::HiRes=gettimeofday,tv_interval -Mforks -e ' > my $t=[gettimeofday]; threads->create(sub{$d=tv_interval($t,[gettimeofday]); > print "forks delta: $d$/";sleep 10}) for 1 .. 100; > ' > ... > forks delta: 3.61457 > forks delta: 3.646931 > forks delta: 3.679327 > forks delta: 3.711787 > forks delta: 3.747836 > forks delta: 3.788677 > forks delta: 4.668455 > forks delta: 4.904759 > forks delta: 5.036619 > forks delta: 5.164817 > forks delta: 5.549726 > forks delta: 5.590726 > forks delta: 5.720059 > Perl exited with active threads: > 100 running and unjoined > 0 finished and unjoined > 0 running and detached > > perl -MTime::HiRes=gettimeofday,tv_interval -Mthreads -e ' > my $t=[gettimeofday]; threads->create(sub{$d=tv_interval($t,[gettimeofday]); > print "threads delta: $d$/";sleep 10}) for 1 .. 100; > ' > ... > threads delta: 0.18482 > threads delta: 0.186635 > threads delta: 0.188516 > threads delta: 0.190278 > threads delta: 0.192256 > threads delta: 0.194475 > threads delta: 0.196364 > threads delta: 0.198189 > threads delta: 0.199921 > threads delta: 0.201665 > threads delta: 0.203512 > threads delta: 0.205205 > threads delta: 0.206852 > threads delta: 0.208517 > Perl exited with active threads: > 100 running and unjoined > 0 finished and unjoined > 0 running and detached > > > Just another Perl Hacker, > Fernando (SmokeMachine) > http://perl-e.org > > > Em 9 de julho de 2010 18:59, João André Simioni > escreveu: >> >> Red Hat - 64bits >> >> 2 Quad Core Intel Xeon. 8Gb RAM >> >> [g0003372 em svuxpmac1 ~]$ uname -a >> Linux svuxpmac1 2.6.18-164.9.1.el5 #1 SMP Wed Dec 9 03:27:37 EST 2009 >> x86_64 x86 >> _64 x86_64 GNU/Linux >> [g0003372 em svuxpmac1 ~]$ c >> [g0003372 em svuxpmac1 ~]$ uname -a >> Linux svuxpmac1 2.6.18-164.9.1.el5 #1 SMP Wed Dec 9 03:27:37 EST 2009 >> x86_64 x86_64 x86_64 GNU/Linux >> [g0003372 em svuxpmac1 ~]$ cat /etc/redhat-release >> Red Hat Enterprise Linux Server release 5.4 (Tikanga) >> [g0003372 em svuxpmac1 ~]$ cat /proc/cpuinfo >> processor       : 0 >> vendor_id       : GenuineIntel >> cpu family      : 6 >> model           : 23 >> model name      : Intel(R) Xeon(R) CPU           E5410  @ 2.33GHz >> stepping        : 6 >> cpu MHz         : 2327.497 >> cache size      : 6144 KB >> physical id     : 0 >> siblings        : 4 >> core id         : 0 >> cpu cores       : 4 >> apicid          : 0 >> fpu             : yes >> fpu_exception   : yes >> cpuid level     : 10 >> wp              : yes >> flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge >> mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall >> nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr >> sse4_1 lahf_lm >> bogomips        : 4654.99 >> clflush size    : 64 >> cache_alignment : 64 >> address sizes   : 38 bits physical, 48 bits virtual >> power management: >> >> processor       : 1 >> vendor_id       : GenuineIntel >> cpu family      : 6 >> model           : 23 >> model name      : Intel(R) Xeon(R) CPU           E5410  @ 2.33GHz >> stepping        : 6 >> cpu MHz         : 2327.497 >> cache size      : 6144 KB >> physical id     : 1 >> siblings        : 4 >> core id         : 0 >> cpu cores       : 4 >> apicid          : 4 >> fpu             : yes >> fpu_exception   : yes >> cpuid level     : 10 >> wp              : yes >> flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge >> mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall >> nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr >> sse4_1 lahf_lm >> bogomips        : 4655.03 >> clflush size    : 64 >> cache_alignment : 64 >> address sizes   : 38 bits physical, 48 bits virtual >> power management: >> >> processor       : 2 >> vendor_id       : GenuineIntel >> cpu family      : 6 >> model           : 23 >> model name      : Intel(R) Xeon(R) CPU           E5410  @ 2.33GHz >> stepping        : 6 >> cpu MHz         : 2327.497 >> cache size      : 6144 KB >> physical id     : 0 >> siblings        : 4 >> core id         : 2 >> cpu cores       : 4 >> apicid          : 2 >> fpu             : yes >> fpu_exception   : yes >> cpuid level     : 10 >> wp              : yes >> flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge >> mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall >> nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr >> sse4_1 lahf_lm >> bogomips        : 4655.00 >> clflush size    : 64 >> cache_alignment : 64 >> address sizes   : 38 bits physical, 48 bits virtual >> power management: >> >> processor       : 3 >> vendor_id       : GenuineIntel >> cpu family      : 6 >> model           : 23 >> model name      : Intel(R) Xeon(R) CPU           E5410  @ 2.33GHz >> stepping        : 6 >> cpu MHz         : 2327.497 >> cache size      : 6144 KB >> physical id     : 1 >> siblings        : 4 >> core id         : 2 >> cpu cores       : 4 >> apicid          : 6 >> fpu             : yes >> fpu_exception   : yes >> cpuid level     : 10 >> wp              : yes >> flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge >> mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall >> nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr >> sse4_1 lahf_lm >> bogomips        : 4655.03 >> clflush size    : 64 >> cache_alignment : 64 >> address sizes   : 38 bits physical, 48 bits virtual >> power management: >> >> processor       : 4 >> vendor_id       : GenuineIntel >> cpu family      : 6 >> model           : 23 >> model name      : Intel(R) Xeon(R) CPU           E5410  @ 2.33GHz >> stepping        : 6 >> cpu MHz         : 2327.497 >> cache size      : 6144 KB >> physical id     : 0 >> siblings        : 4 >> core id         : 1 >> cpu cores       : 4 >> apicid          : 1 >> fpu             : yes >> fpu_exception   : yes >> cpuid level     : 10 >> wp              : yes >> flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge >> mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall >> nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr >> sse4_1 lahf_lm >> bogomips        : 4655.02 >> clflush size    : 64 >> cache_alignment : 64 >> address sizes   : 38 bits physical, 48 bits virtual >> power management: >> >> processor       : 5 >> vendor_id       : GenuineIntel >> cpu family      : 6 >> model           : 23 >> model name      : Intel(R) Xeon(R) CPU           E5410  @ 2.33GHz >> stepping        : 6 >> cpu MHz         : 2327.497 >> cache size      : 6144 KB >> physical id     : 1 >> siblings        : 4 >> core id         : 1 >> cpu cores       : 4 >> apicid          : 5 >> fpu             : yes >> fpu_exception   : yes >> cpuid level     : 10 >> wp              : yes >> flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge >> mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall >> nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr >> sse4_1 lahf_lm >> bogomips        : 4655.02 >> clflush size    : 64 >> cache_alignment : 64 >> address sizes   : 38 bits physical, 48 bits virtual >> power management: >> >> processor       : 6 >> vendor_id       : GenuineIntel >> cpu family      : 6 >> model           : 23 >> model name      : Intel(R) Xeon(R) CPU           E5410  @ 2.33GHz >> stepping        : 6 >> cpu MHz         : 2327.497 >> cache size      : 6144 KB >> physical id     : 0 >> siblings        : 4 >> core id         : 3 >> cpu cores       : 4 >> apicid          : 3 >> fpu             : yes >> fpu_exception   : yes >> cpuid level     : 10 >> wp              : yes >> flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge >> mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall >> nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr >> sse4_1 lahf_lm >> bogomips        : 4655.02 >> clflush size    : 64 >> cache_alignment : 64 >> address sizes   : 38 bits physical, 48 bits virtual >> power management: >> >> processor       : 7 >> vendor_id       : GenuineIntel >> cpu family      : 6 >> model           : 23 >> model name      : Intel(R) Xeon(R) CPU           E5410  @ 2.33GHz >> stepping        : 6 >> cpu MHz         : 2327.497 >> cache size      : 6144 KB >> physical id     : 1 >> siblings        : 4 >> core id         : 3 >> cpu cores       : 4 >> apicid          : 7 >> fpu             : yes >> fpu_exception   : yes >> cpuid level     : 10 >> wp              : yes >> flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge >> mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall >> nx lm constant_tsc pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr >> sse4_1 lahf_lm >> bogomips        : 4655.02 >> clflush size    : 64 >> cache_alignment : 64 >> address sizes   : 38 bits physical, 48 bits virtual >> power management: >> >> [g0003372 em svuxpmac1 ~]$ free >>             total       used       free     shared    buffers     cached >> Mem:       8042944     966580    7076364          0     165232     493632 >> -/+ buffers/cache:     307716    7735228 >> Swap:      8388600          0    8388600 >> [g0003372 em svuxpmac1 ~]$ >> >> >> 2010/7/9 Nilson Santos Figueiredo Jr. : >> > 2010/7/9 João André Simioni : >> >> Não há nenhum problema com o código, o que acontece é que o tempo de >> >> abertura das threads é muito alto. E quanto mais threads eu abro, >> >> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >> >> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >> > >> > Qual plataforma você está utilizando? >> > >> > -Nilson >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From tiago.peczenyj em gmail.com Fri Jul 9 15:27:46 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Fri, 9 Jul 2010 19:27:46 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Vc não pode usar o Nagios para pingar/monitorar os equipamentos? From jasimioni em gmail.com Fri Jul 9 15:33:27 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Fri, 9 Jul 2010 19:33:27 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Tiago, esse script é apenas uma parte da solução - eu até posso usar o Nagios, mas teria que integrá-lo com diversos outros sistemas internos, o que não é tão simples no momento. E não sei como Nagios se comporta com mais de 15mil elementos sendo monitorados. Mas eu tenho alternativas - por exemplo, eu posso migrar esse script de testes para Java. Mas é justamente isso que eu não queria. Pelo menos não até todos os outros pontos da solução totalmente definidos. []'s João André 2010/7/9 Tiago Peczenyj : > Vc não pode usar o Nagios para pingar/monitorar os equipamentos? > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From acid06 em gmail.com Fri Jul 9 15:48:14 2010 From: acid06 em gmail.com (Nilson Santos Figueiredo Jr.) Date: Fri, 9 Jul 2010 19:48:14 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: 2010/7/9 João André Simioni : > Que bom que você me passou esse teste - já ia implementar com forks hehe. Por acaso você tentou fazer um teste com um programa que não utilize o DBD::Oracle? Em outras palavras, ao invés de carregar os dados do banco, tente, como teste, ler de outra fonte como um arquivo. Pode ser que ao clonar o interpretador para os diversos threads isso esteja influenciando negativamente. Caso passe a funcionar corretamente, você poderia, então, tentar criar um thread leitor de banco de dados que comunica de volta com o thread principal, assim o DBD::Oracle fica isolado nesse thread. Mas isso é um chute cego - não sei se influencia de verdade nesse caso. -Nilson From jasimioni em gmail.com Fri Jul 9 15:58:14 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Fri, 9 Jul 2010 19:58:14 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Acabei de testar, não mudou o resultado. []'s 2010/7/9 Nilson Santos Figueiredo Jr. : > 2010/7/9 João André Simioni : >> Que bom que você me passou esse teste - já ia implementar com forks hehe. > > Por acaso você tentou fazer um teste com um programa que não utilize o > DBD::Oracle? > Em outras palavras, ao invés de carregar os dados do banco, tente, > como teste, ler de outra fonte como um arquivo. > > Pode ser que ao clonar o interpretador para os diversos threads isso > esteja influenciando negativamente. > > Caso passe a funcionar corretamente, você poderia, então, tentar criar > um thread leitor de banco de dados que comunica de volta com o thread > principal, assim o DBD::Oracle fica isolado nesse thread. Mas isso é > um chute cego - não sei se influencia de verdade nesse caso. > > -Nilson > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From blabos em gmail.com Fri Jul 9 20:50:13 2010 From: blabos em gmail.com (Blabos de Blebe) Date: Sat, 10 Jul 2010 00:50:13 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Desculpe a minha ignorância e o meu estado sonolerdo, mas por que vc faz join dentro do loop que cria a thread? Eu posso ter entendido errado, mas se for isso vc não está serializando as threads? http://gist.github.com/470412 As minhas threads depois de criadas esperam 5 sec para iniciar. Só pra não bagunçar o terminal. Eu crio 300 threads quase que instantaneamente. Então mostro uma mensagem dizendo isso e aguardo 5 sec para começar a fazer join. Eu começo a fazer join mais ou menos ao mesmo tempo que as threads começam a executar seu loop interno. Note que o loop do join para até que a thread em questão termine. Note que 'join to 2' só aparece depois de um 'bye 1'. O que não impede que outras threads terminem antes por si só. Se eu não entendi errado, me corrija se eu viajei, tem um erro de lógica na sua aplicação. Abraços 2010/7/9 João André Simioni : > Acabei de testar, não mudou o resultado. > > []'s > > 2010/7/9 Nilson Santos Figueiredo Jr. : >> 2010/7/9 João André Simioni : >>> Que bom que você me passou esse teste - já ia implementar com forks hehe. >> >> Por acaso você tentou fazer um teste com um programa que não utilize o >> DBD::Oracle? >> Em outras palavras, ao invés de carregar os dados do banco, tente, >> como teste, ler de outra fonte como um arquivo. >> >> Pode ser que ao clonar o interpretador para os diversos threads isso >> esteja influenciando negativamente. >> >> Caso passe a funcionar corretamente, você poderia, então, tentar criar >> um thread leitor de banco de dados que comunica de volta com o thread >> principal, assim o DBD::Oracle fica isolado nesse thread. Mas isso é >> um chute cego - não sei se influencia de verdade nesse caso. >> >> -Nilson >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From bruno.buss em gmail.com Sat Jul 10 04:45:12 2010 From: bruno.buss em gmail.com (Bruno Buss) Date: Sat, 10 Jul 2010 08:45:12 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Olá Blabos, 2010/7/10 Blabos de Blebe > Desculpe a minha ignorância e o meu estado sonolerdo, mas por que vc > faz join dentro do loop que cria a thread? > > Eu posso ter entendido errado, mas se for isso vc não está > serializando as threads? > Também não tenho certeza (afinal o código não é meu :P), mas acho que o que ele faz naquele loop interno é se o número de threads existentes for maior que o limite dele (250 no caso), ele entre no loop e faz join em uma das threads, para esperar que ela possa acabar e disparar uma nova thread. Além disso, como ele faz o segundo loop interno baseado no retorno da listagem de "threads::joinable", que são threads que já acabaram seu processamento e estão apenas esperando para serem finalizadas e puxar o resultado delas de volta, então as operações de join() ai são não bloqueantes. Apenas frisando, minha experiência real em aplicações paralelas é baixa, então se eu disser alguma besteira grande por favor me avisem/corrijam. João, será que utilizando algo como Thread::Pool[1] ou Thread::Pool::Simple[2] seu código não ficaria mais organizado? Segundo o perldoc perlthrtut[3]: "Performance considerations The main thing to bear in mind when comparing Perl's ithreads to other threading models is the fact that for each new thread created, a complete copy of all the variables and data of the parent thread has to be taken. Thus, thread creation can be quite expensive, both in terms of memory usage and time spent in creation. The ideal way to reduce these costs is to have a relatively short number of long-lived threads, all created fairly early on -- before the base thread has accumulated too much data. Of course, this may not always be possible, so compromises have to be made. However, after a thread has been created, its performance and extra memory usage should be little different than ordinary code." Principalmente a parte do: "Thus, thread creation can be quite expensive, both in terms of memory usage and time spent in creation.". Será que aqui uma implementação utilizando uma pool de threads (como sugerido acima), não seria melhor? :) (ps: eu não sei o quanto atualizado está essa documentação, mas ela está presente no perldoc do perl 5.12.1) [1] http://search.cpan.org/~elizabeth/Thread-Pool-0.32/lib/Thread/Pool.pm [2] http://search.cpan.org/~jwu/Thread-Pool-Simple-0.24/Simple.pm [3] http://perldoc.perl.org/perlthrtut.html [ ]'s -- Bruno C. Buss http://brunobuss.wordpress.com/ http://www.dcc.ufrj.br/~brunobuss/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From blabos em gmail.com Sat Jul 10 08:04:47 2010 From: blabos em gmail.com (Blabos de Blebe) Date: Sat, 10 Jul 2010 12:04:47 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: João, por que tanto loop aninhado? Eu gostara que você comentasse o porquê de cada coisa. Não se ofenda, o código tá uma bagunça, misturando declaração de função com main thread. ithreads usam por debaixo dos panos pthreads, com a diferença que a api em Perl é de longe muito mais mamão com acúcar do que a API em C. Não fui ao código fonte dos módulos, mas suponho que a criação de threads em Perl seja tão custoso quanto em C. A partir do kernel 2.6.x isso tornou-se irrelevante (falando em C). Existe uma lenda urbana de que criar threads é lento. Essa frase dita ao vento, é besteira. Meu código de exemplo mostra como criar 300 threads em um eeePc em menos de um seg. Eu só quero me certificar que o que você está querendo fazer esteja conceitualmente coerente, antes de te mandar soluções mirabolantes. Lidando com threads, tudo precisa estar conceitualmente correto. Testes não funcionam bem neste caso por conta do não-determinismo. Eu preciso que você me ajude a entender 'what you means' ao invés de 'what you say'. Seu problema deve estar carregado de peculiaridades que não ficaram claras no código. Abraços 2010/7/10 Bruno Buss : > Olá Blabos, > > 2010/7/10 Blabos de Blebe >> >> Desculpe a minha ignorância e o meu estado sonolerdo, mas por que vc >> faz join dentro do loop que cria a thread? >> >> Eu posso ter entendido errado, mas se for isso vc não está >> serializando as threads? > > Também não tenho certeza (afinal o código não é meu :P), mas acho que o que > ele faz naquele loop interno é se o número de threads existentes for maior > que o limite dele (250 no caso), ele entre no loop e faz join em uma das > threads, para esperar que ela possa acabar e disparar uma nova thread. > Além disso, como ele faz o segundo loop interno baseado no retorno da > listagem de "threads::joinable", que são threads que já acabaram seu > processamento e estão apenas esperando para serem finalizadas e puxar o > resultado delas de volta, então as operações de join() ai são não > bloqueantes. > > Apenas frisando, minha experiência real em aplicações paralelas é baixa, > então se eu disser alguma besteira grande por favor me avisem/corrijam. > > João, será que utilizando algo como Thread::Pool[1] ou > Thread::Pool::Simple[2] seu código não ficaria mais organizado? > Segundo o perldoc perlthrtut[3]: > "Performance considerations >        The main thing to bear in mind when comparing Perl's ithreads to > other threading models is the fact that for each new thread created, a > complete copy of all the variables >        and data of the parent thread has to be taken. Thus, thread creation > can be quite expensive, both in terms of memory usage and time spent in > creation. The ideal way to >        reduce these costs is to have a relatively short number of long-lived > threads, all created fairly early on -- before the base thread has > accumulated too much data. Of >        course, this may not always be possible, so compromises have to be > made. However, after a thread has been created, its performance and extra > memory usage should be little >        different than ordinary code." > Principalmente a parte do: "Thus, thread creation can be quite expensive, > both in terms of memory usage and time spent in creation.". > Será que aqui uma implementação utilizando uma pool de threads (como > sugerido acima), não seria melhor? :) > (ps: eu não sei o quanto atualizado está essa documentação, mas ela está > presente no perldoc do perl 5.12.1) > > [1] http://search.cpan.org/~elizabeth/Thread-Pool-0.32/lib/Thread/Pool.pm > [2] http://search.cpan.org/~jwu/Thread-Pool-Simple-0.24/Simple.pm > [3] http://perldoc.perl.org/perlthrtut.html > > [ ]'s > -- > Bruno C. Buss > http://brunobuss.wordpress.com/ > http://www.dcc.ufrj.br/~brunobuss/ > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From blabos em gmail.com Sat Jul 10 08:22:52 2010 From: blabos em gmail.com (Blabos de Blebe) Date: Sat, 10 Jul 2010 12:22:52 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: P.S.: Não ponha Java. Seria chamar a Death Star para matar um vírus. 2010/7/10 Blabos de Blebe : > João, por que tanto loop aninhado? > > Eu gostara que você comentasse o porquê de cada coisa. Não se ofenda, > o código tá uma bagunça, misturando declaração de função com main > thread. > > ithreads usam por debaixo dos panos pthreads, com a diferença que a > api em Perl é de longe muito mais mamão com acúcar do que a API em C. > > Não fui ao código fonte dos módulos, mas suponho que a criação de > threads em Perl seja tão custoso quanto em C. A partir do kernel 2.6.x > isso tornou-se irrelevante (falando em C). > > Existe uma lenda urbana de que criar threads é lento. Essa frase dita > ao vento, é besteira. Meu código de exemplo mostra como criar 300 > threads em um eeePc em menos de um seg. > > Eu só quero me certificar que o que você está querendo fazer esteja > conceitualmente coerente, antes de te mandar soluções mirabolantes. > > Lidando com threads, tudo precisa estar conceitualmente correto. > Testes não funcionam bem neste caso por conta do não-determinismo. > > Eu preciso que você me ajude a entender 'what you means' ao invés de > 'what you say'. Seu problema deve estar carregado de peculiaridades > que não ficaram claras no código. > > Abraços > > 2010/7/10 Bruno Buss : >> Olá Blabos, >> >> 2010/7/10 Blabos de Blebe >>> >>> Desculpe a minha ignorância e o meu estado sonolerdo, mas por que vc >>> faz join dentro do loop que cria a thread? >>> >>> Eu posso ter entendido errado, mas se for isso vc não está >>> serializando as threads? >> >> Também não tenho certeza (afinal o código não é meu :P), mas acho que o que >> ele faz naquele loop interno é se o número de threads existentes for maior >> que o limite dele (250 no caso), ele entre no loop e faz join em uma das >> threads, para esperar que ela possa acabar e disparar uma nova thread. >> Além disso, como ele faz o segundo loop interno baseado no retorno da >> listagem de "threads::joinable", que são threads que já acabaram seu >> processamento e estão apenas esperando para serem finalizadas e puxar o >> resultado delas de volta, então as operações de join() ai são não >> bloqueantes. >> >> Apenas frisando, minha experiência real em aplicações paralelas é baixa, >> então se eu disser alguma besteira grande por favor me avisem/corrijam. >> >> João, será que utilizando algo como Thread::Pool[1] ou >> Thread::Pool::Simple[2] seu código não ficaria mais organizado? >> Segundo o perldoc perlthrtut[3]: >> "Performance considerations >>        The main thing to bear in mind when comparing Perl's ithreads to >> other threading models is the fact that for each new thread created, a >> complete copy of all the variables >>        and data of the parent thread has to be taken. Thus, thread creation >> can be quite expensive, both in terms of memory usage and time spent in >> creation. The ideal way to >>        reduce these costs is to have a relatively short number of long-lived >> threads, all created fairly early on -- before the base thread has >> accumulated too much data. Of >>        course, this may not always be possible, so compromises have to be >> made. However, after a thread has been created, its performance and extra >> memory usage should be little >>        different than ordinary code." >> Principalmente a parte do: "Thus, thread creation can be quite expensive, >> both in terms of memory usage and time spent in creation.". >> Será que aqui uma implementação utilizando uma pool de threads (como >> sugerido acima), não seria melhor? :) >> (ps: eu não sei o quanto atualizado está essa documentação, mas ela está >> presente no perldoc do perl 5.12.1) >> >> [1] http://search.cpan.org/~elizabeth/Thread-Pool-0.32/lib/Thread/Pool.pm >> [2] http://search.cpan.org/~jwu/Thread-Pool-Simple-0.24/Simple.pm >> [3] http://perldoc.perl.org/perlthrtut.html >> >> [ ]'s >> -- >> Bruno C. Buss >> http://brunobuss.wordpress.com/ >> http://www.dcc.ufrj.br/~brunobuss/ >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > From jasimioni em gmail.com Sat Jul 10 08:35:43 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Sat, 10 Jul 2010 12:35:43 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Blabos, o loop interno não é nem usado nesse código, como observado pelo Bruno, porque ele define a quantidade de threads no início. Usualmente eu disparo uma thread para cada elemento que vou gerenciar, e defino um limite de threads abertas no início do código e é por isso que esse loop existe, para controlar o limite de threads (e funciona bem em diversos outros scripts que não têm o mesmo problema de desempenho). Segue os comentários no código: > #!/usr/bin/perl > > use strict; > use DBI; > use Net::Ping; > use Time::HiRes qw/usleep tv_interval gettimeofday/; > use threads ('yield', 'stack_size' => 32*4096, 'exit' => > 'threads_only', 'stringify'); > > my $host = '192.168.160.179'; > my $sid  = 'HOMOLOG'; > my $user = 'mac_user'; > my $pass = 'mac_user'; > > my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, > { AutoCommit => 1 }); > > my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, > CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND > CPE_ATIVO = ?'); > $sth->execute('1', 'A'); > > my @cpes; > > while (my (@row) = $sth->fetchrow_array) { >     push @cpes, [ @row ]; > } > > $dbh->disconnect(); Até aqui somente listei os elementos a partir do banco de dados. O código abaixo quebra o numero de elementos em 250 threads. > my $maxThreads = 250; > my $total      = @cpes; > > my $cpePerThread = int($total / $maxThreads); > > my @toMonitor; > my $i = 0; > my $c = 0; > > foreach my $cpe (@cpes) { >     push @{$toMonitor[$i]}, $cpe; >     $c++; > >     if ($c > $cpePerThread) { >         $i++; >         $c = 0; >     } > } > > print "Para $total cpes, e $maxThreads threads, tenho no final $i > grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; E imprimo - vou ter o total de elementos dividido em 250 grupos (cada grupo atendido por uma thread) > sub processResult { >     my $r = shift; >     if (ref $r ne 'ARRAY') { >         print STDERR "Erro na thread\n"; >         return 0; >     } >     my ($result, $host, $ifs) = @$r; > > } Funcao de processamento do resultado da thread -- aqui não faz nada > sub testeClient { >     my $threadNum = shift; >     my $cpeGroup  = shift; >     foreach my $cpe (@{$cpeGroup}) { >         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = @$cpe; >         my $pingOk = &checkIp($cpeIp); >         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, > $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >     } >     # print "Finishing thread $threadNum\n"; >     return([1, 0]); > } Código da thread - basicamente chama a sub 'checkIp' para ver se o host está vivo. Abaixo o código de criação das threads - para cada grupo, cria uma thread. > my $threadCount = 1; > foreach my $cpeGroup (@toMonitor) { >     print "Trying to create thread"; >     my $t0 = [gettimeofday]; > >     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; > >     my $thr = threads->create({scalar => '1'}, 'testeClient', > $threadCount, $cpeGroup); >     my $elapsed = tv_interval ( $t0, [gettimeofday]); >     print "Created thread $thr ($threadCount) - took $elapsed seconds > to create\n"; >     $threadCount++; Esse bloco pode ser removido, pois nunca entra - foi a primeira coisa que tirei, porque achei que a chamada a threads->list poderia estar influenciando. Esse método retorna em menos de 1ms em todas as execuções. Mas se preferir só ignora. >     while (threads->list() >= $maxThreads) { >         my @joinable = threads->list(threads::joinable); >         for (@joinable) { >             my $r = $_->join(); >             &processResult($r); >         } >         usleep(10000); >     } >     my $elapsed = tv_interval ( $t0, [gettimeofday]); Finaliza a criação de threads > } Aguarda as threads concluirem. > while (threads->list()) { >     my @joinable = threads->list(threads::joinable); >     for (@joinable) { >         my $r = $_->join(); >         &processResult($r); >     } >     usleep(10000); > } Fim de execução > sub checkIp { >     my $ip = shift; >     my $pingOk = 0; Essa rotina faz 3 testes para cada elemento. Em cada teste, tenta um ping ICMP, um UDP e um TCP. Tenho que executar o ping do S.O. porque senão sou obrigado a rodar o script como root e o Net::Ping faz confusão com o ICMP. Se eu testo um host e ele nao responde no tempo de timeout e eu em seguida testar outro host, se o primeiro responder ele acha que o segundo respondeu. >     eval { >         for (1..3) { >             my $ping = `/bin/ping -c 1 -w 1 $ip`; > >             if (grep { / 0% packet loss/ } $ping) { >                 $pingOk = 1; >                 return 1; >             } > >             if ($pingOk == 0) { >                 my $p = Net::Ping->new('icmp'); >                 $p->service_check(1); >                 if ($p->ping($ip, 1)) { >                     $pingOk = 1; >                     return 1; >                 } >             } > >             if ($pingOk == 0) { >                 my $p = Net::Ping->new('udp'); >                 $p->service_check(1); >                 if ($p->ping($ip, 1)) { >                     $pingOk = 1; >                     return 1; >                 } >             } > >             sleep 3; >         } >     }; > >     return $pingOk; > } > Quanto a usar Java, é que tenho um grupo de desenvolvimento Java do meu lado - eu posso solicitar a eles, mas eu não vejo porque Perl não pode atender bem nesse caso. Obrigado From jasimioni em gmail.com Sat Jul 10 08:50:35 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Sat, 10 Jul 2010 12:50:35 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Fiz um teste agora colocando um sleep 10 no inicio da função checkIp. As threads abrem rápido assim, mas o desempenho ficou ruim. Além disso, notei que as threads não utilizam os demais processadores. Minha solução atual está com um fork no começo, quebrando o código em 8 processos distintos (número de processadores), cada processo com um sub-grupo e criando suas threads (30 threads por grupo). Obrigado pela ajuda João André 2010/7/10 João André Simioni : > Blabos, > > o loop interno não é nem usado nesse código, como observado pelo > Bruno, porque ele define a quantidade de threads no início. Usualmente > eu disparo uma thread para cada elemento que vou gerenciar, e defino > um limite de threads abertas no início do código e é por isso que esse > loop existe, para controlar o limite de threads (e funciona bem em > diversos outros scripts que não têm o mesmo problema de desempenho). > > Segue os comentários no código: > >> #!/usr/bin/perl >> >> use strict; >> use DBI; >> use Net::Ping; >> use Time::HiRes qw/usleep tv_interval gettimeofday/; >> use threads ('yield', 'stack_size' => 32*4096, 'exit' => >> 'threads_only', 'stringify'); >> >> my $host = '192.168.160.179'; >> my $sid  = 'HOMOLOG'; >> my $user = 'mac_user'; >> my $pass = 'mac_user'; >> >> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, >> { AutoCommit => 1 }); >> >> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >> CPE_ATIVO = ?'); >> $sth->execute('1', 'A'); >> >> my @cpes; >> >> while (my (@row) = $sth->fetchrow_array) { >>     push @cpes, [ @row ]; >> } >> >> $dbh->disconnect(); > > Até aqui somente listei os elementos a partir do banco de dados. > > O código abaixo quebra o numero de elementos em 250 threads. > >> my $maxThreads = 250; >> my $total      = @cpes; >> >> my $cpePerThread = int($total / $maxThreads); >> >> my @toMonitor; >> my $i = 0; >> my $c = 0; >> >> foreach my $cpe (@cpes) { >>     push @{$toMonitor[$i]}, $cpe; >>     $c++; >> >>     if ($c > $cpePerThread) { >>         $i++; >>         $c = 0; >>     } >> } >> >> print "Para $total cpes, e $maxThreads threads, tenho no final $i >> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; > > > > E imprimo - vou ter o total de elementos dividido em 250 grupos (cada > grupo atendido por uma thread) > > > >> sub processResult { >>     my $r = shift; >>     if (ref $r ne 'ARRAY') { >>         print STDERR "Erro na thread\n"; >>         return 0; >>     } >>     my ($result, $host, $ifs) = @$r; >> >> } > > Funcao de processamento do resultado da thread -- aqui não faz nada > >> sub testeClient { >>     my $threadNum = shift; >>     my $cpeGroup  = shift; >>     foreach my $cpe (@{$cpeGroup}) { >>         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = @$cpe; >>         my $pingOk = &checkIp($cpeIp); >>         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>     } >>     # print "Finishing thread $threadNum\n"; >>     return([1, 0]); >> } > > Código da thread - basicamente chama a sub 'checkIp' para ver se o > host está vivo. > > Abaixo o código de criação das threads - para cada grupo, cria uma thread. > >> my $threadCount = 1; >> foreach my $cpeGroup (@toMonitor) { >>     print "Trying to create thread"; >>     my $t0 = [gettimeofday]; >> >>     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >> >>     my $thr = threads->create({scalar => '1'}, 'testeClient', >> $threadCount, $cpeGroup); >>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>     print "Created thread $thr ($threadCount) - took $elapsed seconds >> to create\n"; >>     $threadCount++; > > Esse bloco pode ser removido, pois nunca entra - foi a primeira coisa > que tirei, porque achei que a chamada a threads->list poderia estar > influenciando. Esse método retorna em menos de 1ms em todas as > execuções. Mas se preferir só ignora. > >>     while (threads->list() >= $maxThreads) { >>         my @joinable = threads->list(threads::joinable); >>         for (@joinable) { >>             my $r = $_->join(); >>             &processResult($r); >>         } >>         usleep(10000); >>     } >>     my $elapsed = tv_interval ( $t0, [gettimeofday]); > > Finaliza a criação de threads > >> } > > Aguarda as threads concluirem. > >> while (threads->list()) { >>     my @joinable = threads->list(threads::joinable); >>     for (@joinable) { >>         my $r = $_->join(); >>         &processResult($r); >>     } >>     usleep(10000); >> } > > Fim de execução > >> sub checkIp { >>     my $ip = shift; >>     my $pingOk = 0; > > > Essa rotina faz 3 testes para cada elemento. Em cada teste, tenta um > ping ICMP, um UDP e um TCP. Tenho que executar o ping do S.O. porque > senão sou obrigado a rodar o script como root e o Net::Ping faz > confusão com o ICMP. Se eu testo um host e ele nao responde no tempo > de timeout e eu em seguida testar outro host, se o primeiro responder > ele acha que o segundo respondeu. > >>     eval { >>         for (1..3) { >>             my $ping = `/bin/ping -c 1 -w 1 $ip`; >> >>             if (grep { / 0% packet loss/ } $ping) { >>                 $pingOk = 1; >>                 return 1; >>             } >> >>             if ($pingOk == 0) { >>                 my $p = Net::Ping->new('icmp'); >>                 $p->service_check(1); >>                 if ($p->ping($ip, 1)) { >>                     $pingOk = 1; >>                     return 1; >>                 } >>             } >> >>             if ($pingOk == 0) { >>                 my $p = Net::Ping->new('udp'); >>                 $p->service_check(1); >>                 if ($p->ping($ip, 1)) { >>                     $pingOk = 1; >>                     return 1; >>                 } >>             } >> >>             sleep 3; >>         } >>     }; >> >>     return $pingOk; >> } >> > > Quanto a usar Java, é que tenho um grupo de desenvolvimento Java do > meu lado - eu posso solicitar a eles, mas eu não vejo porque Perl não > pode atender bem nesse caso. > > Obrigado > From jc em joaocoutinho.com.br Sat Jul 10 10:04:34 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Sat, 10 Jul 2010 14:04:34 -0300 Subject: [Rio-pm] Urgente - EXS Rio.pm + Shibuya.pm Message-ID: Perlsoal, hoje vai ter um ESX com o Yusuke Kawasaki (http://www.kawa.net), do Shibuya.pm (Tóquio). Vai ser a partir das 19:00, lá no Manoel e Joaquim do Posto 3 (Av. Atlântica, 1936 (esq. c/ Rua República do Peru), tel: 21 2236-6768). Acho que todos devem saber onde é, mas segue o link do Google Maps: http://maps.google.com/?cid=6551825912179677268 Está meio em cima da hora, mas será muito interessante, com certeza. Até logo! [ ]'s, João From fernandocorrea em gmail.com Sat Jul 10 12:15:33 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Sat, 10 Jul 2010 16:15:33 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Fiz uns testes aqui no meu super lento notebook q acho q pode interessar: fernando em fernando-laptop:~$ cat test_threads.pl #!/usr/bin/perl use 5.10.0; use strict; use Time::HiRes qw/gettimeofday tv_interval usleep/; use threads ('yield', 'stack_size' => 16384, 'exit' => 'threads_only', 'stringify'); use threads::shared; my @ips : shared; my %result : shared; my $time : shared; $| = 1; @ips = 1 .. 10_000; my $ips = @ips; say "ips: $ips"; my $max_threads = shift || 200; my $t0 = [gettimeofday]; push my @thrs, create_thread() for 1 .. $max_threads; say "Levou ", tv_interval($t0, [gettimeofday]), " seg para startar $max_threads threads"; say "Media de tempo p/ startar cada thread: ", $time / $max_threads; print("\rtestados: ", scalar keys %result), usleep 100 while @ips and $ips != scalar keys %result; print $/; my %r; $r{ $_ }++ for values %result; say "$_: $r{ $_ }" for qw/OK NOK/; say "TOTAL: ", $r{ OK } + $r{ NOK }; sub create_thread { threads->create({context => "void"}, \&sub_thread, [gettimeofday]); } sub sub_thread { my $t0 = shift; my $time_unit = tv_interval($t0, [gettimeofday]); my $tid = threads->tid; say $tid, ": ", $time_unit if $tid >= $max_threads - 5; $time += $time_unit; while(my $ip = shift @ips) { my $r = int rand 9; sleep 1 unless $r % 2; $result{ $ip } = $r % 2 ? "OK" : "NOK"; } exit; } fernando em fernando-laptop:~$ diff test_threads.pl test_forks.pl 7c7 < use threads ('yield', --- > use forks ('yield', 11c11 < use threads::shared; --- > use forks::shared; fernando em fernando-laptop:~$ time ./test_threads.pl 100 ips: 10000 95: 0.009266 96: 0.006097 97: 0.011582 98: 0.007523 99: 0.006502 100: 0.022716 testados: 99030seg para startar 100 threads OK: 4509 NOK: 5395 TOTAL: 9904 Perl exited with active threads: 85 running and unjoined 15 finished and unjoined 0 running and detached real 0m55.945s user 0m48.159s sys 0m0.596s fernando em fernando-laptop:~$ time ./test_threads.pl 500 ips: 10000 495: 0.005923 496: 0.151628 497: 1.154306 498: 0.005588 499: 0.005505 500: 0.006324 Levou 33.697717 seg para startar 500 threads Media de tempo p/ startar cada thread: 0.06719761 OK: 4420 NOK: 5580 TOTAL: 10000 Perl exited with active threads: 0 running and unjoined 500 finished and unjoined 0 running and detached real 0m38.136s user 0m2.640s sys 0m0.856s fernando em fernando-laptop:~$ time ./test_threads.pl 1000 ips: 10000 995: 0.125149 996: 0.687834 997: 0.164103 998: 0.00555 999: 0.00544 1000: 0.005672 Levou 133.962833 seg para startar 1000 threads Media de tempo p/ startar cada thread: 0.132355601 OK: 4385 NOK: 5615 TOTAL: 10000 Perl exited with active threads: 0 running and unjoined 1000 finished and unjoined 0 running and detached real 2m28.914s user 0m4.620s sys 0m1.412s fernando em fernando-laptop:~$ time ./test_forks.pl 100 ips: 10000 95: 0.600199 96: 0.463332 97: 0.462497 98: 0.012093 99: 1.848478 100: 0.273546 Levou 80.618404 seg para startar 100 threads Media de tempo p/ startar cada thread: 0.81342024 testados: 9671 OK: 4417 NOK: 5583 TOTAL: 10000 Perl exited with active threads: 2 running and unjoined 98 finished and unjoined 0 running and detached real 3m37.531s user 0m30.998s sys 0m9.469s fernando em fernando-laptop:~$ Sendo q no forks meu load chegou a 53... Just another Perl Hacker, Fernando (SmokeMachine) http://perl-e.org Em 10 de julho de 2010 12:50, João André Simioni escreveu: > Fiz um teste agora colocando um sleep 10 no inicio da função checkIp. > As threads abrem rápido assim, mas o desempenho ficou ruim. Além > disso, notei que as threads não utilizam os demais processadores. > > Minha solução atual está com um fork no começo, quebrando o código em > 8 processos distintos (número de processadores), cada processo com um > sub-grupo e criando suas threads (30 threads por grupo). > > Obrigado pela ajuda > > João André > > 2010/7/10 João André Simioni : > > Blabos, > > > > o loop interno não é nem usado nesse código, como observado pelo > > Bruno, porque ele define a quantidade de threads no início. Usualmente > > eu disparo uma thread para cada elemento que vou gerenciar, e defino > > um limite de threads abertas no início do código e é por isso que esse > > loop existe, para controlar o limite de threads (e funciona bem em > > diversos outros scripts que não têm o mesmo problema de desempenho). > > > > Segue os comentários no código: > > > >> #!/usr/bin/perl > >> > >> use strict; > >> use DBI; > >> use Net::Ping; > >> use Time::HiRes qw/usleep tv_interval gettimeofday/; > >> use threads ('yield', 'stack_size' => 32*4096, 'exit' => > >> 'threads_only', 'stringify'); > >> > >> my $host = '192.168.160.179'; > >> my $sid = 'HOMOLOG'; > >> my $user = 'mac_user'; > >> my $pass = 'mac_user'; > >> > >> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, > >> { AutoCommit => 1 }); > >> > >> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, > >> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND > >> CPE_ATIVO = ?'); > >> $sth->execute('1', 'A'); > >> > >> my @cpes; > >> > >> while (my (@row) = $sth->fetchrow_array) { > >> push @cpes, [ @row ]; > >> } > >> > >> $dbh->disconnect(); > > > > Até aqui somente listei os elementos a partir do banco de dados. > > > > O código abaixo quebra o numero de elementos em 250 threads. > > > >> my $maxThreads = 250; > >> my $total = @cpes; > >> > >> my $cpePerThread = int($total / $maxThreads); > >> > >> my @toMonitor; > >> my $i = 0; > >> my $c = 0; > >> > >> foreach my $cpe (@cpes) { > >> push @{$toMonitor[$i]}, $cpe; > >> $c++; > >> > >> if ($c > $cpePerThread) { > >> $i++; > >> $c = 0; > >> } > >> } > >> > >> print "Para $total cpes, e $maxThreads threads, tenho no final $i > >> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; > > > > > > > > E imprimo - vou ter o total de elementos dividido em 250 grupos (cada > > grupo atendido por uma thread) > > > > > > > >> sub processResult { > >> my $r = shift; > >> if (ref $r ne 'ARRAY') { > >> print STDERR "Erro na thread\n"; > >> return 0; > >> } > >> my ($result, $host, $ifs) = @$r; > >> > >> } > > > > Funcao de processamento do resultado da thread -- aqui não faz nada > > > >> sub testeClient { > >> my $threadNum = shift; > >> my $cpeGroup = shift; > >> foreach my $cpe (@{$cpeGroup}) { > >> my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = > @$cpe; > >> my $pingOk = &checkIp($cpeIp); > >> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; > >> # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, > >> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; > >> } > >> # print "Finishing thread $threadNum\n"; > >> return([1, 0]); > >> } > > > > Código da thread - basicamente chama a sub 'checkIp' para ver se o > > host está vivo. > > > > Abaixo o código de criação das threads - para cada grupo, cria uma > thread. > > > >> my $threadCount = 1; > >> foreach my $cpeGroup (@toMonitor) { > >> print "Trying to create thread"; > >> my $t0 = [gettimeofday]; > >> > >> print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; > >> > >> my $thr = threads->create({scalar => '1'}, 'testeClient', > >> $threadCount, $cpeGroup); > >> my $elapsed = tv_interval ( $t0, [gettimeofday]); > >> print "Created thread $thr ($threadCount) - took $elapsed seconds > >> to create\n"; > >> $threadCount++; > > > > Esse bloco pode ser removido, pois nunca entra - foi a primeira coisa > > que tirei, porque achei que a chamada a threads->list poderia estar > > influenciando. Esse método retorna em menos de 1ms em todas as > > execuções. Mas se preferir só ignora. > > > >> while (threads->list() >= $maxThreads) { > >> my @joinable = threads->list(threads::joinable); > >> for (@joinable) { > >> my $r = $_->join(); > >> &processResult($r); > >> } > >> usleep(10000); > >> } > >> my $elapsed = tv_interval ( $t0, [gettimeofday]); > > > > Finaliza a criação de threads > > > >> } > > > > Aguarda as threads concluirem. > > > >> while (threads->list()) { > >> my @joinable = threads->list(threads::joinable); > >> for (@joinable) { > >> my $r = $_->join(); > >> &processResult($r); > >> } > >> usleep(10000); > >> } > > > > Fim de execução > > > >> sub checkIp { > >> my $ip = shift; > >> my $pingOk = 0; > > > > > > Essa rotina faz 3 testes para cada elemento. Em cada teste, tenta um > > ping ICMP, um UDP e um TCP. Tenho que executar o ping do S.O. porque > > senão sou obrigado a rodar o script como root e o Net::Ping faz > > confusão com o ICMP. Se eu testo um host e ele nao responde no tempo > > de timeout e eu em seguida testar outro host, se o primeiro responder > > ele acha que o segundo respondeu. > > > >> eval { > >> for (1..3) { > >> my $ping = `/bin/ping -c 1 -w 1 $ip`; > >> > >> if (grep { / 0% packet loss/ } $ping) { > >> $pingOk = 1; > >> return 1; > >> } > >> > >> if ($pingOk == 0) { > >> my $p = Net::Ping->new('icmp'); > >> $p->service_check(1); > >> if ($p->ping($ip, 1)) { > >> $pingOk = 1; > >> return 1; > >> } > >> } > >> > >> if ($pingOk == 0) { > >> my $p = Net::Ping->new('udp'); > >> $p->service_check(1); > >> if ($p->ping($ip, 1)) { > >> $pingOk = 1; > >> return 1; > >> } > >> } > >> > >> sleep 3; > >> } > >> }; > >> > >> return $pingOk; > >> } > >> > > > > Quanto a usar Java, é que tenho um grupo de desenvolvimento Java do > > meu lado - eu posso solicitar a eles, mas eu não vejo porque Perl não > > pode atender bem nesse caso. > > > > Obrigado > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From braun.lima em gmail.com Sun Jul 11 05:40:27 2010 From: braun.lima em gmail.com (Marco Lima) Date: Sun, 11 Jul 2010 09:40:27 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre Message-ID: Salve Monges: Essa semana chega ao Rio representantes de uma entidade Espanhola de apoio ao Software Livre, eles desenvolvem um excelente trabalho na Espanha principalmente na Galícia, e poderão ser um excelente contato e parceiros para o Rio.PM por isso estou convocando um ESX, ainda espero a confirmação do vôo deles para fechar a data, que será dia 15 ou dia 16, sugiro as opções de locais. Como não conhecem o Rio, minha sugestão é algo entre copacana e leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em Impanema, Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou outro. Lembrando que devemos fazer um esticada para Lapa depois. No dia 17 estou programando um churrasco na minha casa, que já estam todos convidados, é só chegar. Abraços; Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From blabos em gmail.com Sun Jul 11 08:36:28 2010 From: blabos em gmail.com (Blabos de Blebe) Date: Sun, 11 Jul 2010 12:36:28 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Só que tem umas pegadinhas aí. Primeiramente seu gargalo não é processamento, é I/O, certo? Já que rede é I/O. Dado que você executa um ping externo, invariavelmente, seu script vai fazer um fork para executar esse ping. Então, se você está usando 250 threads ou 250 forks dá no mesmo pois cada thread/fork vai fazer ao menos um fork adicional. Aliás se o seu processo externo pode demorar até seg no caso do host não responder, a diferença entre criação de thread ou fork passa a ser irrelevante. Fiz alguns testes aqui na minha rede local (range de 254 ips com 2 ativos - perto do pior caso) com icmp usando: qx: 56.500s system: 66.959s Net::Ping: 26.135s Fiz os meus testes com o script abaixo: http://gist.github.com/470412 O que já mostra muita diferença. Eu observei não-cientificamente o comportamento do meu sistema via top. Usando qx e system, vi os ontes de processos ping sendo criados e o meu script não conseguiu passar de 50% de uso da cpu, pois, a thread dispara o novo processo que vai fazer I/O e ela por tabela espera. Já com o Net::Ping consegui bater na marca de 71%. blabos em host:~/workspace/threads$ cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 13 model name : Intel(R) Celeron(R) M processor 900MHz stepping : 8 cpu MHz : 900.195 cache size : 512 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov clflush dts acpi mmx fxsr sse sse2 ss tm pbe nx up bts bogomips : 1800.39 clflush size : 64 cache_alignment : 64 address sizes : 32 bits physical, 32 bits virtual power management: Não adianta muito você escolher entre fork ou thread se sua thread vai fazer fork. Além do mais deve haver para o seu hardware/SO um limite ideal de threads/forks para vc minimizar o chaveamento de contexto. Também não adianta um milhão de threads se você vai passar a maior parte do tempo chaveando entre elas. Como vc tem bem mais hosts que isso, procure o número ideal de threads/processos que minimize a perda por chaveamento de contexto e use algum módulo de pool de thread ou fork. Sugiro pra fork o Parallel::ForkManager, mais por facilidade mesmo. Mas lembre-se, seu gargalo *NÃO* é o sistema de threads. Quanto ao Net::Ping se enrolar, está fora da minha jurisdição, mas eu notei um comportamento estranho sim, e adicionei um sleep 3 no final do for, que aparentemente resolveu. O que eu notei é que para um host down, as 9 etapas de verificação levavam apenas 6 seg, mesmo com timeout de 1 seg pra cada. Adicionei o sleep 3 e ficou tudo 'normal'. Há pessoas muito mais habilitadas na lista do que eu para resolver isso. Sugiro de antemão, confirmar essa afirmação cientificamente e/ou então submeter um patch. Gurus? Agora é com vcs. :) Abraços 2010/7/10 João André Simioni : > Fiz um teste agora colocando um sleep 10 no inicio da função checkIp. > As threads abrem rápido assim, mas o desempenho ficou ruim. Além > disso, notei que as threads não utilizam os demais processadores. > > Minha solução atual está com um fork no começo, quebrando o código em > 8 processos distintos (número de processadores), cada processo com um > sub-grupo e criando suas threads (30 threads por grupo). > > Obrigado pela ajuda > > João André > > 2010/7/10 João André Simioni : >> Blabos, >> >> o loop interno não é nem usado nesse código, como observado pelo >> Bruno, porque ele define a quantidade de threads no início. Usualmente >> eu disparo uma thread para cada elemento que vou gerenciar, e defino >> um limite de threads abertas no início do código e é por isso que esse >> loop existe, para controlar o limite de threads (e funciona bem em >> diversos outros scripts que não têm o mesmo problema de desempenho). >> >> Segue os comentários no código: >> >>> #!/usr/bin/perl >>> >>> use strict; >>> use DBI; >>> use Net::Ping; >>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>> use threads ('yield', 'stack_size' => 32*4096, 'exit' => >>> 'threads_only', 'stringify'); >>> >>> my $host = '192.168.160.179'; >>> my $sid  = 'HOMOLOG'; >>> my $user = 'mac_user'; >>> my $pass = 'mac_user'; >>> >>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, >>> { AutoCommit => 1 }); >>> >>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>> CPE_ATIVO = ?'); >>> $sth->execute('1', 'A'); >>> >>> my @cpes; >>> >>> while (my (@row) = $sth->fetchrow_array) { >>>     push @cpes, [ @row ]; >>> } >>> >>> $dbh->disconnect(); >> >> Até aqui somente listei os elementos a partir do banco de dados. >> >> O código abaixo quebra o numero de elementos em 250 threads. >> >>> my $maxThreads = 250; >>> my $total      = @cpes; >>> >>> my $cpePerThread = int($total / $maxThreads); >>> >>> my @toMonitor; >>> my $i = 0; >>> my $c = 0; >>> >>> foreach my $cpe (@cpes) { >>>     push @{$toMonitor[$i]}, $cpe; >>>     $c++; >>> >>>     if ($c > $cpePerThread) { >>>         $i++; >>>         $c = 0; >>>     } >>> } >>> >>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >> >> >> >> E imprimo - vou ter o total de elementos dividido em 250 grupos (cada >> grupo atendido por uma thread) >> >> >> >>> sub processResult { >>>     my $r = shift; >>>     if (ref $r ne 'ARRAY') { >>>         print STDERR "Erro na thread\n"; >>>         return 0; >>>     } >>>     my ($result, $host, $ifs) = @$r; >>> >>> } >> >> Funcao de processamento do resultado da thread -- aqui não faz nada >> >>> sub testeClient { >>>     my $threadNum = shift; >>>     my $cpeGroup  = shift; >>>     foreach my $cpe (@{$cpeGroup}) { >>>         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = @$cpe; >>>         my $pingOk = &checkIp($cpeIp); >>>         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>     } >>>     # print "Finishing thread $threadNum\n"; >>>     return([1, 0]); >>> } >> >> Código da thread - basicamente chama a sub 'checkIp' para ver se o >> host está vivo. >> >> Abaixo o código de criação das threads - para cada grupo, cria uma thread. >> >>> my $threadCount = 1; >>> foreach my $cpeGroup (@toMonitor) { >>>     print "Trying to create thread"; >>>     my $t0 = [gettimeofday]; >>> >>>     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>> >>>     my $thr = threads->create({scalar => '1'}, 'testeClient', >>> $threadCount, $cpeGroup); >>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>     print "Created thread $thr ($threadCount) - took $elapsed seconds >>> to create\n"; >>>     $threadCount++; >> >> Esse bloco pode ser removido, pois nunca entra - foi a primeira coisa >> que tirei, porque achei que a chamada a threads->list poderia estar >> influenciando. Esse método retorna em menos de 1ms em todas as >> execuções. Mas se preferir só ignora. >> >>>     while (threads->list() >= $maxThreads) { >>>         my @joinable = threads->list(threads::joinable); >>>         for (@joinable) { >>>             my $r = $_->join(); >>>             &processResult($r); >>>         } >>>         usleep(10000); >>>     } >>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >> >> Finaliza a criação de threads >> >>> } >> >> Aguarda as threads concluirem. >> >>> while (threads->list()) { >>>     my @joinable = threads->list(threads::joinable); >>>     for (@joinable) { >>>         my $r = $_->join(); >>>         &processResult($r); >>>     } >>>     usleep(10000); >>> } >> >> Fim de execução >> >>> sub checkIp { >>>     my $ip = shift; >>>     my $pingOk = 0; >> >> >> Essa rotina faz 3 testes para cada elemento. Em cada teste, tenta um >> ping ICMP, um UDP e um TCP. Tenho que executar o ping do S.O. porque >> senão sou obrigado a rodar o script como root e o Net::Ping faz >> confusão com o ICMP. Se eu testo um host e ele nao responde no tempo >> de timeout e eu em seguida testar outro host, se o primeiro responder >> ele acha que o segundo respondeu. >> >>>     eval { >>>         for (1..3) { >>>             my $ping = `/bin/ping -c 1 -w 1 $ip`; >>> >>>             if (grep { / 0% packet loss/ } $ping) { >>>                 $pingOk = 1; >>>                 return 1; >>>             } >>> >>>             if ($pingOk == 0) { >>>                 my $p = Net::Ping->new('icmp'); >>>                 $p->service_check(1); >>>                 if ($p->ping($ip, 1)) { >>>                     $pingOk = 1; >>>                     return 1; >>>                 } >>>             } >>> >>>             if ($pingOk == 0) { >>>                 my $p = Net::Ping->new('udp'); >>>                 $p->service_check(1); >>>                 if ($p->ping($ip, 1)) { >>>                     $pingOk = 1; >>>                     return 1; >>>                 } >>>             } >>> >>>             sleep 3; >>>         } >>>     }; >>> >>>     return $pingOk; >>> } >>> >> >> Quanto a usar Java, é que tenho um grupo de desenvolvimento Java do >> meu lado - eu posso solicitar a eles, mas eu não vejo porque Perl não >> pode atender bem nesse caso. >> >> Obrigado >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From jasimioni em gmail.com Sun Jul 11 09:52:32 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Sun, 11 Jul 2010 13:52:32 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Sim, normalmente o problema é IO e você tem razão nas observações sobre Fork. Porém está errado sobre o tempo de resposta. De 4770 hosts, eu normalmente não tenho mais do que 100 sem resposta. Ou seja, a grande maioria das threads tem tempo de execução de ms. Além disso, inicialmente eu gostaria de abrir uma thread por teste, controlando somente o limite de 250 existentes ao mesmo tempo (nem sei se é uma boa abordagem). Como eu comentei antes, as threads estão ficando presas em apenas um processador. Então eu mudei o script para que quebre os meus elementos em 8 grupos, abrindo um novo processo para cada grupo usando fork e cada processo abre 30 threads. Inverti a ordem dos testes - faço primeiro o teste UDP, depois o TCP e só então disparo o ping do sistema - isso evita os forks adicionais. Realmente era aqui que o bicho tava pegando. O resultado ficou já dentro do que eu queria - consigo fazer todos os testes, disparar os alarmes para o centralizador de falhas e fazer os registros necessários no banco de dados em cerca de 60 segundos. E o load da máquina está em 2,5 durante a execução. Ou seja, provavelmente eu consiga otimizar mais ainda. E vou ver se eu mesmo dou uma olhada no código do Net::Ping - um problema que eu vi reportado é que ele coloca o id do processo no pacote ICMP e espera esse retorno - ou seja, a resposta do host A poderia dar ok para o teste do host B (essa fonte não é 100% confiável, achei numa thread há alguns dias). Vou ver se tem como mudar esse comportamento. Obrigado pela ajuda []'s João André Simioni 2010/7/11 Blabos de Blebe : > Só que tem umas pegadinhas aí. > > Primeiramente seu gargalo não é processamento, é I/O, certo? Já que rede é I/O. > > Dado que você executa um ping externo, invariavelmente, seu script vai > fazer um fork para executar esse ping. Então, se você está usando 250 > threads ou 250 forks dá no mesmo pois cada thread/fork vai fazer ao > menos um fork adicional. > > Aliás se o seu processo externo pode demorar até seg no caso do host > não responder, a diferença entre criação de thread ou fork passa a ser > irrelevante. > > Fiz alguns testes aqui na minha rede local (range de 254 ips com 2 > ativos - perto do pior caso) com icmp usando: > > qx: 56.500s > system: 66.959s > Net::Ping: 26.135s > > Fiz os meus testes com o script abaixo: > http://gist.github.com/470412 > > O que já mostra muita diferença. > > Eu observei não-cientificamente o comportamento do meu sistema via top. > > Usando qx e system, vi os ontes de processos ping sendo criados e o > meu script não conseguiu passar de 50% de uso da cpu, pois, a thread > dispara o novo processo que vai fazer I/O e ela por tabela espera. > > Já com o Net::Ping consegui bater na marca de 71%. > > blabos em host:~/workspace/threads$ cat /proc/cpuinfo > processor       : 0 > vendor_id       : GenuineIntel > cpu family      : 6 > model           : 13 > model name      : Intel(R) Celeron(R) M processor          900MHz > stepping        : 8 > cpu MHz         : 900.195 > cache size      : 512 KB > fdiv_bug        : no > hlt_bug         : no > f00f_bug        : no > coma_bug        : no > fpu             : yes > fpu_exception   : yes > cpuid level     : 2 > wp              : yes > flags           : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov > clflush dts acpi mmx fxsr sse sse2 ss tm pbe nx up bts > bogomips        : 1800.39 > clflush size    : 64 > cache_alignment : 64 > address sizes   : 32 bits physical, 32 bits virtual > power management: > > > Não adianta muito você escolher entre fork ou thread se sua thread vai > fazer fork. > > Além do mais deve haver para o seu hardware/SO um limite ideal de > threads/forks para vc minimizar o chaveamento de contexto. Também não > adianta um milhão de threads se você vai passar a maior parte do tempo > chaveando entre elas. > > Como vc tem bem mais hosts que isso, procure o número ideal de > threads/processos que minimize a perda por chaveamento de contexto e > use algum módulo de pool de thread ou fork. Sugiro pra fork o > Parallel::ForkManager, mais por facilidade mesmo. > > Mas lembre-se, seu gargalo *NÃO* é o sistema de threads. > > Quanto ao Net::Ping se enrolar, está fora da minha jurisdição, mas eu > notei um comportamento estranho sim, e adicionei um sleep 3 no final > do for, que aparentemente resolveu. O que eu notei é que para um host > down, as 9 etapas de verificação levavam apenas 6 seg, mesmo com > timeout de 1 seg pra cada. Adicionei o sleep 3 e ficou tudo 'normal'. > > Há pessoas muito mais habilitadas na lista do que eu para resolver > isso. Sugiro de antemão, confirmar essa afirmação cientificamente e/ou > então submeter um patch. > > Gurus? Agora é com vcs. :) > > Abraços > > > > 2010/7/10 João André Simioni : >> Fiz um teste agora colocando um sleep 10 no inicio da função checkIp. >> As threads abrem rápido assim, mas o desempenho ficou ruim. Além >> disso, notei que as threads não utilizam os demais processadores. >> >> Minha solução atual está com um fork no começo, quebrando o código em >> 8 processos distintos (número de processadores), cada processo com um >> sub-grupo e criando suas threads (30 threads por grupo). >> >> Obrigado pela ajuda >> >> João André >> >> 2010/7/10 João André Simioni : >>> Blabos, >>> >>> o loop interno não é nem usado nesse código, como observado pelo >>> Bruno, porque ele define a quantidade de threads no início. Usualmente >>> eu disparo uma thread para cada elemento que vou gerenciar, e defino >>> um limite de threads abertas no início do código e é por isso que esse >>> loop existe, para controlar o limite de threads (e funciona bem em >>> diversos outros scripts que não têm o mesmo problema de desempenho). >>> >>> Segue os comentários no código: >>> >>>> #!/usr/bin/perl >>>> >>>> use strict; >>>> use DBI; >>>> use Net::Ping; >>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>> use threads ('yield', 'stack_size' => 32*4096, 'exit' => >>>> 'threads_only', 'stringify'); >>>> >>>> my $host = '192.168.160.179'; >>>> my $sid  = 'HOMOLOG'; >>>> my $user = 'mac_user'; >>>> my $pass = 'mac_user'; >>>> >>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, >>>> { AutoCommit => 1 }); >>>> >>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>> CPE_ATIVO = ?'); >>>> $sth->execute('1', 'A'); >>>> >>>> my @cpes; >>>> >>>> while (my (@row) = $sth->fetchrow_array) { >>>>     push @cpes, [ @row ]; >>>> } >>>> >>>> $dbh->disconnect(); >>> >>> Até aqui somente listei os elementos a partir do banco de dados. >>> >>> O código abaixo quebra o numero de elementos em 250 threads. >>> >>>> my $maxThreads = 250; >>>> my $total      = @cpes; >>>> >>>> my $cpePerThread = int($total / $maxThreads); >>>> >>>> my @toMonitor; >>>> my $i = 0; >>>> my $c = 0; >>>> >>>> foreach my $cpe (@cpes) { >>>>     push @{$toMonitor[$i]}, $cpe; >>>>     $c++; >>>> >>>>     if ($c > $cpePerThread) { >>>>         $i++; >>>>         $c = 0; >>>>     } >>>> } >>>> >>>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>> >>> >>> >>> E imprimo - vou ter o total de elementos dividido em 250 grupos (cada >>> grupo atendido por uma thread) >>> >>> >>> >>>> sub processResult { >>>>     my $r = shift; >>>>     if (ref $r ne 'ARRAY') { >>>>         print STDERR "Erro na thread\n"; >>>>         return 0; >>>>     } >>>>     my ($result, $host, $ifs) = @$r; >>>> >>>> } >>> >>> Funcao de processamento do resultado da thread -- aqui não faz nada >>> >>>> sub testeClient { >>>>     my $threadNum = shift; >>>>     my $cpeGroup  = shift; >>>>     foreach my $cpe (@{$cpeGroup}) { >>>>         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = @$cpe; >>>>         my $pingOk = &checkIp($cpeIp); >>>>         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>     } >>>>     # print "Finishing thread $threadNum\n"; >>>>     return([1, 0]); >>>> } >>> >>> Código da thread - basicamente chama a sub 'checkIp' para ver se o >>> host está vivo. >>> >>> Abaixo o código de criação das threads - para cada grupo, cria uma thread. >>> >>>> my $threadCount = 1; >>>> foreach my $cpeGroup (@toMonitor) { >>>>     print "Trying to create thread"; >>>>     my $t0 = [gettimeofday]; >>>> >>>>     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>>> >>>>     my $thr = threads->create({scalar => '1'}, 'testeClient', >>>> $threadCount, $cpeGroup); >>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>     print "Created thread $thr ($threadCount) - took $elapsed seconds >>>> to create\n"; >>>>     $threadCount++; >>> >>> Esse bloco pode ser removido, pois nunca entra - foi a primeira coisa >>> que tirei, porque achei que a chamada a threads->list poderia estar >>> influenciando. Esse método retorna em menos de 1ms em todas as >>> execuções. Mas se preferir só ignora. >>> >>>>     while (threads->list() >= $maxThreads) { >>>>         my @joinable = threads->list(threads::joinable); >>>>         for (@joinable) { >>>>             my $r = $_->join(); >>>>             &processResult($r); >>>>         } >>>>         usleep(10000); >>>>     } >>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>> >>> Finaliza a criação de threads >>> >>>> } >>> >>> Aguarda as threads concluirem. >>> >>>> while (threads->list()) { >>>>     my @joinable = threads->list(threads::joinable); >>>>     for (@joinable) { >>>>         my $r = $_->join(); >>>>         &processResult($r); >>>>     } >>>>     usleep(10000); >>>> } >>> >>> Fim de execução >>> >>>> sub checkIp { >>>>     my $ip = shift; >>>>     my $pingOk = 0; >>> >>> >>> Essa rotina faz 3 testes para cada elemento. Em cada teste, tenta um >>> ping ICMP, um UDP e um TCP. Tenho que executar o ping do S.O. porque >>> senão sou obrigado a rodar o script como root e o Net::Ping faz >>> confusão com o ICMP. Se eu testo um host e ele nao responde no tempo >>> de timeout e eu em seguida testar outro host, se o primeiro responder >>> ele acha que o segundo respondeu. >>> >>>>     eval { >>>>         for (1..3) { >>>>             my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>> >>>>             if (grep { / 0% packet loss/ } $ping) { >>>>                 $pingOk = 1; >>>>                 return 1; >>>>             } >>>> >>>>             if ($pingOk == 0) { >>>>                 my $p = Net::Ping->new('icmp'); >>>>                 $p->service_check(1); >>>>                 if ($p->ping($ip, 1)) { >>>>                     $pingOk = 1; >>>>                     return 1; >>>>                 } >>>>             } >>>> >>>>             if ($pingOk == 0) { >>>>                 my $p = Net::Ping->new('udp'); >>>>                 $p->service_check(1); >>>>                 if ($p->ping($ip, 1)) { >>>>                     $pingOk = 1; >>>>                     return 1; >>>>                 } >>>>             } >>>> >>>>             sleep 3; >>>>         } >>>>     }; >>>> >>>>     return $pingOk; >>>> } >>>> >>> >>> Quanto a usar Java, é que tenho um grupo de desenvolvimento Java do >>> meu lado - eu posso solicitar a eles, mas eu não vejo porque Perl não >>> pode atender bem nesse caso. >>> >>> Obrigado >>> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From blabos em gmail.com Sun Jul 11 10:22:49 2010 From: blabos em gmail.com (Blabos de Blebe) Date: Sun, 11 Jul 2010 14:22:49 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: > De 4770 hosts, eu normalmente não tenho mais do que 100 sem resposta. Não tenho tantos hosts :) > Além disso, inicialmente eu gostaria de abrir uma thread por teste, *Eu* acho que é uma boa abordagem, desde que vc não fique terninando e criando denovo as threads, mas sinceramente, só se o tempo de inicialização for mesmo preocupante. > Como eu comentei antes, as threads estão ficando presas em apenas um > processador. Então eu mudei o script para que quebre os meus elementos > em 8 grupos, abrindo um novo processo para cada grupo usando fork e > cada processo abre 30 threads. Eu não sei se/como dá pra setar algum parâmetro de afinidade das threads pela API em Perl, mas essa abordagem resolve bem também. > Inverti a ordem dos testes - faço primeiro o teste UDP, depois o TCP e > só então disparo o ping do sistema - isso evita os forks adicionais. > Realmente era aqui que o bicho tava pegando. Boa! Talvez seja melhor também inverter a ordem do for. Ao invés de testar um protocolo de cada vez e esperar, de repente testar cada um três vezes antes de passar pro próximo, mas to só especulando agora. ... Não que você tenha afirmado isso, mas eu fiquei preocupado em mostrar que a inicialização de threads não é tão custosa assim. Tem uma lenda urbana mesmo entre os programadores C mais "antigos", que inicializar thread é lento. Isso vem da época que thread era implementada via fork, lá nos idos do kernel 2.4. A partir do 2.6, se não me engano, threads são implementadas como threads mesmo (!?). ... No fonte do Net::Ping, lá pela linha 413 tem: use constant ICMP_STRUCT => "C2 n3 A"; # Structure of a minimal ICMP packet Já na linha 451 temos: $msg = pack(ICMP_STRUCT . $self->{"data_size"}, ICMP_ECHO, SUBCODE, $checksum, $self->{"pid"}, $self->{"seq"}, $self->{"data"}); O pid é armazenado como short (0 a 64k - 1). Eu não faço idéia se dá pra mexer nessa mensagem. Realmente parece um problema, mas aqui já to saindo da minha área denovo :) Abraços 2010/7/11 João André Simioni : > Sim, normalmente o problema é IO e você tem razão nas observações > sobre Fork. Porém está errado sobre o tempo de resposta. > > De 4770 hosts, eu normalmente não tenho mais do que 100 sem resposta. > Ou seja, a grande maioria das threads tem tempo de execução de ms. > Além disso, inicialmente eu gostaria de abrir uma thread por teste, > controlando somente o limite de 250 existentes ao mesmo tempo (nem sei > se é uma boa abordagem). > > Como eu comentei antes, as threads estão ficando presas em apenas um > processador. Então eu mudei o script para que quebre os meus elementos > em 8 grupos, abrindo um novo processo para cada grupo usando fork e > cada processo abre 30 threads. > > Inverti a ordem dos testes - faço primeiro o teste UDP, depois o TCP e > só então disparo o ping do sistema - isso evita os forks adicionais. > Realmente era aqui que o bicho tava pegando. > > O resultado ficou já dentro do que eu queria - consigo fazer todos os > testes, disparar os alarmes para o centralizador de falhas e fazer os > registros necessários no banco de dados em cerca de 60 segundos. E o > load da máquina está em 2,5 durante a execução. Ou seja, provavelmente > eu consiga otimizar mais ainda. > > E vou ver se eu mesmo dou uma olhada no código do Net::Ping - um > problema que eu vi reportado é que ele coloca o id do processo no > pacote ICMP e espera esse retorno - ou seja, a resposta do host A > poderia dar ok para o teste do host B (essa fonte não é 100% > confiável, achei numa thread há alguns dias). Vou ver se tem como > mudar esse comportamento. > > Obrigado pela ajuda > > []'s > > João André Simioni > > > > > > 2010/7/11 Blabos de Blebe : >> Só que tem umas pegadinhas aí. >> >> Primeiramente seu gargalo não é processamento, é I/O, certo? Já que rede é I/O. >> >> Dado que você executa um ping externo, invariavelmente, seu script vai >> fazer um fork para executar esse ping. Então, se você está usando 250 >> threads ou 250 forks dá no mesmo pois cada thread/fork vai fazer ao >> menos um fork adicional. >> >> Aliás se o seu processo externo pode demorar até seg no caso do host >> não responder, a diferença entre criação de thread ou fork passa a ser >> irrelevante. >> >> Fiz alguns testes aqui na minha rede local (range de 254 ips com 2 >> ativos - perto do pior caso) com icmp usando: >> >> qx: 56.500s >> system: 66.959s >> Net::Ping: 26.135s >> >> Fiz os meus testes com o script abaixo: >> http://gist.github.com/470412 >> >> O que já mostra muita diferença. >> >> Eu observei não-cientificamente o comportamento do meu sistema via top. >> >> Usando qx e system, vi os ontes de processos ping sendo criados e o >> meu script não conseguiu passar de 50% de uso da cpu, pois, a thread >> dispara o novo processo que vai fazer I/O e ela por tabela espera. >> >> Já com o Net::Ping consegui bater na marca de 71%. >> >> blabos em host:~/workspace/threads$ cat /proc/cpuinfo >> processor       : 0 >> vendor_id       : GenuineIntel >> cpu family      : 6 >> model           : 13 >> model name      : Intel(R) Celeron(R) M processor          900MHz >> stepping        : 8 >> cpu MHz         : 900.195 >> cache size      : 512 KB >> fdiv_bug        : no >> hlt_bug         : no >> f00f_bug        : no >> coma_bug        : no >> fpu             : yes >> fpu_exception   : yes >> cpuid level     : 2 >> wp              : yes >> flags           : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov >> clflush dts acpi mmx fxsr sse sse2 ss tm pbe nx up bts >> bogomips        : 1800.39 >> clflush size    : 64 >> cache_alignment : 64 >> address sizes   : 32 bits physical, 32 bits virtual >> power management: >> >> >> Não adianta muito você escolher entre fork ou thread se sua thread vai >> fazer fork. >> >> Além do mais deve haver para o seu hardware/SO um limite ideal de >> threads/forks para vc minimizar o chaveamento de contexto. Também não >> adianta um milhão de threads se você vai passar a maior parte do tempo >> chaveando entre elas. >> >> Como vc tem bem mais hosts que isso, procure o número ideal de >> threads/processos que minimize a perda por chaveamento de contexto e >> use algum módulo de pool de thread ou fork. Sugiro pra fork o >> Parallel::ForkManager, mais por facilidade mesmo. >> >> Mas lembre-se, seu gargalo *NÃO* é o sistema de threads. >> >> Quanto ao Net::Ping se enrolar, está fora da minha jurisdição, mas eu >> notei um comportamento estranho sim, e adicionei um sleep 3 no final >> do for, que aparentemente resolveu. O que eu notei é que para um host >> down, as 9 etapas de verificação levavam apenas 6 seg, mesmo com >> timeout de 1 seg pra cada. Adicionei o sleep 3 e ficou tudo 'normal'. >> >> Há pessoas muito mais habilitadas na lista do que eu para resolver >> isso. Sugiro de antemão, confirmar essa afirmação cientificamente e/ou >> então submeter um patch. >> >> Gurus? Agora é com vcs. :) >> >> Abraços >> >> >> >> 2010/7/10 João André Simioni : >>> Fiz um teste agora colocando um sleep 10 no inicio da função checkIp. >>> As threads abrem rápido assim, mas o desempenho ficou ruim. Além >>> disso, notei que as threads não utilizam os demais processadores. >>> >>> Minha solução atual está com um fork no começo, quebrando o código em >>> 8 processos distintos (número de processadores), cada processo com um >>> sub-grupo e criando suas threads (30 threads por grupo). >>> >>> Obrigado pela ajuda >>> >>> João André >>> >>> 2010/7/10 João André Simioni : >>>> Blabos, >>>> >>>> o loop interno não é nem usado nesse código, como observado pelo >>>> Bruno, porque ele define a quantidade de threads no início. Usualmente >>>> eu disparo uma thread para cada elemento que vou gerenciar, e defino >>>> um limite de threads abertas no início do código e é por isso que esse >>>> loop existe, para controlar o limite de threads (e funciona bem em >>>> diversos outros scripts que não têm o mesmo problema de desempenho). >>>> >>>> Segue os comentários no código: >>>> >>>>> #!/usr/bin/perl >>>>> >>>>> use strict; >>>>> use DBI; >>>>> use Net::Ping; >>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>>> use threads ('yield', 'stack_size' => 32*4096, 'exit' => >>>>> 'threads_only', 'stringify'); >>>>> >>>>> my $host = '192.168.160.179'; >>>>> my $sid  = 'HOMOLOG'; >>>>> my $user = 'mac_user'; >>>>> my $pass = 'mac_user'; >>>>> >>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, >>>>> { AutoCommit => 1 }); >>>>> >>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>>> CPE_ATIVO = ?'); >>>>> $sth->execute('1', 'A'); >>>>> >>>>> my @cpes; >>>>> >>>>> while (my (@row) = $sth->fetchrow_array) { >>>>>     push @cpes, [ @row ]; >>>>> } >>>>> >>>>> $dbh->disconnect(); >>>> >>>> Até aqui somente listei os elementos a partir do banco de dados. >>>> >>>> O código abaixo quebra o numero de elementos em 250 threads. >>>> >>>>> my $maxThreads = 250; >>>>> my $total      = @cpes; >>>>> >>>>> my $cpePerThread = int($total / $maxThreads); >>>>> >>>>> my @toMonitor; >>>>> my $i = 0; >>>>> my $c = 0; >>>>> >>>>> foreach my $cpe (@cpes) { >>>>>     push @{$toMonitor[$i]}, $cpe; >>>>>     $c++; >>>>> >>>>>     if ($c > $cpePerThread) { >>>>>         $i++; >>>>>         $c = 0; >>>>>     } >>>>> } >>>>> >>>>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>> >>>> >>>> >>>> E imprimo - vou ter o total de elementos dividido em 250 grupos (cada >>>> grupo atendido por uma thread) >>>> >>>> >>>> >>>>> sub processResult { >>>>>     my $r = shift; >>>>>     if (ref $r ne 'ARRAY') { >>>>>         print STDERR "Erro na thread\n"; >>>>>         return 0; >>>>>     } >>>>>     my ($result, $host, $ifs) = @$r; >>>>> >>>>> } >>>> >>>> Funcao de processamento do resultado da thread -- aqui não faz nada >>>> >>>>> sub testeClient { >>>>>     my $threadNum = shift; >>>>>     my $cpeGroup  = shift; >>>>>     foreach my $cpe (@{$cpeGroup}) { >>>>>         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = @$cpe; >>>>>         my $pingOk = &checkIp($cpeIp); >>>>>         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>>         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>>     } >>>>>     # print "Finishing thread $threadNum\n"; >>>>>     return([1, 0]); >>>>> } >>>> >>>> Código da thread - basicamente chama a sub 'checkIp' para ver se o >>>> host está vivo. >>>> >>>> Abaixo o código de criação das threads - para cada grupo, cria uma thread. >>>> >>>>> my $threadCount = 1; >>>>> foreach my $cpeGroup (@toMonitor) { >>>>>     print "Trying to create thread"; >>>>>     my $t0 = [gettimeofday]; >>>>> >>>>>     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>>>> >>>>>     my $thr = threads->create({scalar => '1'}, 'testeClient', >>>>> $threadCount, $cpeGroup); >>>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>     print "Created thread $thr ($threadCount) - took $elapsed seconds >>>>> to create\n"; >>>>>     $threadCount++; >>>> >>>> Esse bloco pode ser removido, pois nunca entra - foi a primeira coisa >>>> que tirei, porque achei que a chamada a threads->list poderia estar >>>> influenciando. Esse método retorna em menos de 1ms em todas as >>>> execuções. Mas se preferir só ignora. >>>> >>>>>     while (threads->list() >= $maxThreads) { >>>>>         my @joinable = threads->list(threads::joinable); >>>>>         for (@joinable) { >>>>>             my $r = $_->join(); >>>>>             &processResult($r); >>>>>         } >>>>>         usleep(10000); >>>>>     } >>>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>> >>>> Finaliza a criação de threads >>>> >>>>> } >>>> >>>> Aguarda as threads concluirem. >>>> >>>>> while (threads->list()) { >>>>>     my @joinable = threads->list(threads::joinable); >>>>>     for (@joinable) { >>>>>         my $r = $_->join(); >>>>>         &processResult($r); >>>>>     } >>>>>     usleep(10000); >>>>> } >>>> >>>> Fim de execução >>>> >>>>> sub checkIp { >>>>>     my $ip = shift; >>>>>     my $pingOk = 0; >>>> >>>> >>>> Essa rotina faz 3 testes para cada elemento. Em cada teste, tenta um >>>> ping ICMP, um UDP e um TCP. Tenho que executar o ping do S.O. porque >>>> senão sou obrigado a rodar o script como root e o Net::Ping faz >>>> confusão com o ICMP. Se eu testo um host e ele nao responde no tempo >>>> de timeout e eu em seguida testar outro host, se o primeiro responder >>>> ele acha que o segundo respondeu. >>>> >>>>>     eval { >>>>>         for (1..3) { >>>>>             my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>> >>>>>             if (grep { / 0% packet loss/ } $ping) { >>>>>                 $pingOk = 1; >>>>>                 return 1; >>>>>             } >>>>> >>>>>             if ($pingOk == 0) { >>>>>                 my $p = Net::Ping->new('icmp'); >>>>>                 $p->service_check(1); >>>>>                 if ($p->ping($ip, 1)) { >>>>>                     $pingOk = 1; >>>>>                     return 1; >>>>>                 } >>>>>             } >>>>> >>>>>             if ($pingOk == 0) { >>>>>                 my $p = Net::Ping->new('udp'); >>>>>                 $p->service_check(1); >>>>>                 if ($p->ping($ip, 1)) { >>>>>                     $pingOk = 1; >>>>>                     return 1; >>>>>                 } >>>>>             } >>>>> >>>>>             sleep 3; >>>>>         } >>>>>     }; >>>>> >>>>>     return $pingOk; >>>>> } >>>>> >>>> >>>> Quanto a usar Java, é que tenho um grupo de desenvolvimento Java do >>>> meu lado - eu posso solicitar a eles, mas eu não vejo porque Perl não >>>> pode atender bem nesse caso. >>>> >>>> Obrigado >>>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From jasimioni em gmail.com Sun Jul 11 10:31:27 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Sun, 11 Jul 2010 14:31:27 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: > Talvez seja melhor também inverter a ordem do for. Ao invés de testar > um protocolo de cada vez e esperar, de repente testar cada um três > vezes antes de passar pro próximo, mas to só especulando agora. Alguns elementos têm filtro e só respondem por um determinado protocolo - por isso que eu faço os três testes. No código final, a cada teste, eu aumento o timeout - no primeiro teste o timeout é de 1s, no segundo 2s e no 3o 3s. Isso evita falsos positivos (alguns links congestionados acabam causando um RTT de até 10 segundos). > Não que você tenha afirmado isso, mas eu fiquei preocupado em mostrar > que a inicialização de threads não é tão custosa assim. > > Tem uma lenda urbana mesmo entre os programadores C mais "antigos", > que inicializar thread é lento. Isso vem da época que thread era > implementada via fork, lá nos idos do kernel 2.4. A partir do 2.6, se > não me engano, threads são implementadas como threads mesmo (!?). Aí eu já não sei - eu só tava preocupado em otimizar esse código. A discussão é a melhor forma de encontrar idéias e melhorias. Obrigado pela força > > No fonte do Net::Ping, lá pela linha 413 tem: > use constant ICMP_STRUCT      => "C2 n3 A"; # Structure of a minimal ICMP packet > > Já na linha 451 temos: > $msg = pack(ICMP_STRUCT . $self->{"data_size"}, ICMP_ECHO, SUBCODE, >              $checksum, $self->{"pid"}, $self->{"seq"}, $self->{"data"}); > > O pid é armazenado como short (0 a 64k - 1). Eu não faço idéia se dá > pra mexer nessa mensagem. > > Realmente parece um problema, mas aqui já to saindo da minha área denovo :) Vou dar uma olhada com calma aqui depois - tenho que dar uma olhada como o ICMP Echo é implementado para poder dizer se há alguma melhoria. Se conseguir, eu posto aqui depois. []'s João André From thiagoglauco em ticursos.net Sun Jul 11 12:56:33 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Sun, 11 Jul 2010 16:56:33 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: <4C3A21F1.3090109@ticursos.net> Endosso a solução do Lorn. Use o POE. E cara... pra que isso?? sub checkIp { my $ip = shift; my $pingOk = 0; eval { for (1..3) { my $ping = `/bin/ping -c 1 -w 1 $ip`; if (grep { / 0% packet loss/ } $ping) { $pingOk = 1; return 1; } if ($pingOk == 0) { my $p = Net::Ping->new('icmp'); $p->service_check(1); if ($p->ping($ip, 1)) { $pingOk = 1; return 1; } } if ($pingOk == 0) { my $p = Net::Ping->new('udp'); $p->service_check(1); if ($p->ping($ip, 1)) { $pingOk = 1; return 1; } } sleep 3; } }; Para pingar com ping externo, depois com o Net::Ping via icmp e depois com net::Ping udp? Ah... se não me engano, Net::Ping precisa de permissão root para retornar um icmp de forma correta... Em 09/07/2010 17:48, João André Simioni escreveu: > Caros, > > tenho um script para testar cerca de 4700 equipamentos, usando ping. > Queria usar cerca 250 threads para isso, então o que eu fiz foi > quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para > cada. > > Não há nenhum problema com o código, o que acontece é que o tempo de > abertura das threads é muito alto. E quanto mais threads eu abro, > maior o tempo para abertura das próximas. As primeiras abrem em 30ms, > mas perto da thread 70 esse tempo já vai para quase 1 segundo. > > Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra solução? > > Segue o output do script como exemplo: > Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 elementos cada > Trying to create thread in Fri Jul 9 17:46:50 2010.61858 > Created thread 1 (1) - took 0.030138 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.92080 > Created thread 2 (2) - took 0.042668 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.134968 > Created thread 3 (3) - took 0.064245 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.199430 > Created thread 4 (4) - took 0.082642 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.282278 > Created thread 5 (5) - took 0.128257 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.410769 > Created thread 6 (6) - took 0.136458 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.547383 > Created thread 7 (7) - took 0.208085 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.755594 > Created thread 8 (8) - took 0.173014 seconds to create > Trying to create thread in Fri Jul 9 17:46:50 2010.928756 > Created thread 9 (9) - took 0.132713 seconds to create > Trying to create thread in Fri Jul 9 17:46:51 2010.61608 > Created thread 10 (10) - took 0.127795 seconds to create > Trying to create thread in Fri Jul 9 17:46:51 2010.189536 > Created thread 11 (11) - took 0.301836 seconds to create > > Obrigado > > João André Simioni > > > > #!/usr/bin/perl > > use strict; > use DBI; > use Net::Ping; > use Time::HiRes qw/usleep tv_interval gettimeofday/; > use threads ('yield', 'stack_size' => 32*4096, 'exit' => > 'threads_only', 'stringify'); > > my $host = '192.168.160.179'; > my $sid = 'HOMOLOG'; > my $user = 'mac_user'; > my $pass = 'mac_user'; > > my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, > { AutoCommit => 1 }); > > my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, > CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND > CPE_ATIVO = ?'); > $sth->execute('1', 'A'); > > my @cpes; > > while (my (@row) = $sth->fetchrow_array) { > push @cpes, [ @row ]; > } > > $dbh->disconnect(); > > my $maxThreads = 250; > my $total = @cpes; > > my $cpePerThread = int($total / $maxThreads); > > my @toMonitor; > my $i = 0; > my $c = 0; > > foreach my $cpe (@cpes) { > push @{$toMonitor[$i]}, $cpe; > $c++; > > if ($c> $cpePerThread) { > $i++; > $c = 0; > } > } > > print "Para $total cpes, e $maxThreads threads, tenho no final $i > grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; > > sub processResult { > my $r = shift; > if (ref $r ne 'ARRAY') { > print STDERR "Erro na thread\n"; > return 0; > } > my ($result, $host, $ifs) = @$r; > > } > > sub testeClient { > my $threadNum = shift; > my $cpeGroup = shift; > foreach my $cpe (@{$cpeGroup}) { > my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = @$cpe; > my $pingOk =&checkIp($cpeIp); > my $status = $pingOk ? 'RESPONDE' : 'MORTO'; > # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, > $cpeIp, $cpeNode, $cpeIf, $status), "\n"; > } > # print "Finishing thread $threadNum\n"; > return([1, 0]); > } > > my $threadCount = 1; > foreach my $cpeGroup (@toMonitor) { > print "Trying to create thread"; > my $t0 = [gettimeofday]; > > print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; > > my $thr = threads->create({scalar => '1'}, 'testeClient', > $threadCount, $cpeGroup); > my $elapsed = tv_interval ( $t0, [gettimeofday]); > print "Created thread $thr ($threadCount) - took $elapsed seconds > to create\n"; > $threadCount++; > > while (threads->list()>= $maxThreads) { > my @joinable = threads->list(threads::joinable); > for (@joinable) { > my $r = $_->join(); > &processResult($r); > } > usleep(10000); > } > my $elapsed = tv_interval ( $t0, [gettimeofday]); > } > > while (threads->list()) { > my @joinable = threads->list(threads::joinable); > for (@joinable) { > my $r = $_->join(); > &processResult($r); > } > usleep(10000); > } > > sub checkIp { > my $ip = shift; > my $pingOk = 0; > > eval { > for (1..3) { > my $ping = `/bin/ping -c 1 -w 1 $ip`; > > if (grep { / 0% packet loss/ } $ping) { > $pingOk = 1; > return 1; > } > > if ($pingOk == 0) { > my $p = Net::Ping->new('icmp'); > $p->service_check(1); > if ($p->ping($ip, 1)) { > $pingOk = 1; > return 1; > } > } > > if ($pingOk == 0) { > my $p = Net::Ping->new('udp'); > $p->service_check(1); > if ($p->ping($ip, 1)) { > $pingOk = 1; > return 1; > } > } > > sleep 3; > } > }; > > return $pingOk; > } > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net From jasimioni em gmail.com Sun Jul 11 13:04:26 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Sun, 11 Jul 2010 17:04:26 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: <4C3A21F1.3090109@ticursos.net> References: <4C3A21F1.3090109@ticursos.net> Message-ID: Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP Echo. Alguns clientes tem filtros e assim eu evito falsos positivos. Net::Ping mesmo com root tem resultados incoerentes quando uso ICMP e Threads. []'s On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez wrote: > Endosso a solução do Lorn. Use o POE. > > E cara... pra que isso?? > > sub checkIp { >    my $ip = shift; >    my $pingOk = 0; > >    eval { >        for (1..3) { >            my $ping = `/bin/ping -c 1 -w 1 $ip`; > >            if (grep { / 0% packet loss/ } $ping) { >                $pingOk = 1; >                return 1; >            } > >            if ($pingOk == 0) { >                my $p = Net::Ping->new('icmp'); >                $p->service_check(1); >                if ($p->ping($ip, 1)) { >                    $pingOk = 1; >                    return 1; >                } >            } > >            if ($pingOk == 0) { >                my $p = Net::Ping->new('udp'); >                $p->service_check(1); >                if ($p->ping($ip, 1)) { >                    $pingOk = 1; >                    return 1; >                } >            } > >            sleep 3; >        } >    }; > > Para pingar com ping externo, depois com o Net::Ping via icmp e depois com > net::Ping udp? Ah... se não me engano, Net::Ping precisa de permissão root > para retornar um icmp de forma correta... > > > Em 09/07/2010 17:48, João André Simioni escreveu: >> >> Caros, >> >> tenho um script para testar cerca de 4700 equipamentos, usando ping. >> Queria usar cerca 250 threads para isso, então o que eu fiz foi >> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para >> cada. >> >> Não há nenhum problema com o código, o que acontece é que o tempo de >> abertura das threads é muito alto. E quanto mais threads eu abro, >> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >> >> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra solução? >> >> Segue o output do script como exemplo: >> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 elementos >> cada >> Trying to create thread in Fri Jul  9 17:46:50 2010.61858 >> Created thread 1 (1) - took 0.030138 seconds to create >> Trying to create thread in Fri Jul  9 17:46:50 2010.92080 >> Created thread 2 (2) - took 0.042668 seconds to create >> Trying to create thread in Fri Jul  9 17:46:50 2010.134968 >> Created thread 3 (3) - took 0.064245 seconds to create >> Trying to create thread in Fri Jul  9 17:46:50 2010.199430 >> Created thread 4 (4) - took 0.082642 seconds to create >> Trying to create thread in Fri Jul  9 17:46:50 2010.282278 >> Created thread 5 (5) - took 0.128257 seconds to create >> Trying to create thread in Fri Jul  9 17:46:50 2010.410769 >> Created thread 6 (6) - took 0.136458 seconds to create >> Trying to create thread in Fri Jul  9 17:46:50 2010.547383 >> Created thread 7 (7) - took 0.208085 seconds to create >> Trying to create thread in Fri Jul  9 17:46:50 2010.755594 >> Created thread 8 (8) - took 0.173014 seconds to create >> Trying to create thread in Fri Jul  9 17:46:50 2010.928756 >> Created thread 9 (9) - took 0.132713 seconds to create >> Trying to create thread in Fri Jul  9 17:46:51 2010.61608 >> Created thread 10 (10) - took 0.127795 seconds to create >> Trying to create thread in Fri Jul  9 17:46:51 2010.189536 >> Created thread 11 (11) - took 0.301836 seconds to create >> >> Obrigado >> >> João André Simioni >> >> >> >> #!/usr/bin/perl >> >> use strict; >> use DBI; >> use Net::Ping; >> use Time::HiRes qw/usleep tv_interval gettimeofday/; >> use threads ('yield', 'stack_size' =>  32*4096, 'exit' => >> 'threads_only', 'stringify'); >> >> my $host = '192.168.160.179'; >> my $sid  = 'HOMOLOG'; >> my $user = 'mac_user'; >> my $pass = 'mac_user'; >> >> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, >> { AutoCommit =>  1 }); >> >> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >> CPE_ATIVO = ?'); >> $sth->execute('1', 'A'); >> >> my @cpes; >> >> while (my (@row) = $sth->fetchrow_array) { >>     push @cpes, [ @row ]; >> } >> >> $dbh->disconnect(); >> >> my $maxThreads = 250; >> my $total      = @cpes; >> >> my $cpePerThread = int($total / $maxThreads); >> >> my @toMonitor; >> my $i = 0; >> my $c = 0; >> >> foreach my $cpe (@cpes) { >>     push @{$toMonitor[$i]}, $cpe; >>     $c++; >> >>     if ($c>  $cpePerThread) { >>         $i++; >>         $c = 0; >>     } >> } >> >> print "Para $total cpes, e $maxThreads threads, tenho no final $i >> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >> >> sub processResult { >>     my $r = shift; >>     if (ref $r ne 'ARRAY') { >>         print STDERR "Erro na thread\n"; >>         return 0; >>     } >>     my ($result, $host, $ifs) = @$r; >> >> } >> >> sub testeClient { >>     my $threadNum = shift; >>     my $cpeGroup  = shift; >>     foreach my $cpe (@{$cpeGroup}) { >>         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = >> @$cpe; >>         my $pingOk =&checkIp($cpeIp); >>         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>     } >>     # print "Finishing thread $threadNum\n"; >>     return([1, 0]); >> } >> >> my $threadCount = 1; >> foreach my $cpeGroup (@toMonitor) { >>     print "Trying to create thread"; >>     my $t0 = [gettimeofday]; >> >>     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >> >>     my $thr = threads->create({scalar =>  '1'}, 'testeClient', >> $threadCount, $cpeGroup); >>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>     print "Created thread $thr ($threadCount) - took $elapsed seconds >> to create\n"; >>     $threadCount++; >> >>     while (threads->list()>= $maxThreads) { >>         my @joinable = threads->list(threads::joinable); >>         for (@joinable) { >>             my $r = $_->join(); >>             &processResult($r); >>         } >>         usleep(10000); >>     } >>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >> } >> >> while (threads->list()) { >>     my @joinable = threads->list(threads::joinable); >>     for (@joinable) { >>         my $r = $_->join(); >>         &processResult($r); >>     } >>     usleep(10000); >> } >> >> sub checkIp { >>     my $ip = shift; >>     my $pingOk = 0; >> >>     eval { >>         for (1..3) { >>             my $ping = `/bin/ping -c 1 -w 1 $ip`; >> >>             if (grep { / 0% packet loss/ } $ping) { >>                 $pingOk = 1; >>                 return 1; >>             } >> >>             if ($pingOk == 0) { >>                 my $p = Net::Ping->new('icmp'); >>                 $p->service_check(1); >>                 if ($p->ping($ip, 1)) { >>                     $pingOk = 1; >>                     return 1; >>                 } >>             } >> >>             if ($pingOk == 0) { >>                 my $p = Net::Ping->new('udp'); >>                 $p->service_check(1); >>                 if ($p->ping($ip, 1)) { >>                     $pingOk = 1; >>                     return 1; >>                 } >>             } >> >>             sleep 3; >>         } >>     }; >> >>     return $pingOk; >> } >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > > > -- > What is the sound of Perl? Is it not the sound of a wall that people have > stopped banging their heads against? > ?Larry Wall > > Thiago Glauco Sanchez > Intrutor Perl e Redes > www.ticursos.net > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From fernandocorrea em gmail.com Sun Jul 11 13:10:22 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Sun, 11 Jul 2010 17:10:22 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: Message-ID: Uma coisa q vc pode fazer p/ otimizar, é diminuir a quantidade de memoria reservada p/ a thread... da uma olhada no exemplo q eu mandei antes... On Jul 11, 2010 2:31 PM, "João André Simioni" wrote: > Talvez seja melhor também inverter a ordem do for. Ao invés de testar > um protocolo de cada vez e... Alguns elementos têm filtro e só respondem por um determinado protocolo - por isso que eu faço os três testes. No código final, a cada teste, eu aumento o timeout - no primeiro teste o timeout é de 1s, no segundo 2s e no 3o 3s. Isso evita falsos positivos (alguns links congestionados acabam causando um RTT de até 10 segundos). > Não que você tenha afirmado isso, mas eu fiquei preocupado em mostrar > que a inicialização de th... Aí eu já não sei - eu só tava preocupado em otimizar esse código. A discussão é a melhor forma de encontrar idéias e melhorias. Obrigado pela força > > No fonte do Net::Ping, lá pela linha 413 tem: > use constant ICMP_STRUCT => "C2 n3 A"; # S... Vou dar uma olhada com calma aqui depois - tenho que dar uma olhada como o ICMP Echo é implementado para poder dizer se há alguma melhoria. Se conseguir, eu posto aqui depois. []'s João André _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org... -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From thiagoglauco em ticursos.net Sun Jul 11 14:42:25 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Sun, 11 Jul 2010 18:42:25 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> Message-ID: <4C3A3AC1.6000601@ticursos.net> Sim sim, entendi sua preocupação. Mas em vez de: for (1..3) { my $ping = `/bin/ping -c 1 -w 1 $ip`; não seria melhor já mandar pingar as 3 vezes no comando ou apenas 1? Você está gerando 3 processos externos sem necessidade real. outra... o comando ping já não é icmp? my $p = Net::Ping->new('icmp')??? Em 11/07/2010 17:04, João André Simioni escreveu: > Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP Echo. > Alguns clientes tem filtros e assim eu evito falsos positivos. > > Net::Ping mesmo com root tem resultados incoerentes quando uso ICMP e Threads. > > []'s > > On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez > wrote: > >> Endosso a solução do Lorn. Use o POE. >> >> E cara... pra que isso?? >> >> sub checkIp { >> my $ip = shift; >> my $pingOk = 0; >> >> eval { >> for (1..3) { >> my $ping = `/bin/ping -c 1 -w 1 $ip`; >> >> if (grep { / 0% packet loss/ } $ping) { >> $pingOk = 1; >> return 1; >> } >> >> if ($pingOk == 0) { >> my $p = Net::Ping->new('icmp'); >> $p->service_check(1); >> if ($p->ping($ip, 1)) { >> $pingOk = 1; >> return 1; >> } >> } >> >> if ($pingOk == 0) { >> my $p = Net::Ping->new('udp'); >> $p->service_check(1); >> if ($p->ping($ip, 1)) { >> $pingOk = 1; >> return 1; >> } >> } >> >> sleep 3; >> } >> }; >> >> Para pingar com ping externo, depois com o Net::Ping via icmp e depois com >> net::Ping udp? Ah... se não me engano, Net::Ping precisa de permissão root >> para retornar um icmp de forma correta... >> >> >> Em 09/07/2010 17:48, João André Simioni escreveu: >> >>> Caros, >>> >>> tenho um script para testar cerca de 4700 equipamentos, usando ping. >>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para >>> cada. >>> >>> Não há nenhum problema com o código, o que acontece é que o tempo de >>> abertura das threads é muito alto. E quanto mais threads eu abro, >>> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>> >>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra solução? >>> >>> Segue o output do script como exemplo: >>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 elementos >>> cada >>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 >>> Created thread 1 (1) - took 0.030138 seconds to create >>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 >>> Created thread 2 (2) - took 0.042668 seconds to create >>> Trying to create thread in Fri Jul 9 17:46:50 2010.134968 >>> Created thread 3 (3) - took 0.064245 seconds to create >>> Trying to create thread in Fri Jul 9 17:46:50 2010.199430 >>> Created thread 4 (4) - took 0.082642 seconds to create >>> Trying to create thread in Fri Jul 9 17:46:50 2010.282278 >>> Created thread 5 (5) - took 0.128257 seconds to create >>> Trying to create thread in Fri Jul 9 17:46:50 2010.410769 >>> Created thread 6 (6) - took 0.136458 seconds to create >>> Trying to create thread in Fri Jul 9 17:46:50 2010.547383 >>> Created thread 7 (7) - took 0.208085 seconds to create >>> Trying to create thread in Fri Jul 9 17:46:50 2010.755594 >>> Created thread 8 (8) - took 0.173014 seconds to create >>> Trying to create thread in Fri Jul 9 17:46:50 2010.928756 >>> Created thread 9 (9) - took 0.132713 seconds to create >>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 >>> Created thread 10 (10) - took 0.127795 seconds to create >>> Trying to create thread in Fri Jul 9 17:46:51 2010.189536 >>> Created thread 11 (11) - took 0.301836 seconds to create >>> >>> Obrigado >>> >>> João André Simioni >>> >>> >>> >>> #!/usr/bin/perl >>> >>> use strict; >>> use DBI; >>> use Net::Ping; >>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>> use threads ('yield', 'stack_size' => 32*4096, 'exit' => >>> 'threads_only', 'stringify'); >>> >>> my $host = '192.168.160.179'; >>> my $sid = 'HOMOLOG'; >>> my $user = 'mac_user'; >>> my $pass = 'mac_user'; >>> >>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, >>> { AutoCommit => 1 }); >>> >>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>> CPE_ATIVO = ?'); >>> $sth->execute('1', 'A'); >>> >>> my @cpes; >>> >>> while (my (@row) = $sth->fetchrow_array) { >>> push @cpes, [ @row ]; >>> } >>> >>> $dbh->disconnect(); >>> >>> my $maxThreads = 250; >>> my $total = @cpes; >>> >>> my $cpePerThread = int($total / $maxThreads); >>> >>> my @toMonitor; >>> my $i = 0; >>> my $c = 0; >>> >>> foreach my $cpe (@cpes) { >>> push @{$toMonitor[$i]}, $cpe; >>> $c++; >>> >>> if ($c> $cpePerThread) { >>> $i++; >>> $c = 0; >>> } >>> } >>> >>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>> >>> sub processResult { >>> my $r = shift; >>> if (ref $r ne 'ARRAY') { >>> print STDERR "Erro na thread\n"; >>> return 0; >>> } >>> my ($result, $host, $ifs) = @$r; >>> >>> } >>> >>> sub testeClient { >>> my $threadNum = shift; >>> my $cpeGroup = shift; >>> foreach my $cpe (@{$cpeGroup}) { >>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = >>> @$cpe; >>> my $pingOk =&checkIp($cpeIp); >>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>> # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>> } >>> # print "Finishing thread $threadNum\n"; >>> return([1, 0]); >>> } >>> >>> my $threadCount = 1; >>> foreach my $cpeGroup (@toMonitor) { >>> print "Trying to create thread"; >>> my $t0 = [gettimeofday]; >>> >>> print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>> >>> my $thr = threads->create({scalar => '1'}, 'testeClient', >>> $threadCount, $cpeGroup); >>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>> print "Created thread $thr ($threadCount) - took $elapsed seconds >>> to create\n"; >>> $threadCount++; >>> >>> while (threads->list()>= $maxThreads) { >>> my @joinable = threads->list(threads::joinable); >>> for (@joinable) { >>> my $r = $_->join(); >>> &processResult($r); >>> } >>> usleep(10000); >>> } >>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>> } >>> >>> while (threads->list()) { >>> my @joinable = threads->list(threads::joinable); >>> for (@joinable) { >>> my $r = $_->join(); >>> &processResult($r); >>> } >>> usleep(10000); >>> } >>> >>> sub checkIp { >>> my $ip = shift; >>> my $pingOk = 0; >>> >>> eval { >>> for (1..3) { >>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>> >>> if (grep { / 0% packet loss/ } $ping) { >>> $pingOk = 1; >>> return 1; >>> } >>> >>> if ($pingOk == 0) { >>> my $p = Net::Ping->new('icmp'); >>> $p->service_check(1); >>> if ($p->ping($ip, 1)) { >>> $pingOk = 1; >>> return 1; >>> } >>> } >>> >>> if ($pingOk == 0) { >>> my $p = Net::Ping->new('udp'); >>> $p->service_check(1); >>> if ($p->ping($ip, 1)) { >>> $pingOk = 1; >>> return 1; >>> } >>> } >>> >>> sleep 3; >>> } >>> }; >>> >>> return $pingOk; >>> } >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> >> >> -- >> What is the sound of Perl? Is it not the sound of a wall that people have >> stopped banging their heads against? >> ?Larry Wall >> >> Thiago Glauco Sanchez >> Intrutor Perl e Redes >> www.ticursos.net >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net From blabos em gmail.com Sun Jul 11 18:31:28 2010 From: blabos em gmail.com (Blabos de Blebe) Date: Sun, 11 Jul 2010 22:31:28 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: <4C3A3AC1.6000601@ticursos.net> References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> Message-ID: Não seria um typo? icmp -> ping; tcp e udp -> Net::Ping On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez wrote: > Sim sim, entendi sua preocupação. > Mas em vez de: > > for (1..3) { >           my $ping = `/bin/ping -c 1 -w 1 $ip`; > > não seria melhor já mandar pingar as 3 vezes no comando ou apenas 1? Você > está gerando 3 processos externos sem necessidade real. > > outra... o comando ping já não é icmp? > my $p = Net::Ping->new('icmp')??? > > > Em 11/07/2010 17:04, João André Simioni escreveu: >> >> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP Echo. >> Alguns clientes tem filtros e assim eu evito falsos positivos. >> >> Net::Ping mesmo com root tem resultados incoerentes quando uso ICMP e >> Threads. >> >> []'s >> >> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>  wrote: >> >>> >>> Endosso a solução do Lorn. Use o POE. >>> >>> E cara... pra que isso?? >>> >>> sub checkIp { >>>    my $ip = shift; >>>    my $pingOk = 0; >>> >>>    eval { >>>        for (1..3) { >>>            my $ping = `/bin/ping -c 1 -w 1 $ip`; >>> >>>            if (grep { / 0% packet loss/ } $ping) { >>>                $pingOk = 1; >>>                return 1; >>>            } >>> >>>            if ($pingOk == 0) { >>>                my $p = Net::Ping->new('icmp'); >>>                $p->service_check(1); >>>                if ($p->ping($ip, 1)) { >>>                    $pingOk = 1; >>>                    return 1; >>>                } >>>            } >>> >>>            if ($pingOk == 0) { >>>                my $p = Net::Ping->new('udp'); >>>                $p->service_check(1); >>>                if ($p->ping($ip, 1)) { >>>                    $pingOk = 1; >>>                    return 1; >>>                } >>>            } >>> >>>            sleep 3; >>>        } >>>    }; >>> >>> Para pingar com ping externo, depois com o Net::Ping via icmp e depois >>> com >>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de permissão >>> root >>> para retornar um icmp de forma correta... >>> >>> >>> Em 09/07/2010 17:48, João André Simioni escreveu: >>> >>>> >>>> Caros, >>>> >>>> tenho um script para testar cerca de 4700 equipamentos, usando ping. >>>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para >>>> cada. >>>> >>>> Não há nenhum problema com o código, o que acontece é que o tempo de >>>> abertura das threads é muito alto. E quanto mais threads eu abro, >>>> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>>> >>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra >>>> solução? >>>> >>>> Segue o output do script como exemplo: >>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 >>>> elementos >>>> cada >>>> Trying to create thread in Fri Jul  9 17:46:50 2010.61858 >>>> Created thread 1 (1) - took 0.030138 seconds to create >>>> Trying to create thread in Fri Jul  9 17:46:50 2010.92080 >>>> Created thread 2 (2) - took 0.042668 seconds to create >>>> Trying to create thread in Fri Jul  9 17:46:50 2010.134968 >>>> Created thread 3 (3) - took 0.064245 seconds to create >>>> Trying to create thread in Fri Jul  9 17:46:50 2010.199430 >>>> Created thread 4 (4) - took 0.082642 seconds to create >>>> Trying to create thread in Fri Jul  9 17:46:50 2010.282278 >>>> Created thread 5 (5) - took 0.128257 seconds to create >>>> Trying to create thread in Fri Jul  9 17:46:50 2010.410769 >>>> Created thread 6 (6) - took 0.136458 seconds to create >>>> Trying to create thread in Fri Jul  9 17:46:50 2010.547383 >>>> Created thread 7 (7) - took 0.208085 seconds to create >>>> Trying to create thread in Fri Jul  9 17:46:50 2010.755594 >>>> Created thread 8 (8) - took 0.173014 seconds to create >>>> Trying to create thread in Fri Jul  9 17:46:50 2010.928756 >>>> Created thread 9 (9) - took 0.132713 seconds to create >>>> Trying to create thread in Fri Jul  9 17:46:51 2010.61608 >>>> Created thread 10 (10) - took 0.127795 seconds to create >>>> Trying to create thread in Fri Jul  9 17:46:51 2010.189536 >>>> Created thread 11 (11) - took 0.301836 seconds to create >>>> >>>> Obrigado >>>> >>>> João André Simioni >>>> >>>> >>>> >>>> #!/usr/bin/perl >>>> >>>> use strict; >>>> use DBI; >>>> use Net::Ping; >>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>> use threads ('yield', 'stack_size' =>    32*4096, 'exit' => >>>> 'threads_only', 'stringify'); >>>> >>>> my $host = '192.168.160.179'; >>>> my $sid  = 'HOMOLOG'; >>>> my $user = 'mac_user'; >>>> my $pass = 'mac_user'; >>>> >>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, >>>> { AutoCommit =>    1 }); >>>> >>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>> CPE_ATIVO = ?'); >>>> $sth->execute('1', 'A'); >>>> >>>> my @cpes; >>>> >>>> while (my (@row) = $sth->fetchrow_array) { >>>>     push @cpes, [ @row ]; >>>> } >>>> >>>> $dbh->disconnect(); >>>> >>>> my $maxThreads = 250; >>>> my $total      = @cpes; >>>> >>>> my $cpePerThread = int($total / $maxThreads); >>>> >>>> my @toMonitor; >>>> my $i = 0; >>>> my $c = 0; >>>> >>>> foreach my $cpe (@cpes) { >>>>     push @{$toMonitor[$i]}, $cpe; >>>>     $c++; >>>> >>>>     if ($c>    $cpePerThread) { >>>>         $i++; >>>>         $c = 0; >>>>     } >>>> } >>>> >>>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>> >>>> sub processResult { >>>>     my $r = shift; >>>>     if (ref $r ne 'ARRAY') { >>>>         print STDERR "Erro na thread\n"; >>>>         return 0; >>>>     } >>>>     my ($result, $host, $ifs) = @$r; >>>> >>>> } >>>> >>>> sub testeClient { >>>>     my $threadNum = shift; >>>>     my $cpeGroup  = shift; >>>>     foreach my $cpe (@{$cpeGroup}) { >>>>         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = >>>> @$cpe; >>>>         my $pingOk =&checkIp($cpeIp); >>>>         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>     } >>>>     # print "Finishing thread $threadNum\n"; >>>>     return([1, 0]); >>>> } >>>> >>>> my $threadCount = 1; >>>> foreach my $cpeGroup (@toMonitor) { >>>>     print "Trying to create thread"; >>>>     my $t0 = [gettimeofday]; >>>> >>>>     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>>> >>>>     my $thr = threads->create({scalar =>    '1'}, 'testeClient', >>>> $threadCount, $cpeGroup); >>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>     print "Created thread $thr ($threadCount) - took $elapsed seconds >>>> to create\n"; >>>>     $threadCount++; >>>> >>>>     while (threads->list()>= $maxThreads) { >>>>         my @joinable = threads->list(threads::joinable); >>>>         for (@joinable) { >>>>             my $r = $_->join(); >>>>             &processResult($r); >>>>         } >>>>         usleep(10000); >>>>     } >>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>> } >>>> >>>> while (threads->list()) { >>>>     my @joinable = threads->list(threads::joinable); >>>>     for (@joinable) { >>>>         my $r = $_->join(); >>>>         &processResult($r); >>>>     } >>>>     usleep(10000); >>>> } >>>> >>>> sub checkIp { >>>>     my $ip = shift; >>>>     my $pingOk = 0; >>>> >>>>     eval { >>>>         for (1..3) { >>>>             my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>> >>>>             if (grep { / 0% packet loss/ } $ping) { >>>>                 $pingOk = 1; >>>>                 return 1; >>>>             } >>>> >>>>             if ($pingOk == 0) { >>>>                 my $p = Net::Ping->new('icmp'); >>>>                 $p->service_check(1); >>>>                 if ($p->ping($ip, 1)) { >>>>                     $pingOk = 1; >>>>                     return 1; >>>>                 } >>>>             } >>>> >>>>             if ($pingOk == 0) { >>>>                 my $p = Net::Ping->new('udp'); >>>>                 $p->service_check(1); >>>>                 if ($p->ping($ip, 1)) { >>>>                     $pingOk = 1; >>>>                     return 1; >>>>                 } >>>>             } >>>> >>>>             sleep 3; >>>>         } >>>>     }; >>>> >>>>     return $pingOk; >>>> } >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>>> >>> >>> -- >>> What is the sound of Perl? Is it not the sound of a wall that people have >>> stopped banging their heads against? >>> ?Larry Wall >>> >>> Thiago Glauco Sanchez >>> Intrutor Perl e Redes >>> www.ticursos.net >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > > > -- > What is the sound of Perl? Is it not the sound of a wall that people have > stopped banging their heads against? > ?Larry Wall > > Thiago Glauco Sanchez > Intrutor Perl e Redes > www.ticursos.net > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From jasimioni em gmail.com Sun Jul 11 19:18:36 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Sun, 11 Jul 2010 23:18:36 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> Message-ID: É typo - já está certo no código. ICMP vai via comando externo, UDP e TCP via Net::Ping. Com relação aos testes, é normal um momento de sobrecarga causar a não resposta de testes - essas sobrecargas não devem duram mais que 5 segundos. Por isso o sleep - assim eu faço o mesmo teste 3x, com intervalos de 3 segundos. []'s On Sun, Jul 11, 2010 at 10:31 PM, Blabos de Blebe wrote: > Não seria um typo? > > icmp -> ping; > tcp e udp -> Net::Ping > > > > On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez > wrote: >> Sim sim, entendi sua preocupação. >> Mas em vez de: >> >> for (1..3) { >>           my $ping = `/bin/ping -c 1 -w 1 $ip`; >> >> não seria melhor já mandar pingar as 3 vezes no comando ou apenas 1? Você >> está gerando 3 processos externos sem necessidade real. >> >> outra... o comando ping já não é icmp? >> my $p = Net::Ping->new('icmp')??? >> >> >> Em 11/07/2010 17:04, João André Simioni escreveu: >>> >>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP Echo. >>> Alguns clientes tem filtros e assim eu evito falsos positivos. >>> >>> Net::Ping mesmo com root tem resultados incoerentes quando uso ICMP e >>> Threads. >>> >>> []'s >>> >>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>>  wrote: >>> >>>> >>>> Endosso a solução do Lorn. Use o POE. >>>> >>>> E cara... pra que isso?? >>>> >>>> sub checkIp { >>>>    my $ip = shift; >>>>    my $pingOk = 0; >>>> >>>>    eval { >>>>        for (1..3) { >>>>            my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>> >>>>            if (grep { / 0% packet loss/ } $ping) { >>>>                $pingOk = 1; >>>>                return 1; >>>>            } >>>> >>>>            if ($pingOk == 0) { >>>>                my $p = Net::Ping->new('icmp'); >>>>                $p->service_check(1); >>>>                if ($p->ping($ip, 1)) { >>>>                    $pingOk = 1; >>>>                    return 1; >>>>                } >>>>            } >>>> >>>>            if ($pingOk == 0) { >>>>                my $p = Net::Ping->new('udp'); >>>>                $p->service_check(1); >>>>                if ($p->ping($ip, 1)) { >>>>                    $pingOk = 1; >>>>                    return 1; >>>>                } >>>>            } >>>> >>>>            sleep 3; >>>>        } >>>>    }; >>>> >>>> Para pingar com ping externo, depois com o Net::Ping via icmp e depois >>>> com >>>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de permissão >>>> root >>>> para retornar um icmp de forma correta... >>>> >>>> >>>> Em 09/07/2010 17:48, João André Simioni escreveu: >>>> >>>>> >>>>> Caros, >>>>> >>>>> tenho um script para testar cerca de 4700 equipamentos, usando ping. >>>>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para >>>>> cada. >>>>> >>>>> Não há nenhum problema com o código, o que acontece é que o tempo de >>>>> abertura das threads é muito alto. E quanto mais threads eu abro, >>>>> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >>>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>>>> >>>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra >>>>> solução? >>>>> >>>>> Segue o output do script como exemplo: >>>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 >>>>> elementos >>>>> cada >>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.61858 >>>>> Created thread 1 (1) - took 0.030138 seconds to create >>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.92080 >>>>> Created thread 2 (2) - took 0.042668 seconds to create >>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.134968 >>>>> Created thread 3 (3) - took 0.064245 seconds to create >>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.199430 >>>>> Created thread 4 (4) - took 0.082642 seconds to create >>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.282278 >>>>> Created thread 5 (5) - took 0.128257 seconds to create >>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.410769 >>>>> Created thread 6 (6) - took 0.136458 seconds to create >>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.547383 >>>>> Created thread 7 (7) - took 0.208085 seconds to create >>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.755594 >>>>> Created thread 8 (8) - took 0.173014 seconds to create >>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.928756 >>>>> Created thread 9 (9) - took 0.132713 seconds to create >>>>> Trying to create thread in Fri Jul  9 17:46:51 2010.61608 >>>>> Created thread 10 (10) - took 0.127795 seconds to create >>>>> Trying to create thread in Fri Jul  9 17:46:51 2010.189536 >>>>> Created thread 11 (11) - took 0.301836 seconds to create >>>>> >>>>> Obrigado >>>>> >>>>> João André Simioni >>>>> >>>>> >>>>> >>>>> #!/usr/bin/perl >>>>> >>>>> use strict; >>>>> use DBI; >>>>> use Net::Ping; >>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>>> use threads ('yield', 'stack_size' =>    32*4096, 'exit' => >>>>> 'threads_only', 'stringify'); >>>>> >>>>> my $host = '192.168.160.179'; >>>>> my $sid  = 'HOMOLOG'; >>>>> my $user = 'mac_user'; >>>>> my $pass = 'mac_user'; >>>>> >>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, >>>>> { AutoCommit =>    1 }); >>>>> >>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>>> CPE_ATIVO = ?'); >>>>> $sth->execute('1', 'A'); >>>>> >>>>> my @cpes; >>>>> >>>>> while (my (@row) = $sth->fetchrow_array) { >>>>>     push @cpes, [ @row ]; >>>>> } >>>>> >>>>> $dbh->disconnect(); >>>>> >>>>> my $maxThreads = 250; >>>>> my $total      = @cpes; >>>>> >>>>> my $cpePerThread = int($total / $maxThreads); >>>>> >>>>> my @toMonitor; >>>>> my $i = 0; >>>>> my $c = 0; >>>>> >>>>> foreach my $cpe (@cpes) { >>>>>     push @{$toMonitor[$i]}, $cpe; >>>>>     $c++; >>>>> >>>>>     if ($c>    $cpePerThread) { >>>>>         $i++; >>>>>         $c = 0; >>>>>     } >>>>> } >>>>> >>>>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>>> >>>>> sub processResult { >>>>>     my $r = shift; >>>>>     if (ref $r ne 'ARRAY') { >>>>>         print STDERR "Erro na thread\n"; >>>>>         return 0; >>>>>     } >>>>>     my ($result, $host, $ifs) = @$r; >>>>> >>>>> } >>>>> >>>>> sub testeClient { >>>>>     my $threadNum = shift; >>>>>     my $cpeGroup  = shift; >>>>>     foreach my $cpe (@{$cpeGroup}) { >>>>>         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = >>>>> @$cpe; >>>>>         my $pingOk =&checkIp($cpeIp); >>>>>         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>>         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>>     } >>>>>     # print "Finishing thread $threadNum\n"; >>>>>     return([1, 0]); >>>>> } >>>>> >>>>> my $threadCount = 1; >>>>> foreach my $cpeGroup (@toMonitor) { >>>>>     print "Trying to create thread"; >>>>>     my $t0 = [gettimeofday]; >>>>> >>>>>     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>>>> >>>>>     my $thr = threads->create({scalar =>    '1'}, 'testeClient', >>>>> $threadCount, $cpeGroup); >>>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>     print "Created thread $thr ($threadCount) - took $elapsed seconds >>>>> to create\n"; >>>>>     $threadCount++; >>>>> >>>>>     while (threads->list()>= $maxThreads) { >>>>>         my @joinable = threads->list(threads::joinable); >>>>>         for (@joinable) { >>>>>             my $r = $_->join(); >>>>>             &processResult($r); >>>>>         } >>>>>         usleep(10000); >>>>>     } >>>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>> } >>>>> >>>>> while (threads->list()) { >>>>>     my @joinable = threads->list(threads::joinable); >>>>>     for (@joinable) { >>>>>         my $r = $_->join(); >>>>>         &processResult($r); >>>>>     } >>>>>     usleep(10000); >>>>> } >>>>> >>>>> sub checkIp { >>>>>     my $ip = shift; >>>>>     my $pingOk = 0; >>>>> >>>>>     eval { >>>>>         for (1..3) { >>>>>             my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>> >>>>>             if (grep { / 0% packet loss/ } $ping) { >>>>>                 $pingOk = 1; >>>>>                 return 1; >>>>>             } >>>>> >>>>>             if ($pingOk == 0) { >>>>>                 my $p = Net::Ping->new('icmp'); >>>>>                 $p->service_check(1); >>>>>                 if ($p->ping($ip, 1)) { >>>>>                     $pingOk = 1; >>>>>                     return 1; >>>>>                 } >>>>>             } >>>>> >>>>>             if ($pingOk == 0) { >>>>>                 my $p = Net::Ping->new('udp'); >>>>>                 $p->service_check(1); >>>>>                 if ($p->ping($ip, 1)) { >>>>>                     $pingOk = 1; >>>>>                     return 1; >>>>>                 } >>>>>             } >>>>> >>>>>             sleep 3; >>>>>         } >>>>>     }; >>>>> >>>>>     return $pingOk; >>>>> } >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>>> >>>> >>>> -- >>>> What is the sound of Perl? Is it not the sound of a wall that people have >>>> stopped banging their heads against? >>>> ?Larry Wall >>>> >>>> Thiago Glauco Sanchez >>>> Intrutor Perl e Redes >>>> www.ticursos.net >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >> >> >> -- >> What is the sound of Perl? Is it not the sound of a wall that people have >> stopped banging their heads against? >> ?Larry Wall >> >> Thiago Glauco Sanchez >> Intrutor Perl e Redes >> www.ticursos.net >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From thiagoglauco em ticursos.net Sun Jul 11 19:40:52 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Sun, 11 Jul 2010 23:40:52 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> Message-ID: <4C3A80B4.5090107@ticursos.net> O que eu quero dizer: você testou com o ping externo que é um teste icmp... depois fez outro teste icmp com o Net::Ping... Não seria mais interessante testar de outra forma? $p = Net::Ping->new("tcp", 2); $p->port_number(getservbyname("http", "tcp")); Mais umas coisas: Suas máquinas/equipamentos em teste estão via internet ou rede local? Já pensou em usar SNMP? Já tive um problema parecido e iria utilizar um processo para cada equipamento por desempenho e acabai optando por utilizar o Net:SNMP que permite utilizar uma função de callback em vez de utilizar um processo para cada equipamento. Eu mando uma requisição para todos os equipamentos e conforme eles respondem a função de call-back trata a requisição. Porém, não conheço o seu ambiente. Apenas acho que criar 4000 threads não seja a melhor solução. Em 11/07/2010 23:18, João André Simioni escreveu: > É typo - já está certo no código. ICMP vai via comando externo, UDP e > TCP via Net::Ping. > > Com relação aos testes, é normal um momento de sobrecarga causar a não > resposta de testes - essas sobrecargas não devem duram mais que 5 > segundos. Por isso o sleep - assim eu faço o mesmo teste 3x, com > intervalos de 3 segundos. > > []'s > > On Sun, Jul 11, 2010 at 10:31 PM, Blabos de Blebe wrote: > >> Não seria um typo? >> >> icmp -> ping; >> tcp e udp -> Net::Ping >> >> >> >> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez >> wrote: >> >>> Sim sim, entendi sua preocupação. >>> Mas em vez de: >>> >>> for (1..3) { >>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>> >>> não seria melhor já mandar pingar as 3 vezes no comando ou apenas 1? Você >>> está gerando 3 processos externos sem necessidade real. >>> >>> outra... o comando ping já não é icmp? >>> my $p = Net::Ping->new('icmp')??? >>> >>> >>> Em 11/07/2010 17:04, João André Simioni escreveu: >>> >>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP Echo. >>>> Alguns clientes tem filtros e assim eu evito falsos positivos. >>>> >>>> Net::Ping mesmo com root tem resultados incoerentes quando uso ICMP e >>>> Threads. >>>> >>>> []'s >>>> >>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>>> wrote: >>>> >>>> >>>>> Endosso a solução do Lorn. Use o POE. >>>>> >>>>> E cara... pra que isso?? >>>>> >>>>> sub checkIp { >>>>> my $ip = shift; >>>>> my $pingOk = 0; >>>>> >>>>> eval { >>>>> for (1..3) { >>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>> >>>>> if (grep { / 0% packet loss/ } $ping) { >>>>> $pingOk = 1; >>>>> return 1; >>>>> } >>>>> >>>>> if ($pingOk == 0) { >>>>> my $p = Net::Ping->new('icmp'); >>>>> $p->service_check(1); >>>>> if ($p->ping($ip, 1)) { >>>>> $pingOk = 1; >>>>> return 1; >>>>> } >>>>> } >>>>> >>>>> if ($pingOk == 0) { >>>>> my $p = Net::Ping->new('udp'); >>>>> $p->service_check(1); >>>>> if ($p->ping($ip, 1)) { >>>>> $pingOk = 1; >>>>> return 1; >>>>> } >>>>> } >>>>> >>>>> sleep 3; >>>>> } >>>>> }; >>>>> >>>>> Para pingar com ping externo, depois com o Net::Ping via icmp e depois >>>>> com >>>>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de permissão >>>>> root >>>>> para retornar um icmp de forma correta... >>>>> >>>>> >>>>> Em 09/07/2010 17:48, João André Simioni escreveu: >>>>> >>>>> >>>>>> Caros, >>>>>> >>>>>> tenho um script para testar cerca de 4700 equipamentos, usando ping. >>>>>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para >>>>>> cada. >>>>>> >>>>>> Não há nenhum problema com o código, o que acontece é que o tempo de >>>>>> abertura das threads é muito alto. E quanto mais threads eu abro, >>>>>> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >>>>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>>>>> >>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra >>>>>> solução? >>>>>> >>>>>> Segue o output do script como exemplo: >>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 >>>>>> elementos >>>>>> cada >>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 >>>>>> Created thread 1 (1) - took 0.030138 seconds to create >>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 >>>>>> Created thread 2 (2) - took 0.042668 seconds to create >>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.134968 >>>>>> Created thread 3 (3) - took 0.064245 seconds to create >>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.199430 >>>>>> Created thread 4 (4) - took 0.082642 seconds to create >>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.282278 >>>>>> Created thread 5 (5) - took 0.128257 seconds to create >>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.410769 >>>>>> Created thread 6 (6) - took 0.136458 seconds to create >>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.547383 >>>>>> Created thread 7 (7) - took 0.208085 seconds to create >>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.755594 >>>>>> Created thread 8 (8) - took 0.173014 seconds to create >>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.928756 >>>>>> Created thread 9 (9) - took 0.132713 seconds to create >>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 >>>>>> Created thread 10 (10) - took 0.127795 seconds to create >>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.189536 >>>>>> Created thread 11 (11) - took 0.301836 seconds to create >>>>>> >>>>>> Obrigado >>>>>> >>>>>> João André Simioni >>>>>> >>>>>> >>>>>> >>>>>> #!/usr/bin/perl >>>>>> >>>>>> use strict; >>>>>> use DBI; >>>>>> use Net::Ping; >>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>>>> use threads ('yield', 'stack_size' => 32*4096, 'exit' => >>>>>> 'threads_only', 'stringify'); >>>>>> >>>>>> my $host = '192.168.160.179'; >>>>>> my $sid = 'HOMOLOG'; >>>>>> my $user = 'mac_user'; >>>>>> my $pass = 'mac_user'; >>>>>> >>>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $pass, >>>>>> { AutoCommit => 1 }); >>>>>> >>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>>>> CPE_ATIVO = ?'); >>>>>> $sth->execute('1', 'A'); >>>>>> >>>>>> my @cpes; >>>>>> >>>>>> while (my (@row) = $sth->fetchrow_array) { >>>>>> push @cpes, [ @row ]; >>>>>> } >>>>>> >>>>>> $dbh->disconnect(); >>>>>> >>>>>> my $maxThreads = 250; >>>>>> my $total = @cpes; >>>>>> >>>>>> my $cpePerThread = int($total / $maxThreads); >>>>>> >>>>>> my @toMonitor; >>>>>> my $i = 0; >>>>>> my $c = 0; >>>>>> >>>>>> foreach my $cpe (@cpes) { >>>>>> push @{$toMonitor[$i]}, $cpe; >>>>>> $c++; >>>>>> >>>>>> if ($c> $cpePerThread) { >>>>>> $i++; >>>>>> $c = 0; >>>>>> } >>>>>> } >>>>>> >>>>>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>>>> >>>>>> sub processResult { >>>>>> my $r = shift; >>>>>> if (ref $r ne 'ARRAY') { >>>>>> print STDERR "Erro na thread\n"; >>>>>> return 0; >>>>>> } >>>>>> my ($result, $host, $ifs) = @$r; >>>>>> >>>>>> } >>>>>> >>>>>> sub testeClient { >>>>>> my $threadNum = shift; >>>>>> my $cpeGroup = shift; >>>>>> foreach my $cpe (@{$cpeGroup}) { >>>>>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = >>>>>> @$cpe; >>>>>> my $pingOk =&checkIp($cpeIp); >>>>>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>>> # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>>> } >>>>>> # print "Finishing thread $threadNum\n"; >>>>>> return([1, 0]); >>>>>> } >>>>>> >>>>>> my $threadCount = 1; >>>>>> foreach my $cpeGroup (@toMonitor) { >>>>>> print "Trying to create thread"; >>>>>> my $t0 = [gettimeofday]; >>>>>> >>>>>> print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>>>>> >>>>>> my $thr = threads->create({scalar => '1'}, 'testeClient', >>>>>> $threadCount, $cpeGroup); >>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>> print "Created thread $thr ($threadCount) - took $elapsed seconds >>>>>> to create\n"; >>>>>> $threadCount++; >>>>>> >>>>>> while (threads->list()>= $maxThreads) { >>>>>> my @joinable = threads->list(threads::joinable); >>>>>> for (@joinable) { >>>>>> my $r = $_->join(); >>>>>> &processResult($r); >>>>>> } >>>>>> usleep(10000); >>>>>> } >>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>> } >>>>>> >>>>>> while (threads->list()) { >>>>>> my @joinable = threads->list(threads::joinable); >>>>>> for (@joinable) { >>>>>> my $r = $_->join(); >>>>>> &processResult($r); >>>>>> } >>>>>> usleep(10000); >>>>>> } >>>>>> >>>>>> sub checkIp { >>>>>> my $ip = shift; >>>>>> my $pingOk = 0; >>>>>> >>>>>> eval { >>>>>> for (1..3) { >>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>> >>>>>> if (grep { / 0% packet loss/ } $ping) { >>>>>> $pingOk = 1; >>>>>> return 1; >>>>>> } >>>>>> >>>>>> if ($pingOk == 0) { >>>>>> my $p = Net::Ping->new('icmp'); >>>>>> $p->service_check(1); >>>>>> if ($p->ping($ip, 1)) { >>>>>> $pingOk = 1; >>>>>> return 1; >>>>>> } >>>>>> } >>>>>> >>>>>> if ($pingOk == 0) { >>>>>> my $p = Net::Ping->new('udp'); >>>>>> $p->service_check(1); >>>>>> if ($p->ping($ip, 1)) { >>>>>> $pingOk = 1; >>>>>> return 1; >>>>>> } >>>>>> } >>>>>> >>>>>> sleep 3; >>>>>> } >>>>>> }; >>>>>> >>>>>> return $pingOk; >>>>>> } >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>>> >>>>>> >>>>>> >>>>> -- >>>>> What is the sound of Perl? Is it not the sound of a wall that people have >>>>> stopped banging their heads against? >>>>> ?Larry Wall >>>>> >>>>> Thiago Glauco Sanchez >>>>> Intrutor Perl e Redes >>>>> www.ticursos.net >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>>> >>> >>> -- >>> What is the sound of Perl? Is it not the sound of a wall that people have >>> stopped banging their heads against? >>> ?Larry Wall >>> >>> Thiago Glauco Sanchez >>> Intrutor Perl e Redes >>> www.ticursos.net >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net From jasimioni em gmail.com Sun Jul 11 19:57:34 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Sun, 11 Jul 2010 23:57:34 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: <4C3A80B4.5090107@ticursos.net> References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> Message-ID: Foi um typo - erro de digitação - o Net::Ping testa TCP e UDP. O ping externo ICMP. Mas assim, eu preciso resolver o problema com esse teste em Perl - como eu disse, essa parte do código é só um pedaço de um sistema maior. SNMP já é usado para várias outras coisas, mas dependem de access lists em routers e eu não tenho como liberar. []'s 2010/7/11 Thiago Glauco Sanchez : > O que eu quero dizer: você testou com o ping externo que é um teste icmp... > depois fez outro teste icmp com o Net::Ping... > > Não seria mais interessante testar de outra forma? > >    $p = Net::Ping->new("tcp", 2); >    $p->port_number(getservbyname("http", "tcp")); > > Mais umas coisas: Suas máquinas/equipamentos em teste estão via internet ou > rede local? > Já pensou em usar SNMP? Já tive um problema parecido e iria utilizar um > processo para cada equipamento por desempenho e acabai optando por utilizar > o Net:SNMP > que permite utilizar uma função de callback em vez de utilizar um processo > para cada equipamento. Eu mando uma requisição para todos os equipamentos e > conforme eles respondem > a função de call-back trata a requisição. > > Porém, não conheço o seu ambiente. Apenas acho que criar 4000 threads não > seja a melhor solução. > > > Em 11/07/2010 23:18, João André Simioni escreveu: >> >> É typo - já está certo no código. ICMP vai via comando externo, UDP e >> TCP via Net::Ping. >> >> Com relação aos testes, é normal um momento de sobrecarga causar a não >> resposta de testes - essas sobrecargas não devem duram mais que 5 >> segundos. Por isso o sleep - assim eu faço o mesmo teste 3x, com >> intervalos de 3 segundos. >> >> []'s >> >> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de Blebe >>  wrote: >> >>> >>> Não seria um typo? >>> >>> icmp ->  ping; >>> tcp e udp ->  Net::Ping >>> >>> >>> >>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez >>>  wrote: >>> >>>> >>>> Sim sim, entendi sua preocupação. >>>> Mas em vez de: >>>> >>>> for (1..3) { >>>>           my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>> >>>> não seria melhor já mandar pingar as 3 vezes no comando ou apenas 1? >>>> Você >>>> está gerando 3 processos externos sem necessidade real. >>>> >>>> outra... o comando ping já não é icmp? >>>> my $p = Net::Ping->new('icmp')??? >>>> >>>> >>>> Em 11/07/2010 17:04, João André Simioni escreveu: >>>> >>>>> >>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP Echo. >>>>> Alguns clientes tem filtros e assim eu evito falsos positivos. >>>>> >>>>> Net::Ping mesmo com root tem resultados incoerentes quando uso ICMP e >>>>> Threads. >>>>> >>>>> []'s >>>>> >>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>>>>    wrote: >>>>> >>>>> >>>>>> >>>>>> Endosso a solução do Lorn. Use o POE. >>>>>> >>>>>> E cara... pra que isso?? >>>>>> >>>>>> sub checkIp { >>>>>>    my $ip = shift; >>>>>>    my $pingOk = 0; >>>>>> >>>>>>    eval { >>>>>>        for (1..3) { >>>>>>            my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>> >>>>>>            if (grep { / 0% packet loss/ } $ping) { >>>>>>                $pingOk = 1; >>>>>>                return 1; >>>>>>            } >>>>>> >>>>>>            if ($pingOk == 0) { >>>>>>                my $p = Net::Ping->new('icmp'); >>>>>>                $p->service_check(1); >>>>>>                if ($p->ping($ip, 1)) { >>>>>>                    $pingOk = 1; >>>>>>                    return 1; >>>>>>                } >>>>>>            } >>>>>> >>>>>>            if ($pingOk == 0) { >>>>>>                my $p = Net::Ping->new('udp'); >>>>>>                $p->service_check(1); >>>>>>                if ($p->ping($ip, 1)) { >>>>>>                    $pingOk = 1; >>>>>>                    return 1; >>>>>>                } >>>>>>            } >>>>>> >>>>>>            sleep 3; >>>>>>        } >>>>>>    }; >>>>>> >>>>>> Para pingar com ping externo, depois com o Net::Ping via icmp e depois >>>>>> com >>>>>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de permissão >>>>>> root >>>>>> para retornar um icmp de forma correta... >>>>>> >>>>>> >>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: >>>>>> >>>>>> >>>>>>> >>>>>>> Caros, >>>>>>> >>>>>>> tenho um script para testar cerca de 4700 equipamentos, usando ping. >>>>>>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para >>>>>>> cada. >>>>>>> >>>>>>> Não há nenhum problema com o código, o que acontece é que o tempo de >>>>>>> abertura das threads é muito alto. E quanto mais threads eu abro, >>>>>>> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>>>>>> >>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra >>>>>>> solução? >>>>>>> >>>>>>> Segue o output do script como exemplo: >>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 >>>>>>> elementos >>>>>>> cada >>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.61858 >>>>>>> Created thread 1 (1) - took 0.030138 seconds to create >>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.92080 >>>>>>> Created thread 2 (2) - took 0.042668 seconds to create >>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.134968 >>>>>>> Created thread 3 (3) - took 0.064245 seconds to create >>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.199430 >>>>>>> Created thread 4 (4) - took 0.082642 seconds to create >>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.282278 >>>>>>> Created thread 5 (5) - took 0.128257 seconds to create >>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.410769 >>>>>>> Created thread 6 (6) - took 0.136458 seconds to create >>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.547383 >>>>>>> Created thread 7 (7) - took 0.208085 seconds to create >>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.755594 >>>>>>> Created thread 8 (8) - took 0.173014 seconds to create >>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.928756 >>>>>>> Created thread 9 (9) - took 0.132713 seconds to create >>>>>>> Trying to create thread in Fri Jul  9 17:46:51 2010.61608 >>>>>>> Created thread 10 (10) - took 0.127795 seconds to create >>>>>>> Trying to create thread in Fri Jul  9 17:46:51 2010.189536 >>>>>>> Created thread 11 (11) - took 0.301836 seconds to create >>>>>>> >>>>>>> Obrigado >>>>>>> >>>>>>> João André Simioni >>>>>>> >>>>>>> >>>>>>> >>>>>>> #!/usr/bin/perl >>>>>>> >>>>>>> use strict; >>>>>>> use DBI; >>>>>>> use Net::Ping; >>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>>>>> use threads ('yield', 'stack_size' =>      32*4096, 'exit' => >>>>>>> 'threads_only', 'stringify'); >>>>>>> >>>>>>> my $host = '192.168.160.179'; >>>>>>> my $sid  = 'HOMOLOG'; >>>>>>> my $user = 'mac_user'; >>>>>>> my $pass = 'mac_user'; >>>>>>> >>>>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, >>>>>>> $pass, >>>>>>> { AutoCommit =>      1 }); >>>>>>> >>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>>>>> CPE_ATIVO = ?'); >>>>>>> $sth->execute('1', 'A'); >>>>>>> >>>>>>> my @cpes; >>>>>>> >>>>>>> while (my (@row) = $sth->fetchrow_array) { >>>>>>>     push @cpes, [ @row ]; >>>>>>> } >>>>>>> >>>>>>> $dbh->disconnect(); >>>>>>> >>>>>>> my $maxThreads = 250; >>>>>>> my $total      = @cpes; >>>>>>> >>>>>>> my $cpePerThread = int($total / $maxThreads); >>>>>>> >>>>>>> my @toMonitor; >>>>>>> my $i = 0; >>>>>>> my $c = 0; >>>>>>> >>>>>>> foreach my $cpe (@cpes) { >>>>>>>     push @{$toMonitor[$i]}, $cpe; >>>>>>>     $c++; >>>>>>> >>>>>>>     if ($c>      $cpePerThread) { >>>>>>>         $i++; >>>>>>>         $c = 0; >>>>>>>     } >>>>>>> } >>>>>>> >>>>>>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>>>>> >>>>>>> sub processResult { >>>>>>>     my $r = shift; >>>>>>>     if (ref $r ne 'ARRAY') { >>>>>>>         print STDERR "Erro na thread\n"; >>>>>>>         return 0; >>>>>>>     } >>>>>>>     my ($result, $host, $ifs) = @$r; >>>>>>> >>>>>>> } >>>>>>> >>>>>>> sub testeClient { >>>>>>>     my $threadNum = shift; >>>>>>>     my $cpeGroup  = shift; >>>>>>>     foreach my $cpe (@{$cpeGroup}) { >>>>>>>         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = >>>>>>> @$cpe; >>>>>>>         my $pingOk =&checkIp($cpeIp); >>>>>>>         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>>>>         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>>>>     } >>>>>>>     # print "Finishing thread $threadNum\n"; >>>>>>>     return([1, 0]); >>>>>>> } >>>>>>> >>>>>>> my $threadCount = 1; >>>>>>> foreach my $cpeGroup (@toMonitor) { >>>>>>>     print "Trying to create thread"; >>>>>>>     my $t0 = [gettimeofday]; >>>>>>> >>>>>>>     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>>>>>> >>>>>>>     my $thr = threads->create({scalar =>      '1'}, 'testeClient', >>>>>>> $threadCount, $cpeGroup); >>>>>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>     print "Created thread $thr ($threadCount) - took $elapsed seconds >>>>>>> to create\n"; >>>>>>>     $threadCount++; >>>>>>> >>>>>>>     while (threads->list()>= $maxThreads) { >>>>>>>         my @joinable = threads->list(threads::joinable); >>>>>>>         for (@joinable) { >>>>>>>             my $r = $_->join(); >>>>>>>             &processResult($r); >>>>>>>         } >>>>>>>         usleep(10000); >>>>>>>     } >>>>>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>> } >>>>>>> >>>>>>> while (threads->list()) { >>>>>>>     my @joinable = threads->list(threads::joinable); >>>>>>>     for (@joinable) { >>>>>>>         my $r = $_->join(); >>>>>>>         &processResult($r); >>>>>>>     } >>>>>>>     usleep(10000); >>>>>>> } >>>>>>> >>>>>>> sub checkIp { >>>>>>>     my $ip = shift; >>>>>>>     my $pingOk = 0; >>>>>>> >>>>>>>     eval { >>>>>>>         for (1..3) { >>>>>>>             my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>> >>>>>>>             if (grep { / 0% packet loss/ } $ping) { >>>>>>>                 $pingOk = 1; >>>>>>>                 return 1; >>>>>>>             } >>>>>>> >>>>>>>             if ($pingOk == 0) { >>>>>>>                 my $p = Net::Ping->new('icmp'); >>>>>>>                 $p->service_check(1); >>>>>>>                 if ($p->ping($ip, 1)) { >>>>>>>                     $pingOk = 1; >>>>>>>                     return 1; >>>>>>>                 } >>>>>>>             } >>>>>>> >>>>>>>             if ($pingOk == 0) { >>>>>>>                 my $p = Net::Ping->new('udp'); >>>>>>>                 $p->service_check(1); >>>>>>>                 if ($p->ping($ip, 1)) { >>>>>>>                     $pingOk = 1; >>>>>>>                     return 1; >>>>>>>                 } >>>>>>>             } >>>>>>> >>>>>>>             sleep 3; >>>>>>>         } >>>>>>>     }; >>>>>>> >>>>>>>     return $pingOk; >>>>>>> } >>>>>>> _______________________________________________ >>>>>>> Rio-pm mailing list >>>>>>> Rio-pm em pm.org >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> -- >>>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>>> have >>>>>> stopped banging their heads against? >>>>>> ?Larry Wall >>>>>> >>>>>> Thiago Glauco Sanchez >>>>>> Intrutor Perl e Redes >>>>>> www.ticursos.net >>>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>>> >>>> >>>> -- >>>> What is the sound of Perl? Is it not the sound of a wall that people >>>> have >>>> stopped banging their heads against? >>>> ?Larry Wall >>>> >>>> Thiago Glauco Sanchez >>>> Intrutor Perl e Redes >>>> www.ticursos.net >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > > > -- > What is the sound of Perl? Is it not the sound of a wall that people have > stopped banging their heads against? > ?Larry Wall > > Thiago Glauco Sanchez > Intrutor Perl e Redes > www.ticursos.net > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From thiagoglauco em ticursos.net Sun Jul 11 20:04:29 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Mon, 12 Jul 2010 00:04:29 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> Message-ID: <4C3A863D.1030901@ticursos.net> Ah, entendi... então amanha eu e a lista vamos estar mais descansados para pensar no seu problema... Em 11/07/2010 23:57, João André Simioni escreveu: > Foi um typo - erro de digitação - o Net::Ping testa TCP e UDP. O ping > externo ICMP. > > Mas assim, eu preciso resolver o problema com esse teste em Perl - > como eu disse, essa parte do código é só um pedaço de um sistema > maior. SNMP já é usado para várias outras coisas, mas dependem de > access lists em routers e eu não tenho como liberar. > > []'s > > 2010/7/11 Thiago Glauco Sanchez: > >> O que eu quero dizer: você testou com o ping externo que é um teste icmp... >> depois fez outro teste icmp com o Net::Ping... >> >> Não seria mais interessante testar de outra forma? >> >> $p = Net::Ping->new("tcp", 2); >> $p->port_number(getservbyname("http", "tcp")); >> >> Mais umas coisas: Suas máquinas/equipamentos em teste estão via internet ou >> rede local? >> Já pensou em usar SNMP? Já tive um problema parecido e iria utilizar um >> processo para cada equipamento por desempenho e acabai optando por utilizar >> o Net:SNMP >> que permite utilizar uma função de callback em vez de utilizar um processo >> para cada equipamento. Eu mando uma requisição para todos os equipamentos e >> conforme eles respondem >> a função de call-back trata a requisição. >> >> Porém, não conheço o seu ambiente. Apenas acho que criar 4000 threads não >> seja a melhor solução. >> >> >> Em 11/07/2010 23:18, João André Simioni escreveu: >> >>> É typo - já está certo no código. ICMP vai via comando externo, UDP e >>> TCP via Net::Ping. >>> >>> Com relação aos testes, é normal um momento de sobrecarga causar a não >>> resposta de testes - essas sobrecargas não devem duram mais que 5 >>> segundos. Por isso o sleep - assim eu faço o mesmo teste 3x, com >>> intervalos de 3 segundos. >>> >>> []'s >>> >>> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de Blebe >>> wrote: >>> >>> >>>> Não seria um typo? >>>> >>>> icmp -> ping; >>>> tcp e udp -> Net::Ping >>>> >>>> >>>> >>>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez >>>> wrote: >>>> >>>> >>>>> Sim sim, entendi sua preocupação. >>>>> Mas em vez de: >>>>> >>>>> for (1..3) { >>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>> >>>>> não seria melhor já mandar pingar as 3 vezes no comando ou apenas 1? >>>>> Você >>>>> está gerando 3 processos externos sem necessidade real. >>>>> >>>>> outra... o comando ping já não é icmp? >>>>> my $p = Net::Ping->new('icmp')??? >>>>> >>>>> >>>>> Em 11/07/2010 17:04, João André Simioni escreveu: >>>>> >>>>> >>>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP Echo. >>>>>> Alguns clientes tem filtros e assim eu evito falsos positivos. >>>>>> >>>>>> Net::Ping mesmo com root tem resultados incoerentes quando uso ICMP e >>>>>> Threads. >>>>>> >>>>>> []'s >>>>>> >>>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>>>>> wrote: >>>>>> >>>>>> >>>>>> >>>>>>> Endosso a solução do Lorn. Use o POE. >>>>>>> >>>>>>> E cara... pra que isso?? >>>>>>> >>>>>>> sub checkIp { >>>>>>> my $ip = shift; >>>>>>> my $pingOk = 0; >>>>>>> >>>>>>> eval { >>>>>>> for (1..3) { >>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>> >>>>>>> if (grep { / 0% packet loss/ } $ping) { >>>>>>> $pingOk = 1; >>>>>>> return 1; >>>>>>> } >>>>>>> >>>>>>> if ($pingOk == 0) { >>>>>>> my $p = Net::Ping->new('icmp'); >>>>>>> $p->service_check(1); >>>>>>> if ($p->ping($ip, 1)) { >>>>>>> $pingOk = 1; >>>>>>> return 1; >>>>>>> } >>>>>>> } >>>>>>> >>>>>>> if ($pingOk == 0) { >>>>>>> my $p = Net::Ping->new('udp'); >>>>>>> $p->service_check(1); >>>>>>> if ($p->ping($ip, 1)) { >>>>>>> $pingOk = 1; >>>>>>> return 1; >>>>>>> } >>>>>>> } >>>>>>> >>>>>>> sleep 3; >>>>>>> } >>>>>>> }; >>>>>>> >>>>>>> Para pingar com ping externo, depois com o Net::Ping via icmp e depois >>>>>>> com >>>>>>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de permissão >>>>>>> root >>>>>>> para retornar um icmp de forma correta... >>>>>>> >>>>>>> >>>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Caros, >>>>>>>> >>>>>>>> tenho um script para testar cerca de 4700 equipamentos, usando ping. >>>>>>>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para >>>>>>>> cada. >>>>>>>> >>>>>>>> Não há nenhum problema com o código, o que acontece é que o tempo de >>>>>>>> abertura das threads é muito alto. E quanto mais threads eu abro, >>>>>>>> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >>>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>>>>>>> >>>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra >>>>>>>> solução? >>>>>>>> >>>>>>>> Segue o output do script como exemplo: >>>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 >>>>>>>> elementos >>>>>>>> cada >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 >>>>>>>> Created thread 1 (1) - took 0.030138 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 >>>>>>>> Created thread 2 (2) - took 0.042668 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.134968 >>>>>>>> Created thread 3 (3) - took 0.064245 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.199430 >>>>>>>> Created thread 4 (4) - took 0.082642 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.282278 >>>>>>>> Created thread 5 (5) - took 0.128257 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.410769 >>>>>>>> Created thread 6 (6) - took 0.136458 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.547383 >>>>>>>> Created thread 7 (7) - took 0.208085 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.755594 >>>>>>>> Created thread 8 (8) - took 0.173014 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.928756 >>>>>>>> Created thread 9 (9) - took 0.132713 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 >>>>>>>> Created thread 10 (10) - took 0.127795 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.189536 >>>>>>>> Created thread 11 (11) - took 0.301836 seconds to create >>>>>>>> >>>>>>>> Obrigado >>>>>>>> >>>>>>>> João André Simioni >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> #!/usr/bin/perl >>>>>>>> >>>>>>>> use strict; >>>>>>>> use DBI; >>>>>>>> use Net::Ping; >>>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>>>>>> use threads ('yield', 'stack_size' => 32*4096, 'exit' => >>>>>>>> 'threads_only', 'stringify'); >>>>>>>> >>>>>>>> my $host = '192.168.160.179'; >>>>>>>> my $sid = 'HOMOLOG'; >>>>>>>> my $user = 'mac_user'; >>>>>>>> my $pass = 'mac_user'; >>>>>>>> >>>>>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, >>>>>>>> $pass, >>>>>>>> { AutoCommit => 1 }); >>>>>>>> >>>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>>>>>> CPE_ATIVO = ?'); >>>>>>>> $sth->execute('1', 'A'); >>>>>>>> >>>>>>>> my @cpes; >>>>>>>> >>>>>>>> while (my (@row) = $sth->fetchrow_array) { >>>>>>>> push @cpes, [ @row ]; >>>>>>>> } >>>>>>>> >>>>>>>> $dbh->disconnect(); >>>>>>>> >>>>>>>> my $maxThreads = 250; >>>>>>>> my $total = @cpes; >>>>>>>> >>>>>>>> my $cpePerThread = int($total / $maxThreads); >>>>>>>> >>>>>>>> my @toMonitor; >>>>>>>> my $i = 0; >>>>>>>> my $c = 0; >>>>>>>> >>>>>>>> foreach my $cpe (@cpes) { >>>>>>>> push @{$toMonitor[$i]}, $cpe; >>>>>>>> $c++; >>>>>>>> >>>>>>>> if ($c> $cpePerThread) { >>>>>>>> $i++; >>>>>>>> $c = 0; >>>>>>>> } >>>>>>>> } >>>>>>>> >>>>>>>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>>>>>> >>>>>>>> sub processResult { >>>>>>>> my $r = shift; >>>>>>>> if (ref $r ne 'ARRAY') { >>>>>>>> print STDERR "Erro na thread\n"; >>>>>>>> return 0; >>>>>>>> } >>>>>>>> my ($result, $host, $ifs) = @$r; >>>>>>>> >>>>>>>> } >>>>>>>> >>>>>>>> sub testeClient { >>>>>>>> my $threadNum = shift; >>>>>>>> my $cpeGroup = shift; >>>>>>>> foreach my $cpe (@{$cpeGroup}) { >>>>>>>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = >>>>>>>> @$cpe; >>>>>>>> my $pingOk =&checkIp($cpeIp); >>>>>>>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>>>>> # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>>>>> } >>>>>>>> # print "Finishing thread $threadNum\n"; >>>>>>>> return([1, 0]); >>>>>>>> } >>>>>>>> >>>>>>>> my $threadCount = 1; >>>>>>>> foreach my $cpeGroup (@toMonitor) { >>>>>>>> print "Trying to create thread"; >>>>>>>> my $t0 = [gettimeofday]; >>>>>>>> >>>>>>>> print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>>>>>>> >>>>>>>> my $thr = threads->create({scalar => '1'}, 'testeClient', >>>>>>>> $threadCount, $cpeGroup); >>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>> print "Created thread $thr ($threadCount) - took $elapsed seconds >>>>>>>> to create\n"; >>>>>>>> $threadCount++; >>>>>>>> >>>>>>>> while (threads->list()>= $maxThreads) { >>>>>>>> my @joinable = threads->list(threads::joinable); >>>>>>>> for (@joinable) { >>>>>>>> my $r = $_->join(); >>>>>>>> &processResult($r); >>>>>>>> } >>>>>>>> usleep(10000); >>>>>>>> } >>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>> } >>>>>>>> >>>>>>>> while (threads->list()) { >>>>>>>> my @joinable = threads->list(threads::joinable); >>>>>>>> for (@joinable) { >>>>>>>> my $r = $_->join(); >>>>>>>> &processResult($r); >>>>>>>> } >>>>>>>> usleep(10000); >>>>>>>> } >>>>>>>> >>>>>>>> sub checkIp { >>>>>>>> my $ip = shift; >>>>>>>> my $pingOk = 0; >>>>>>>> >>>>>>>> eval { >>>>>>>> for (1..3) { >>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>> >>>>>>>> if (grep { / 0% packet loss/ } $ping) { >>>>>>>> $pingOk = 1; >>>>>>>> return 1; >>>>>>>> } >>>>>>>> >>>>>>>> if ($pingOk == 0) { >>>>>>>> my $p = Net::Ping->new('icmp'); >>>>>>>> $p->service_check(1); >>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>> $pingOk = 1; >>>>>>>> return 1; >>>>>>>> } >>>>>>>> } >>>>>>>> >>>>>>>> if ($pingOk == 0) { >>>>>>>> my $p = Net::Ping->new('udp'); >>>>>>>> $p->service_check(1); >>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>> $pingOk = 1; >>>>>>>> return 1; >>>>>>>> } >>>>>>>> } >>>>>>>> >>>>>>>> sleep 3; >>>>>>>> } >>>>>>>> }; >>>>>>>> >>>>>>>> return $pingOk; >>>>>>>> } >>>>>>>> _______________________________________________ >>>>>>>> Rio-pm mailing list >>>>>>>> Rio-pm em pm.org >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> -- >>>>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>>>> have >>>>>>> stopped banging their heads against? >>>>>>> ?Larry Wall >>>>>>> >>>>>>> Thiago Glauco Sanchez >>>>>>> Intrutor Perl e Redes >>>>>>> www.ticursos.net >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rio-pm mailing list >>>>>>> Rio-pm em pm.org >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>>> >>>>>> >>>>>> >>>>> -- >>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>> have >>>>> stopped banging their heads against? >>>>> ?Larry Wall >>>>> >>>>> Thiago Glauco Sanchez >>>>> Intrutor Perl e Redes >>>>> www.ticursos.net >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> >> >> -- >> What is the sound of Perl? Is it not the sound of a wall that people have >> stopped banging their heads against? >> ?Larry Wall >> >> Thiago Glauco Sanchez >> Intrutor Perl e Redes >> www.ticursos.net >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net From indiox em gentoobr.org Mon Jul 12 05:53:49 2010 From: indiox em gentoobr.org (Claudio Pereira) Date: Mon, 12 Jul 2010 09:53:49 -0300 Subject: [Rio-pm] Urgente - EXS Rio.pm + Shibuya.pm In-Reply-To: References: Message-ID: Salve João, 2010/7/10 João C. Coutinho : > Perlsoal, > > hoje vai ter um ESX com o Yusuke Kawasaki (http://www.kawa.net), do > Shibuya.pm (Tóquio). > Posta o resumo ae, achei que todos estavam em SP. [ ]'s Indio. From jc em joaocoutinho.com.br Mon Jul 12 08:30:45 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Mon, 12 Jul 2010 12:30:45 -0300 Subject: [Rio-pm] Urgente - EXS Rio.pm + Shibuya.pm In-Reply-To: References: Message-ID: Salve, Índio! O ESX foi ótimo. Acho que éramos 11, incluindo o Yusuke e a esposa. Alguns levaram as namoradas/esposas (nenhuma Perl Monger foi, infelizmente) e eles ficaram impressionados pelo fato delas participarem dos encontros! Ele (principalmente) fazia questão de cumprimentar cada um que chegava em português (a não ser a mim, que fui o primeiro a encontrá-los). Ah, e de pedir chope em português também! Conversamos muito sobre as diversas formas culturais, hábitos, idioma, economia, mercado de TI, música, gastronomia, etc., do Brasil. Eles trouxeram um guia super-interessante (em japonês, ilustrado) com dicas sobre o país. Tinha até uma seção bem abrangente sobre os tipos de bebidas daqui! Fizeram mil perguntas e comentários bem inteligentes. Também falamos muito sobre os eventos de FLOSS e Perl e sobre os Perl Mongers de diversas localidades. O Fernando mostrou o Android falando Perl e o convidou pro YAPC::Brasil. Quem continua o resumão? [ ]'s, João PS: Depois, alguns de nós fomos para a Lapa, mas aí é outra estória! :) 2010/7/12 Claudio Pereira : > Salve João, > > 2010/7/10 João C. Coutinho : >> Perlsoal, >> >> hoje vai ter um ESX com o Yusuke Kawasaki (http://www.kawa.net), do >> Shibuya.pm (Tóquio). >> > > Posta o resumo ae, achei que todos estavam em SP. > > [ ]'s Indio. > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From thiagoglauco em ticursos.net Mon Jul 12 11:11:46 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Mon, 12 Jul 2010 15:11:46 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> Message-ID: <4C3B5AE2.7030009@ticursos.net> O Perl tem um framework para aplicações em rede e Multitarefa chamada POE que "Provide a cooperative scheduling and multitasking environment rivalling threads and IPC" Não seria o caso de estudarmos a possibilidade de usar esse framework no seu sistema??? Em 11/07/2010 23:57, João André Simioni escreveu: > Foi um typo - erro de digitação - o Net::Ping testa TCP e UDP. O ping > externo ICMP. > > Mas assim, eu preciso resolver o problema com esse teste em Perl - > como eu disse, essa parte do código é só um pedaço de um sistema > maior. SNMP já é usado para várias outras coisas, mas dependem de > access lists em routers e eu não tenho como liberar. > > []'s > > 2010/7/11 Thiago Glauco Sanchez: > >> O que eu quero dizer: você testou com o ping externo que é um teste icmp... >> depois fez outro teste icmp com o Net::Ping... >> >> Não seria mais interessante testar de outra forma? >> >> $p = Net::Ping->new("tcp", 2); >> $p->port_number(getservbyname("http", "tcp")); >> >> Mais umas coisas: Suas máquinas/equipamentos em teste estão via internet ou >> rede local? >> Já pensou em usar SNMP? Já tive um problema parecido e iria utilizar um >> processo para cada equipamento por desempenho e acabai optando por utilizar >> o Net:SNMP >> que permite utilizar uma função de callback em vez de utilizar um processo >> para cada equipamento. Eu mando uma requisição para todos os equipamentos e >> conforme eles respondem >> a função de call-back trata a requisição. >> >> Porém, não conheço o seu ambiente. Apenas acho que criar 4000 threads não >> seja a melhor solução. >> >> >> Em 11/07/2010 23:18, João André Simioni escreveu: >> >>> É typo - já está certo no código. ICMP vai via comando externo, UDP e >>> TCP via Net::Ping. >>> >>> Com relação aos testes, é normal um momento de sobrecarga causar a não >>> resposta de testes - essas sobrecargas não devem duram mais que 5 >>> segundos. Por isso o sleep - assim eu faço o mesmo teste 3x, com >>> intervalos de 3 segundos. >>> >>> []'s >>> >>> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de Blebe >>> wrote: >>> >>> >>>> Não seria um typo? >>>> >>>> icmp -> ping; >>>> tcp e udp -> Net::Ping >>>> >>>> >>>> >>>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez >>>> wrote: >>>> >>>> >>>>> Sim sim, entendi sua preocupação. >>>>> Mas em vez de: >>>>> >>>>> for (1..3) { >>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>> >>>>> não seria melhor já mandar pingar as 3 vezes no comando ou apenas 1? >>>>> Você >>>>> está gerando 3 processos externos sem necessidade real. >>>>> >>>>> outra... o comando ping já não é icmp? >>>>> my $p = Net::Ping->new('icmp')??? >>>>> >>>>> >>>>> Em 11/07/2010 17:04, João André Simioni escreveu: >>>>> >>>>> >>>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP Echo. >>>>>> Alguns clientes tem filtros e assim eu evito falsos positivos. >>>>>> >>>>>> Net::Ping mesmo com root tem resultados incoerentes quando uso ICMP e >>>>>> Threads. >>>>>> >>>>>> []'s >>>>>> >>>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>>>>> wrote: >>>>>> >>>>>> >>>>>> >>>>>>> Endosso a solução do Lorn. Use o POE. >>>>>>> >>>>>>> E cara... pra que isso?? >>>>>>> >>>>>>> sub checkIp { >>>>>>> my $ip = shift; >>>>>>> my $pingOk = 0; >>>>>>> >>>>>>> eval { >>>>>>> for (1..3) { >>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>> >>>>>>> if (grep { / 0% packet loss/ } $ping) { >>>>>>> $pingOk = 1; >>>>>>> return 1; >>>>>>> } >>>>>>> >>>>>>> if ($pingOk == 0) { >>>>>>> my $p = Net::Ping->new('icmp'); >>>>>>> $p->service_check(1); >>>>>>> if ($p->ping($ip, 1)) { >>>>>>> $pingOk = 1; >>>>>>> return 1; >>>>>>> } >>>>>>> } >>>>>>> >>>>>>> if ($pingOk == 0) { >>>>>>> my $p = Net::Ping->new('udp'); >>>>>>> $p->service_check(1); >>>>>>> if ($p->ping($ip, 1)) { >>>>>>> $pingOk = 1; >>>>>>> return 1; >>>>>>> } >>>>>>> } >>>>>>> >>>>>>> sleep 3; >>>>>>> } >>>>>>> }; >>>>>>> >>>>>>> Para pingar com ping externo, depois com o Net::Ping via icmp e depois >>>>>>> com >>>>>>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de permissão >>>>>>> root >>>>>>> para retornar um icmp de forma correta... >>>>>>> >>>>>>> >>>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Caros, >>>>>>>> >>>>>>>> tenho um script para testar cerca de 4700 equipamentos, usando ping. >>>>>>>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread para >>>>>>>> cada. >>>>>>>> >>>>>>>> Não há nenhum problema com o código, o que acontece é que o tempo de >>>>>>>> abertura das threads é muito alto. E quanto mais threads eu abro, >>>>>>>> maior o tempo para abertura das próximas. As primeiras abrem em 30ms, >>>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>>>>>>> >>>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra >>>>>>>> solução? >>>>>>>> >>>>>>>> Segue o output do script como exemplo: >>>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 >>>>>>>> elementos >>>>>>>> cada >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 >>>>>>>> Created thread 1 (1) - took 0.030138 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 >>>>>>>> Created thread 2 (2) - took 0.042668 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.134968 >>>>>>>> Created thread 3 (3) - took 0.064245 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.199430 >>>>>>>> Created thread 4 (4) - took 0.082642 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.282278 >>>>>>>> Created thread 5 (5) - took 0.128257 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.410769 >>>>>>>> Created thread 6 (6) - took 0.136458 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.547383 >>>>>>>> Created thread 7 (7) - took 0.208085 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.755594 >>>>>>>> Created thread 8 (8) - took 0.173014 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.928756 >>>>>>>> Created thread 9 (9) - took 0.132713 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 >>>>>>>> Created thread 10 (10) - took 0.127795 seconds to create >>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.189536 >>>>>>>> Created thread 11 (11) - took 0.301836 seconds to create >>>>>>>> >>>>>>>> Obrigado >>>>>>>> >>>>>>>> João André Simioni >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> #!/usr/bin/perl >>>>>>>> >>>>>>>> use strict; >>>>>>>> use DBI; >>>>>>>> use Net::Ping; >>>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>>>>>> use threads ('yield', 'stack_size' => 32*4096, 'exit' => >>>>>>>> 'threads_only', 'stringify'); >>>>>>>> >>>>>>>> my $host = '192.168.160.179'; >>>>>>>> my $sid = 'HOMOLOG'; >>>>>>>> my $user = 'mac_user'; >>>>>>>> my $pass = 'mac_user'; >>>>>>>> >>>>>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, >>>>>>>> $pass, >>>>>>>> { AutoCommit => 1 }); >>>>>>>> >>>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>>>>>> CPE_ATIVO = ?'); >>>>>>>> $sth->execute('1', 'A'); >>>>>>>> >>>>>>>> my @cpes; >>>>>>>> >>>>>>>> while (my (@row) = $sth->fetchrow_array) { >>>>>>>> push @cpes, [ @row ]; >>>>>>>> } >>>>>>>> >>>>>>>> $dbh->disconnect(); >>>>>>>> >>>>>>>> my $maxThreads = 250; >>>>>>>> my $total = @cpes; >>>>>>>> >>>>>>>> my $cpePerThread = int($total / $maxThreads); >>>>>>>> >>>>>>>> my @toMonitor; >>>>>>>> my $i = 0; >>>>>>>> my $c = 0; >>>>>>>> >>>>>>>> foreach my $cpe (@cpes) { >>>>>>>> push @{$toMonitor[$i]}, $cpe; >>>>>>>> $c++; >>>>>>>> >>>>>>>> if ($c> $cpePerThread) { >>>>>>>> $i++; >>>>>>>> $c = 0; >>>>>>>> } >>>>>>>> } >>>>>>>> >>>>>>>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>>>>>> >>>>>>>> sub processResult { >>>>>>>> my $r = shift; >>>>>>>> if (ref $r ne 'ARRAY') { >>>>>>>> print STDERR "Erro na thread\n"; >>>>>>>> return 0; >>>>>>>> } >>>>>>>> my ($result, $host, $ifs) = @$r; >>>>>>>> >>>>>>>> } >>>>>>>> >>>>>>>> sub testeClient { >>>>>>>> my $threadNum = shift; >>>>>>>> my $cpeGroup = shift; >>>>>>>> foreach my $cpe (@{$cpeGroup}) { >>>>>>>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) = >>>>>>>> @$cpe; >>>>>>>> my $pingOk =&checkIp($cpeIp); >>>>>>>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>>>>> # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>>>>> } >>>>>>>> # print "Finishing thread $threadNum\n"; >>>>>>>> return([1, 0]); >>>>>>>> } >>>>>>>> >>>>>>>> my $threadCount = 1; >>>>>>>> foreach my $cpeGroup (@toMonitor) { >>>>>>>> print "Trying to create thread"; >>>>>>>> my $t0 = [gettimeofday]; >>>>>>>> >>>>>>>> print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>>>>>>> >>>>>>>> my $thr = threads->create({scalar => '1'}, 'testeClient', >>>>>>>> $threadCount, $cpeGroup); >>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>> print "Created thread $thr ($threadCount) - took $elapsed seconds >>>>>>>> to create\n"; >>>>>>>> $threadCount++; >>>>>>>> >>>>>>>> while (threads->list()>= $maxThreads) { >>>>>>>> my @joinable = threads->list(threads::joinable); >>>>>>>> for (@joinable) { >>>>>>>> my $r = $_->join(); >>>>>>>> &processResult($r); >>>>>>>> } >>>>>>>> usleep(10000); >>>>>>>> } >>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>> } >>>>>>>> >>>>>>>> while (threads->list()) { >>>>>>>> my @joinable = threads->list(threads::joinable); >>>>>>>> for (@joinable) { >>>>>>>> my $r = $_->join(); >>>>>>>> &processResult($r); >>>>>>>> } >>>>>>>> usleep(10000); >>>>>>>> } >>>>>>>> >>>>>>>> sub checkIp { >>>>>>>> my $ip = shift; >>>>>>>> my $pingOk = 0; >>>>>>>> >>>>>>>> eval { >>>>>>>> for (1..3) { >>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>> >>>>>>>> if (grep { / 0% packet loss/ } $ping) { >>>>>>>> $pingOk = 1; >>>>>>>> return 1; >>>>>>>> } >>>>>>>> >>>>>>>> if ($pingOk == 0) { >>>>>>>> my $p = Net::Ping->new('icmp'); >>>>>>>> $p->service_check(1); >>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>> $pingOk = 1; >>>>>>>> return 1; >>>>>>>> } >>>>>>>> } >>>>>>>> >>>>>>>> if ($pingOk == 0) { >>>>>>>> my $p = Net::Ping->new('udp'); >>>>>>>> $p->service_check(1); >>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>> $pingOk = 1; >>>>>>>> return 1; >>>>>>>> } >>>>>>>> } >>>>>>>> >>>>>>>> sleep 3; >>>>>>>> } >>>>>>>> }; >>>>>>>> >>>>>>>> return $pingOk; >>>>>>>> } >>>>>>>> _______________________________________________ >>>>>>>> Rio-pm mailing list >>>>>>>> Rio-pm em pm.org >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> -- >>>>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>>>> have >>>>>>> stopped banging their heads against? >>>>>>> ?Larry Wall >>>>>>> >>>>>>> Thiago Glauco Sanchez >>>>>>> Intrutor Perl e Redes >>>>>>> www.ticursos.net >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rio-pm mailing list >>>>>>> Rio-pm em pm.org >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>>> >>>>>> >>>>>> >>>>> -- >>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>> have >>>>> stopped banging their heads against? >>>>> ?Larry Wall >>>>> >>>>> Thiago Glauco Sanchez >>>>> Intrutor Perl e Redes >>>>> www.ticursos.net >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> >> >> -- >> What is the sound of Perl? Is it not the sound of a wall that people have >> stopped banging their heads against? >> ?Larry Wall >> >> Thiago Glauco Sanchez >> Intrutor Perl e Redes >> www.ticursos.net >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net From jasimioni em gmail.com Mon Jul 12 11:38:03 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Mon, 12 Jul 2010 15:38:03 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: <4C3B5AE2.7030009@ticursos.net> References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> Message-ID: O pessoal comentou - eu vou dar uma olhada nele com atenção. Obrigado pela dica. 2010/7/12 Thiago Glauco Sanchez : > O Perl tem um framework para aplicações em rede e Multitarefa chamada POE > que > "Provide a cooperative scheduling and multitasking environment rivalling > threads and IPC" > Não seria o caso de estudarmos a possibilidade de usar esse framework no seu > sistema??? > > Em 11/07/2010 23:57, João André Simioni escreveu: >> >> Foi um typo - erro de digitação - o Net::Ping testa TCP e UDP. O ping >> externo ICMP. >> >> Mas assim, eu preciso resolver o problema com esse teste em Perl - >> como eu disse, essa parte do código é só um pedaço de um sistema >> maior. SNMP já é usado para várias outras coisas, mas dependem de >> access lists em routers e eu não tenho como liberar. >> >> []'s >> >> 2010/7/11 Thiago Glauco Sanchez: >> >>> >>> O que eu quero dizer: você testou com o ping externo que é um teste >>> icmp... >>> depois fez outro teste icmp com o Net::Ping... >>> >>> Não seria mais interessante testar de outra forma? >>> >>>    $p = Net::Ping->new("tcp", 2); >>>    $p->port_number(getservbyname("http", "tcp")); >>> >>> Mais umas coisas: Suas máquinas/equipamentos em teste estão via internet >>> ou >>> rede local? >>> Já pensou em usar SNMP? Já tive um problema parecido e iria utilizar um >>> processo para cada equipamento por desempenho e acabai optando por >>> utilizar >>> o Net:SNMP >>> que permite utilizar uma função de callback em vez de utilizar um >>> processo >>> para cada equipamento. Eu mando uma requisição para todos os equipamentos >>> e >>> conforme eles respondem >>> a função de call-back trata a requisição. >>> >>> Porém, não conheço o seu ambiente. Apenas acho que criar 4000 threads não >>> seja a melhor solução. >>> >>> >>> Em 11/07/2010 23:18, João André Simioni escreveu: >>> >>>> >>>> É typo - já está certo no código. ICMP vai via comando externo, UDP e >>>> TCP via Net::Ping. >>>> >>>> Com relação aos testes, é normal um momento de sobrecarga causar a não >>>> resposta de testes - essas sobrecargas não devem duram mais que 5 >>>> segundos. Por isso o sleep - assim eu faço o mesmo teste 3x, com >>>> intervalos de 3 segundos. >>>> >>>> []'s >>>> >>>> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de Blebe >>>>  wrote: >>>> >>>> >>>>> >>>>> Não seria um typo? >>>>> >>>>> icmp ->    ping; >>>>> tcp e udp ->    Net::Ping >>>>> >>>>> >>>>> >>>>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez >>>>>    wrote: >>>>> >>>>> >>>>>> >>>>>> Sim sim, entendi sua preocupação. >>>>>> Mas em vez de: >>>>>> >>>>>> for (1..3) { >>>>>>           my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>> >>>>>> não seria melhor já mandar pingar as 3 vezes no comando ou apenas 1? >>>>>> Você >>>>>> está gerando 3 processos externos sem necessidade real. >>>>>> >>>>>> outra... o comando ping já não é icmp? >>>>>> my $p = Net::Ping->new('icmp')??? >>>>>> >>>>>> >>>>>> Em 11/07/2010 17:04, João André Simioni escreveu: >>>>>> >>>>>> >>>>>>> >>>>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP Echo. >>>>>>> Alguns clientes tem filtros e assim eu evito falsos positivos. >>>>>>> >>>>>>> Net::Ping mesmo com root tem resultados incoerentes quando uso ICMP e >>>>>>> Threads. >>>>>>> >>>>>>> []'s >>>>>>> >>>>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>>>>>>      wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>>> >>>>>>>> Endosso a solução do Lorn. Use o POE. >>>>>>>> >>>>>>>> E cara... pra que isso?? >>>>>>>> >>>>>>>> sub checkIp { >>>>>>>>    my $ip = shift; >>>>>>>>    my $pingOk = 0; >>>>>>>> >>>>>>>>    eval { >>>>>>>>        for (1..3) { >>>>>>>>            my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>> >>>>>>>>            if (grep { / 0% packet loss/ } $ping) { >>>>>>>>                $pingOk = 1; >>>>>>>>                return 1; >>>>>>>>            } >>>>>>>> >>>>>>>>            if ($pingOk == 0) { >>>>>>>>                my $p = Net::Ping->new('icmp'); >>>>>>>>                $p->service_check(1); >>>>>>>>                if ($p->ping($ip, 1)) { >>>>>>>>                    $pingOk = 1; >>>>>>>>                    return 1; >>>>>>>>                } >>>>>>>>            } >>>>>>>> >>>>>>>>            if ($pingOk == 0) { >>>>>>>>                my $p = Net::Ping->new('udp'); >>>>>>>>                $p->service_check(1); >>>>>>>>                if ($p->ping($ip, 1)) { >>>>>>>>                    $pingOk = 1; >>>>>>>>                    return 1; >>>>>>>>                } >>>>>>>>            } >>>>>>>> >>>>>>>>            sleep 3; >>>>>>>>        } >>>>>>>>    }; >>>>>>>> >>>>>>>> Para pingar com ping externo, depois com o Net::Ping via icmp e >>>>>>>> depois >>>>>>>> com >>>>>>>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de >>>>>>>> permissão >>>>>>>> root >>>>>>>> para retornar um icmp de forma correta... >>>>>>>> >>>>>>>> >>>>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> >>>>>>>>> Caros, >>>>>>>>> >>>>>>>>> tenho um script para testar cerca de 4700 equipamentos, usando >>>>>>>>> ping. >>>>>>>>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>>>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread >>>>>>>>> para >>>>>>>>> cada. >>>>>>>>> >>>>>>>>> Não há nenhum problema com o código, o que acontece é que o tempo >>>>>>>>> de >>>>>>>>> abertura das threads é muito alto. E quanto mais threads eu abro, >>>>>>>>> maior o tempo para abertura das próximas. As primeiras abrem em >>>>>>>>> 30ms, >>>>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>>>>>>>> >>>>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra >>>>>>>>> solução? >>>>>>>>> >>>>>>>>> Segue o output do script como exemplo: >>>>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 >>>>>>>>> elementos >>>>>>>>> cada >>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.61858 >>>>>>>>> Created thread 1 (1) - took 0.030138 seconds to create >>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.92080 >>>>>>>>> Created thread 2 (2) - took 0.042668 seconds to create >>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.134968 >>>>>>>>> Created thread 3 (3) - took 0.064245 seconds to create >>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.199430 >>>>>>>>> Created thread 4 (4) - took 0.082642 seconds to create >>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.282278 >>>>>>>>> Created thread 5 (5) - took 0.128257 seconds to create >>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.410769 >>>>>>>>> Created thread 6 (6) - took 0.136458 seconds to create >>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.547383 >>>>>>>>> Created thread 7 (7) - took 0.208085 seconds to create >>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.755594 >>>>>>>>> Created thread 8 (8) - took 0.173014 seconds to create >>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.928756 >>>>>>>>> Created thread 9 (9) - took 0.132713 seconds to create >>>>>>>>> Trying to create thread in Fri Jul  9 17:46:51 2010.61608 >>>>>>>>> Created thread 10 (10) - took 0.127795 seconds to create >>>>>>>>> Trying to create thread in Fri Jul  9 17:46:51 2010.189536 >>>>>>>>> Created thread 11 (11) - took 0.301836 seconds to create >>>>>>>>> >>>>>>>>> Obrigado >>>>>>>>> >>>>>>>>> João André Simioni >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> #!/usr/bin/perl >>>>>>>>> >>>>>>>>> use strict; >>>>>>>>> use DBI; >>>>>>>>> use Net::Ping; >>>>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>>>>>>> use threads ('yield', 'stack_size' =>        32*4096, 'exit' => >>>>>>>>> 'threads_only', 'stringify'); >>>>>>>>> >>>>>>>>> my $host = '192.168.160.179'; >>>>>>>>> my $sid  = 'HOMOLOG'; >>>>>>>>> my $user = 'mac_user'; >>>>>>>>> my $pass = 'mac_user'; >>>>>>>>> >>>>>>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, >>>>>>>>> $pass, >>>>>>>>> { AutoCommit =>        1 }); >>>>>>>>> >>>>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>>>>>>> CPE_ATIVO = ?'); >>>>>>>>> $sth->execute('1', 'A'); >>>>>>>>> >>>>>>>>> my @cpes; >>>>>>>>> >>>>>>>>> while (my (@row) = $sth->fetchrow_array) { >>>>>>>>>     push @cpes, [ @row ]; >>>>>>>>> } >>>>>>>>> >>>>>>>>> $dbh->disconnect(); >>>>>>>>> >>>>>>>>> my $maxThreads = 250; >>>>>>>>> my $total      = @cpes; >>>>>>>>> >>>>>>>>> my $cpePerThread = int($total / $maxThreads); >>>>>>>>> >>>>>>>>> my @toMonitor; >>>>>>>>> my $i = 0; >>>>>>>>> my $c = 0; >>>>>>>>> >>>>>>>>> foreach my $cpe (@cpes) { >>>>>>>>>     push @{$toMonitor[$i]}, $cpe; >>>>>>>>>     $c++; >>>>>>>>> >>>>>>>>>     if ($c>        $cpePerThread) { >>>>>>>>>         $i++; >>>>>>>>>         $c = 0; >>>>>>>>>     } >>>>>>>>> } >>>>>>>>> >>>>>>>>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>>>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>>>>>>> >>>>>>>>> sub processResult { >>>>>>>>>     my $r = shift; >>>>>>>>>     if (ref $r ne 'ARRAY') { >>>>>>>>>         print STDERR "Erro na thread\n"; >>>>>>>>>         return 0; >>>>>>>>>     } >>>>>>>>>     my ($result, $host, $ifs) = @$r; >>>>>>>>> >>>>>>>>> } >>>>>>>>> >>>>>>>>> sub testeClient { >>>>>>>>>     my $threadNum = shift; >>>>>>>>>     my $cpeGroup  = shift; >>>>>>>>>     foreach my $cpe (@{$cpeGroup}) { >>>>>>>>>         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) >>>>>>>>> = >>>>>>>>> @$cpe; >>>>>>>>>         my $pingOk =&checkIp($cpeIp); >>>>>>>>>         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>>>>>>         # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>>>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>>>>>>     } >>>>>>>>>     # print "Finishing thread $threadNum\n"; >>>>>>>>>     return([1, 0]); >>>>>>>>> } >>>>>>>>> >>>>>>>>> my $threadCount = 1; >>>>>>>>> foreach my $cpeGroup (@toMonitor) { >>>>>>>>>     print "Trying to create thread"; >>>>>>>>>     my $t0 = [gettimeofday]; >>>>>>>>> >>>>>>>>>     print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>>>>>>>> >>>>>>>>>     my $thr = threads->create({scalar =>        '1'}, >>>>>>>>> 'testeClient', >>>>>>>>> $threadCount, $cpeGroup); >>>>>>>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>>>     print "Created thread $thr ($threadCount) - took $elapsed >>>>>>>>> seconds >>>>>>>>> to create\n"; >>>>>>>>>     $threadCount++; >>>>>>>>> >>>>>>>>>     while (threads->list()>= $maxThreads) { >>>>>>>>>         my @joinable = threads->list(threads::joinable); >>>>>>>>>         for (@joinable) { >>>>>>>>>             my $r = $_->join(); >>>>>>>>>             &processResult($r); >>>>>>>>>         } >>>>>>>>>         usleep(10000); >>>>>>>>>     } >>>>>>>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>>> } >>>>>>>>> >>>>>>>>> while (threads->list()) { >>>>>>>>>     my @joinable = threads->list(threads::joinable); >>>>>>>>>     for (@joinable) { >>>>>>>>>         my $r = $_->join(); >>>>>>>>>         &processResult($r); >>>>>>>>>     } >>>>>>>>>     usleep(10000); >>>>>>>>> } >>>>>>>>> >>>>>>>>> sub checkIp { >>>>>>>>>     my $ip = shift; >>>>>>>>>     my $pingOk = 0; >>>>>>>>> >>>>>>>>>     eval { >>>>>>>>>         for (1..3) { >>>>>>>>>             my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>>> >>>>>>>>>             if (grep { / 0% packet loss/ } $ping) { >>>>>>>>>                 $pingOk = 1; >>>>>>>>>                 return 1; >>>>>>>>>             } >>>>>>>>> >>>>>>>>>             if ($pingOk == 0) { >>>>>>>>>                 my $p = Net::Ping->new('icmp'); >>>>>>>>>                 $p->service_check(1); >>>>>>>>>                 if ($p->ping($ip, 1)) { >>>>>>>>>                     $pingOk = 1; >>>>>>>>>                     return 1; >>>>>>>>>                 } >>>>>>>>>             } >>>>>>>>> >>>>>>>>>             if ($pingOk == 0) { >>>>>>>>>                 my $p = Net::Ping->new('udp'); >>>>>>>>>                 $p->service_check(1); >>>>>>>>>                 if ($p->ping($ip, 1)) { >>>>>>>>>                     $pingOk = 1; >>>>>>>>>                     return 1; >>>>>>>>>                 } >>>>>>>>>             } >>>>>>>>> >>>>>>>>>             sleep 3; >>>>>>>>>         } >>>>>>>>>     }; >>>>>>>>> >>>>>>>>>     return $pingOk; >>>>>>>>> } >>>>>>>>> _______________________________________________ >>>>>>>>> Rio-pm mailing list >>>>>>>>> Rio-pm em pm.org >>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>>>>> have >>>>>>>> stopped banging their heads against? >>>>>>>> ?Larry Wall >>>>>>>> >>>>>>>> Thiago Glauco Sanchez >>>>>>>> Intrutor Perl e Redes >>>>>>>> www.ticursos.net >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Rio-pm mailing list >>>>>>>> Rio-pm em pm.org >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rio-pm mailing list >>>>>>> Rio-pm em pm.org >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> -- >>>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>>> have >>>>>> stopped banging their heads against? >>>>>> ?Larry Wall >>>>>> >>>>>> Thiago Glauco Sanchez >>>>>> Intrutor Perl e Redes >>>>>> www.ticursos.net >>>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>>> >>> >>> -- >>> What is the sound of Perl? Is it not the sound of a wall that people have >>> stopped banging their heads against? >>> ?Larry Wall >>> >>> Thiago Glauco Sanchez >>> Intrutor Perl e Redes >>> www.ticursos.net >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > > > -- > What is the sound of Perl? Is it not the sound of a wall that people have > stopped banging their heads against? > ?Larry Wall > > Thiago Glauco Sanchez > Intrutor Perl e Redes > www.ticursos.net > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From thiagoglauco em ticursos.net Mon Jul 12 11:52:38 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Mon, 12 Jul 2010 15:52:38 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> Message-ID: <4C3B6476.7080309@ticursos.net> Um pequeno exemplo que eu criei apenas para ilustrar... o pessoal que desejar incrementar, por favor, be my guest. use 5.12.0; use POE; use Net::Ping; POE::Session->create( inline_states => { _start => sub { my ($kernel) = $_[KERNEL]; print "Setting up a session\n"; $kernel->yield("ping"); }, ping => sub{my ($kernel) = $_[KERNEL]; my @ping = `ping -n 1 www.ticursos.net`; map{say "ping externo ok" if $_ =~ /Perdidos = 0/ } @ping; $kernel->delay_set("net_ping" => 3); }, net_ping => sub{ my ($kernel) = $_[KERNEL]; my $p = Net::Ping->new(); $p->port_number(80); my ($ret, $duration, $ip) = $p->ping('ticursos.net'); say "net::ping ok" if $ret; $p->close(); $kernel->delay_set("ping" => 3) }, }, ); say "Iniciando o Kernel..."; $poe_kernel->run( ); exit(0); sub start { my ($kernel) = $_[KERNEL]; say "Iniciando os testes com POE"; $kernel->yield("ping"); } Em 12/07/2010 15:38, João André Simioni escreveu: > O pessoal comentou - eu vou dar uma olhada nele com atenção. > > Obrigado pela dica. > > 2010/7/12 Thiago Glauco Sanchez: > >> O Perl tem um framework para aplicações em rede e Multitarefa chamada POE >> que >> "Provide a cooperative scheduling and multitasking environment rivalling >> threads and IPC" >> Não seria o caso de estudarmos a possibilidade de usar esse framework no seu >> sistema??? >> >> Em 11/07/2010 23:57, João André Simioni escreveu: >> >>> Foi um typo - erro de digitação - o Net::Ping testa TCP e UDP. O ping >>> externo ICMP. >>> >>> Mas assim, eu preciso resolver o problema com esse teste em Perl - >>> como eu disse, essa parte do código é só um pedaço de um sistema >>> maior. SNMP já é usado para várias outras coisas, mas dependem de >>> access lists em routers e eu não tenho como liberar. >>> >>> []'s >>> >>> 2010/7/11 Thiago Glauco Sanchez: >>> >>> >>>> O que eu quero dizer: você testou com o ping externo que é um teste >>>> icmp... >>>> depois fez outro teste icmp com o Net::Ping... >>>> >>>> Não seria mais interessante testar de outra forma? >>>> >>>> $p = Net::Ping->new("tcp", 2); >>>> $p->port_number(getservbyname("http", "tcp")); >>>> >>>> Mais umas coisas: Suas máquinas/equipamentos em teste estão via internet >>>> ou >>>> rede local? >>>> Já pensou em usar SNMP? Já tive um problema parecido e iria utilizar um >>>> processo para cada equipamento por desempenho e acabai optando por >>>> utilizar >>>> o Net:SNMP >>>> que permite utilizar uma função de callback em vez de utilizar um >>>> processo >>>> para cada equipamento. Eu mando uma requisição para todos os equipamentos >>>> e >>>> conforme eles respondem >>>> a função de call-back trata a requisição. >>>> >>>> Porém, não conheço o seu ambiente. Apenas acho que criar 4000 threads não >>>> seja a melhor solução. >>>> >>>> >>>> Em 11/07/2010 23:18, João André Simioni escreveu: >>>> >>>> >>>>> É typo - já está certo no código. ICMP vai via comando externo, UDP e >>>>> TCP via Net::Ping. >>>>> >>>>> Com relação aos testes, é normal um momento de sobrecarga causar a não >>>>> resposta de testes - essas sobrecargas não devem duram mais que 5 >>>>> segundos. Por isso o sleep - assim eu faço o mesmo teste 3x, com >>>>> intervalos de 3 segundos. >>>>> >>>>> []'s >>>>> >>>>> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de Blebe >>>>> wrote: >>>>> >>>>> >>>>> >>>>>> Não seria um typo? >>>>>> >>>>>> icmp -> ping; >>>>>> tcp e udp -> Net::Ping >>>>>> >>>>>> >>>>>> >>>>>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez >>>>>> wrote: >>>>>> >>>>>> >>>>>> >>>>>>> Sim sim, entendi sua preocupação. >>>>>>> Mas em vez de: >>>>>>> >>>>>>> for (1..3) { >>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>> >>>>>>> não seria melhor já mandar pingar as 3 vezes no comando ou apenas 1? >>>>>>> Você >>>>>>> está gerando 3 processos externos sem necessidade real. >>>>>>> >>>>>>> outra... o comando ping já não é icmp? >>>>>>> my $p = Net::Ping->new('icmp')??? >>>>>>> >>>>>>> >>>>>>> Em 11/07/2010 17:04, João André Simioni escreveu: >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP Echo. >>>>>>>> Alguns clientes tem filtros e assim eu evito falsos positivos. >>>>>>>> >>>>>>>> Net::Ping mesmo com root tem resultados incoerentes quando uso ICMP e >>>>>>>> Threads. >>>>>>>> >>>>>>>> []'s >>>>>>>> >>>>>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>>>>>>> wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Endosso a solução do Lorn. Use o POE. >>>>>>>>> >>>>>>>>> E cara... pra que isso?? >>>>>>>>> >>>>>>>>> sub checkIp { >>>>>>>>> my $ip = shift; >>>>>>>>> my $pingOk = 0; >>>>>>>>> >>>>>>>>> eval { >>>>>>>>> for (1..3) { >>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>>> >>>>>>>>> if (grep { / 0% packet loss/ } $ping) { >>>>>>>>> $pingOk = 1; >>>>>>>>> return 1; >>>>>>>>> } >>>>>>>>> >>>>>>>>> if ($pingOk == 0) { >>>>>>>>> my $p = Net::Ping->new('icmp'); >>>>>>>>> $p->service_check(1); >>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>> $pingOk = 1; >>>>>>>>> return 1; >>>>>>>>> } >>>>>>>>> } >>>>>>>>> >>>>>>>>> if ($pingOk == 0) { >>>>>>>>> my $p = Net::Ping->new('udp'); >>>>>>>>> $p->service_check(1); >>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>> $pingOk = 1; >>>>>>>>> return 1; >>>>>>>>> } >>>>>>>>> } >>>>>>>>> >>>>>>>>> sleep 3; >>>>>>>>> } >>>>>>>>> }; >>>>>>>>> >>>>>>>>> Para pingar com ping externo, depois com o Net::Ping via icmp e >>>>>>>>> depois >>>>>>>>> com >>>>>>>>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de >>>>>>>>> permissão >>>>>>>>> root >>>>>>>>> para retornar um icmp de forma correta... >>>>>>>>> >>>>>>>>> >>>>>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Caros, >>>>>>>>>> >>>>>>>>>> tenho um script para testar cerca de 4700 equipamentos, usando >>>>>>>>>> ping. >>>>>>>>>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>>>>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread >>>>>>>>>> para >>>>>>>>>> cada. >>>>>>>>>> >>>>>>>>>> Não há nenhum problema com o código, o que acontece é que o tempo >>>>>>>>>> de >>>>>>>>>> abertura das threads é muito alto. E quanto mais threads eu abro, >>>>>>>>>> maior o tempo para abertura das próximas. As primeiras abrem em >>>>>>>>>> 30ms, >>>>>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>>>>>>>>> >>>>>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma outra >>>>>>>>>> solução? >>>>>>>>>> >>>>>>>>>> Segue o output do script como exemplo: >>>>>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 >>>>>>>>>> elementos >>>>>>>>>> cada >>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 >>>>>>>>>> Created thread 1 (1) - took 0.030138 seconds to create >>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 >>>>>>>>>> Created thread 2 (2) - took 0.042668 seconds to create >>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.134968 >>>>>>>>>> Created thread 3 (3) - took 0.064245 seconds to create >>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.199430 >>>>>>>>>> Created thread 4 (4) - took 0.082642 seconds to create >>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.282278 >>>>>>>>>> Created thread 5 (5) - took 0.128257 seconds to create >>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.410769 >>>>>>>>>> Created thread 6 (6) - took 0.136458 seconds to create >>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.547383 >>>>>>>>>> Created thread 7 (7) - took 0.208085 seconds to create >>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.755594 >>>>>>>>>> Created thread 8 (8) - took 0.173014 seconds to create >>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.928756 >>>>>>>>>> Created thread 9 (9) - took 0.132713 seconds to create >>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 >>>>>>>>>> Created thread 10 (10) - took 0.127795 seconds to create >>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.189536 >>>>>>>>>> Created thread 11 (11) - took 0.301836 seconds to create >>>>>>>>>> >>>>>>>>>> Obrigado >>>>>>>>>> >>>>>>>>>> João André Simioni >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> #!/usr/bin/perl >>>>>>>>>> >>>>>>>>>> use strict; >>>>>>>>>> use DBI; >>>>>>>>>> use Net::Ping; >>>>>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>>>>>>>> use threads ('yield', 'stack_size' => 32*4096, 'exit' => >>>>>>>>>> 'threads_only', 'stringify'); >>>>>>>>>> >>>>>>>>>> my $host = '192.168.160.179'; >>>>>>>>>> my $sid = 'HOMOLOG'; >>>>>>>>>> my $user = 'mac_user'; >>>>>>>>>> my $pass = 'mac_user'; >>>>>>>>>> >>>>>>>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, >>>>>>>>>> $pass, >>>>>>>>>> { AutoCommit => 1 }); >>>>>>>>>> >>>>>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>>>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>>>>>>>> CPE_ATIVO = ?'); >>>>>>>>>> $sth->execute('1', 'A'); >>>>>>>>>> >>>>>>>>>> my @cpes; >>>>>>>>>> >>>>>>>>>> while (my (@row) = $sth->fetchrow_array) { >>>>>>>>>> push @cpes, [ @row ]; >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> $dbh->disconnect(); >>>>>>>>>> >>>>>>>>>> my $maxThreads = 250; >>>>>>>>>> my $total = @cpes; >>>>>>>>>> >>>>>>>>>> my $cpePerThread = int($total / $maxThreads); >>>>>>>>>> >>>>>>>>>> my @toMonitor; >>>>>>>>>> my $i = 0; >>>>>>>>>> my $c = 0; >>>>>>>>>> >>>>>>>>>> foreach my $cpe (@cpes) { >>>>>>>>>> push @{$toMonitor[$i]}, $cpe; >>>>>>>>>> $c++; >>>>>>>>>> >>>>>>>>>> if ($c> $cpePerThread) { >>>>>>>>>> $i++; >>>>>>>>>> $c = 0; >>>>>>>>>> } >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> print "Para $total cpes, e $maxThreads threads, tenho no final $i >>>>>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>>>>>>>> >>>>>>>>>> sub processResult { >>>>>>>>>> my $r = shift; >>>>>>>>>> if (ref $r ne 'ARRAY') { >>>>>>>>>> print STDERR "Erro na thread\n"; >>>>>>>>>> return 0; >>>>>>>>>> } >>>>>>>>>> my ($result, $host, $ifs) = @$r; >>>>>>>>>> >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> sub testeClient { >>>>>>>>>> my $threadNum = shift; >>>>>>>>>> my $cpeGroup = shift; >>>>>>>>>> foreach my $cpe (@{$cpeGroup}) { >>>>>>>>>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, $cpeIf) >>>>>>>>>> = >>>>>>>>>> @$cpe; >>>>>>>>>> my $pingOk =&checkIp($cpeIp); >>>>>>>>>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>>>>>>> # print join(", ", $threadNum, $cpeId, $clientId, $cpeDesc, >>>>>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>>>>>>> } >>>>>>>>>> # print "Finishing thread $threadNum\n"; >>>>>>>>>> return([1, 0]); >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> my $threadCount = 1; >>>>>>>>>> foreach my $cpeGroup (@toMonitor) { >>>>>>>>>> print "Trying to create thread"; >>>>>>>>>> my $t0 = [gettimeofday]; >>>>>>>>>> >>>>>>>>>> print " in ", scalar localtime $t0->[0], ".", $t0->[1], "\n"; >>>>>>>>>> >>>>>>>>>> my $thr = threads->create({scalar => '1'}, >>>>>>>>>> 'testeClient', >>>>>>>>>> $threadCount, $cpeGroup); >>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>>>> print "Created thread $thr ($threadCount) - took $elapsed >>>>>>>>>> seconds >>>>>>>>>> to create\n"; >>>>>>>>>> $threadCount++; >>>>>>>>>> >>>>>>>>>> while (threads->list()>= $maxThreads) { >>>>>>>>>> my @joinable = threads->list(threads::joinable); >>>>>>>>>> for (@joinable) { >>>>>>>>>> my $r = $_->join(); >>>>>>>>>> &processResult($r); >>>>>>>>>> } >>>>>>>>>> usleep(10000); >>>>>>>>>> } >>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> while (threads->list()) { >>>>>>>>>> my @joinable = threads->list(threads::joinable); >>>>>>>>>> for (@joinable) { >>>>>>>>>> my $r = $_->join(); >>>>>>>>>> &processResult($r); >>>>>>>>>> } >>>>>>>>>> usleep(10000); >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> sub checkIp { >>>>>>>>>> my $ip = shift; >>>>>>>>>> my $pingOk = 0; >>>>>>>>>> >>>>>>>>>> eval { >>>>>>>>>> for (1..3) { >>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>>>> >>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { >>>>>>>>>> $pingOk = 1; >>>>>>>>>> return 1; >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> if ($pingOk == 0) { >>>>>>>>>> my $p = Net::Ping->new('icmp'); >>>>>>>>>> $p->service_check(1); >>>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>>> $pingOk = 1; >>>>>>>>>> return 1; >>>>>>>>>> } >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> if ($pingOk == 0) { >>>>>>>>>> my $p = Net::Ping->new('udp'); >>>>>>>>>> $p->service_check(1); >>>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>>> $pingOk = 1; >>>>>>>>>> return 1; >>>>>>>>>> } >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> sleep 3; >>>>>>>>>> } >>>>>>>>>> }; >>>>>>>>>> >>>>>>>>>> return $pingOk; >>>>>>>>>> } >>>>>>>>>> _______________________________________________ >>>>>>>>>> Rio-pm mailing list >>>>>>>>>> Rio-pm em pm.org >>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> -- >>>>>>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>>>>>> have >>>>>>>>> stopped banging their heads against? >>>>>>>>> ?Larry Wall >>>>>>>>> >>>>>>>>> Thiago Glauco Sanchez >>>>>>>>> Intrutor Perl e Redes >>>>>>>>> www.ticursos.net >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Rio-pm mailing list >>>>>>>>> Rio-pm em pm.org >>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Rio-pm mailing list >>>>>>>> Rio-pm em pm.org >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> -- >>>>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>>>> have >>>>>>> stopped banging their heads against? >>>>>>> ?Larry Wall >>>>>>> >>>>>>> Thiago Glauco Sanchez >>>>>>> Intrutor Perl e Redes >>>>>>> www.ticursos.net >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rio-pm mailing list >>>>>>> Rio-pm em pm.org >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>>> >>>>>> >>>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>>> >>>>> >>>> -- >>>> What is the sound of Perl? Is it not the sound of a wall that people have >>>> stopped banging their heads against? >>>> ?Larry Wall >>>> >>>> Thiago Glauco Sanchez >>>> Intrutor Perl e Redes >>>> www.ticursos.net >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> >> >> -- >> What is the sound of Perl? Is it not the sound of a wall that people have >> stopped banging their heads against? >> ?Larry Wall >> >> Thiago Glauco Sanchez >> Intrutor Perl e Redes >> www.ticursos.net >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net From thiagoglauco em ticursos.net Mon Jul 12 12:21:44 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Mon, 12 Jul 2010 16:21:44 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: <4C3B6476.7080309@ticursos.net> References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> <4C3B6476.7080309@ticursos.net> Message-ID: <4C3B6B48.8030304@ticursos.net> Puxa... eu sou muito "toupeira"... já tem código de exemplo para isso feito e muito mais pratico e completo que o meu...: http://poe.perl.org/?POE_Cookbook/Pinging_Multiple_Hosts Em 12/07/2010 15:52, Thiago Glauco Sanchez escreveu: > Um pequeno exemplo que eu criei apenas para ilustrar... o pessoal que > desejar incrementar, por favor, be my guest. > > use 5.12.0; > use POE; > use Net::Ping; > POE::Session->create( > inline_states => { > _start => sub { > my ($kernel) = $_[KERNEL]; > print "Setting up a session\n"; > $kernel->yield("ping"); > }, > > ping => sub{my ($kernel) = $_[KERNEL]; > my @ping = `ping -n 1 www.ticursos.net`; > map{say "ping externo ok" if $_ =~ /Perdidos = 0/ } @ping; > $kernel->delay_set("net_ping" => 3); > > }, > > net_ping => sub{ my ($kernel) = $_[KERNEL]; > my $p = Net::Ping->new(); > $p->port_number(80); > my ($ret, $duration, $ip) = $p->ping('ticursos.net'); > say "net::ping ok" if $ret; > $p->close(); > $kernel->delay_set("ping" => 3) > }, > }, > ); > > say "Iniciando o Kernel..."; > $poe_kernel->run( ); > exit(0); > > sub start { > my ($kernel) = $_[KERNEL]; > say "Iniciando os testes com POE"; > $kernel->yield("ping"); > } > > > Em 12/07/2010 15:38, João André Simioni escreveu: >> O pessoal comentou - eu vou dar uma olhada nele com atenção. >> >> Obrigado pela dica. >> >> 2010/7/12 Thiago Glauco Sanchez: >>> O Perl tem um framework para aplicações em rede e Multitarefa >>> chamada POE >>> que >>> "Provide a cooperative scheduling and multitasking environment >>> rivalling >>> threads and IPC" >>> Não seria o caso de estudarmos a possibilidade de usar esse >>> framework no seu >>> sistema??? >>> >>> Em 11/07/2010 23:57, João André Simioni escreveu: >>>> Foi um typo - erro de digitação - o Net::Ping testa TCP e UDP. O ping >>>> externo ICMP. >>>> >>>> Mas assim, eu preciso resolver o problema com esse teste em Perl - >>>> como eu disse, essa parte do código é só um pedaço de um sistema >>>> maior. SNMP já é usado para várias outras coisas, mas dependem de >>>> access lists em routers e eu não tenho como liberar. >>>> >>>> []'s >>>> >>>> 2010/7/11 Thiago Glauco Sanchez: >>>> >>>>> O que eu quero dizer: você testou com o ping externo que é um teste >>>>> icmp... >>>>> depois fez outro teste icmp com o Net::Ping... >>>>> >>>>> Não seria mais interessante testar de outra forma? >>>>> >>>>> $p = Net::Ping->new("tcp", 2); >>>>> $p->port_number(getservbyname("http", "tcp")); >>>>> >>>>> Mais umas coisas: Suas máquinas/equipamentos em teste estão via >>>>> internet >>>>> ou >>>>> rede local? >>>>> Já pensou em usar SNMP? Já tive um problema parecido e iria >>>>> utilizar um >>>>> processo para cada equipamento por desempenho e acabai optando por >>>>> utilizar >>>>> o Net:SNMP >>>>> que permite utilizar uma função de callback em vez de utilizar um >>>>> processo >>>>> para cada equipamento. Eu mando uma requisição para todos os >>>>> equipamentos >>>>> e >>>>> conforme eles respondem >>>>> a função de call-back trata a requisição. >>>>> >>>>> Porém, não conheço o seu ambiente. Apenas acho que criar 4000 >>>>> threads não >>>>> seja a melhor solução. >>>>> >>>>> >>>>> Em 11/07/2010 23:18, João André Simioni escreveu: >>>>> >>>>>> É typo - já está certo no código. ICMP vai via comando externo, >>>>>> UDP e >>>>>> TCP via Net::Ping. >>>>>> >>>>>> Com relação aos testes, é normal um momento de sobrecarga causar >>>>>> a não >>>>>> resposta de testes - essas sobrecargas não devem duram mais que 5 >>>>>> segundos. Por isso o sleep - assim eu faço o mesmo teste 3x, com >>>>>> intervalos de 3 segundos. >>>>>> >>>>>> []'s >>>>>> >>>>>> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de Blebe >>>>>> wrote: >>>>>> >>>>>> >>>>>>> Não seria um typo? >>>>>>> >>>>>>> icmp -> ping; >>>>>>> tcp e udp -> Net::Ping >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez >>>>>>> wrote: >>>>>>> >>>>>>> >>>>>>>> Sim sim, entendi sua preocupação. >>>>>>>> Mas em vez de: >>>>>>>> >>>>>>>> for (1..3) { >>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>> >>>>>>>> não seria melhor já mandar pingar as 3 vezes no comando ou >>>>>>>> apenas 1? >>>>>>>> Você >>>>>>>> está gerando 3 processos externos sem necessidade real. >>>>>>>> >>>>>>>> outra... o comando ping já não é icmp? >>>>>>>> my $p = Net::Ping->new('icmp')??? >>>>>>>> >>>>>>>> >>>>>>>> Em 11/07/2010 17:04, João André Simioni escreveu: >>>>>>>> >>>>>>>> >>>>>>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP >>>>>>>>> Echo. >>>>>>>>> Alguns clientes tem filtros e assim eu evito falsos positivos. >>>>>>>>> >>>>>>>>> Net::Ping mesmo com root tem resultados incoerentes quando uso >>>>>>>>> ICMP e >>>>>>>>> Threads. >>>>>>>>> >>>>>>>>> []'s >>>>>>>>> >>>>>>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Endosso a solução do Lorn. Use o POE. >>>>>>>>>> >>>>>>>>>> E cara... pra que isso?? >>>>>>>>>> >>>>>>>>>> sub checkIp { >>>>>>>>>> my $ip = shift; >>>>>>>>>> my $pingOk = 0; >>>>>>>>>> >>>>>>>>>> eval { >>>>>>>>>> for (1..3) { >>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>>>> >>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { >>>>>>>>>> $pingOk = 1; >>>>>>>>>> return 1; >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> if ($pingOk == 0) { >>>>>>>>>> my $p = Net::Ping->new('icmp'); >>>>>>>>>> $p->service_check(1); >>>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>>> $pingOk = 1; >>>>>>>>>> return 1; >>>>>>>>>> } >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> if ($pingOk == 0) { >>>>>>>>>> my $p = Net::Ping->new('udp'); >>>>>>>>>> $p->service_check(1); >>>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>>> $pingOk = 1; >>>>>>>>>> return 1; >>>>>>>>>> } >>>>>>>>>> } >>>>>>>>>> >>>>>>>>>> sleep 3; >>>>>>>>>> } >>>>>>>>>> }; >>>>>>>>>> >>>>>>>>>> Para pingar com ping externo, depois com o Net::Ping via icmp e >>>>>>>>>> depois >>>>>>>>>> com >>>>>>>>>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de >>>>>>>>>> permissão >>>>>>>>>> root >>>>>>>>>> para retornar um icmp de forma correta... >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> Caros, >>>>>>>>>>> >>>>>>>>>>> tenho um script para testar cerca de 4700 equipamentos, usando >>>>>>>>>>> ping. >>>>>>>>>>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>>>>>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma >>>>>>>>>>> thread >>>>>>>>>>> para >>>>>>>>>>> cada. >>>>>>>>>>> >>>>>>>>>>> Não há nenhum problema com o código, o que acontece é que o >>>>>>>>>>> tempo >>>>>>>>>>> de >>>>>>>>>>> abertura das threads é muito alto. E quanto mais threads eu >>>>>>>>>>> abro, >>>>>>>>>>> maior o tempo para abertura das próximas. As primeiras abrem em >>>>>>>>>>> 30ms, >>>>>>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>>>>>>>>>> >>>>>>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma >>>>>>>>>>> outra >>>>>>>>>>> solução? >>>>>>>>>>> >>>>>>>>>>> Segue o output do script como exemplo: >>>>>>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, >>>>>>>>>>> com 19 >>>>>>>>>>> elementos >>>>>>>>>>> cada >>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 >>>>>>>>>>> Created thread 1 (1) - took 0.030138 seconds to create >>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 >>>>>>>>>>> Created thread 2 (2) - took 0.042668 seconds to create >>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.134968 >>>>>>>>>>> Created thread 3 (3) - took 0.064245 seconds to create >>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.199430 >>>>>>>>>>> Created thread 4 (4) - took 0.082642 seconds to create >>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.282278 >>>>>>>>>>> Created thread 5 (5) - took 0.128257 seconds to create >>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.410769 >>>>>>>>>>> Created thread 6 (6) - took 0.136458 seconds to create >>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.547383 >>>>>>>>>>> Created thread 7 (7) - took 0.208085 seconds to create >>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.755594 >>>>>>>>>>> Created thread 8 (8) - took 0.173014 seconds to create >>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.928756 >>>>>>>>>>> Created thread 9 (9) - took 0.132713 seconds to create >>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 >>>>>>>>>>> Created thread 10 (10) - took 0.127795 seconds to create >>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.189536 >>>>>>>>>>> Created thread 11 (11) - took 0.301836 seconds to create >>>>>>>>>>> >>>>>>>>>>> Obrigado >>>>>>>>>>> >>>>>>>>>>> João André Simioni >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> #!/usr/bin/perl >>>>>>>>>>> >>>>>>>>>>> use strict; >>>>>>>>>>> use DBI; >>>>>>>>>>> use Net::Ping; >>>>>>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>>>>>>>>> use threads ('yield', 'stack_size' => 32*4096, >>>>>>>>>>> 'exit' => >>>>>>>>>>> 'threads_only', 'stringify'); >>>>>>>>>>> >>>>>>>>>>> my $host = '192.168.160.179'; >>>>>>>>>>> my $sid = 'HOMOLOG'; >>>>>>>>>>> my $user = 'mac_user'; >>>>>>>>>>> my $pass = 'mac_user'; >>>>>>>>>>> >>>>>>>>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, >>>>>>>>>>> $pass, >>>>>>>>>>> { AutoCommit => 1 }); >>>>>>>>>>> >>>>>>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>>>>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? >>>>>>>>>>> AND >>>>>>>>>>> CPE_ATIVO = ?'); >>>>>>>>>>> $sth->execute('1', 'A'); >>>>>>>>>>> >>>>>>>>>>> my @cpes; >>>>>>>>>>> >>>>>>>>>>> while (my (@row) = $sth->fetchrow_array) { >>>>>>>>>>> push @cpes, [ @row ]; >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> $dbh->disconnect(); >>>>>>>>>>> >>>>>>>>>>> my $maxThreads = 250; >>>>>>>>>>> my $total = @cpes; >>>>>>>>>>> >>>>>>>>>>> my $cpePerThread = int($total / $maxThreads); >>>>>>>>>>> >>>>>>>>>>> my @toMonitor; >>>>>>>>>>> my $i = 0; >>>>>>>>>>> my $c = 0; >>>>>>>>>>> >>>>>>>>>>> foreach my $cpe (@cpes) { >>>>>>>>>>> push @{$toMonitor[$i]}, $cpe; >>>>>>>>>>> $c++; >>>>>>>>>>> >>>>>>>>>>> if ($c> $cpePerThread) { >>>>>>>>>>> $i++; >>>>>>>>>>> $c = 0; >>>>>>>>>>> } >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> print "Para $total cpes, e $maxThreads threads, tenho no >>>>>>>>>>> final $i >>>>>>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>>>>>>>>> >>>>>>>>>>> sub processResult { >>>>>>>>>>> my $r = shift; >>>>>>>>>>> if (ref $r ne 'ARRAY') { >>>>>>>>>>> print STDERR "Erro na thread\n"; >>>>>>>>>>> return 0; >>>>>>>>>>> } >>>>>>>>>>> my ($result, $host, $ifs) = @$r; >>>>>>>>>>> >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> sub testeClient { >>>>>>>>>>> my $threadNum = shift; >>>>>>>>>>> my $cpeGroup = shift; >>>>>>>>>>> foreach my $cpe (@{$cpeGroup}) { >>>>>>>>>>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, >>>>>>>>>>> $cpeIf) >>>>>>>>>>> = >>>>>>>>>>> @$cpe; >>>>>>>>>>> my $pingOk =&checkIp($cpeIp); >>>>>>>>>>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>>>>>>>> # print join(", ", $threadNum, $cpeId, $clientId, >>>>>>>>>>> $cpeDesc, >>>>>>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>>>>>>>> } >>>>>>>>>>> # print "Finishing thread $threadNum\n"; >>>>>>>>>>> return([1, 0]); >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> my $threadCount = 1; >>>>>>>>>>> foreach my $cpeGroup (@toMonitor) { >>>>>>>>>>> print "Trying to create thread"; >>>>>>>>>>> my $t0 = [gettimeofday]; >>>>>>>>>>> >>>>>>>>>>> print " in ", scalar localtime $t0->[0], ".", $t0->[1], >>>>>>>>>>> "\n"; >>>>>>>>>>> >>>>>>>>>>> my $thr = threads->create({scalar => '1'}, >>>>>>>>>>> 'testeClient', >>>>>>>>>>> $threadCount, $cpeGroup); >>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>>>>> print "Created thread $thr ($threadCount) - took $elapsed >>>>>>>>>>> seconds >>>>>>>>>>> to create\n"; >>>>>>>>>>> $threadCount++; >>>>>>>>>>> >>>>>>>>>>> while (threads->list()>= $maxThreads) { >>>>>>>>>>> my @joinable = threads->list(threads::joinable); >>>>>>>>>>> for (@joinable) { >>>>>>>>>>> my $r = $_->join(); >>>>>>>>>>> &processResult($r); >>>>>>>>>>> } >>>>>>>>>>> usleep(10000); >>>>>>>>>>> } >>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> while (threads->list()) { >>>>>>>>>>> my @joinable = threads->list(threads::joinable); >>>>>>>>>>> for (@joinable) { >>>>>>>>>>> my $r = $_->join(); >>>>>>>>>>> &processResult($r); >>>>>>>>>>> } >>>>>>>>>>> usleep(10000); >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> sub checkIp { >>>>>>>>>>> my $ip = shift; >>>>>>>>>>> my $pingOk = 0; >>>>>>>>>>> >>>>>>>>>>> eval { >>>>>>>>>>> for (1..3) { >>>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>>>>> >>>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { >>>>>>>>>>> $pingOk = 1; >>>>>>>>>>> return 1; >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> if ($pingOk == 0) { >>>>>>>>>>> my $p = Net::Ping->new('icmp'); >>>>>>>>>>> $p->service_check(1); >>>>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>>>> $pingOk = 1; >>>>>>>>>>> return 1; >>>>>>>>>>> } >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> if ($pingOk == 0) { >>>>>>>>>>> my $p = Net::Ping->new('udp'); >>>>>>>>>>> $p->service_check(1); >>>>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>>>> $pingOk = 1; >>>>>>>>>>> return 1; >>>>>>>>>>> } >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> sleep 3; >>>>>>>>>>> } >>>>>>>>>>> }; >>>>>>>>>>> >>>>>>>>>>> return $pingOk; >>>>>>>>>>> } >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> Rio-pm mailing list >>>>>>>>>>> Rio-pm em pm.org >>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> What is the sound of Perl? Is it not the sound of a wall that >>>>>>>>>> people >>>>>>>>>> have >>>>>>>>>> stopped banging their heads against? >>>>>>>>>> ?Larry Wall >>>>>>>>>> >>>>>>>>>> Thiago Glauco Sanchez >>>>>>>>>> Intrutor Perl e Redes >>>>>>>>>> www.ticursos.net >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Rio-pm mailing list >>>>>>>>>> Rio-pm em pm.org >>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Rio-pm mailing list >>>>>>>>> Rio-pm em pm.org >>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> -- >>>>>>>> What is the sound of Perl? Is it not the sound of a wall that >>>>>>>> people >>>>>>>> have >>>>>>>> stopped banging their heads against? >>>>>>>> ?Larry Wall >>>>>>>> >>>>>>>> Thiago Glauco Sanchez >>>>>>>> Intrutor Perl e Redes >>>>>>>> www.ticursos.net >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Rio-pm mailing list >>>>>>>> Rio-pm em pm.org >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rio-pm mailing list >>>>>>> Rio-pm em pm.org >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>>> >>>>>> >>>>> -- >>>>> What is the sound of Perl? Is it not the sound of a wall that >>>>> people have >>>>> stopped banging their heads against? >>>>> ?Larry Wall >>>>> >>>>> Thiago Glauco Sanchez >>>>> Intrutor Perl e Redes >>>>> www.ticursos.net >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>> >>> -- >>> What is the sound of Perl? Is it not the sound of a wall that people >>> have >>> stopped banging their heads against? >>> ?Larry Wall >>> >>> Thiago Glauco Sanchez >>> Intrutor Perl e Redes >>> www.ticursos.net >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net From jasimioni em gmail.com Mon Jul 12 13:54:19 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Mon, 12 Jul 2010 17:54:19 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: <4C3B6B48.8030304@ticursos.net> References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> <4C3B6476.7080309@ticursos.net> <4C3B6B48.8030304@ticursos.net> Message-ID: Thiago, dando uma bem de vagabundo, não li nada do POE, só modifiquei o código abaixo para pingar todos os meus Hosts. Mas ele está fazendo poucos processos paralelos. O tempo total de testes está 11 minutos com o POE, e o load nem faz cócegas. Sabem fácil como mexer nisso? Obrigado 2010/7/12 Thiago Glauco Sanchez : > Puxa... eu sou muito "toupeira"... já tem código de exemplo para isso feito > e muito mais pratico e completo que o meu...: > > http://poe.perl.org/?POE_Cookbook/Pinging_Multiple_Hosts > > Em 12/07/2010 15:52, Thiago Glauco Sanchez escreveu: >> >> Um pequeno exemplo que eu criei apenas para ilustrar... o pessoal que >> desejar incrementar, por favor, be my guest. >> >> use 5.12.0; >>  use POE; >>  use Net::Ping; >>    POE::Session->create( >>        inline_states => { >>        _start  => sub { >>            my ($kernel) = $_[KERNEL]; >>            print "Setting up a session\n"; >>            $kernel->yield("ping"); >>        }, >> >>        ping => sub{my ($kernel) = $_[KERNEL]; >>            my @ping = `ping -n 1 www.ticursos.net`; >>            map{say "ping externo ok" if $_ =~ /Perdidos = 0/ } @ping; >>            $kernel->delay_set("net_ping" => 3); >> >>        }, >> >>        net_ping => sub{ my ($kernel) = $_[KERNEL]; >>                    my $p = Net::Ping->new(); >>                    $p->port_number(80); >>                    my ($ret, $duration, $ip) = $p->ping('ticursos.net'); >>                    say "net::ping ok" if $ret; >>                    $p->close(); >>                    $kernel->delay_set("ping" => 3) >>                }, >>        }, >>    ); >> >>    say "Iniciando o Kernel..."; >>    $poe_kernel->run(  ); >>    exit(0); >> >>    sub start { >>        my ($kernel) = $_[KERNEL]; >>       say "Iniciando os testes com POE"; >>        $kernel->yield("ping"); >>    } >> >> >> Em 12/07/2010 15:38, João André Simioni escreveu: >>> >>> O pessoal comentou - eu vou dar uma olhada nele com atenção. >>> >>> Obrigado pela dica. >>> >>> 2010/7/12 Thiago Glauco Sanchez: >>>> >>>> O Perl tem um framework para aplicações em rede e Multitarefa chamada >>>> POE >>>> que >>>> "Provide a cooperative scheduling and multitasking environment rivalling >>>> threads and IPC" >>>> Não seria o caso de estudarmos a possibilidade de usar esse framework no >>>> seu >>>> sistema??? >>>> >>>> Em 11/07/2010 23:57, João André Simioni escreveu: >>>>> >>>>> Foi um typo - erro de digitação - o Net::Ping testa TCP e UDP. O ping >>>>> externo ICMP. >>>>> >>>>> Mas assim, eu preciso resolver o problema com esse teste em Perl - >>>>> como eu disse, essa parte do código é só um pedaço de um sistema >>>>> maior. SNMP já é usado para várias outras coisas, mas dependem de >>>>> access lists em routers e eu não tenho como liberar. >>>>> >>>>> []'s >>>>> >>>>> 2010/7/11 Thiago Glauco Sanchez: >>>>> >>>>>> O que eu quero dizer: você testou com o ping externo que é um teste >>>>>> icmp... >>>>>> depois fez outro teste icmp com o Net::Ping... >>>>>> >>>>>> Não seria mais interessante testar de outra forma? >>>>>> >>>>>>    $p = Net::Ping->new("tcp", 2); >>>>>>    $p->port_number(getservbyname("http", "tcp")); >>>>>> >>>>>> Mais umas coisas: Suas máquinas/equipamentos em teste estão via >>>>>> internet >>>>>> ou >>>>>> rede local? >>>>>> Já pensou em usar SNMP? Já tive um problema parecido e iria utilizar >>>>>> um >>>>>> processo para cada equipamento por desempenho e acabai optando por >>>>>> utilizar >>>>>> o Net:SNMP >>>>>> que permite utilizar uma função de callback em vez de utilizar um >>>>>> processo >>>>>> para cada equipamento. Eu mando uma requisição para todos os >>>>>> equipamentos >>>>>> e >>>>>> conforme eles respondem >>>>>> a função de call-back trata a requisição. >>>>>> >>>>>> Porém, não conheço o seu ambiente. Apenas acho que criar 4000 threads >>>>>> não >>>>>> seja a melhor solução. >>>>>> >>>>>> >>>>>> Em 11/07/2010 23:18, João André Simioni escreveu: >>>>>> >>>>>>> É typo - já está certo no código. ICMP vai via comando externo, UDP e >>>>>>> TCP via Net::Ping. >>>>>>> >>>>>>> Com relação aos testes, é normal um momento de sobrecarga causar a >>>>>>> não >>>>>>> resposta de testes - essas sobrecargas não devem duram mais que 5 >>>>>>> segundos. Por isso o sleep - assim eu faço o mesmo teste 3x, com >>>>>>> intervalos de 3 segundos. >>>>>>> >>>>>>> []'s >>>>>>> >>>>>>> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de Blebe >>>>>>>  wrote: >>>>>>> >>>>>>> >>>>>>>> Não seria um typo? >>>>>>>> >>>>>>>> icmp ->      ping; >>>>>>>> tcp e udp ->      Net::Ping >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez >>>>>>>>      wrote: >>>>>>>> >>>>>>>> >>>>>>>>> Sim sim, entendi sua preocupação. >>>>>>>>> Mas em vez de: >>>>>>>>> >>>>>>>>> for (1..3) { >>>>>>>>>           my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>>> >>>>>>>>> não seria melhor já mandar pingar as 3 vezes no comando ou apenas >>>>>>>>> 1? >>>>>>>>> Você >>>>>>>>> está gerando 3 processos externos sem necessidade real. >>>>>>>>> >>>>>>>>> outra... o comando ping já não é icmp? >>>>>>>>> my $p = Net::Ping->new('icmp')??? >>>>>>>>> >>>>>>>>> >>>>>>>>> Em 11/07/2010 17:04, João André Simioni escreveu: >>>>>>>>> >>>>>>>>> >>>>>>>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP >>>>>>>>>> Echo. >>>>>>>>>> Alguns clientes tem filtros e assim eu evito falsos positivos. >>>>>>>>>> >>>>>>>>>> Net::Ping mesmo com root tem resultados incoerentes quando uso >>>>>>>>>> ICMP e >>>>>>>>>> Threads. >>>>>>>>>> >>>>>>>>>> []'s >>>>>>>>>> >>>>>>>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>>>>>>>>>        wrote: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> Endosso a solução do Lorn. Use o POE. >>>>>>>>>>> >>>>>>>>>>> E cara... pra que isso?? >>>>>>>>>>> >>>>>>>>>>> sub checkIp { >>>>>>>>>>>    my $ip = shift; >>>>>>>>>>>    my $pingOk = 0; >>>>>>>>>>> >>>>>>>>>>>    eval { >>>>>>>>>>>        for (1..3) { >>>>>>>>>>>            my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>>>>> >>>>>>>>>>>            if (grep { / 0% packet loss/ } $ping) { >>>>>>>>>>>                $pingOk = 1; >>>>>>>>>>>                return 1; >>>>>>>>>>>            } >>>>>>>>>>> >>>>>>>>>>>            if ($pingOk == 0) { >>>>>>>>>>>                my $p = Net::Ping->new('icmp'); >>>>>>>>>>>                $p->service_check(1); >>>>>>>>>>>                if ($p->ping($ip, 1)) { >>>>>>>>>>>                    $pingOk = 1; >>>>>>>>>>>                    return 1; >>>>>>>>>>>                } >>>>>>>>>>>            } >>>>>>>>>>> >>>>>>>>>>>            if ($pingOk == 0) { >>>>>>>>>>>                my $p = Net::Ping->new('udp'); >>>>>>>>>>>                $p->service_check(1); >>>>>>>>>>>                if ($p->ping($ip, 1)) { >>>>>>>>>>>                    $pingOk = 1; >>>>>>>>>>>                    return 1; >>>>>>>>>>>                } >>>>>>>>>>>            } >>>>>>>>>>> >>>>>>>>>>>            sleep 3; >>>>>>>>>>>        } >>>>>>>>>>>    }; >>>>>>>>>>> >>>>>>>>>>> Para pingar com ping externo, depois com o Net::Ping via icmp e >>>>>>>>>>> depois >>>>>>>>>>> com >>>>>>>>>>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de >>>>>>>>>>> permissão >>>>>>>>>>> root >>>>>>>>>>> para retornar um icmp de forma correta... >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> Caros, >>>>>>>>>>>> >>>>>>>>>>>> tenho um script para testar cerca de 4700 equipamentos, usando >>>>>>>>>>>> ping. >>>>>>>>>>>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>>>>>>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread >>>>>>>>>>>> para >>>>>>>>>>>> cada. >>>>>>>>>>>> >>>>>>>>>>>> Não há nenhum problema com o código, o que acontece é que o >>>>>>>>>>>> tempo >>>>>>>>>>>> de >>>>>>>>>>>> abertura das threads é muito alto. E quanto mais threads eu >>>>>>>>>>>> abro, >>>>>>>>>>>> maior o tempo para abertura das próximas. As primeiras abrem em >>>>>>>>>>>> 30ms, >>>>>>>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>>>>>>>>>>> >>>>>>>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma >>>>>>>>>>>> outra >>>>>>>>>>>> solução? >>>>>>>>>>>> >>>>>>>>>>>> Segue o output do script como exemplo: >>>>>>>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 >>>>>>>>>>>> elementos >>>>>>>>>>>> cada >>>>>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.61858 >>>>>>>>>>>> Created thread 1 (1) - took 0.030138 seconds to create >>>>>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.92080 >>>>>>>>>>>> Created thread 2 (2) - took 0.042668 seconds to create >>>>>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.134968 >>>>>>>>>>>> Created thread 3 (3) - took 0.064245 seconds to create >>>>>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.199430 >>>>>>>>>>>> Created thread 4 (4) - took 0.082642 seconds to create >>>>>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.282278 >>>>>>>>>>>> Created thread 5 (5) - took 0.128257 seconds to create >>>>>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.410769 >>>>>>>>>>>> Created thread 6 (6) - took 0.136458 seconds to create >>>>>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.547383 >>>>>>>>>>>> Created thread 7 (7) - took 0.208085 seconds to create >>>>>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.755594 >>>>>>>>>>>> Created thread 8 (8) - took 0.173014 seconds to create >>>>>>>>>>>> Trying to create thread in Fri Jul  9 17:46:50 2010.928756 >>>>>>>>>>>> Created thread 9 (9) - took 0.132713 seconds to create >>>>>>>>>>>> Trying to create thread in Fri Jul  9 17:46:51 2010.61608 >>>>>>>>>>>> Created thread 10 (10) - took 0.127795 seconds to create >>>>>>>>>>>> Trying to create thread in Fri Jul  9 17:46:51 2010.189536 >>>>>>>>>>>> Created thread 11 (11) - took 0.301836 seconds to create >>>>>>>>>>>> >>>>>>>>>>>> Obrigado >>>>>>>>>>>> >>>>>>>>>>>> João André Simioni >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> #!/usr/bin/perl >>>>>>>>>>>> >>>>>>>>>>>> use strict; >>>>>>>>>>>> use DBI; >>>>>>>>>>>> use Net::Ping; >>>>>>>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>>>>>>>>>> use threads ('yield', 'stack_size' =>          32*4096, 'exit' >>>>>>>>>>>> => >>>>>>>>>>>> 'threads_only', 'stringify'); >>>>>>>>>>>> >>>>>>>>>>>> my $host = '192.168.160.179'; >>>>>>>>>>>> my $sid  = 'HOMOLOG'; >>>>>>>>>>>> my $user = 'mac_user'; >>>>>>>>>>>> my $pass = 'mac_user'; >>>>>>>>>>>> >>>>>>>>>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, >>>>>>>>>>>> $pass, >>>>>>>>>>>> { AutoCommit =>          1 }); >>>>>>>>>>>> >>>>>>>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>>>>>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>>>>>>>>>> CPE_ATIVO = ?'); >>>>>>>>>>>> $sth->execute('1', 'A'); >>>>>>>>>>>> >>>>>>>>>>>> my @cpes; >>>>>>>>>>>> >>>>>>>>>>>> while (my (@row) = $sth->fetchrow_array) { >>>>>>>>>>>>     push @cpes, [ @row ]; >>>>>>>>>>>> } >>>>>>>>>>>> >>>>>>>>>>>> $dbh->disconnect(); >>>>>>>>>>>> >>>>>>>>>>>> my $maxThreads = 250; >>>>>>>>>>>> my $total      = @cpes; >>>>>>>>>>>> >>>>>>>>>>>> my $cpePerThread = int($total / $maxThreads); >>>>>>>>>>>> >>>>>>>>>>>> my @toMonitor; >>>>>>>>>>>> my $i = 0; >>>>>>>>>>>> my $c = 0; >>>>>>>>>>>> >>>>>>>>>>>> foreach my $cpe (@cpes) { >>>>>>>>>>>>     push @{$toMonitor[$i]}, $cpe; >>>>>>>>>>>>     $c++; >>>>>>>>>>>> >>>>>>>>>>>>     if ($c>          $cpePerThread) { >>>>>>>>>>>>         $i++; >>>>>>>>>>>>         $c = 0; >>>>>>>>>>>>     } >>>>>>>>>>>> } >>>>>>>>>>>> >>>>>>>>>>>> print "Para $total cpes, e $maxThreads threads, tenho no final >>>>>>>>>>>> $i >>>>>>>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>>>>>>>>>> >>>>>>>>>>>> sub processResult { >>>>>>>>>>>>     my $r = shift; >>>>>>>>>>>>     if (ref $r ne 'ARRAY') { >>>>>>>>>>>>         print STDERR "Erro na thread\n"; >>>>>>>>>>>>         return 0; >>>>>>>>>>>>     } >>>>>>>>>>>>     my ($result, $host, $ifs) = @$r; >>>>>>>>>>>> >>>>>>>>>>>> } >>>>>>>>>>>> >>>>>>>>>>>> sub testeClient { >>>>>>>>>>>>     my $threadNum = shift; >>>>>>>>>>>>     my $cpeGroup  = shift; >>>>>>>>>>>>     foreach my $cpe (@{$cpeGroup}) { >>>>>>>>>>>>         my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, >>>>>>>>>>>> $cpeIf) >>>>>>>>>>>> = >>>>>>>>>>>> @$cpe; >>>>>>>>>>>>         my $pingOk =&checkIp($cpeIp); >>>>>>>>>>>>         my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>>>>>>>>>         # print join(", ", $threadNum, $cpeId, $clientId, >>>>>>>>>>>> $cpeDesc, >>>>>>>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>>>>>>>>>     } >>>>>>>>>>>>     # print "Finishing thread $threadNum\n"; >>>>>>>>>>>>     return([1, 0]); >>>>>>>>>>>> } >>>>>>>>>>>> >>>>>>>>>>>> my $threadCount = 1; >>>>>>>>>>>> foreach my $cpeGroup (@toMonitor) { >>>>>>>>>>>>     print "Trying to create thread"; >>>>>>>>>>>>     my $t0 = [gettimeofday]; >>>>>>>>>>>> >>>>>>>>>>>>     print " in ", scalar localtime $t0->[0], ".", $t0->[1], >>>>>>>>>>>> "\n"; >>>>>>>>>>>> >>>>>>>>>>>>     my $thr = threads->create({scalar =>          '1'}, >>>>>>>>>>>> 'testeClient', >>>>>>>>>>>> $threadCount, $cpeGroup); >>>>>>>>>>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>>>>>>     print "Created thread $thr ($threadCount) - took $elapsed >>>>>>>>>>>> seconds >>>>>>>>>>>> to create\n"; >>>>>>>>>>>>     $threadCount++; >>>>>>>>>>>> >>>>>>>>>>>>     while (threads->list()>= $maxThreads) { >>>>>>>>>>>>         my @joinable = threads->list(threads::joinable); >>>>>>>>>>>>         for (@joinable) { >>>>>>>>>>>>             my $r = $_->join(); >>>>>>>>>>>> &processResult($r); >>>>>>>>>>>>         } >>>>>>>>>>>>         usleep(10000); >>>>>>>>>>>>     } >>>>>>>>>>>>     my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>>>>>> } >>>>>>>>>>>> >>>>>>>>>>>> while (threads->list()) { >>>>>>>>>>>>     my @joinable = threads->list(threads::joinable); >>>>>>>>>>>>     for (@joinable) { >>>>>>>>>>>>         my $r = $_->join(); >>>>>>>>>>>> &processResult($r); >>>>>>>>>>>>     } >>>>>>>>>>>>     usleep(10000); >>>>>>>>>>>> } >>>>>>>>>>>> >>>>>>>>>>>> sub checkIp { >>>>>>>>>>>>     my $ip = shift; >>>>>>>>>>>>     my $pingOk = 0; >>>>>>>>>>>> >>>>>>>>>>>>     eval { >>>>>>>>>>>>         for (1..3) { >>>>>>>>>>>>             my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>>>>>> >>>>>>>>>>>>             if (grep { / 0% packet loss/ } $ping) { >>>>>>>>>>>>                 $pingOk = 1; >>>>>>>>>>>>                 return 1; >>>>>>>>>>>>             } >>>>>>>>>>>> >>>>>>>>>>>>             if ($pingOk == 0) { >>>>>>>>>>>>                 my $p = Net::Ping->new('icmp'); >>>>>>>>>>>>                 $p->service_check(1); >>>>>>>>>>>>                 if ($p->ping($ip, 1)) { >>>>>>>>>>>>                     $pingOk = 1; >>>>>>>>>>>>                     return 1; >>>>>>>>>>>>                 } >>>>>>>>>>>>             } >>>>>>>>>>>> >>>>>>>>>>>>             if ($pingOk == 0) { >>>>>>>>>>>>                 my $p = Net::Ping->new('udp'); >>>>>>>>>>>>                 $p->service_check(1); >>>>>>>>>>>>                 if ($p->ping($ip, 1)) { >>>>>>>>>>>>                     $pingOk = 1; >>>>>>>>>>>>                     return 1; >>>>>>>>>>>>                 } >>>>>>>>>>>>             } >>>>>>>>>>>> >>>>>>>>>>>>             sleep 3; >>>>>>>>>>>>         } >>>>>>>>>>>>     }; >>>>>>>>>>>> >>>>>>>>>>>>     return $pingOk; >>>>>>>>>>>> } >>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>> Rio-pm mailing list >>>>>>>>>>>> Rio-pm em pm.org >>>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> What is the sound of Perl? Is it not the sound of a wall that >>>>>>>>>>> people >>>>>>>>>>> have >>>>>>>>>>> stopped banging their heads against? >>>>>>>>>>> ?Larry Wall >>>>>>>>>>> >>>>>>>>>>> Thiago Glauco Sanchez >>>>>>>>>>> Intrutor Perl e Redes >>>>>>>>>>> www.ticursos.net >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> Rio-pm mailing list >>>>>>>>>>> Rio-pm em pm.org >>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Rio-pm mailing list >>>>>>>>>> Rio-pm em pm.org >>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> -- >>>>>>>>> What is the sound of Perl? Is it not the sound of a wall that >>>>>>>>> people >>>>>>>>> have >>>>>>>>> stopped banging their heads against? >>>>>>>>> ?Larry Wall >>>>>>>>> >>>>>>>>> Thiago Glauco Sanchez >>>>>>>>> Intrutor Perl e Redes >>>>>>>>> www.ticursos.net >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Rio-pm mailing list >>>>>>>>> Rio-pm em pm.org >>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Rio-pm mailing list >>>>>>>> Rio-pm em pm.org >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rio-pm mailing list >>>>>>> Rio-pm em pm.org >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>> >>>>>>> >>>>>>> >>>>>> -- >>>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>>> have >>>>>> stopped banging their heads against? >>>>>> ?Larry Wall >>>>>> >>>>>> Thiago Glauco Sanchez >>>>>> Intrutor Perl e Redes >>>>>> www.ticursos.net >>>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>> >>>> -- >>>> What is the sound of Perl? Is it not the sound of a wall that people >>>> have >>>> stopped banging their heads against? >>>> ?Larry Wall >>>> >>>> Thiago Glauco Sanchez >>>> Intrutor Perl e Redes >>>> www.ticursos.net >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> > > > -- > What is the sound of Perl? Is it not the sound of a wall that people have > stopped banging their heads against? > ?Larry Wall > > Thiago Glauco Sanchez > Intrutor Perl e Redes > www.ticursos.net > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From bruno.buss em gmail.com Mon Jul 12 13:59:31 2010 From: bruno.buss em gmail.com (Bruno Buss) Date: Mon, 12 Jul 2010 17:59:31 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> <4C3B6476.7080309@ticursos.net> <4C3B6B48.8030304@ticursos.net> Message-ID: Talvez você queira diminuir o timeout padrão: sub PING_TIMEOUT () { 5 } (No seu script era 1 segundo se não me engano) No POE::Component::Client::Ping->spawn, talvez você queira passar a opção Parallelism, ex: POE::Component::Client::Ping->spawn( Alias => 'pinger', # The component's name will be "pinger". Timeout => PING_TIMEOUT, # The default ping timeout. Parallelism => 128 ); 2010/7/12 João André Simioni > Thiago, > > dando uma bem de vagabundo, não li nada do POE, só modifiquei o > código abaixo para pingar todos os meus Hosts. > > Mas ele está fazendo poucos processos paralelos. O tempo total de > testes está 11 minutos com o POE, e o load nem faz cócegas. Sabem > fácil como mexer nisso? > > Obrigado > > 2010/7/12 Thiago Glauco Sanchez : > > Puxa... eu sou muito "toupeira"... já tem código de exemplo para isso > feito > > e muito mais pratico e completo que o meu...: > > > > http://poe.perl.org/?POE_Cookbook/Pinging_Multiple_Hosts > > > > Em 12/07/2010 15:52, Thiago Glauco Sanchez escreveu: > >> > >> Um pequeno exemplo que eu criei apenas para ilustrar... o pessoal que > >> desejar incrementar, por favor, be my guest. > >> > >> use 5.12.0; > >> use POE; > >> use Net::Ping; > >> POE::Session->create( > >> inline_states => { > >> _start => sub { > >> my ($kernel) = $_[KERNEL]; > >> print "Setting up a session\n"; > >> $kernel->yield("ping"); > >> }, > >> > >> ping => sub{my ($kernel) = $_[KERNEL]; > >> my @ping = `ping -n 1 www.ticursos.net`; > >> map{say "ping externo ok" if $_ =~ /Perdidos = 0/ } @ping; > >> $kernel->delay_set("net_ping" => 3); > >> > >> }, > >> > >> net_ping => sub{ my ($kernel) = $_[KERNEL]; > >> my $p = Net::Ping->new(); > >> $p->port_number(80); > >> my ($ret, $duration, $ip) = $p->ping('ticursos.net > '); > >> say "net::ping ok" if $ret; > >> $p->close(); > >> $kernel->delay_set("ping" => 3) > >> }, > >> }, > >> ); > >> > >> say "Iniciando o Kernel..."; > >> $poe_kernel->run( ); > >> exit(0); > >> > >> sub start { > >> my ($kernel) = $_[KERNEL]; > >> say "Iniciando os testes com POE"; > >> $kernel->yield("ping"); > >> } > >> > >> > >> Em 12/07/2010 15:38, João André Simioni escreveu: > >>> > >>> O pessoal comentou - eu vou dar uma olhada nele com atenção. > >>> > >>> Obrigado pela dica. > >>> > >>> 2010/7/12 Thiago Glauco Sanchez: > >>>> > >>>> O Perl tem um framework para aplicações em rede e Multitarefa chamada > >>>> POE > >>>> que > >>>> "Provide a cooperative scheduling and multitasking environment > rivalling > >>>> threads and IPC" > >>>> Não seria o caso de estudarmos a possibilidade de usar esse framework > no > >>>> seu > >>>> sistema??? > >>>> > >>>> Em 11/07/2010 23:57, João André Simioni escreveu: > >>>>> > >>>>> Foi um typo - erro de digitação - o Net::Ping testa TCP e UDP. O ping > >>>>> externo ICMP. > >>>>> > >>>>> Mas assim, eu preciso resolver o problema com esse teste em Perl - > >>>>> como eu disse, essa parte do código é só um pedaço de um sistema > >>>>> maior. SNMP já é usado para várias outras coisas, mas dependem de > >>>>> access lists em routers e eu não tenho como liberar. > >>>>> > >>>>> []'s > >>>>> > >>>>> 2010/7/11 Thiago Glauco Sanchez: > >>>>> > >>>>>> O que eu quero dizer: você testou com o ping externo que é um teste > >>>>>> icmp... > >>>>>> depois fez outro teste icmp com o Net::Ping... > >>>>>> > >>>>>> Não seria mais interessante testar de outra forma? > >>>>>> > >>>>>> $p = Net::Ping->new("tcp", 2); > >>>>>> $p->port_number(getservbyname("http", "tcp")); > >>>>>> > >>>>>> Mais umas coisas: Suas máquinas/equipamentos em teste estão via > >>>>>> internet > >>>>>> ou > >>>>>> rede local? > >>>>>> Já pensou em usar SNMP? Já tive um problema parecido e iria utilizar > >>>>>> um > >>>>>> processo para cada equipamento por desempenho e acabai optando por > >>>>>> utilizar > >>>>>> o Net:SNMP > >>>>>> que permite utilizar uma função de callback em vez de utilizar um > >>>>>> processo > >>>>>> para cada equipamento. Eu mando uma requisição para todos os > >>>>>> equipamentos > >>>>>> e > >>>>>> conforme eles respondem > >>>>>> a função de call-back trata a requisição. > >>>>>> > >>>>>> Porém, não conheço o seu ambiente. Apenas acho que criar 4000 > threads > >>>>>> não > >>>>>> seja a melhor solução. > >>>>>> > >>>>>> > >>>>>> Em 11/07/2010 23:18, João André Simioni escreveu: > >>>>>> > >>>>>>> É typo - já está certo no código. ICMP vai via comando externo, UDP > e > >>>>>>> TCP via Net::Ping. > >>>>>>> > >>>>>>> Com relação aos testes, é normal um momento de sobrecarga causar a > >>>>>>> não > >>>>>>> resposta de testes - essas sobrecargas não devem duram mais que 5 > >>>>>>> segundos. Por isso o sleep - assim eu faço o mesmo teste 3x, com > >>>>>>> intervalos de 3 segundos. > >>>>>>> > >>>>>>> []'s > >>>>>>> > >>>>>>> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de Blebe > > >>>>>>> wrote: > >>>>>>> > >>>>>>> > >>>>>>>> Não seria um typo? > >>>>>>>> > >>>>>>>> icmp -> ping; > >>>>>>>> tcp e udp -> Net::Ping > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez > >>>>>>>> wrote: > >>>>>>>> > >>>>>>>> > >>>>>>>>> Sim sim, entendi sua preocupação. > >>>>>>>>> Mas em vez de: > >>>>>>>>> > >>>>>>>>> for (1..3) { > >>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; > >>>>>>>>> > >>>>>>>>> não seria melhor já mandar pingar as 3 vezes no comando ou apenas > >>>>>>>>> 1? > >>>>>>>>> Você > >>>>>>>>> está gerando 3 processos externos sem necessidade real. > >>>>>>>>> > >>>>>>>>> outra... o comando ping já não é icmp? > >>>>>>>>> my $p = Net::Ping->new('icmp')??? > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> Em 11/07/2010 17:04, João André Simioni escreveu: > >>>>>>>>> > >>>>>>>>> > >>>>>>>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP > >>>>>>>>>> Echo. > >>>>>>>>>> Alguns clientes tem filtros e assim eu evito falsos positivos. > >>>>>>>>>> > >>>>>>>>>> Net::Ping mesmo com root tem resultados incoerentes quando uso > >>>>>>>>>> ICMP e > >>>>>>>>>> Threads. > >>>>>>>>>> > >>>>>>>>>> []'s > >>>>>>>>>> > >>>>>>>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez > >>>>>>>>>> wrote: > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>>> Endosso a solução do Lorn. Use o POE. > >>>>>>>>>>> > >>>>>>>>>>> E cara... pra que isso?? > >>>>>>>>>>> > >>>>>>>>>>> sub checkIp { > >>>>>>>>>>> my $ip = shift; > >>>>>>>>>>> my $pingOk = 0; > >>>>>>>>>>> > >>>>>>>>>>> eval { > >>>>>>>>>>> for (1..3) { > >>>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; > >>>>>>>>>>> > >>>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { > >>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>> return 1; > >>>>>>>>>>> } > >>>>>>>>>>> > >>>>>>>>>>> if ($pingOk == 0) { > >>>>>>>>>>> my $p = Net::Ping->new('icmp'); > >>>>>>>>>>> $p->service_check(1); > >>>>>>>>>>> if ($p->ping($ip, 1)) { > >>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>> return 1; > >>>>>>>>>>> } > >>>>>>>>>>> } > >>>>>>>>>>> > >>>>>>>>>>> if ($pingOk == 0) { > >>>>>>>>>>> my $p = Net::Ping->new('udp'); > >>>>>>>>>>> $p->service_check(1); > >>>>>>>>>>> if ($p->ping($ip, 1)) { > >>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>> return 1; > >>>>>>>>>>> } > >>>>>>>>>>> } > >>>>>>>>>>> > >>>>>>>>>>> sleep 3; > >>>>>>>>>>> } > >>>>>>>>>>> }; > >>>>>>>>>>> > >>>>>>>>>>> Para pingar com ping externo, depois com o Net::Ping via icmp e > >>>>>>>>>>> depois > >>>>>>>>>>> com > >>>>>>>>>>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de > >>>>>>>>>>> permissão > >>>>>>>>>>> root > >>>>>>>>>>> para retornar um icmp de forma correta... > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> Caros, > >>>>>>>>>>>> > >>>>>>>>>>>> tenho um script para testar cerca de 4700 equipamentos, usando > >>>>>>>>>>>> ping. > >>>>>>>>>>>> Queria usar cerca 250 threads para isso, então o que eu fiz > foi > >>>>>>>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma > thread > >>>>>>>>>>>> para > >>>>>>>>>>>> cada. > >>>>>>>>>>>> > >>>>>>>>>>>> Não há nenhum problema com o código, o que acontece é que o > >>>>>>>>>>>> tempo > >>>>>>>>>>>> de > >>>>>>>>>>>> abertura das threads é muito alto. E quanto mais threads eu > >>>>>>>>>>>> abro, > >>>>>>>>>>>> maior o tempo para abertura das próximas. As primeiras abrem > em > >>>>>>>>>>>> 30ms, > >>>>>>>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. > >>>>>>>>>>>> > >>>>>>>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma > >>>>>>>>>>>> outra > >>>>>>>>>>>> solução? > >>>>>>>>>>>> > >>>>>>>>>>>> Segue o output do script como exemplo: > >>>>>>>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com > 19 > >>>>>>>>>>>> elementos > >>>>>>>>>>>> cada > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 > >>>>>>>>>>>> Created thread 1 (1) - took 0.030138 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 > >>>>>>>>>>>> Created thread 2 (2) - took 0.042668 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.134968 > >>>>>>>>>>>> Created thread 3 (3) - took 0.064245 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.199430 > >>>>>>>>>>>> Created thread 4 (4) - took 0.082642 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.282278 > >>>>>>>>>>>> Created thread 5 (5) - took 0.128257 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.410769 > >>>>>>>>>>>> Created thread 6 (6) - took 0.136458 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.547383 > >>>>>>>>>>>> Created thread 7 (7) - took 0.208085 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.755594 > >>>>>>>>>>>> Created thread 8 (8) - took 0.173014 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.928756 > >>>>>>>>>>>> Created thread 9 (9) - took 0.132713 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 > >>>>>>>>>>>> Created thread 10 (10) - took 0.127795 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.189536 > >>>>>>>>>>>> Created thread 11 (11) - took 0.301836 seconds to create > >>>>>>>>>>>> > >>>>>>>>>>>> Obrigado > >>>>>>>>>>>> > >>>>>>>>>>>> João André Simioni > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> #!/usr/bin/perl > >>>>>>>>>>>> > >>>>>>>>>>>> use strict; > >>>>>>>>>>>> use DBI; > >>>>>>>>>>>> use Net::Ping; > >>>>>>>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; > >>>>>>>>>>>> use threads ('yield', 'stack_size' => 32*4096, 'exit' > >>>>>>>>>>>> => > >>>>>>>>>>>> 'threads_only', 'stringify'); > >>>>>>>>>>>> > >>>>>>>>>>>> my $host = '192.168.160.179'; > >>>>>>>>>>>> my $sid = 'HOMOLOG'; > >>>>>>>>>>>> my $user = 'mac_user'; > >>>>>>>>>>>> my $pass = 'mac_user'; > >>>>>>>>>>>> > >>>>>>>>>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", > $user, > >>>>>>>>>>>> $pass, > >>>>>>>>>>>> { AutoCommit => 1 }); > >>>>>>>>>>>> > >>>>>>>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, > >>>>>>>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? > AND > >>>>>>>>>>>> CPE_ATIVO = ?'); > >>>>>>>>>>>> $sth->execute('1', 'A'); > >>>>>>>>>>>> > >>>>>>>>>>>> my @cpes; > >>>>>>>>>>>> > >>>>>>>>>>>> while (my (@row) = $sth->fetchrow_array) { > >>>>>>>>>>>> push @cpes, [ @row ]; > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> $dbh->disconnect(); > >>>>>>>>>>>> > >>>>>>>>>>>> my $maxThreads = 250; > >>>>>>>>>>>> my $total = @cpes; > >>>>>>>>>>>> > >>>>>>>>>>>> my $cpePerThread = int($total / $maxThreads); > >>>>>>>>>>>> > >>>>>>>>>>>> my @toMonitor; > >>>>>>>>>>>> my $i = 0; > >>>>>>>>>>>> my $c = 0; > >>>>>>>>>>>> > >>>>>>>>>>>> foreach my $cpe (@cpes) { > >>>>>>>>>>>> push @{$toMonitor[$i]}, $cpe; > >>>>>>>>>>>> $c++; > >>>>>>>>>>>> > >>>>>>>>>>>> if ($c> $cpePerThread) { > >>>>>>>>>>>> $i++; > >>>>>>>>>>>> $c = 0; > >>>>>>>>>>>> } > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> print "Para $total cpes, e $maxThreads threads, tenho no final > >>>>>>>>>>>> $i > >>>>>>>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; > >>>>>>>>>>>> > >>>>>>>>>>>> sub processResult { > >>>>>>>>>>>> my $r = shift; > >>>>>>>>>>>> if (ref $r ne 'ARRAY') { > >>>>>>>>>>>> print STDERR "Erro na thread\n"; > >>>>>>>>>>>> return 0; > >>>>>>>>>>>> } > >>>>>>>>>>>> my ($result, $host, $ifs) = @$r; > >>>>>>>>>>>> > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> sub testeClient { > >>>>>>>>>>>> my $threadNum = shift; > >>>>>>>>>>>> my $cpeGroup = shift; > >>>>>>>>>>>> foreach my $cpe (@{$cpeGroup}) { > >>>>>>>>>>>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, > >>>>>>>>>>>> $cpeIf) > >>>>>>>>>>>> = > >>>>>>>>>>>> @$cpe; > >>>>>>>>>>>> my $pingOk =&checkIp($cpeIp); > >>>>>>>>>>>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; > >>>>>>>>>>>> # print join(", ", $threadNum, $cpeId, $clientId, > >>>>>>>>>>>> $cpeDesc, > >>>>>>>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; > >>>>>>>>>>>> } > >>>>>>>>>>>> # print "Finishing thread $threadNum\n"; > >>>>>>>>>>>> return([1, 0]); > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> my $threadCount = 1; > >>>>>>>>>>>> foreach my $cpeGroup (@toMonitor) { > >>>>>>>>>>>> print "Trying to create thread"; > >>>>>>>>>>>> my $t0 = [gettimeofday]; > >>>>>>>>>>>> > >>>>>>>>>>>> print " in ", scalar localtime $t0->[0], ".", $t0->[1], > >>>>>>>>>>>> "\n"; > >>>>>>>>>>>> > >>>>>>>>>>>> my $thr = threads->create({scalar => '1'}, > >>>>>>>>>>>> 'testeClient', > >>>>>>>>>>>> $threadCount, $cpeGroup); > >>>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); > >>>>>>>>>>>> print "Created thread $thr ($threadCount) - took $elapsed > >>>>>>>>>>>> seconds > >>>>>>>>>>>> to create\n"; > >>>>>>>>>>>> $threadCount++; > >>>>>>>>>>>> > >>>>>>>>>>>> while (threads->list()>= $maxThreads) { > >>>>>>>>>>>> my @joinable = threads->list(threads::joinable); > >>>>>>>>>>>> for (@joinable) { > >>>>>>>>>>>> my $r = $_->join(); > >>>>>>>>>>>> &processResult($r); > >>>>>>>>>>>> } > >>>>>>>>>>>> usleep(10000); > >>>>>>>>>>>> } > >>>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> while (threads->list()) { > >>>>>>>>>>>> my @joinable = threads->list(threads::joinable); > >>>>>>>>>>>> for (@joinable) { > >>>>>>>>>>>> my $r = $_->join(); > >>>>>>>>>>>> &processResult($r); > >>>>>>>>>>>> } > >>>>>>>>>>>> usleep(10000); > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> sub checkIp { > >>>>>>>>>>>> my $ip = shift; > >>>>>>>>>>>> my $pingOk = 0; > >>>>>>>>>>>> > >>>>>>>>>>>> eval { > >>>>>>>>>>>> for (1..3) { > >>>>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; > >>>>>>>>>>>> > >>>>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { > >>>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>>> return 1; > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> if ($pingOk == 0) { > >>>>>>>>>>>> my $p = Net::Ping->new('icmp'); > >>>>>>>>>>>> $p->service_check(1); > >>>>>>>>>>>> if ($p->ping($ip, 1)) { > >>>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>>> return 1; > >>>>>>>>>>>> } > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> if ($pingOk == 0) { > >>>>>>>>>>>> my $p = Net::Ping->new('udp'); > >>>>>>>>>>>> $p->service_check(1); > >>>>>>>>>>>> if ($p->ping($ip, 1)) { > >>>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>>> return 1; > >>>>>>>>>>>> } > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> sleep 3; > >>>>>>>>>>>> } > >>>>>>>>>>>> }; > >>>>>>>>>>>> > >>>>>>>>>>>> return $pingOk; > >>>>>>>>>>>> } > >>>>>>>>>>>> _______________________________________________ > >>>>>>>>>>>> Rio-pm mailing list > >>>>>>>>>>>> Rio-pm em pm.org > >>>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>> -- > >>>>>>>>>>> What is the sound of Perl? Is it not the sound of a wall that > >>>>>>>>>>> people > >>>>>>>>>>> have > >>>>>>>>>>> stopped banging their heads against? > >>>>>>>>>>> ?Larry Wall > >>>>>>>>>>> > >>>>>>>>>>> Thiago Glauco Sanchez > >>>>>>>>>>> Intrutor Perl e Redes > >>>>>>>>>>> www.ticursos.net > >>>>>>>>>>> > >>>>>>>>>>> _______________________________________________ > >>>>>>>>>>> Rio-pm mailing list > >>>>>>>>>>> Rio-pm em pm.org > >>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>> _______________________________________________ > >>>>>>>>>> Rio-pm mailing list > >>>>>>>>>> Rio-pm em pm.org > >>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>> -- > >>>>>>>>> What is the sound of Perl? Is it not the sound of a wall that > >>>>>>>>> people > >>>>>>>>> have > >>>>>>>>> stopped banging their heads against? > >>>>>>>>> ?Larry Wall > >>>>>>>>> > >>>>>>>>> Thiago Glauco Sanchez > >>>>>>>>> Intrutor Perl e Redes > >>>>>>>>> www.ticursos.net > >>>>>>>>> > >>>>>>>>> _______________________________________________ > >>>>>>>>> Rio-pm mailing list > >>>>>>>>> Rio-pm em pm.org > >>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>>>>>> _______________________________________________ > >>>>>>>> Rio-pm mailing list > >>>>>>>> Rio-pm em pm.org > >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>> _______________________________________________ > >>>>>>> Rio-pm mailing list > >>>>>>> Rio-pm em pm.org > >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>> > >>>>>>> > >>>>>>> > >>>>>> -- > >>>>>> What is the sound of Perl? Is it not the sound of a wall that people > >>>>>> have > >>>>>> stopped banging their heads against? > >>>>>> ?Larry Wall > >>>>>> > >>>>>> Thiago Glauco Sanchez > >>>>>> Intrutor Perl e Redes > >>>>>> www.ticursos.net > >>>>>> > >>>>>> _______________________________________________ > >>>>>> Rio-pm mailing list > >>>>>> Rio-pm em pm.org > >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>> > >>>>>> > >>>>> _______________________________________________ > >>>>> Rio-pm mailing list > >>>>> Rio-pm em pm.org > >>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>> > >>>>> > >>>> > >>>> -- > >>>> What is the sound of Perl? Is it not the sound of a wall that people > >>>> have > >>>> stopped banging their heads against? > >>>> ?Larry Wall > >>>> > >>>> Thiago Glauco Sanchez > >>>> Intrutor Perl e Redes > >>>> www.ticursos.net > >>>> > >>>> _______________________________________________ > >>>> Rio-pm mailing list > >>>> Rio-pm em pm.org > >>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>> > >>> _______________________________________________ > >>> Rio-pm mailing list > >>> Rio-pm em pm.org > >>> http://mail.pm.org/mailman/listinfo/rio-pm > >>> > >> > >> > > > > > > -- > > What is the sound of Perl? Is it not the sound of a wall that people have > > stopped banging their heads against? > > ?Larry Wall > > > > Thiago Glauco Sanchez > > Intrutor Perl e Redes > > www.ticursos.net > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Bruno C. Buss http://brunobuss.wordpress.com/ http://www.dcc.ufrj.br/~brunobuss/ -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From thiagoglauco em ticursos.net Mon Jul 12 14:27:34 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Mon, 12 Jul 2010 18:27:34 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> <4C3B6476.7080309@ticursos.net> <4C3B6B48.8030304@ticursos.net> Message-ID: <4C3B88C6.6010909@ticursos.net> Em 12/07/2010 17:54, João André Simioni escreveu: Você modificou o meu código ou do pinging_multiple_hosts? E, desculpe a expressão: Caraca... seus hosts precisam ser verificados em loops de menos que 11 minutos com ping!! Respondendo: Sim, dá para mudar... Mas, como solução "provisória", já que o load nem fez cócegas, execute 2 ou 3 instâncias do código dividindo os hosts. > Thiago, > > dando uma bem de vagabundo, não li nada do POE, só modifiquei o > código abaixo para pingar todos os meus Hosts. > > Mas ele está fazendo poucos processos paralelos. O tempo total de > testes está 11 minutos com o POE, e o load nem faz cócegas. Sabem > fácil como mexer nisso? > > Obrigado > > 2010/7/12 Thiago Glauco Sanchez: > >> Puxa... eu sou muito "toupeira"... já tem código de exemplo para isso feito >> e muito mais pratico e completo que o meu...: >> >> http://poe.perl.org/?POE_Cookbook/Pinging_Multiple_Hosts >> >> Em 12/07/2010 15:52, Thiago Glauco Sanchez escreveu: >> >>> Um pequeno exemplo que eu criei apenas para ilustrar... o pessoal que >>> desejar incrementar, por favor, be my guest. >>> >>> use 5.12.0; >>> use POE; >>> use Net::Ping; >>> POE::Session->create( >>> inline_states => { >>> _start => sub { >>> my ($kernel) = $_[KERNEL]; >>> print "Setting up a session\n"; >>> $kernel->yield("ping"); >>> }, >>> >>> ping => sub{my ($kernel) = $_[KERNEL]; >>> my @ping = `ping -n 1 www.ticursos.net`; >>> map{say "ping externo ok" if $_ =~ /Perdidos = 0/ } @ping; >>> $kernel->delay_set("net_ping" => 3); >>> >>> }, >>> >>> net_ping => sub{ my ($kernel) = $_[KERNEL]; >>> my $p = Net::Ping->new(); >>> $p->port_number(80); >>> my ($ret, $duration, $ip) = $p->ping('ticursos.net'); >>> say "net::ping ok" if $ret; >>> $p->close(); >>> $kernel->delay_set("ping" => 3) >>> }, >>> }, >>> ); >>> >>> say "Iniciando o Kernel..."; >>> $poe_kernel->run( ); >>> exit(0); >>> >>> sub start { >>> my ($kernel) = $_[KERNEL]; >>> say "Iniciando os testes com POE"; >>> $kernel->yield("ping"); >>> } >>> >>> >>> Em 12/07/2010 15:38, João André Simioni escreveu: >>> >>>> O pessoal comentou - eu vou dar uma olhada nele com atenção. >>>> >>>> Obrigado pela dica. >>>> >>>> 2010/7/12 Thiago Glauco Sanchez: >>>> >>>>> O Perl tem um framework para aplicações em rede e Multitarefa chamada >>>>> POE >>>>> que >>>>> "Provide a cooperative scheduling and multitasking environment rivalling >>>>> threads and IPC" >>>>> Não seria o caso de estudarmos a possibilidade de usar esse framework no >>>>> seu >>>>> sistema??? >>>>> >>>>> Em 11/07/2010 23:57, João André Simioni escreveu: >>>>> >>>>>> Foi um typo - erro de digitação - o Net::Ping testa TCP e UDP. O ping >>>>>> externo ICMP. >>>>>> >>>>>> Mas assim, eu preciso resolver o problema com esse teste em Perl - >>>>>> como eu disse, essa parte do código é só um pedaço de um sistema >>>>>> maior. SNMP já é usado para várias outras coisas, mas dependem de >>>>>> access lists em routers e eu não tenho como liberar. >>>>>> >>>>>> []'s >>>>>> >>>>>> 2010/7/11 Thiago Glauco Sanchez: >>>>>> >>>>>> >>>>>>> O que eu quero dizer: você testou com o ping externo que é um teste >>>>>>> icmp... >>>>>>> depois fez outro teste icmp com o Net::Ping... >>>>>>> >>>>>>> Não seria mais interessante testar de outra forma? >>>>>>> >>>>>>> $p = Net::Ping->new("tcp", 2); >>>>>>> $p->port_number(getservbyname("http", "tcp")); >>>>>>> >>>>>>> Mais umas coisas: Suas máquinas/equipamentos em teste estão via >>>>>>> internet >>>>>>> ou >>>>>>> rede local? >>>>>>> Já pensou em usar SNMP? Já tive um problema parecido e iria utilizar >>>>>>> um >>>>>>> processo para cada equipamento por desempenho e acabai optando por >>>>>>> utilizar >>>>>>> o Net:SNMP >>>>>>> que permite utilizar uma função de callback em vez de utilizar um >>>>>>> processo >>>>>>> para cada equipamento. Eu mando uma requisição para todos os >>>>>>> equipamentos >>>>>>> e >>>>>>> conforme eles respondem >>>>>>> a função de call-back trata a requisição. >>>>>>> >>>>>>> Porém, não conheço o seu ambiente. Apenas acho que criar 4000 threads >>>>>>> não >>>>>>> seja a melhor solução. >>>>>>> >>>>>>> >>>>>>> Em 11/07/2010 23:18, João André Simioni escreveu: >>>>>>> >>>>>>> >>>>>>>> É typo - já está certo no código. ICMP vai via comando externo, UDP e >>>>>>>> TCP via Net::Ping. >>>>>>>> >>>>>>>> Com relação aos testes, é normal um momento de sobrecarga causar a >>>>>>>> não >>>>>>>> resposta de testes - essas sobrecargas não devem duram mais que 5 >>>>>>>> segundos. Por isso o sleep - assim eu faço o mesmo teste 3x, com >>>>>>>> intervalos de 3 segundos. >>>>>>>> >>>>>>>> []'s >>>>>>>> >>>>>>>> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de Blebe >>>>>>>> wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Não seria um typo? >>>>>>>>> >>>>>>>>> icmp -> ping; >>>>>>>>> tcp e udp -> Net::Ping >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Sim sim, entendi sua preocupação. >>>>>>>>>> Mas em vez de: >>>>>>>>>> >>>>>>>>>> for (1..3) { >>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>>>> >>>>>>>>>> não seria melhor já mandar pingar as 3 vezes no comando ou apenas >>>>>>>>>> 1? >>>>>>>>>> Você >>>>>>>>>> está gerando 3 processos externos sem necessidade real. >>>>>>>>>> >>>>>>>>>> outra... o comando ping já não é icmp? >>>>>>>>>> my $p = Net::Ping->new('icmp')??? >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Em 11/07/2010 17:04, João André Simioni escreveu: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo e ICMP >>>>>>>>>>> Echo. >>>>>>>>>>> Alguns clientes tem filtros e assim eu evito falsos positivos. >>>>>>>>>>> >>>>>>>>>>> Net::Ping mesmo com root tem resultados incoerentes quando uso >>>>>>>>>>> ICMP e >>>>>>>>>>> Threads. >>>>>>>>>>> >>>>>>>>>>> []'s >>>>>>>>>>> >>>>>>>>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>>>>>>>>>> wrote: >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> Endosso a solução do Lorn. Use o POE. >>>>>>>>>>>> >>>>>>>>>>>> E cara... pra que isso?? >>>>>>>>>>>> >>>>>>>>>>>> sub checkIp { >>>>>>>>>>>> my $ip = shift; >>>>>>>>>>>> my $pingOk = 0; >>>>>>>>>>>> >>>>>>>>>>>> eval { >>>>>>>>>>>> for (1..3) { >>>>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>>>>>> >>>>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { >>>>>>>>>>>> $pingOk = 1; >>>>>>>>>>>> return 1; >>>>>>>>>>>> } >>>>>>>>>>>> >>>>>>>>>>>> if ($pingOk == 0) { >>>>>>>>>>>> my $p = Net::Ping->new('icmp'); >>>>>>>>>>>> $p->service_check(1); >>>>>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>>>>> $pingOk = 1; >>>>>>>>>>>> return 1; >>>>>>>>>>>> } >>>>>>>>>>>> } >>>>>>>>>>>> >>>>>>>>>>>> if ($pingOk == 0) { >>>>>>>>>>>> my $p = Net::Ping->new('udp'); >>>>>>>>>>>> $p->service_check(1); >>>>>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>>>>> $pingOk = 1; >>>>>>>>>>>> return 1; >>>>>>>>>>>> } >>>>>>>>>>>> } >>>>>>>>>>>> >>>>>>>>>>>> sleep 3; >>>>>>>>>>>> } >>>>>>>>>>>> }; >>>>>>>>>>>> >>>>>>>>>>>> Para pingar com ping externo, depois com o Net::Ping via icmp e >>>>>>>>>>>> depois >>>>>>>>>>>> com >>>>>>>>>>>> net::Ping udp? Ah... se não me engano, Net::Ping precisa de >>>>>>>>>>>> permissão >>>>>>>>>>>> root >>>>>>>>>>>> para retornar um icmp de forma correta... >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>>> Caros, >>>>>>>>>>>>> >>>>>>>>>>>>> tenho um script para testar cerca de 4700 equipamentos, usando >>>>>>>>>>>>> ping. >>>>>>>>>>>>> Queria usar cerca 250 threads para isso, então o que eu fiz foi >>>>>>>>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri uma thread >>>>>>>>>>>>> para >>>>>>>>>>>>> cada. >>>>>>>>>>>>> >>>>>>>>>>>>> Não há nenhum problema com o código, o que acontece é que o >>>>>>>>>>>>> tempo >>>>>>>>>>>>> de >>>>>>>>>>>>> abertura das threads é muito alto. E quanto mais threads eu >>>>>>>>>>>>> abro, >>>>>>>>>>>>> maior o tempo para abertura das próximas. As primeiras abrem em >>>>>>>>>>>>> 30ms, >>>>>>>>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 segundo. >>>>>>>>>>>>> >>>>>>>>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou alguma >>>>>>>>>>>>> outra >>>>>>>>>>>>> solução? >>>>>>>>>>>>> >>>>>>>>>>>>> Segue o output do script como exemplo: >>>>>>>>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 grupos, com 19 >>>>>>>>>>>>> elementos >>>>>>>>>>>>> cada >>>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 >>>>>>>>>>>>> Created thread 1 (1) - took 0.030138 seconds to create >>>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 >>>>>>>>>>>>> Created thread 2 (2) - took 0.042668 seconds to create >>>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.134968 >>>>>>>>>>>>> Created thread 3 (3) - took 0.064245 seconds to create >>>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.199430 >>>>>>>>>>>>> Created thread 4 (4) - took 0.082642 seconds to create >>>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.282278 >>>>>>>>>>>>> Created thread 5 (5) - took 0.128257 seconds to create >>>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.410769 >>>>>>>>>>>>> Created thread 6 (6) - took 0.136458 seconds to create >>>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.547383 >>>>>>>>>>>>> Created thread 7 (7) - took 0.208085 seconds to create >>>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.755594 >>>>>>>>>>>>> Created thread 8 (8) - took 0.173014 seconds to create >>>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.928756 >>>>>>>>>>>>> Created thread 9 (9) - took 0.132713 seconds to create >>>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 >>>>>>>>>>>>> Created thread 10 (10) - took 0.127795 seconds to create >>>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.189536 >>>>>>>>>>>>> Created thread 11 (11) - took 0.301836 seconds to create >>>>>>>>>>>>> >>>>>>>>>>>>> Obrigado >>>>>>>>>>>>> >>>>>>>>>>>>> João André Simioni >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> #!/usr/bin/perl >>>>>>>>>>>>> >>>>>>>>>>>>> use strict; >>>>>>>>>>>>> use DBI; >>>>>>>>>>>>> use Net::Ping; >>>>>>>>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>>>>>>>>>>>> use threads ('yield', 'stack_size' => 32*4096, 'exit' >>>>>>>>>>>>> => >>>>>>>>>>>>> 'threads_only', 'stringify'); >>>>>>>>>>>>> >>>>>>>>>>>>> my $host = '192.168.160.179'; >>>>>>>>>>>>> my $sid = 'HOMOLOG'; >>>>>>>>>>>>> my $user = 'mac_user'; >>>>>>>>>>>>> my $pass = 'mac_user'; >>>>>>>>>>>>> >>>>>>>>>>>>> my $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, >>>>>>>>>>>>> $pass, >>>>>>>>>>>>> { AutoCommit => 1 }); >>>>>>>>>>>>> >>>>>>>>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, CPE_DESC, >>>>>>>>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE CPE_PING = ? AND >>>>>>>>>>>>> CPE_ATIVO = ?'); >>>>>>>>>>>>> $sth->execute('1', 'A'); >>>>>>>>>>>>> >>>>>>>>>>>>> my @cpes; >>>>>>>>>>>>> >>>>>>>>>>>>> while (my (@row) = $sth->fetchrow_array) { >>>>>>>>>>>>> push @cpes, [ @row ]; >>>>>>>>>>>>> } >>>>>>>>>>>>> >>>>>>>>>>>>> $dbh->disconnect(); >>>>>>>>>>>>> >>>>>>>>>>>>> my $maxThreads = 250; >>>>>>>>>>>>> my $total = @cpes; >>>>>>>>>>>>> >>>>>>>>>>>>> my $cpePerThread = int($total / $maxThreads); >>>>>>>>>>>>> >>>>>>>>>>>>> my @toMonitor; >>>>>>>>>>>>> my $i = 0; >>>>>>>>>>>>> my $c = 0; >>>>>>>>>>>>> >>>>>>>>>>>>> foreach my $cpe (@cpes) { >>>>>>>>>>>>> push @{$toMonitor[$i]}, $cpe; >>>>>>>>>>>>> $c++; >>>>>>>>>>>>> >>>>>>>>>>>>> if ($c> $cpePerThread) { >>>>>>>>>>>>> $i++; >>>>>>>>>>>>> $c = 0; >>>>>>>>>>>>> } >>>>>>>>>>>>> } >>>>>>>>>>>>> >>>>>>>>>>>>> print "Para $total cpes, e $maxThreads threads, tenho no final >>>>>>>>>>>>> $i >>>>>>>>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos cada\n"; >>>>>>>>>>>>> >>>>>>>>>>>>> sub processResult { >>>>>>>>>>>>> my $r = shift; >>>>>>>>>>>>> if (ref $r ne 'ARRAY') { >>>>>>>>>>>>> print STDERR "Erro na thread\n"; >>>>>>>>>>>>> return 0; >>>>>>>>>>>>> } >>>>>>>>>>>>> my ($result, $host, $ifs) = @$r; >>>>>>>>>>>>> >>>>>>>>>>>>> } >>>>>>>>>>>>> >>>>>>>>>>>>> sub testeClient { >>>>>>>>>>>>> my $threadNum = shift; >>>>>>>>>>>>> my $cpeGroup = shift; >>>>>>>>>>>>> foreach my $cpe (@{$cpeGroup}) { >>>>>>>>>>>>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, $cpeNode, >>>>>>>>>>>>> $cpeIf) >>>>>>>>>>>>> = >>>>>>>>>>>>> @$cpe; >>>>>>>>>>>>> my $pingOk =&checkIp($cpeIp); >>>>>>>>>>>>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>>>>>>>>>>>> # print join(", ", $threadNum, $cpeId, $clientId, >>>>>>>>>>>>> $cpeDesc, >>>>>>>>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>>>>>>>>>>>> } >>>>>>>>>>>>> # print "Finishing thread $threadNum\n"; >>>>>>>>>>>>> return([1, 0]); >>>>>>>>>>>>> } >>>>>>>>>>>>> >>>>>>>>>>>>> my $threadCount = 1; >>>>>>>>>>>>> foreach my $cpeGroup (@toMonitor) { >>>>>>>>>>>>> print "Trying to create thread"; >>>>>>>>>>>>> my $t0 = [gettimeofday]; >>>>>>>>>>>>> >>>>>>>>>>>>> print " in ", scalar localtime $t0->[0], ".", $t0->[1], >>>>>>>>>>>>> "\n"; >>>>>>>>>>>>> >>>>>>>>>>>>> my $thr = threads->create({scalar => '1'}, >>>>>>>>>>>>> 'testeClient', >>>>>>>>>>>>> $threadCount, $cpeGroup); >>>>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>>>>>>> print "Created thread $thr ($threadCount) - took $elapsed >>>>>>>>>>>>> seconds >>>>>>>>>>>>> to create\n"; >>>>>>>>>>>>> $threadCount++; >>>>>>>>>>>>> >>>>>>>>>>>>> while (threads->list()>= $maxThreads) { >>>>>>>>>>>>> my @joinable = threads->list(threads::joinable); >>>>>>>>>>>>> for (@joinable) { >>>>>>>>>>>>> my $r = $_->join(); >>>>>>>>>>>>> &processResult($r); >>>>>>>>>>>>> } >>>>>>>>>>>>> usleep(10000); >>>>>>>>>>>>> } >>>>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>>>>>>>>>>>> } >>>>>>>>>>>>> >>>>>>>>>>>>> while (threads->list()) { >>>>>>>>>>>>> my @joinable = threads->list(threads::joinable); >>>>>>>>>>>>> for (@joinable) { >>>>>>>>>>>>> my $r = $_->join(); >>>>>>>>>>>>> &processResult($r); >>>>>>>>>>>>> } >>>>>>>>>>>>> usleep(10000); >>>>>>>>>>>>> } >>>>>>>>>>>>> >>>>>>>>>>>>> sub checkIp { >>>>>>>>>>>>> my $ip = shift; >>>>>>>>>>>>> my $pingOk = 0; >>>>>>>>>>>>> >>>>>>>>>>>>> eval { >>>>>>>>>>>>> for (1..3) { >>>>>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>>>>>>>>>>>> >>>>>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { >>>>>>>>>>>>> $pingOk = 1; >>>>>>>>>>>>> return 1; >>>>>>>>>>>>> } >>>>>>>>>>>>> >>>>>>>>>>>>> if ($pingOk == 0) { >>>>>>>>>>>>> my $p = Net::Ping->new('icmp'); >>>>>>>>>>>>> $p->service_check(1); >>>>>>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>>>>>> $pingOk = 1; >>>>>>>>>>>>> return 1; >>>>>>>>>>>>> } >>>>>>>>>>>>> } >>>>>>>>>>>>> >>>>>>>>>>>>> if ($pingOk == 0) { >>>>>>>>>>>>> my $p = Net::Ping->new('udp'); >>>>>>>>>>>>> $p->service_check(1); >>>>>>>>>>>>> if ($p->ping($ip, 1)) { >>>>>>>>>>>>> $pingOk = 1; >>>>>>>>>>>>> return 1; >>>>>>>>>>>>> } >>>>>>>>>>>>> } >>>>>>>>>>>>> >>>>>>>>>>>>> sleep 3; >>>>>>>>>>>>> } >>>>>>>>>>>>> }; >>>>>>>>>>>>> >>>>>>>>>>>>> return $pingOk; >>>>>>>>>>>>> } >>>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>>> Rio-pm mailing list >>>>>>>>>>>>> Rio-pm em pm.org >>>>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> What is the sound of Perl? Is it not the sound of a wall that >>>>>>>>>>>> people >>>>>>>>>>>> have >>>>>>>>>>>> stopped banging their heads against? >>>>>>>>>>>> ?Larry Wall >>>>>>>>>>>> >>>>>>>>>>>> Thiago Glauco Sanchez >>>>>>>>>>>> Intrutor Perl e Redes >>>>>>>>>>>> www.ticursos.net >>>>>>>>>>>> >>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>> Rio-pm mailing list >>>>>>>>>>>> Rio-pm em pm.org >>>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> Rio-pm mailing list >>>>>>>>>>> Rio-pm em pm.org >>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> What is the sound of Perl? Is it not the sound of a wall that >>>>>>>>>> people >>>>>>>>>> have >>>>>>>>>> stopped banging their heads against? >>>>>>>>>> ?Larry Wall >>>>>>>>>> >>>>>>>>>> Thiago Glauco Sanchez >>>>>>>>>> Intrutor Perl e Redes >>>>>>>>>> www.ticursos.net >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Rio-pm mailing list >>>>>>>>>> Rio-pm em pm.org >>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Rio-pm mailing list >>>>>>>>> Rio-pm em pm.org >>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Rio-pm mailing list >>>>>>>> Rio-pm em pm.org >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> -- >>>>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>>>> have >>>>>>> stopped banging their heads against? >>>>>>> ?Larry Wall >>>>>>> >>>>>>> Thiago Glauco Sanchez >>>>>>> Intrutor Perl e Redes >>>>>>> www.ticursos.net >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Rio-pm mailing list >>>>>>> Rio-pm em pm.org >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm em pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>>> >>>>>> >>>>> -- >>>>> What is the sound of Perl? Is it not the sound of a wall that people >>>>> have >>>>> stopped banging their heads against? >>>>> ?Larry Wall >>>>> >>>>> Thiago Glauco Sanchez >>>>> Intrutor Perl e Redes >>>>> www.ticursos.net >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>> >>> >> >> -- >> What is the sound of Perl? Is it not the sound of a wall that people have >> stopped banging their heads against? >> ?Larry Wall >> >> Thiago Glauco Sanchez >> Intrutor Perl e Redes >> www.ticursos.net >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net From thiagoglauco em ticursos.net Mon Jul 12 14:33:34 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Mon, 12 Jul 2010 18:33:34 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> <4C3B6476.7080309@ticursos.net> <4C3B6B48.8030304@ticursos.net> Message-ID: <4C3B8A2E.7060409@ticursos.net> Se bem que... o cara já tem o caminho das pedras... tava bom para ele começar a ler o código e os manuais... Hoje não posso ajudar mais pq tenho aulas de Perl para ministrar... Leia os Manuais e poste mais dúvidas... se postar levianamente Trolls podem aparecer. Em 12/07/2010 17:59, Bruno Buss escreveu: > Talvez você queira diminuir o timeout padrão: > sub PING_TIMEOUT () { 5 } > (No seu script era 1 segundo se não me engano) > > No POE::Component::Client::Ping->spawn, talvez você queira passar a > opção Parallelism, ex: > POE::Component::Client::Ping->spawn( > Alias => 'pinger', # The component's name will be "pinger". > Timeout => PING_TIMEOUT, # The default ping timeout. > Parallelism => 128 > ); No seu código o paralelismo era 250... > > 2010/7/12 João André Simioni > > > Thiago, > > dando uma bem de vagabundo, não li nada do POE, só modifiquei o > código abaixo para pingar todos os meus Hosts. > > Mas ele está fazendo poucos processos paralelos. O tempo total de > testes está 11 minutos com o POE, e o load nem faz cócegas. Sabem > fácil como mexer nisso? > > Obrigado > > 2010/7/12 Thiago Glauco Sanchez >: > > Puxa... eu sou muito "toupeira"... já tem código de exemplo para > isso feito > > e muito mais pratico e completo que o meu...: > > > > http://poe.perl.org/?POE_Cookbook/Pinging_Multiple_Hosts > > > > Em 12/07/2010 15:52, Thiago Glauco Sanchez escreveu: > >> > >> Um pequeno exemplo que eu criei apenas para ilustrar... o > pessoal que > >> desejar incrementar, por favor, be my guest. > >> > >> use 5.12.0; > >> use POE; > >> use Net::Ping; > >> POE::Session->create( > >> inline_states => { > >> _start => sub { > >> my ($kernel) = $_[KERNEL]; > >> print "Setting up a session\n"; > >> $kernel->yield("ping"); > >> }, > >> > >> ping => sub{my ($kernel) = $_[KERNEL]; > >> my @ping = `ping -n 1 www.ticursos.net > `; > >> map{say "ping externo ok" if $_ =~ /Perdidos = 0/ } > @ping; > >> $kernel->delay_set("net_ping" => 3); > >> > >> }, > >> > >> net_ping => sub{ my ($kernel) = $_[KERNEL]; > >> my $p = Net::Ping->new(); > >> $p->port_number(80); > >> my ($ret, $duration, $ip) = > $p->ping('ticursos.net '); > >> say "net::ping ok" if $ret; > >> $p->close(); > >> $kernel->delay_set("ping" => 3) > >> }, > >> }, > >> ); > >> > >> say "Iniciando o Kernel..."; > >> $poe_kernel->run( ); > >> exit(0); > >> > >> sub start { > >> my ($kernel) = $_[KERNEL]; > >> say "Iniciando os testes com POE"; > >> $kernel->yield("ping"); > >> } > >> > >> > >> Em 12/07/2010 15:38, João André Simioni escreveu: > >>> > >>> O pessoal comentou - eu vou dar uma olhada nele com atenção. > >>> > >>> Obrigado pela dica. > >>> > >>> 2010/7/12 Thiago Glauco Sanchez >: > >>>> > >>>> O Perl tem um framework para aplicações em rede e Multitarefa > chamada > >>>> POE > >>>> que > >>>> "Provide a cooperative scheduling and multitasking > environment rivalling > >>>> threads and IPC" > >>>> Não seria o caso de estudarmos a possibilidade de usar esse > framework no > >>>> seu > >>>> sistema??? > >>>> > >>>> Em 11/07/2010 23:57, João André Simioni escreveu: > >>>>> > >>>>> Foi um typo - erro de digitação - o Net::Ping testa TCP e > UDP. O ping > >>>>> externo ICMP. > >>>>> > >>>>> Mas assim, eu preciso resolver o problema com esse teste em > Perl - > >>>>> como eu disse, essa parte do código é só um pedaço de um sistema > >>>>> maior. SNMP já é usado para várias outras coisas, mas > dependem de > >>>>> access lists em routers e eu não tenho como liberar. > >>>>> > >>>>> []'s > >>>>> > >>>>> 2010/7/11 Thiago Glauco Sanchez >: > >>>>> > >>>>>> O que eu quero dizer: você testou com o ping externo que é > um teste > >>>>>> icmp... > >>>>>> depois fez outro teste icmp com o Net::Ping... > >>>>>> > >>>>>> Não seria mais interessante testar de outra forma? > >>>>>> > >>>>>> $p = Net::Ping->new("tcp", 2); > >>>>>> $p->port_number(getservbyname("http", "tcp")); > >>>>>> > >>>>>> Mais umas coisas: Suas máquinas/equipamentos em teste estão via > >>>>>> internet > >>>>>> ou > >>>>>> rede local? > >>>>>> Já pensou em usar SNMP? Já tive um problema parecido e iria > utilizar > >>>>>> um > >>>>>> processo para cada equipamento por desempenho e acabai > optando por > >>>>>> utilizar > >>>>>> o Net:SNMP > >>>>>> que permite utilizar uma função de callback em vez de > utilizar um > >>>>>> processo > >>>>>> para cada equipamento. Eu mando uma requisição para todos os > >>>>>> equipamentos > >>>>>> e > >>>>>> conforme eles respondem > >>>>>> a função de call-back trata a requisição. > >>>>>> > >>>>>> Porém, não conheço o seu ambiente. Apenas acho que criar > 4000 threads > >>>>>> não > >>>>>> seja a melhor solução. > >>>>>> > >>>>>> > >>>>>> Em 11/07/2010 23:18, João André Simioni escreveu: > >>>>>> > >>>>>>> É typo - já está certo no código. ICMP vai via comando > externo, UDP e > >>>>>>> TCP via Net::Ping. > >>>>>>> > >>>>>>> Com relação aos testes, é normal um momento de sobrecarga > causar a > >>>>>>> não > >>>>>>> resposta de testes - essas sobrecargas não devem duram > mais que 5 > >>>>>>> segundos. Por isso o sleep - assim eu faço o mesmo teste > 3x, com > >>>>>>> intervalos de 3 segundos. > >>>>>>> > >>>>>>> []'s > >>>>>>> > >>>>>>> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de > Blebe> > >>>>>>> wrote: > >>>>>>> > >>>>>>> > >>>>>>>> Não seria um typo? > >>>>>>>> > >>>>>>>> icmp -> ping; > >>>>>>>> tcp e udp -> Net::Ping > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez > >>>>>>>> > wrote: > >>>>>>>> > >>>>>>>> > >>>>>>>>> Sim sim, entendi sua preocupação. > >>>>>>>>> Mas em vez de: > >>>>>>>>> > >>>>>>>>> for (1..3) { > >>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; > >>>>>>>>> > >>>>>>>>> não seria melhor já mandar pingar as 3 vezes no comando > ou apenas > >>>>>>>>> 1? > >>>>>>>>> Você > >>>>>>>>> está gerando 3 processos externos sem necessidade real. > >>>>>>>>> > >>>>>>>>> outra... o comando ping já não é icmp? > >>>>>>>>> my $p = Net::Ping->new('icmp')??? > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> Em 11/07/2010 17:04, João André Simioni escreveu: > >>>>>>>>> > >>>>>>>>> > >>>>>>>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo > e ICMP > >>>>>>>>>> Echo. > >>>>>>>>>> Alguns clientes tem filtros e assim eu evito falsos > positivos. > >>>>>>>>>> > >>>>>>>>>> Net::Ping mesmo com root tem resultados incoerentes > quando uso > >>>>>>>>>> ICMP e > >>>>>>>>>> Threads. > >>>>>>>>>> > >>>>>>>>>> []'s > >>>>>>>>>> > >>>>>>>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez > >>>>>>>>>> > wrote: > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>>> Endosso a solução do Lorn. Use o POE. > >>>>>>>>>>> > >>>>>>>>>>> E cara... pra que isso?? > >>>>>>>>>>> > >>>>>>>>>>> sub checkIp { > >>>>>>>>>>> my $ip = shift; > >>>>>>>>>>> my $pingOk = 0; > >>>>>>>>>>> > >>>>>>>>>>> eval { > >>>>>>>>>>> for (1..3) { > >>>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; > >>>>>>>>>>> > >>>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { > >>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>> return 1; > >>>>>>>>>>> } > >>>>>>>>>>> > >>>>>>>>>>> if ($pingOk == 0) { > >>>>>>>>>>> my $p = Net::Ping->new('icmp'); > >>>>>>>>>>> $p->service_check(1); > >>>>>>>>>>> if ($p->ping($ip, 1)) { > >>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>> return 1; > >>>>>>>>>>> } > >>>>>>>>>>> } > >>>>>>>>>>> > >>>>>>>>>>> if ($pingOk == 0) { > >>>>>>>>>>> my $p = Net::Ping->new('udp'); > >>>>>>>>>>> $p->service_check(1); > >>>>>>>>>>> if ($p->ping($ip, 1)) { > >>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>> return 1; > >>>>>>>>>>> } > >>>>>>>>>>> } > >>>>>>>>>>> > >>>>>>>>>>> sleep 3; > >>>>>>>>>>> } > >>>>>>>>>>> }; > >>>>>>>>>>> > >>>>>>>>>>> Para pingar com ping externo, depois com o Net::Ping > via icmp e > >>>>>>>>>>> depois > >>>>>>>>>>> com > >>>>>>>>>>> net::Ping udp? Ah... se não me engano, Net::Ping > precisa de > >>>>>>>>>>> permissão > >>>>>>>>>>> root > >>>>>>>>>>> para retornar um icmp de forma correta... > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>>> Caros, > >>>>>>>>>>>> > >>>>>>>>>>>> tenho um script para testar cerca de 4700 > equipamentos, usando > >>>>>>>>>>>> ping. > >>>>>>>>>>>> Queria usar cerca 250 threads para isso, então o que > eu fiz foi > >>>>>>>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri > uma thread > >>>>>>>>>>>> para > >>>>>>>>>>>> cada. > >>>>>>>>>>>> > >>>>>>>>>>>> Não há nenhum problema com o código, o que acontece é > que o > >>>>>>>>>>>> tempo > >>>>>>>>>>>> de > >>>>>>>>>>>> abertura das threads é muito alto. E quanto mais > threads eu > >>>>>>>>>>>> abro, > >>>>>>>>>>>> maior o tempo para abertura das próximas. As > primeiras abrem em > >>>>>>>>>>>> 30ms, > >>>>>>>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 > segundo. > >>>>>>>>>>>> > >>>>>>>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou > alguma > >>>>>>>>>>>> outra > >>>>>>>>>>>> solução? > >>>>>>>>>>>> > >>>>>>>>>>>> Segue o output do script como exemplo: > >>>>>>>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 > grupos, com 19 > >>>>>>>>>>>> elementos > >>>>>>>>>>>> cada > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 > >>>>>>>>>>>> Created thread 1 (1) - took 0.030138 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 > >>>>>>>>>>>> Created thread 2 (2) - took 0.042668 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 > 2010.134968 > >>>>>>>>>>>> Created thread 3 (3) - took 0.064245 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 > 2010.199430 > >>>>>>>>>>>> Created thread 4 (4) - took 0.082642 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 > 2010.282278 > >>>>>>>>>>>> Created thread 5 (5) - took 0.128257 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 > 2010.410769 > >>>>>>>>>>>> Created thread 6 (6) - took 0.136458 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 > 2010.547383 > >>>>>>>>>>>> Created thread 7 (7) - took 0.208085 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 > 2010.755594 > >>>>>>>>>>>> Created thread 8 (8) - took 0.173014 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 > 2010.928756 > >>>>>>>>>>>> Created thread 9 (9) - took 0.132713 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 > >>>>>>>>>>>> Created thread 10 (10) - took 0.127795 seconds to create > >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 > 2010.189536 > >>>>>>>>>>>> Created thread 11 (11) - took 0.301836 seconds to create > >>>>>>>>>>>> > >>>>>>>>>>>> Obrigado > >>>>>>>>>>>> > >>>>>>>>>>>> João André Simioni > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> #!/usr/bin/perl > >>>>>>>>>>>> > >>>>>>>>>>>> use strict; > >>>>>>>>>>>> use DBI; > >>>>>>>>>>>> use Net::Ping; > >>>>>>>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; > >>>>>>>>>>>> use threads ('yield', 'stack_size' => > 32*4096, 'exit' > >>>>>>>>>>>> => > >>>>>>>>>>>> 'threads_only', 'stringify'); > >>>>>>>>>>>> > >>>>>>>>>>>> my $host = '192.168.160.179'; > >>>>>>>>>>>> my $sid = 'HOMOLOG'; > >>>>>>>>>>>> my $user = 'mac_user'; > >>>>>>>>>>>> my $pass = 'mac_user'; > >>>>>>>>>>>> > >>>>>>>>>>>> my $dbh = > DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, > >>>>>>>>>>>> $pass, > >>>>>>>>>>>> { AutoCommit => 1 }); > >>>>>>>>>>>> > >>>>>>>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, > CPE_DESC, > >>>>>>>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE > CPE_PING = ? AND > >>>>>>>>>>>> CPE_ATIVO = ?'); > >>>>>>>>>>>> $sth->execute('1', 'A'); > >>>>>>>>>>>> > >>>>>>>>>>>> my @cpes; > >>>>>>>>>>>> > >>>>>>>>>>>> while (my (@row) = $sth->fetchrow_array) { > >>>>>>>>>>>> push @cpes, [ @row ]; > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> $dbh->disconnect(); > >>>>>>>>>>>> > >>>>>>>>>>>> my $maxThreads = 250; > >>>>>>>>>>>> my $total = @cpes; > >>>>>>>>>>>> > >>>>>>>>>>>> my $cpePerThread = int($total / $maxThreads); > >>>>>>>>>>>> > >>>>>>>>>>>> my @toMonitor; > >>>>>>>>>>>> my $i = 0; > >>>>>>>>>>>> my $c = 0; > >>>>>>>>>>>> > >>>>>>>>>>>> foreach my $cpe (@cpes) { > >>>>>>>>>>>> push @{$toMonitor[$i]}, $cpe; > >>>>>>>>>>>> $c++; > >>>>>>>>>>>> > >>>>>>>>>>>> if ($c> $cpePerThread) { > >>>>>>>>>>>> $i++; > >>>>>>>>>>>> $c = 0; > >>>>>>>>>>>> } > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> print "Para $total cpes, e $maxThreads threads, tenho > no final > >>>>>>>>>>>> $i > >>>>>>>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos > cada\n"; > >>>>>>>>>>>> > >>>>>>>>>>>> sub processResult { > >>>>>>>>>>>> my $r = shift; > >>>>>>>>>>>> if (ref $r ne 'ARRAY') { > >>>>>>>>>>>> print STDERR "Erro na thread\n"; > >>>>>>>>>>>> return 0; > >>>>>>>>>>>> } > >>>>>>>>>>>> my ($result, $host, $ifs) = @$r; > >>>>>>>>>>>> > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> sub testeClient { > >>>>>>>>>>>> my $threadNum = shift; > >>>>>>>>>>>> my $cpeGroup = shift; > >>>>>>>>>>>> foreach my $cpe (@{$cpeGroup}) { > >>>>>>>>>>>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, > $cpeNode, > >>>>>>>>>>>> $cpeIf) > >>>>>>>>>>>> = > >>>>>>>>>>>> @$cpe; > >>>>>>>>>>>> my $pingOk =&checkIp($cpeIp); > >>>>>>>>>>>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; > >>>>>>>>>>>> # print join(", ", $threadNum, $cpeId, $clientId, > >>>>>>>>>>>> $cpeDesc, > >>>>>>>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; > >>>>>>>>>>>> } > >>>>>>>>>>>> # print "Finishing thread $threadNum\n"; > >>>>>>>>>>>> return([1, 0]); > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> my $threadCount = 1; > >>>>>>>>>>>> foreach my $cpeGroup (@toMonitor) { > >>>>>>>>>>>> print "Trying to create thread"; > >>>>>>>>>>>> my $t0 = [gettimeofday]; > >>>>>>>>>>>> > >>>>>>>>>>>> print " in ", scalar localtime $t0->[0], ".", > $t0->[1], > >>>>>>>>>>>> "\n"; > >>>>>>>>>>>> > >>>>>>>>>>>> my $thr = threads->create({scalar => '1'}, > >>>>>>>>>>>> 'testeClient', > >>>>>>>>>>>> $threadCount, $cpeGroup); > >>>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); > >>>>>>>>>>>> print "Created thread $thr ($threadCount) - took > $elapsed > >>>>>>>>>>>> seconds > >>>>>>>>>>>> to create\n"; > >>>>>>>>>>>> $threadCount++; > >>>>>>>>>>>> > >>>>>>>>>>>> while (threads->list()>= $maxThreads) { > >>>>>>>>>>>> my @joinable = threads->list(threads::joinable); > >>>>>>>>>>>> for (@joinable) { > >>>>>>>>>>>> my $r = $_->join(); > >>>>>>>>>>>> &processResult($r); > >>>>>>>>>>>> } > >>>>>>>>>>>> usleep(10000); > >>>>>>>>>>>> } > >>>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> while (threads->list()) { > >>>>>>>>>>>> my @joinable = threads->list(threads::joinable); > >>>>>>>>>>>> for (@joinable) { > >>>>>>>>>>>> my $r = $_->join(); > >>>>>>>>>>>> &processResult($r); > >>>>>>>>>>>> } > >>>>>>>>>>>> usleep(10000); > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> sub checkIp { > >>>>>>>>>>>> my $ip = shift; > >>>>>>>>>>>> my $pingOk = 0; > >>>>>>>>>>>> > >>>>>>>>>>>> eval { > >>>>>>>>>>>> for (1..3) { > >>>>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; > >>>>>>>>>>>> > >>>>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { > >>>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>>> return 1; > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> if ($pingOk == 0) { > >>>>>>>>>>>> my $p = Net::Ping->new('icmp'); > >>>>>>>>>>>> $p->service_check(1); > >>>>>>>>>>>> if ($p->ping($ip, 1)) { > >>>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>>> return 1; > >>>>>>>>>>>> } > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> if ($pingOk == 0) { > >>>>>>>>>>>> my $p = Net::Ping->new('udp'); > >>>>>>>>>>>> $p->service_check(1); > >>>>>>>>>>>> if ($p->ping($ip, 1)) { > >>>>>>>>>>>> $pingOk = 1; > >>>>>>>>>>>> return 1; > >>>>>>>>>>>> } > >>>>>>>>>>>> } > >>>>>>>>>>>> > >>>>>>>>>>>> sleep 3; > >>>>>>>>>>>> } > >>>>>>>>>>>> }; > >>>>>>>>>>>> > >>>>>>>>>>>> return $pingOk; > >>>>>>>>>>>> } > >>>>>>>>>>>> _______________________________________________ > >>>>>>>>>>>> Rio-pm mailing list > >>>>>>>>>>>> Rio-pm em pm.org > >>>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>> -- > >>>>>>>>>>> What is the sound of Perl? Is it not the sound of a > wall that > >>>>>>>>>>> people > >>>>>>>>>>> have > >>>>>>>>>>> stopped banging their heads against? > >>>>>>>>>>> ?Larry Wall > >>>>>>>>>>> > >>>>>>>>>>> Thiago Glauco Sanchez > >>>>>>>>>>> Intrutor Perl e Redes > >>>>>>>>>>> www.ticursos.net > >>>>>>>>>>> > >>>>>>>>>>> _______________________________________________ > >>>>>>>>>>> Rio-pm mailing list > >>>>>>>>>>> Rio-pm em pm.org > >>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>> _______________________________________________ > >>>>>>>>>> Rio-pm mailing list > >>>>>>>>>> Rio-pm em pm.org > >>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>> -- > >>>>>>>>> What is the sound of Perl? Is it not the sound of a wall > that > >>>>>>>>> people > >>>>>>>>> have > >>>>>>>>> stopped banging their heads against? > >>>>>>>>> ?Larry Wall > >>>>>>>>> > >>>>>>>>> Thiago Glauco Sanchez > >>>>>>>>> Intrutor Perl e Redes > >>>>>>>>> www.ticursos.net > >>>>>>>>> > >>>>>>>>> _______________________________________________ > >>>>>>>>> Rio-pm mailing list > >>>>>>>>> Rio-pm em pm.org > >>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>>>>>> _______________________________________________ > >>>>>>>> Rio-pm mailing list > >>>>>>>> Rio-pm em pm.org > >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>> _______________________________________________ > >>>>>>> Rio-pm mailing list > >>>>>>> Rio-pm em pm.org > >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>>> > >>>>>>> > >>>>>>> > >>>>>> -- > >>>>>> What is the sound of Perl? Is it not the sound of a wall > that people > >>>>>> have > >>>>>> stopped banging their heads against? > >>>>>> ?Larry Wall > >>>>>> > >>>>>> Thiago Glauco Sanchez > >>>>>> Intrutor Perl e Redes > >>>>>> www.ticursos.net > >>>>>> > >>>>>> _______________________________________________ > >>>>>> Rio-pm mailing list > >>>>>> Rio-pm em pm.org > >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>>> > >>>>>> > >>>>> _______________________________________________ > >>>>> Rio-pm mailing list > >>>>> Rio-pm em pm.org > >>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>> > >>>>> > >>>> > >>>> -- > >>>> What is the sound of Perl? Is it not the sound of a wall that > people > >>>> have > >>>> stopped banging their heads against? > >>>> ?Larry Wall > >>>> > >>>> Thiago Glauco Sanchez > >>>> Intrutor Perl e Redes > >>>> www.ticursos.net > >>>> > >>>> _______________________________________________ > >>>> Rio-pm mailing list > >>>> Rio-pm em pm.org > >>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>> > >>> _______________________________________________ > >>> Rio-pm mailing list > >>> Rio-pm em pm.org > >>> http://mail.pm.org/mailman/listinfo/rio-pm > >>> > >> > >> > > > > > > -- > > What is the sound of Perl? Is it not the sound of a wall that > people have > > stopped banging their heads against? > > ?Larry Wall > > > > Thiago Glauco Sanchez > > Intrutor Perl e Redes > > www.ticursos.net > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > -- > Bruno C. Buss > http://brunobuss.wordpress.com/ > http://www.dcc.ufrj.br/~brunobuss/ > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From jasimioni em gmail.com Mon Jul 12 18:43:25 2010 From: jasimioni em gmail.com (=?ISO-8859-1?Q?Jo=E3o_Andr=E9_Simioni?=) Date: Mon, 12 Jul 2010 22:43:25 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: <4C3B8A2E.7060409@ticursos.net> References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> <4C3B6476.7080309@ticursos.net> <4C3B6B48.8030304@ticursos.net> <4C3B8A2E.7060409@ticursos.net> Message-ID: Eu não tenho preguiça de ler, mas queria fazer um teste rápido só para ver o desempenho. Quando aumento para 400 o paralelismo, ele continua não utilizando os demais processadores. Vou acabar forkeando o processo. Mas um bug apareceu. A maioria dos testes está dando timeout apesar do hosts responderem. Mas vou antes tentar corrigir o problema com o Net::Ping. Obrigado Em 12/07/10, Thiago Glauco Sanchez escreveu: > Se bem que... o cara já tem o caminho das pedras... tava bom para ele > começar a ler o código e os manuais... > Hoje não posso ajudar mais pq tenho aulas de Perl para ministrar... > > Leia os Manuais e poste mais dúvidas... se postar levianamente Trolls > podem aparecer. > > Em 12/07/2010 17:59, Bruno Buss escreveu: >> Talvez você queira diminuir o timeout padrão: >> sub PING_TIMEOUT () { 5 } >> (No seu script era 1 segundo se não me engano) >> >> No POE::Component::Client::Ping->spawn, talvez você queira passar a >> opção Parallelism, ex: >> POE::Component::Client::Ping->spawn( >> Alias => 'pinger', # The component's name will be "pinger". >> Timeout => PING_TIMEOUT, # The default ping timeout. >> Parallelism => 128 >> ); > > No seu código o paralelismo era 250... > >> >> 2010/7/12 João André Simioni > > >> >> Thiago, >> >> dando uma bem de vagabundo, não li nada do POE, só modifiquei o >> código abaixo para pingar todos os meus Hosts. >> >> Mas ele está fazendo poucos processos paralelos. O tempo total de >> testes está 11 minutos com o POE, e o load nem faz cócegas. Sabem >> fácil como mexer nisso? >> >> Obrigado >> >> 2010/7/12 Thiago Glauco Sanchez > >: >> > Puxa... eu sou muito "toupeira"... já tem código de exemplo para >> isso feito >> > e muito mais pratico e completo que o meu...: >> > >> > http://poe.perl.org/?POE_Cookbook/Pinging_Multiple_Hosts >> > >> > Em 12/07/2010 15:52, Thiago Glauco Sanchez escreveu: >> >> >> >> Um pequeno exemplo que eu criei apenas para ilustrar... o >> pessoal que >> >> desejar incrementar, por favor, be my guest. >> >> >> >> use 5.12.0; >> >> use POE; >> >> use Net::Ping; >> >> POE::Session->create( >> >> inline_states => { >> >> _start => sub { >> >> my ($kernel) = $_[KERNEL]; >> >> print "Setting up a session\n"; >> >> $kernel->yield("ping"); >> >> }, >> >> >> >> ping => sub{my ($kernel) = $_[KERNEL]; >> >> my @ping = `ping -n 1 www.ticursos.net >> `; >> >> map{say "ping externo ok" if $_ =~ /Perdidos = 0/ } >> @ping; >> >> $kernel->delay_set("net_ping" => 3); >> >> >> >> }, >> >> >> >> net_ping => sub{ my ($kernel) = $_[KERNEL]; >> >> my $p = Net::Ping->new(); >> >> $p->port_number(80); >> >> my ($ret, $duration, $ip) = >> $p->ping('ticursos.net '); >> >> say "net::ping ok" if $ret; >> >> $p->close(); >> >> $kernel->delay_set("ping" => 3) >> >> }, >> >> }, >> >> ); >> >> >> >> say "Iniciando o Kernel..."; >> >> $poe_kernel->run( ); >> >> exit(0); >> >> >> >> sub start { >> >> my ($kernel) = $_[KERNEL]; >> >> say "Iniciando os testes com POE"; >> >> $kernel->yield("ping"); >> >> } >> >> >> >> >> >> Em 12/07/2010 15:38, João André Simioni escreveu: >> >>> >> >>> O pessoal comentou - eu vou dar uma olhada nele com atenção. >> >>> >> >>> Obrigado pela dica. >> >>> >> >>> 2010/7/12 Thiago Glauco Sanchez> >: >> >>>> >> >>>> O Perl tem um framework para aplicações em rede e Multitarefa >> chamada >> >>>> POE >> >>>> que >> >>>> "Provide a cooperative scheduling and multitasking >> environment rivalling >> >>>> threads and IPC" >> >>>> Não seria o caso de estudarmos a possibilidade de usar esse >> framework no >> >>>> seu >> >>>> sistema??? >> >>>> >> >>>> Em 11/07/2010 23:57, João André Simioni escreveu: >> >>>>> >> >>>>> Foi um typo - erro de digitação - o Net::Ping testa TCP e >> UDP. O ping >> >>>>> externo ICMP. >> >>>>> >> >>>>> Mas assim, eu preciso resolver o problema com esse teste em >> Perl - >> >>>>> como eu disse, essa parte do código é só um pedaço de um sistema >> >>>>> maior. SNMP já é usado para várias outras coisas, mas >> dependem de >> >>>>> access lists em routers e eu não tenho como liberar. >> >>>>> >> >>>>> []'s >> >>>>> >> >>>>> 2010/7/11 Thiago Glauco Sanchez> >: >> >>>>> >> >>>>>> O que eu quero dizer: você testou com o ping externo que é >> um teste >> >>>>>> icmp... >> >>>>>> depois fez outro teste icmp com o Net::Ping... >> >>>>>> >> >>>>>> Não seria mais interessante testar de outra forma? >> >>>>>> >> >>>>>> $p = Net::Ping->new("tcp", 2); >> >>>>>> $p->port_number(getservbyname("http", "tcp")); >> >>>>>> >> >>>>>> Mais umas coisas: Suas máquinas/equipamentos em teste estão via >> >>>>>> internet >> >>>>>> ou >> >>>>>> rede local? >> >>>>>> Já pensou em usar SNMP? Já tive um problema parecido e iria >> utilizar >> >>>>>> um >> >>>>>> processo para cada equipamento por desempenho e acabai >> optando por >> >>>>>> utilizar >> >>>>>> o Net:SNMP >> >>>>>> que permite utilizar uma função de callback em vez de >> utilizar um >> >>>>>> processo >> >>>>>> para cada equipamento. Eu mando uma requisição para todos os >> >>>>>> equipamentos >> >>>>>> e >> >>>>>> conforme eles respondem >> >>>>>> a função de call-back trata a requisição. >> >>>>>> >> >>>>>> Porém, não conheço o seu ambiente. Apenas acho que criar >> 4000 threads >> >>>>>> não >> >>>>>> seja a melhor solução. >> >>>>>> >> >>>>>> >> >>>>>> Em 11/07/2010 23:18, João André Simioni escreveu: >> >>>>>> >> >>>>>>> É typo - já está certo no código. ICMP vai via comando >> externo, UDP e >> >>>>>>> TCP via Net::Ping. >> >>>>>>> >> >>>>>>> Com relação aos testes, é normal um momento de sobrecarga >> causar a >> >>>>>>> não >> >>>>>>> resposta de testes - essas sobrecargas não devem duram >> mais que 5 >> >>>>>>> segundos. Por isso o sleep - assim eu faço o mesmo teste >> 3x, com >> >>>>>>> intervalos de 3 segundos. >> >>>>>>> >> >>>>>>> []'s >> >>>>>>> >> >>>>>>> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de >> Blebe> >> >>>>>>> wrote: >> >>>>>>> >> >>>>>>> >> >>>>>>>> Não seria um typo? >> >>>>>>>> >> >>>>>>>> icmp -> ping; >> >>>>>>>> tcp e udp -> Net::Ping >> >>>>>>>> >> >>>>>>>> >> >>>>>>>> >> >>>>>>>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez >> >>>>>>>> > > wrote: >> >>>>>>>> >> >>>>>>>> >> >>>>>>>>> Sim sim, entendi sua preocupação. >> >>>>>>>>> Mas em vez de: >> >>>>>>>>> >> >>>>>>>>> for (1..3) { >> >>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >> >>>>>>>>> >> >>>>>>>>> não seria melhor já mandar pingar as 3 vezes no comando >> ou apenas >> >>>>>>>>> 1? >> >>>>>>>>> Você >> >>>>>>>>> está gerando 3 processos externos sem necessidade real. >> >>>>>>>>> >> >>>>>>>>> outra... o comando ping já não é icmp? >> >>>>>>>>> my $p = Net::Ping->new('icmp')??? >> >>>>>>>>> >> >>>>>>>>> >> >>>>>>>>> Em 11/07/2010 17:04, João André Simioni escreveu: >> >>>>>>>>> >> >>>>>>>>> >> >>>>>>>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo >> e ICMP >> >>>>>>>>>> Echo. >> >>>>>>>>>> Alguns clientes tem filtros e assim eu evito falsos >> positivos. >> >>>>>>>>>> >> >>>>>>>>>> Net::Ping mesmo com root tem resultados incoerentes >> quando uso >> >>>>>>>>>> ICMP e >> >>>>>>>>>> Threads. >> >>>>>>>>>> >> >>>>>>>>>> []'s >> >>>>>>>>>> >> >>>>>>>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >> >>>>>>>>>> > > wrote: >> >>>>>>>>>> >> >>>>>>>>>> >> >>>>>>>>>> >> >>>>>>>>>>> Endosso a solução do Lorn. Use o POE. >> >>>>>>>>>>> >> >>>>>>>>>>> E cara... pra que isso?? >> >>>>>>>>>>> >> >>>>>>>>>>> sub checkIp { >> >>>>>>>>>>> my $ip = shift; >> >>>>>>>>>>> my $pingOk = 0; >> >>>>>>>>>>> >> >>>>>>>>>>> eval { >> >>>>>>>>>>> for (1..3) { >> >>>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >> >>>>>>>>>>> >> >>>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { >> >>>>>>>>>>> $pingOk = 1; >> >>>>>>>>>>> return 1; >> >>>>>>>>>>> } >> >>>>>>>>>>> >> >>>>>>>>>>> if ($pingOk == 0) { >> >>>>>>>>>>> my $p = Net::Ping->new('icmp'); >> >>>>>>>>>>> $p->service_check(1); >> >>>>>>>>>>> if ($p->ping($ip, 1)) { >> >>>>>>>>>>> $pingOk = 1; >> >>>>>>>>>>> return 1; >> >>>>>>>>>>> } >> >>>>>>>>>>> } >> >>>>>>>>>>> >> >>>>>>>>>>> if ($pingOk == 0) { >> >>>>>>>>>>> my $p = Net::Ping->new('udp'); >> >>>>>>>>>>> $p->service_check(1); >> >>>>>>>>>>> if ($p->ping($ip, 1)) { >> >>>>>>>>>>> $pingOk = 1; >> >>>>>>>>>>> return 1; >> >>>>>>>>>>> } >> >>>>>>>>>>> } >> >>>>>>>>>>> >> >>>>>>>>>>> sleep 3; >> >>>>>>>>>>> } >> >>>>>>>>>>> }; >> >>>>>>>>>>> >> >>>>>>>>>>> Para pingar com ping externo, depois com o Net::Ping >> via icmp e >> >>>>>>>>>>> depois >> >>>>>>>>>>> com >> >>>>>>>>>>> net::Ping udp? Ah... se não me engano, Net::Ping >> precisa de >> >>>>>>>>>>> permissão >> >>>>>>>>>>> root >> >>>>>>>>>>> para retornar um icmp de forma correta... >> >>>>>>>>>>> >> >>>>>>>>>>> >> >>>>>>>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: >> >>>>>>>>>>> >> >>>>>>>>>>> >> >>>>>>>>>>> >> >>>>>>>>>>>> Caros, >> >>>>>>>>>>>> >> >>>>>>>>>>>> tenho um script para testar cerca de 4700 >> equipamentos, usando >> >>>>>>>>>>>> ping. >> >>>>>>>>>>>> Queria usar cerca 250 threads para isso, então o que >> eu fiz foi >> >>>>>>>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri >> uma thread >> >>>>>>>>>>>> para >> >>>>>>>>>>>> cada. >> >>>>>>>>>>>> >> >>>>>>>>>>>> Não há nenhum problema com o código, o que acontece é >> que o >> >>>>>>>>>>>> tempo >> >>>>>>>>>>>> de >> >>>>>>>>>>>> abertura das threads é muito alto. E quanto mais >> threads eu >> >>>>>>>>>>>> abro, >> >>>>>>>>>>>> maior o tempo para abertura das próximas. As >> primeiras abrem em >> >>>>>>>>>>>> 30ms, >> >>>>>>>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 >> segundo. >> >>>>>>>>>>>> >> >>>>>>>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou >> alguma >> >>>>>>>>>>>> outra >> >>>>>>>>>>>> solução? >> >>>>>>>>>>>> >> >>>>>>>>>>>> Segue o output do script como exemplo: >> >>>>>>>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 >> grupos, com 19 >> >>>>>>>>>>>> elementos >> >>>>>>>>>>>> cada >> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 >> >>>>>>>>>>>> Created thread 1 (1) - took 0.030138 seconds to create >> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 >> >>>>>>>>>>>> Created thread 2 (2) - took 0.042668 seconds to create >> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >> 2010.134968 >> >>>>>>>>>>>> Created thread 3 (3) - took 0.064245 seconds to create >> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >> 2010.199430 >> >>>>>>>>>>>> Created thread 4 (4) - took 0.082642 seconds to create >> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >> 2010.282278 >> >>>>>>>>>>>> Created thread 5 (5) - took 0.128257 seconds to create >> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >> 2010.410769 >> >>>>>>>>>>>> Created thread 6 (6) - took 0.136458 seconds to create >> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >> 2010.547383 >> >>>>>>>>>>>> Created thread 7 (7) - took 0.208085 seconds to create >> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >> 2010.755594 >> >>>>>>>>>>>> Created thread 8 (8) - took 0.173014 seconds to create >> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >> 2010.928756 >> >>>>>>>>>>>> Created thread 9 (9) - took 0.132713 seconds to create >> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 >> >>>>>>>>>>>> Created thread 10 (10) - took 0.127795 seconds to create >> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 >> 2010.189536 >> >>>>>>>>>>>> Created thread 11 (11) - took 0.301836 seconds to create >> >>>>>>>>>>>> >> >>>>>>>>>>>> Obrigado >> >>>>>>>>>>>> >> >>>>>>>>>>>> João André Simioni >> >>>>>>>>>>>> >> >>>>>>>>>>>> >> >>>>>>>>>>>> >> >>>>>>>>>>>> #!/usr/bin/perl >> >>>>>>>>>>>> >> >>>>>>>>>>>> use strict; >> >>>>>>>>>>>> use DBI; >> >>>>>>>>>>>> use Net::Ping; >> >>>>>>>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >> >>>>>>>>>>>> use threads ('yield', 'stack_size' => >> 32*4096, 'exit' >> >>>>>>>>>>>> => >> >>>>>>>>>>>> 'threads_only', 'stringify'); >> >>>>>>>>>>>> >> >>>>>>>>>>>> my $host = '192.168.160.179'; >> >>>>>>>>>>>> my $sid = 'HOMOLOG'; >> >>>>>>>>>>>> my $user = 'mac_user'; >> >>>>>>>>>>>> my $pass = 'mac_user'; >> >>>>>>>>>>>> >> >>>>>>>>>>>> my $dbh = >> DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, >> >>>>>>>>>>>> $pass, >> >>>>>>>>>>>> { AutoCommit => 1 }); >> >>>>>>>>>>>> >> >>>>>>>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, >> CPE_DESC, >> >>>>>>>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE >> CPE_PING = ? AND >> >>>>>>>>>>>> CPE_ATIVO = ?'); >> >>>>>>>>>>>> $sth->execute('1', 'A'); >> >>>>>>>>>>>> >> >>>>>>>>>>>> my @cpes; >> >>>>>>>>>>>> >> >>>>>>>>>>>> while (my (@row) = $sth->fetchrow_array) { >> >>>>>>>>>>>> push @cpes, [ @row ]; >> >>>>>>>>>>>> } >> >>>>>>>>>>>> >> >>>>>>>>>>>> $dbh->disconnect(); >> >>>>>>>>>>>> >> >>>>>>>>>>>> my $maxThreads = 250; >> >>>>>>>>>>>> my $total = @cpes; >> >>>>>>>>>>>> >> >>>>>>>>>>>> my $cpePerThread = int($total / $maxThreads); >> >>>>>>>>>>>> >> >>>>>>>>>>>> my @toMonitor; >> >>>>>>>>>>>> my $i = 0; >> >>>>>>>>>>>> my $c = 0; >> >>>>>>>>>>>> >> >>>>>>>>>>>> foreach my $cpe (@cpes) { >> >>>>>>>>>>>> push @{$toMonitor[$i]}, $cpe; >> >>>>>>>>>>>> $c++; >> >>>>>>>>>>>> >> >>>>>>>>>>>> if ($c> $cpePerThread) { >> >>>>>>>>>>>> $i++; >> >>>>>>>>>>>> $c = 0; >> >>>>>>>>>>>> } >> >>>>>>>>>>>> } >> >>>>>>>>>>>> >> >>>>>>>>>>>> print "Para $total cpes, e $maxThreads threads, tenho >> no final >> >>>>>>>>>>>> $i >> >>>>>>>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos >> cada\n"; >> >>>>>>>>>>>> >> >>>>>>>>>>>> sub processResult { >> >>>>>>>>>>>> my $r = shift; >> >>>>>>>>>>>> if (ref $r ne 'ARRAY') { >> >>>>>>>>>>>> print STDERR "Erro na thread\n"; >> >>>>>>>>>>>> return 0; >> >>>>>>>>>>>> } >> >>>>>>>>>>>> my ($result, $host, $ifs) = @$r; >> >>>>>>>>>>>> >> >>>>>>>>>>>> } >> >>>>>>>>>>>> >> >>>>>>>>>>>> sub testeClient { >> >>>>>>>>>>>> my $threadNum = shift; >> >>>>>>>>>>>> my $cpeGroup = shift; >> >>>>>>>>>>>> foreach my $cpe (@{$cpeGroup}) { >> >>>>>>>>>>>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, >> $cpeNode, >> >>>>>>>>>>>> $cpeIf) >> >>>>>>>>>>>> = >> >>>>>>>>>>>> @$cpe; >> >>>>>>>>>>>> my $pingOk =&checkIp($cpeIp); >> >>>>>>>>>>>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >> >>>>>>>>>>>> # print join(", ", $threadNum, $cpeId, $clientId, >> >>>>>>>>>>>> $cpeDesc, >> >>>>>>>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >> >>>>>>>>>>>> } >> >>>>>>>>>>>> # print "Finishing thread $threadNum\n"; >> >>>>>>>>>>>> return([1, 0]); >> >>>>>>>>>>>> } >> >>>>>>>>>>>> >> >>>>>>>>>>>> my $threadCount = 1; >> >>>>>>>>>>>> foreach my $cpeGroup (@toMonitor) { >> >>>>>>>>>>>> print "Trying to create thread"; >> >>>>>>>>>>>> my $t0 = [gettimeofday]; >> >>>>>>>>>>>> >> >>>>>>>>>>>> print " in ", scalar localtime $t0->[0], ".", >> $t0->[1], >> >>>>>>>>>>>> "\n"; >> >>>>>>>>>>>> >> >>>>>>>>>>>> my $thr = threads->create({scalar => '1'}, >> >>>>>>>>>>>> 'testeClient', >> >>>>>>>>>>>> $threadCount, $cpeGroup); >> >>>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >> >>>>>>>>>>>> print "Created thread $thr ($threadCount) - took >> $elapsed >> >>>>>>>>>>>> seconds >> >>>>>>>>>>>> to create\n"; >> >>>>>>>>>>>> $threadCount++; >> >>>>>>>>>>>> >> >>>>>>>>>>>> while (threads->list()>= $maxThreads) { >> >>>>>>>>>>>> my @joinable = threads->list(threads::joinable); >> >>>>>>>>>>>> for (@joinable) { >> >>>>>>>>>>>> my $r = $_->join(); >> >>>>>>>>>>>> &processResult($r); >> >>>>>>>>>>>> } >> >>>>>>>>>>>> usleep(10000); >> >>>>>>>>>>>> } >> >>>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >> >>>>>>>>>>>> } >> >>>>>>>>>>>> >> >>>>>>>>>>>> while (threads->list()) { >> >>>>>>>>>>>> my @joinable = threads->list(threads::joinable); >> >>>>>>>>>>>> for (@joinable) { >> >>>>>>>>>>>> my $r = $_->join(); >> >>>>>>>>>>>> &processResult($r); >> >>>>>>>>>>>> } >> >>>>>>>>>>>> usleep(10000); >> >>>>>>>>>>>> } >> >>>>>>>>>>>> >> >>>>>>>>>>>> sub checkIp { >> >>>>>>>>>>>> my $ip = shift; >> >>>>>>>>>>>> my $pingOk = 0; >> >>>>>>>>>>>> >> >>>>>>>>>>>> eval { >> >>>>>>>>>>>> for (1..3) { >> >>>>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >> >>>>>>>>>>>> >> >>>>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { >> >>>>>>>>>>>> $pingOk = 1; >> >>>>>>>>>>>> return 1; >> >>>>>>>>>>>> } >> >>>>>>>>>>>> >> >>>>>>>>>>>> if ($pingOk == 0) { >> >>>>>>>>>>>> my $p = Net::Ping->new('icmp'); >> >>>>>>>>>>>> $p->service_check(1); >> >>>>>>>>>>>> if ($p->ping($ip, 1)) { >> >>>>>>>>>>>> $pingOk = 1; >> >>>>>>>>>>>> return 1; >> >>>>>>>>>>>> } >> >>>>>>>>>>>> } >> >>>>>>>>>>>> >> >>>>>>>>>>>> if ($pingOk == 0) { >> >>>>>>>>>>>> my $p = Net::Ping->new('udp'); >> >>>>>>>>>>>> $p->service_check(1); >> >>>>>>>>>>>> if ($p->ping($ip, 1)) { >> >>>>>>>>>>>> $pingOk = 1; >> >>>>>>>>>>>> return 1; >> >>>>>>>>>>>> } >> >>>>>>>>>>>> } >> >>>>>>>>>>>> >> >>>>>>>>>>>> sleep 3; >> >>>>>>>>>>>> } >> >>>>>>>>>>>> }; >> >>>>>>>>>>>> >> >>>>>>>>>>>> return $pingOk; >> >>>>>>>>>>>> } >> >>>>>>>>>>>> _______________________________________________ >> >>>>>>>>>>>> Rio-pm mailing list >> >>>>>>>>>>>> Rio-pm em pm.org >> >>>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>>>>>>>>>> >> >>>>>>>>>>>> >> >>>>>>>>>>>> >> >>>>>>>>>>>> >> >>>>>>>>>>>> >> >>>>>>>>>>> -- >> >>>>>>>>>>> What is the sound of Perl? Is it not the sound of a >> wall that >> >>>>>>>>>>> people >> >>>>>>>>>>> have >> >>>>>>>>>>> stopped banging their heads against? >> >>>>>>>>>>> ?Larry Wall >> >>>>>>>>>>> >> >>>>>>>>>>> Thiago Glauco Sanchez >> >>>>>>>>>>> Intrutor Perl e Redes >> >>>>>>>>>>> www.ticursos.net >> >>>>>>>>>>> >> >>>>>>>>>>> _______________________________________________ >> >>>>>>>>>>> Rio-pm mailing list >> >>>>>>>>>>> Rio-pm em pm.org >> >>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>>>>>>>>> >> >>>>>>>>>>> >> >>>>>>>>>>> >> >>>>>>>>>>> >> >>>>>>>>>> _______________________________________________ >> >>>>>>>>>> Rio-pm mailing list >> >>>>>>>>>> Rio-pm em pm.org >> >>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>>>>>>>> >> >>>>>>>>>> >> >>>>>>>>>> >> >>>>>>>>>> >> >>>>>>>>> -- >> >>>>>>>>> What is the sound of Perl? Is it not the sound of a wall >> that >> >>>>>>>>> people >> >>>>>>>>> have >> >>>>>>>>> stopped banging their heads against? >> >>>>>>>>> ?Larry Wall >> >>>>>>>>> >> >>>>>>>>> Thiago Glauco Sanchez >> >>>>>>>>> Intrutor Perl e Redes >> >>>>>>>>> www.ticursos.net >> >>>>>>>>> >> >>>>>>>>> _______________________________________________ >> >>>>>>>>> Rio-pm mailing list >> >>>>>>>>> Rio-pm em pm.org >> >>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>>>>>>> >> >>>>>>>>> >> >>>>>>>>> >> >>>>>>>> _______________________________________________ >> >>>>>>>> Rio-pm mailing list >> >>>>>>>> Rio-pm em pm.org >> >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>>>>>> >> >>>>>>>> >> >>>>>>>> >> >>>>>>> _______________________________________________ >> >>>>>>> Rio-pm mailing list >> >>>>>>> Rio-pm em pm.org >> >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>>>>> >> >>>>>>> >> >>>>>>> >> >>>>>> -- >> >>>>>> What is the sound of Perl? Is it not the sound of a wall >> that people >> >>>>>> have >> >>>>>> stopped banging their heads against? >> >>>>>> ?Larry Wall >> >>>>>> >> >>>>>> Thiago Glauco Sanchez >> >>>>>> Intrutor Perl e Redes >> >>>>>> www.ticursos.net >> >>>>>> >> >>>>>> _______________________________________________ >> >>>>>> Rio-pm mailing list >> >>>>>> Rio-pm em pm.org >> >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>>>> >> >>>>>> >> >>>>> _______________________________________________ >> >>>>> Rio-pm mailing list >> >>>>> Rio-pm em pm.org >> >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>>> >> >>>>> >> >>>> >> >>>> -- >> >>>> What is the sound of Perl? Is it not the sound of a wall that >> people >> >>>> have >> >>>> stopped banging their heads against? >> >>>> ?Larry Wall >> >>>> >> >>>> Thiago Glauco Sanchez >> >>>> Intrutor Perl e Redes >> >>>> www.ticursos.net >> >>>> >> >>>> _______________________________________________ >> >>>> Rio-pm mailing list >> >>>> Rio-pm em pm.org >> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>> >> >>> _______________________________________________ >> >>> Rio-pm mailing list >> >>> Rio-pm em pm.org >> >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>> >> >> >> >> >> > >> > >> > -- >> > What is the sound of Perl? Is it not the sound of a wall that >> people have >> > stopped banging their heads against? >> > ?Larry Wall >> > >> > Thiago Glauco Sanchez >> > Intrutor Perl e Redes >> > www.ticursos.net >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> >> >> -- >> Bruno C. Buss >> http://brunobuss.wordpress.com/ >> http://www.dcc.ufrj.br/~brunobuss/ >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > -- > What is the sound of Perl? Is it not the sound of a wall that people have > stopped banging their heads against? > ?Larry Wall > > Thiago Glauco Sanchez > Intrutor Perl e Redes > www.ticursos.net > > -- Enviado do meu celular From thiagoglauco em ticursos.net Tue Jul 13 03:46:21 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Tue, 13 Jul 2010 07:46:21 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> <4C3B6476.7080309@ticursos.net> <4C3B6B48.8030304@ticursos.net> <4C3B8A2E.7060409@ticursos.net> Message-ID: <4C3C43FD.3090001@ticursos.net> Não acho que tenha preguiça, pelo contrário... apenas estude um pouco mais as soluções e o POE, por que você melhor do que ninguém conhece os detalhes da sua estrutura... Tem sistemas que limitam o número de processos paralelos, por questão de segurança. E não de bug. Verifique se o seu OS tem essa limitação. Por isso sugeri dividir a carga rodando duas instâncias do código. Imagine se o OS deixar qualquer programa rodar infinitos processos paralelos até consumir toda a máquina... é um ótimo ataque. Em 12/07/2010 22:43, João André Simioni escreveu: > Eu não tenho preguiça de ler, mas queria fazer um teste rápido só para > ver o desempenho. Quando aumento para 400 o paralelismo, ele continua > não utilizando os demais processadores. Vou acabar forkeando o > processo. > > Mas um bug apareceu. A maioria dos testes está dando timeout apesar do > hosts responderem. > > Mas vou antes tentar corrigir o problema com o Net::Ping. > > Obrigado > > Em 12/07/10, Thiago Glauco Sanchez escreveu: > >> Se bem que... o cara já tem o caminho das pedras... tava bom para ele >> começar a ler o código e os manuais... >> Hoje não posso ajudar mais pq tenho aulas de Perl para ministrar... >> >> Leia os Manuais e poste mais dúvidas... se postar levianamente Trolls >> podem aparecer. >> >> Em 12/07/2010 17:59, Bruno Buss escreveu: >> >>> Talvez você queira diminuir o timeout padrão: >>> sub PING_TIMEOUT () { 5 } >>> (No seu script era 1 segundo se não me engano) >>> >>> No POE::Component::Client::Ping->spawn, talvez você queira passar a >>> opção Parallelism, ex: >>> POE::Component::Client::Ping->spawn( >>> Alias => 'pinger', # The component's name will be "pinger". >>> Timeout => PING_TIMEOUT, # The default ping timeout. >>> Parallelism => 128 >>> ); >>> >> No seu código o paralelismo era 250... >> >> >>> 2010/7/12 João André Simioni>> > >>> >>> Thiago, >>> >>> dando uma bem de vagabundo, não li nada do POE, só modifiquei o >>> código abaixo para pingar todos os meus Hosts. >>> >>> Mas ele está fazendo poucos processos paralelos. O tempo total de >>> testes está 11 minutos com o POE, e o load nem faz cócegas. Sabem >>> fácil como mexer nisso? >>> >>> Obrigado >>> >>> 2010/7/12 Thiago Glauco Sanchez>> >: >>> > Puxa... eu sou muito "toupeira"... já tem código de exemplo para >>> isso feito >>> > e muito mais pratico e completo que o meu...: >>> > >>> > http://poe.perl.org/?POE_Cookbook/Pinging_Multiple_Hosts >>> > >>> > Em 12/07/2010 15:52, Thiago Glauco Sanchez escreveu: >>> >> >>> >> Um pequeno exemplo que eu criei apenas para ilustrar... o >>> pessoal que >>> >> desejar incrementar, por favor, be my guest. >>> >> >>> >> use 5.12.0; >>> >> use POE; >>> >> use Net::Ping; >>> >> POE::Session->create( >>> >> inline_states => { >>> >> _start => sub { >>> >> my ($kernel) = $_[KERNEL]; >>> >> print "Setting up a session\n"; >>> >> $kernel->yield("ping"); >>> >> }, >>> >> >>> >> ping => sub{my ($kernel) = $_[KERNEL]; >>> >> my @ping = `ping -n 1 www.ticursos.net >>> `; >>> >> map{say "ping externo ok" if $_ =~ /Perdidos = 0/ } >>> @ping; >>> >> $kernel->delay_set("net_ping" => 3); >>> >> >>> >> }, >>> >> >>> >> net_ping => sub{ my ($kernel) = $_[KERNEL]; >>> >> my $p = Net::Ping->new(); >>> >> $p->port_number(80); >>> >> my ($ret, $duration, $ip) = >>> $p->ping('ticursos.net'); >>> >> say "net::ping ok" if $ret; >>> >> $p->close(); >>> >> $kernel->delay_set("ping" => 3) >>> >> }, >>> >> }, >>> >> ); >>> >> >>> >> say "Iniciando o Kernel..."; >>> >> $poe_kernel->run( ); >>> >> exit(0); >>> >> >>> >> sub start { >>> >> my ($kernel) = $_[KERNEL]; >>> >> say "Iniciando os testes com POE"; >>> >> $kernel->yield("ping"); >>> >> } >>> >> >>> >> >>> >> Em 12/07/2010 15:38, João André Simioni escreveu: >>> >>> >>> >>> O pessoal comentou - eu vou dar uma olhada nele com atenção. >>> >>> >>> >>> Obrigado pela dica. >>> >>> >>> >>> 2010/7/12 Thiago Glauco Sanchez>> >: >>> >>>> >>> >>>> O Perl tem um framework para aplicações em rede e Multitarefa >>> chamada >>> >>>> POE >>> >>>> que >>> >>>> "Provide a cooperative scheduling and multitasking >>> environment rivalling >>> >>>> threads and IPC" >>> >>>> Não seria o caso de estudarmos a possibilidade de usar esse >>> framework no >>> >>>> seu >>> >>>> sistema??? >>> >>>> >>> >>>> Em 11/07/2010 23:57, João André Simioni escreveu: >>> >>>>> >>> >>>>> Foi um typo - erro de digitação - o Net::Ping testa TCP e >>> UDP. O ping >>> >>>>> externo ICMP. >>> >>>>> >>> >>>>> Mas assim, eu preciso resolver o problema com esse teste em >>> Perl - >>> >>>>> como eu disse, essa parte do código é só um pedaço de um sistema >>> >>>>> maior. SNMP já é usado para várias outras coisas, mas >>> dependem de >>> >>>>> access lists em routers e eu não tenho como liberar. >>> >>>>> >>> >>>>> []'s >>> >>>>> >>> >>>>> 2010/7/11 Thiago Glauco Sanchez>> >: >>> >>>>> >>> >>>>>> O que eu quero dizer: você testou com o ping externo que é >>> um teste >>> >>>>>> icmp... >>> >>>>>> depois fez outro teste icmp com o Net::Ping... >>> >>>>>> >>> >>>>>> Não seria mais interessante testar de outra forma? >>> >>>>>> >>> >>>>>> $p = Net::Ping->new("tcp", 2); >>> >>>>>> $p->port_number(getservbyname("http", "tcp")); >>> >>>>>> >>> >>>>>> Mais umas coisas: Suas máquinas/equipamentos em teste estão via >>> >>>>>> internet >>> >>>>>> ou >>> >>>>>> rede local? >>> >>>>>> Já pensou em usar SNMP? Já tive um problema parecido e iria >>> utilizar >>> >>>>>> um >>> >>>>>> processo para cada equipamento por desempenho e acabai >>> optando por >>> >>>>>> utilizar >>> >>>>>> o Net:SNMP >>> >>>>>> que permite utilizar uma função de callback em vez de >>> utilizar um >>> >>>>>> processo >>> >>>>>> para cada equipamento. Eu mando uma requisição para todos os >>> >>>>>> equipamentos >>> >>>>>> e >>> >>>>>> conforme eles respondem >>> >>>>>> a função de call-back trata a requisição. >>> >>>>>> >>> >>>>>> Porém, não conheço o seu ambiente. Apenas acho que criar >>> 4000 threads >>> >>>>>> não >>> >>>>>> seja a melhor solução. >>> >>>>>> >>> >>>>>> >>> >>>>>> Em 11/07/2010 23:18, João André Simioni escreveu: >>> >>>>>> >>> >>>>>>> É typo - já está certo no código. ICMP vai via comando >>> externo, UDP e >>> >>>>>>> TCP via Net::Ping. >>> >>>>>>> >>> >>>>>>> Com relação aos testes, é normal um momento de sobrecarga >>> causar a >>> >>>>>>> não >>> >>>>>>> resposta de testes - essas sobrecargas não devem duram >>> mais que 5 >>> >>>>>>> segundos. Por isso o sleep - assim eu faço o mesmo teste >>> 3x, com >>> >>>>>>> intervalos de 3 segundos. >>> >>>>>>> >>> >>>>>>> []'s >>> >>>>>>> >>> >>>>>>> On Sun, Jul 11, 2010 at 10:31 PM, Blabos de >>> Blebe> >>> >>>>>>> wrote: >>> >>>>>>> >>> >>>>>>> >>> >>>>>>>> Não seria um typo? >>> >>>>>>>> >>> >>>>>>>> icmp -> ping; >>> >>>>>>>> tcp e udp -> Net::Ping >>> >>>>>>>> >>> >>>>>>>> >>> >>>>>>>> >>> >>>>>>>> On Sun, Jul 11, 2010 at 6:42 PM, Thiago Glauco Sanchez >>> >>>>>>>> >> > wrote: >>> >>>>>>>> >>> >>>>>>>> >>> >>>>>>>>> Sim sim, entendi sua preocupação. >>> >>>>>>>>> Mas em vez de: >>> >>>>>>>>> >>> >>>>>>>>> for (1..3) { >>> >>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>> >>>>>>>>> >>> >>>>>>>>> não seria melhor já mandar pingar as 3 vezes no comando >>> ou apenas >>> >>>>>>>>> 1? >>> >>>>>>>>> Você >>> >>>>>>>>> está gerando 3 processos externos sem necessidade real. >>> >>>>>>>>> >>> >>>>>>>>> outra... o comando ping já não é icmp? >>> >>>>>>>>> my $p = Net::Ping->new('icmp')??? >>> >>>>>>>>> >>> >>>>>>>>> >>> >>>>>>>>> Em 11/07/2010 17:04, João André Simioni escreveu: >>> >>>>>>>>> >>> >>>>>>>>> >>> >>>>>>>>>> Eu quero fazer o ping de 3 formas - UDP Echo / TCP Echo >>> e ICMP >>> >>>>>>>>>> Echo. >>> >>>>>>>>>> Alguns clientes tem filtros e assim eu evito falsos >>> positivos. >>> >>>>>>>>>> >>> >>>>>>>>>> Net::Ping mesmo com root tem resultados incoerentes >>> quando uso >>> >>>>>>>>>> ICMP e >>> >>>>>>>>>> Threads. >>> >>>>>>>>>> >>> >>>>>>>>>> []'s >>> >>>>>>>>>> >>> >>>>>>>>>> On Sun, Jul 11, 2010 at 4:56 PM, Thiago Glauco Sanchez >>> >>>>>>>>>> >> > wrote: >>> >>>>>>>>>> >>> >>>>>>>>>> >>> >>>>>>>>>> >>> >>>>>>>>>>> Endosso a solução do Lorn. Use o POE. >>> >>>>>>>>>>> >>> >>>>>>>>>>> E cara... pra que isso?? >>> >>>>>>>>>>> >>> >>>>>>>>>>> sub checkIp { >>> >>>>>>>>>>> my $ip = shift; >>> >>>>>>>>>>> my $pingOk = 0; >>> >>>>>>>>>>> >>> >>>>>>>>>>> eval { >>> >>>>>>>>>>> for (1..3) { >>> >>>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>> >>>>>>>>>>> >>> >>>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { >>> >>>>>>>>>>> $pingOk = 1; >>> >>>>>>>>>>> return 1; >>> >>>>>>>>>>> } >>> >>>>>>>>>>> >>> >>>>>>>>>>> if ($pingOk == 0) { >>> >>>>>>>>>>> my $p = Net::Ping->new('icmp'); >>> >>>>>>>>>>> $p->service_check(1); >>> >>>>>>>>>>> if ($p->ping($ip, 1)) { >>> >>>>>>>>>>> $pingOk = 1; >>> >>>>>>>>>>> return 1; >>> >>>>>>>>>>> } >>> >>>>>>>>>>> } >>> >>>>>>>>>>> >>> >>>>>>>>>>> if ($pingOk == 0) { >>> >>>>>>>>>>> my $p = Net::Ping->new('udp'); >>> >>>>>>>>>>> $p->service_check(1); >>> >>>>>>>>>>> if ($p->ping($ip, 1)) { >>> >>>>>>>>>>> $pingOk = 1; >>> >>>>>>>>>>> return 1; >>> >>>>>>>>>>> } >>> >>>>>>>>>>> } >>> >>>>>>>>>>> >>> >>>>>>>>>>> sleep 3; >>> >>>>>>>>>>> } >>> >>>>>>>>>>> }; >>> >>>>>>>>>>> >>> >>>>>>>>>>> Para pingar com ping externo, depois com o Net::Ping >>> via icmp e >>> >>>>>>>>>>> depois >>> >>>>>>>>>>> com >>> >>>>>>>>>>> net::Ping udp? Ah... se não me engano, Net::Ping >>> precisa de >>> >>>>>>>>>>> permissão >>> >>>>>>>>>>> root >>> >>>>>>>>>>> para retornar um icmp de forma correta... >>> >>>>>>>>>>> >>> >>>>>>>>>>> >>> >>>>>>>>>>> Em 09/07/2010 17:48, João André Simioni escreveu: >>> >>>>>>>>>>> >>> >>>>>>>>>>> >>> >>>>>>>>>>> >>> >>>>>>>>>>>> Caros, >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> tenho um script para testar cerca de 4700 >>> equipamentos, usando >>> >>>>>>>>>>>> ping. >>> >>>>>>>>>>>> Queria usar cerca 250 threads para isso, então o que >>> eu fiz foi >>> >>>>>>>>>>>> quebrar o grupo de 4300 em grupos 18 elementos e abri >>> uma thread >>> >>>>>>>>>>>> para >>> >>>>>>>>>>>> cada. >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> Não há nenhum problema com o código, o que acontece é >>> que o >>> >>>>>>>>>>>> tempo >>> >>>>>>>>>>>> de >>> >>>>>>>>>>>> abertura das threads é muito alto. E quanto mais >>> threads eu >>> >>>>>>>>>>>> abro, >>> >>>>>>>>>>>> maior o tempo para abertura das próximas. As >>> primeiras abrem em >>> >>>>>>>>>>>> 30ms, >>> >>>>>>>>>>>> mas perto da thread 70 esse tempo já vai para quase 1 >>> segundo. >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> Vocês sabem como otimizar esse tempo de abertura? Ou >>> alguma >>> >>>>>>>>>>>> outra >>> >>>>>>>>>>>> solução? >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> Segue o output do script como exemplo: >>> >>>>>>>>>>>> Para 4677 cpes, e 250 threads, tenho no final 246 >>> grupos, com 19 >>> >>>>>>>>>>>> elementos >>> >>>>>>>>>>>> cada >>> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.61858 >>> >>>>>>>>>>>> Created thread 1 (1) - took 0.030138 seconds to create >>> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 2010.92080 >>> >>>>>>>>>>>> Created thread 2 (2) - took 0.042668 seconds to create >>> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >>> 2010.134968 >>> >>>>>>>>>>>> Created thread 3 (3) - took 0.064245 seconds to create >>> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >>> 2010.199430 >>> >>>>>>>>>>>> Created thread 4 (4) - took 0.082642 seconds to create >>> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >>> 2010.282278 >>> >>>>>>>>>>>> Created thread 5 (5) - took 0.128257 seconds to create >>> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >>> 2010.410769 >>> >>>>>>>>>>>> Created thread 6 (6) - took 0.136458 seconds to create >>> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >>> 2010.547383 >>> >>>>>>>>>>>> Created thread 7 (7) - took 0.208085 seconds to create >>> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >>> 2010.755594 >>> >>>>>>>>>>>> Created thread 8 (8) - took 0.173014 seconds to create >>> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:50 >>> 2010.928756 >>> >>>>>>>>>>>> Created thread 9 (9) - took 0.132713 seconds to create >>> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 2010.61608 >>> >>>>>>>>>>>> Created thread 10 (10) - took 0.127795 seconds to create >>> >>>>>>>>>>>> Trying to create thread in Fri Jul 9 17:46:51 >>> 2010.189536 >>> >>>>>>>>>>>> Created thread 11 (11) - took 0.301836 seconds to create >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> Obrigado >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> João André Simioni >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> #!/usr/bin/perl >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> use strict; >>> >>>>>>>>>>>> use DBI; >>> >>>>>>>>>>>> use Net::Ping; >>> >>>>>>>>>>>> use Time::HiRes qw/usleep tv_interval gettimeofday/; >>> >>>>>>>>>>>> use threads ('yield', 'stack_size' => >>> 32*4096, 'exit' >>> >>>>>>>>>>>> => >>> >>>>>>>>>>>> 'threads_only', 'stringify'); >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> my $host = '192.168.160.179'; >>> >>>>>>>>>>>> my $sid = 'HOMOLOG'; >>> >>>>>>>>>>>> my $user = 'mac_user'; >>> >>>>>>>>>>>> my $pass = 'mac_user'; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> my $dbh = >>> DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, >>> >>>>>>>>>>>> $pass, >>> >>>>>>>>>>>> { AutoCommit => 1 }); >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> my $sth = $dbh->prepare('SELECT CPE_ID, CLIENTE_ID, >>> CPE_DESC, >>> >>>>>>>>>>>> CPE_IP_WAN, CPE_NODE, CPE_IF FROM MAC_CPE WHERE >>> CPE_PING = ? AND >>> >>>>>>>>>>>> CPE_ATIVO = ?'); >>> >>>>>>>>>>>> $sth->execute('1', 'A'); >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> my @cpes; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> while (my (@row) = $sth->fetchrow_array) { >>> >>>>>>>>>>>> push @cpes, [ @row ]; >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> $dbh->disconnect(); >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> my $maxThreads = 250; >>> >>>>>>>>>>>> my $total = @cpes; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> my $cpePerThread = int($total / $maxThreads); >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> my @toMonitor; >>> >>>>>>>>>>>> my $i = 0; >>> >>>>>>>>>>>> my $c = 0; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> foreach my $cpe (@cpes) { >>> >>>>>>>>>>>> push @{$toMonitor[$i]}, $cpe; >>> >>>>>>>>>>>> $c++; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> if ($c> $cpePerThread) { >>> >>>>>>>>>>>> $i++; >>> >>>>>>>>>>>> $c = 0; >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> print "Para $total cpes, e $maxThreads threads, tenho >>> no final >>> >>>>>>>>>>>> $i >>> >>>>>>>>>>>> grupos, com ", scalar @{$toMonitor[0]}, " elementos >>> cada\n"; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> sub processResult { >>> >>>>>>>>>>>> my $r = shift; >>> >>>>>>>>>>>> if (ref $r ne 'ARRAY') { >>> >>>>>>>>>>>> print STDERR "Erro na thread\n"; >>> >>>>>>>>>>>> return 0; >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> my ($result, $host, $ifs) = @$r; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> sub testeClient { >>> >>>>>>>>>>>> my $threadNum = shift; >>> >>>>>>>>>>>> my $cpeGroup = shift; >>> >>>>>>>>>>>> foreach my $cpe (@{$cpeGroup}) { >>> >>>>>>>>>>>> my ($cpeId, $clientId, $cpeDesc, $cpeIp, >>> $cpeNode, >>> >>>>>>>>>>>> $cpeIf) >>> >>>>>>>>>>>> = >>> >>>>>>>>>>>> @$cpe; >>> >>>>>>>>>>>> my $pingOk =&checkIp($cpeIp); >>> >>>>>>>>>>>> my $status = $pingOk ? 'RESPONDE' : 'MORTO'; >>> >>>>>>>>>>>> # print join(", ", $threadNum, $cpeId, $clientId, >>> >>>>>>>>>>>> $cpeDesc, >>> >>>>>>>>>>>> $cpeIp, $cpeNode, $cpeIf, $status), "\n"; >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> # print "Finishing thread $threadNum\n"; >>> >>>>>>>>>>>> return([1, 0]); >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> my $threadCount = 1; >>> >>>>>>>>>>>> foreach my $cpeGroup (@toMonitor) { >>> >>>>>>>>>>>> print "Trying to create thread"; >>> >>>>>>>>>>>> my $t0 = [gettimeofday]; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> print " in ", scalar localtime $t0->[0], ".", >>> $t0->[1], >>> >>>>>>>>>>>> "\n"; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> my $thr = threads->create({scalar => '1'}, >>> >>>>>>>>>>>> 'testeClient', >>> >>>>>>>>>>>> $threadCount, $cpeGroup); >>> >>>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>> >>>>>>>>>>>> print "Created thread $thr ($threadCount) - took >>> $elapsed >>> >>>>>>>>>>>> seconds >>> >>>>>>>>>>>> to create\n"; >>> >>>>>>>>>>>> $threadCount++; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> while (threads->list()>= $maxThreads) { >>> >>>>>>>>>>>> my @joinable = threads->list(threads::joinable); >>> >>>>>>>>>>>> for (@joinable) { >>> >>>>>>>>>>>> my $r = $_->join(); >>> >>>>>>>>>>>> &processResult($r); >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> usleep(10000); >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> my $elapsed = tv_interval ( $t0, [gettimeofday]); >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> while (threads->list()) { >>> >>>>>>>>>>>> my @joinable = threads->list(threads::joinable); >>> >>>>>>>>>>>> for (@joinable) { >>> >>>>>>>>>>>> my $r = $_->join(); >>> >>>>>>>>>>>> &processResult($r); >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> usleep(10000); >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> sub checkIp { >>> >>>>>>>>>>>> my $ip = shift; >>> >>>>>>>>>>>> my $pingOk = 0; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> eval { >>> >>>>>>>>>>>> for (1..3) { >>> >>>>>>>>>>>> my $ping = `/bin/ping -c 1 -w 1 $ip`; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> if (grep { / 0% packet loss/ } $ping) { >>> >>>>>>>>>>>> $pingOk = 1; >>> >>>>>>>>>>>> return 1; >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> if ($pingOk == 0) { >>> >>>>>>>>>>>> my $p = Net::Ping->new('icmp'); >>> >>>>>>>>>>>> $p->service_check(1); >>> >>>>>>>>>>>> if ($p->ping($ip, 1)) { >>> >>>>>>>>>>>> $pingOk = 1; >>> >>>>>>>>>>>> return 1; >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> if ($pingOk == 0) { >>> >>>>>>>>>>>> my $p = Net::Ping->new('udp'); >>> >>>>>>>>>>>> $p->service_check(1); >>> >>>>>>>>>>>> if ($p->ping($ip, 1)) { >>> >>>>>>>>>>>> $pingOk = 1; >>> >>>>>>>>>>>> return 1; >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> sleep 3; >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> }; >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> return $pingOk; >>> >>>>>>>>>>>> } >>> >>>>>>>>>>>> _______________________________________________ >>> >>>>>>>>>>>> Rio-pm mailing list >>> >>>>>>>>>>>> Rio-pm em pm.org >>> >>>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> >>> >>>>>>>>>>> -- >>> >>>>>>>>>>> What is the sound of Perl? Is it not the sound of a >>> wall that >>> >>>>>>>>>>> people >>> >>>>>>>>>>> have >>> >>>>>>>>>>> stopped banging their heads against? >>> >>>>>>>>>>> ?Larry Wall >>> >>>>>>>>>>> >>> >>>>>>>>>>> Thiago Glauco Sanchez >>> >>>>>>>>>>> Intrutor Perl e Redes >>> >>>>>>>>>>> www.ticursos.net >>> >>>>>>>>>>> >>> >>>>>>>>>>> _______________________________________________ >>> >>>>>>>>>>> Rio-pm mailing list >>> >>>>>>>>>>> Rio-pm em pm.org >>> >>>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>>>>>>>>> >>> >>>>>>>>>>> >>> >>>>>>>>>>> >>> >>>>>>>>>>> >>> >>>>>>>>>> _______________________________________________ >>> >>>>>>>>>> Rio-pm mailing list >>> >>>>>>>>>> Rio-pm em pm.org >>> >>>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>>>>>>>> >>> >>>>>>>>>> >>> >>>>>>>>>> >>> >>>>>>>>>> >>> >>>>>>>>> -- >>> >>>>>>>>> What is the sound of Perl? Is it not the sound of a wall >>> that >>> >>>>>>>>> people >>> >>>>>>>>> have >>> >>>>>>>>> stopped banging their heads against? >>> >>>>>>>>> ?Larry Wall >>> >>>>>>>>> >>> >>>>>>>>> Thiago Glauco Sanchez >>> >>>>>>>>> Intrutor Perl e Redes >>> >>>>>>>>> www.ticursos.net >>> >>>>>>>>> >>> >>>>>>>>> _______________________________________________ >>> >>>>>>>>> Rio-pm mailing list >>> >>>>>>>>> Rio-pm em pm.org >>> >>>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>>>>>>> >>> >>>>>>>>> >>> >>>>>>>>> >>> >>>>>>>> _______________________________________________ >>> >>>>>>>> Rio-pm mailing list >>> >>>>>>>> Rio-pm em pm.org >>> >>>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>>>>>> >>> >>>>>>>> >>> >>>>>>>> >>> >>>>>>> _______________________________________________ >>> >>>>>>> Rio-pm mailing list >>> >>>>>>> Rio-pm em pm.org >>> >>>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>>>>> >>> >>>>>>> >>> >>>>>>> >>> >>>>>> -- >>> >>>>>> What is the sound of Perl? Is it not the sound of a wall >>> that people >>> >>>>>> have >>> >>>>>> stopped banging their heads against? >>> >>>>>> ?Larry Wall >>> >>>>>> >>> >>>>>> Thiago Glauco Sanchez >>> >>>>>> Intrutor Perl e Redes >>> >>>>>> www.ticursos.net >>> >>>>>> >>> >>>>>> _______________________________________________ >>> >>>>>> Rio-pm mailing list >>> >>>>>> Rio-pm em pm.org >>> >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>>>> >>> >>>>>> >>> >>>>> _______________________________________________ >>> >>>>> Rio-pm mailing list >>> >>>>> Rio-pm em pm.org >>> >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>>> >>> >>>>> >>> >>>> >>> >>>> -- >>> >>>> What is the sound of Perl? Is it not the sound of a wall that >>> people >>> >>>> have >>> >>>> stopped banging their heads against? >>> >>>> ?Larry Wall >>> >>>> >>> >>>> Thiago Glauco Sanchez >>> >>>> Intrutor Perl e Redes >>> >>>> www.ticursos.net >>> >>>> >>> >>>> _______________________________________________ >>> >>>> Rio-pm mailing list >>> >>>> Rio-pm em pm.org >>> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>> >>> >>> _______________________________________________ >>> >>> Rio-pm mailing list >>> >>> Rio-pm em pm.org >>> >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> >> >>> >> >>> > >>> > >>> > -- >>> > What is the sound of Perl? Is it not the sound of a wall that >>> people have >>> > stopped banging their heads against? >>> > ?Larry Wall >>> > >>> > Thiago Glauco Sanchez >>> > Intrutor Perl e Redes >>> > www.ticursos.net >>> > >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> >>> >>> -- >>> Bruno C. Buss >>> http://brunobuss.wordpress.com/ >>> http://www.dcc.ufrj.br/~brunobuss/ >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> -- >> What is the sound of Perl? Is it not the sound of a wall that people have >> stopped banging their heads against? >> ?Larry Wall >> >> Thiago Glauco Sanchez >> Intrutor Perl e Redes >> www.ticursos.net >> >> >> > -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net From daniel.oliveira.mantovani em gmail.com Tue Jul 13 04:03:54 2010 From: daniel.oliveira.mantovani em gmail.com (Daniel de Oliveira Mantovani) Date: Tue, 13 Jul 2010 08:03:54 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> <4C3B6476.7080309@ticursos.net> <4C3B6B48.8030304@ticursos.net> <4C3B8A2E.7060409@ticursos.net> Message-ID: 2010/7/12 João André Simioni : > Eu não tenho preguiça de ler, mas queria fazer um teste rápido só para > ver o desempenho. Quando aumento para 400 o paralelismo, ele continua > não utilizando os demais processadores. Vou acabar forkeando o > processo. Você escreveu, >dando uma bem de vagabundo, não li nada do POE, só modifiquei o >código abaixo para pingar todos os meus Hosts. Cara, não sei como você tem coragem de dizer isso numa Mailing List, sério mesmo. O pior de tudo é depois dizer que não tem preguiça de ler. Essa thread já deu o que tinha que dar, ainda mais porque você está querendo reinventar a roda. Olha o que você escreveu, >esse script é apenas uma parte da solução - eu até posso usar o >Nagios João, você dizer em outras listas que sabe mais de Perl do que outros membros antigos da lista e apresentar uma solução como essa que você está apresentando é gerar contra argumentos contra você mesmo. -- http://www.danielmantovani.com "If you?ve never written anything thoughtful, then you?ve never had any difficult, important, or interesting thoughts. That?s the secret: people who don?t write, are people who don?t think." From andregarciacarneiro em gmail.com Tue Jul 13 04:45:18 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Tue, 13 Jul 2010 08:45:18 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> <4C3B6476.7080309@ticursos.net> <4C3B6B48.8030304@ticursos.net> <4C3B8A2E.7060409@ticursos.net> Message-ID: Rise little Troll, rise!.... :D Em 13 de julho de 2010 08:03, Daniel de Oliveira Mantovani < daniel.oliveira.mantovani em gmail.com> escreveu: > 2010/7/12 João André Simioni : > > Eu não tenho preguiça de ler, mas queria fazer um teste rápido só para > > ver o desempenho. Quando aumento para 400 o paralelismo, ele continua > > não utilizando os demais processadores. Vou acabar forkeando o > > processo. > > Você escreveu, > > >dando uma bem de vagabundo, não li nada do POE, só modifiquei o > >código abaixo para pingar todos os meus Hosts. > > Cara, não sei como você tem coragem de dizer isso numa Mailing List, > sério mesmo. O pior de tudo é depois dizer que não tem preguiça de > ler. > Essa thread já deu o que tinha que dar, ainda mais porque você está > querendo reinventar a roda. > > Olha o que você escreveu, > > >esse script é apenas uma parte da solução - eu até posso usar o > >Nagios > > João, você dizer em outras listas que sabe mais de Perl do que outros > membros antigos da lista e apresentar uma solução como essa que você > está apresentando é gerar contra argumentos contra você mesmo. > > > -- > http://www.danielmantovani.com > > "If you?ve never written anything thoughtful, then you?ve never had > any difficult, important, or interesting thoughts. That?s the secret: > people who don?t write, are people who don?t think." > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From thiagoglauco em ticursos.net Tue Jul 13 05:43:31 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Tue, 13 Jul 2010 09:43:31 -0300 Subject: [Rio-pm] Ajuda com Threads - tempo de abertura In-Reply-To: References: <4C3A21F1.3090109@ticursos.net> <4C3A3AC1.6000601@ticursos.net> <4C3A80B4.5090107@ticursos.net> <4C3B5AE2.7030009@ticursos.net> <4C3B6476.7080309@ticursos.net> <4C3B6B48.8030304@ticursos.net> <4C3B8A2E.7060409@ticursos.net> Message-ID: <4C3C5F73.5080405@ticursos.net> Uh... era esse cara? hummm... fim de thread!!! mantovani++ Só para constatar um fato. Assisti uma palestra do Eden esse sábado, e o cara manja muiiito de perl. um verdadeiro throll!!! Em 13/07/2010 08:45, Andre Carneiro escreveu: > Rise little Troll, rise!.... :D > > > > > Em 13 de julho de 2010 08:03, Daniel de Oliveira Mantovani > > escreveu: > > 2010/7/12 João André Simioni >: > > Eu não tenho preguiça de ler, mas queria fazer um teste rápido > só para > > ver o desempenho. Quando aumento para 400 o paralelismo, ele > continua > > não utilizando os demais processadores. Vou acabar forkeando o > > processo. > > Você escreveu, > > >dando uma bem de vagabundo, não li nada do POE, só modifiquei o > >código abaixo para pingar todos os meus Hosts. > > Cara, não sei como você tem coragem de dizer isso numa Mailing List, > sério mesmo. O pior de tudo é depois dizer que não tem preguiça de > ler. > Essa thread já deu o que tinha que dar, ainda mais porque você está > querendo reinventar a roda. > > Olha o que você escreveu, > > >esse script é apenas uma parte da solução - eu até posso usar o > >Nagios > > João, você dizer em outras listas que sabe mais de Perl do que outros > membros antigos da lista e apresentar uma solução como essa que você > está apresentando é gerar contra argumentos contra você mesmo. > > > -- > http://www.danielmantovani.com > > "If you?ve never written anything thoughtful, then you?ve never had > any difficult, important, or interesting thoughts. That?s the secret: > people who don?t write, are people who don?t think." > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > -- > André Garcia Carneiro > Analista/Desenvolvedor Perl > (11)82907780 > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Tue Jul 13 23:50:36 2010 From: breno em rio.pm.org (breno) Date: Wed, 14 Jul 2010 03:50:36 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: Message-ID: E aí mago, novidades? 2010/7/11 Marco Lima : > Salve Monges: > > Essa semana chega ao Rio representantes de uma entidade Espanhola de apoio > ao Software Livre, eles desenvolvem um excelente trabalho na Espanha > principalmente na Galícia, e poderão ser um excelente contato e parceiros > para o Rio.PM por isso estou convocando um ESX, ainda espero a confirmação > do vôo deles para fechar a data, que será dia 15 ou dia 16, sugiro as opções > de locais. Como não conhecem o Rio, minha sugestão é algo entre copacana e > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em Impanema, > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou outro. Lembrando > que devemos fazer um esticada para Lapa depois. > > No dia 17 estou programando um churrasco na minha casa, que já estam todos > convidados, é só chegar. > > Abraços; > > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta > paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From braun.lima em gmail.com Wed Jul 14 00:55:13 2010 From: braun.lima em gmail.com (Marco Lima) Date: Wed, 14 Jul 2010 04:55:13 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: Message-ID: Salve! Esta confirmado para quinta-feira, estou aguardando sugestões de lugares. Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" Em 14 de julho de 2010 03:50, breno escreveu: > E aí mago, novidades? > > 2010/7/11 Marco Lima : > > Salve Monges: > > > > Essa semana chega ao Rio representantes de uma entidade Espanhola de > apoio > > ao Software Livre, eles desenvolvem um excelente trabalho na Espanha > > principalmente na Galícia, e poderão ser um excelente contato e parceiros > > para o Rio.PM por isso estou convocando um ESX, ainda espero a > confirmação > > do vôo deles para fechar a data, que será dia 15 ou dia 16, sugiro as > opções > > de locais. Como não conhecem o Rio, minha sugestão é algo entre copacana > e > > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em Impanema, > > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou outro. > Lembrando > > que devemos fazer um esticada para Lapa depois. > > > > No dia 17 estou programando um churrasco na minha casa, que já estam > todos > > convidados, é só chegar. > > > > Abraços; > > > > > > Marco Lima > > braun.lima em gmail.com > > im:mago em jabber-br.org > > > > Register Linux User #355235 > > Slackware Linux, for the subgenius > > > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento > é > > um dever de quem tem." > > > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta > > paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa > > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." > > > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > > possa ensinar" > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Wed Jul 14 01:25:28 2010 From: breno em rio.pm.org (breno) Date: Wed, 14 Jul 2010 05:25:28 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: Message-ID: Legal! Infelizmente só chego de sexta pra sábado, então fico fora dessa :-( []s -b 2010/7/14 Marco Lima : > Salve! > > Esta confirmado para quinta-feira, estou aguardando sugestões de lugares. > > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta > paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > Em 14 de julho de 2010 03:50, breno escreveu: >> >> E aí mago, novidades? >> >> 2010/7/11 Marco Lima : >> > Salve Monges: >> > >> > Essa semana chega ao Rio representantes de uma entidade Espanhola de >> > apoio >> > ao Software Livre, eles desenvolvem um excelente trabalho na Espanha >> > principalmente na Galícia, e poderão ser um excelente contato e >> > parceiros >> > para o Rio.PM por isso estou convocando um ESX, ainda espero a >> > confirmação >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, sugiro as >> > opções >> > de locais. Como não conhecem o Rio, minha sugestão é algo entre copacana >> > e >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em Impanema, >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou outro. >> > Lembrando >> > que devemos fazer um esticada para Lapa depois. >> > >> > No dia 17 estou programando um churrasco na minha casa, que já estam >> > todos >> > convidados, é só chegar. >> > >> > Abraços; >> > >> > >> > Marco Lima >> > braun.lima em gmail.com >> > im:mago em jabber-br.org >> > >> > Register Linux User #355235 >> > Slackware Linux, for the subgenius >> > >> > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >> > é >> > um dever de quem tem." >> > >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> > Esta >> > paixão é, na realidade, uma atividade significativa, inspiradora e >> > prazerosa >> > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." >> > >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> > possa ensinar" >> > >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From braun.lima em gmail.com Wed Jul 14 01:32:39 2010 From: braun.lima em gmail.com (Marco Lima) Date: Wed, 14 Jul 2010 05:32:39 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: Message-ID: Estou vendo se vai rolar o churrasco na minha casa no sábado, quem sabe nõa aparece. Mantenho atualizado aqui na lista. Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" Em 14 de julho de 2010 05:25, breno escreveu: > Legal! Infelizmente só chego de sexta pra sábado, então fico fora dessa :-( > > []s > > -b > > 2010/7/14 Marco Lima : > > Salve! > > > > Esta confirmado para quinta-feira, estou aguardando sugestões de lugares. > > > > > > Marco Lima > > braun.lima em gmail.com > > im:mago em jabber-br.org > > > > Register Linux User #355235 > > Slackware Linux, for the subgenius > > > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento > é > > um dever de quem tem." > > > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta > > paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa > > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." > > > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > > possa ensinar" > > > > > > > > Em 14 de julho de 2010 03:50, breno escreveu: > >> > >> E aí mago, novidades? > >> > >> 2010/7/11 Marco Lima : > >> > Salve Monges: > >> > > >> > Essa semana chega ao Rio representantes de uma entidade Espanhola de > >> > apoio > >> > ao Software Livre, eles desenvolvem um excelente trabalho na Espanha > >> > principalmente na Galícia, e poderão ser um excelente contato e > >> > parceiros > >> > para o Rio.PM por isso estou convocando um ESX, ainda espero a > >> > confirmação > >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, sugiro as > >> > opções > >> > de locais. Como não conhecem o Rio, minha sugestão é algo entre > copacana > >> > e > >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em > Impanema, > >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou outro. > >> > Lembrando > >> > que devemos fazer um esticada para Lapa depois. > >> > > >> > No dia 17 estou programando um churrasco na minha casa, que já estam > >> > todos > >> > convidados, é só chegar. > >> > > >> > Abraços; > >> > > >> > > >> > Marco Lima > >> > braun.lima em gmail.com > >> > im:mago em jabber-br.org > >> > > >> > Register Linux User #355235 > >> > Slackware Linux, for the subgenius > >> > > >> > "Ter acesso ao conhecimento é um dever de todos; transmitir > conhecimento > >> > é > >> > um dever de quem tem." > >> > > >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma > paixão. > >> > Esta > >> > paixão é, na realidade, uma atividade significativa, inspiradora e > >> > prazerosa > >> > para o indivíduo, seja ela rotulada como "trabalho" ou como > "diversão." > >> > > >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que > não > >> > possa ensinar" > >> > > >> > > >> > _______________________________________________ > >> > Rio-pm mailing list > >> > Rio-pm em pm.org > >> > http://mail.pm.org/mailman/listinfo/rio-pm > >> > > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From braun.lima em gmail.com Wed Jul 14 16:51:50 2010 From: braun.lima em gmail.com (Marco Lima) Date: Wed, 14 Jul 2010 20:51:50 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: Message-ID: Salve! Como ninguem se manifestou, vou postar para os que se interessarem em comparecer, e quem sabe expandir seu network com entidades Espanholas, onde encontramos um mercado bastante promissor para o Software Livre. Vou marcar com o pessoal no Devassa do Flamengo, apartir das 19:00h Att; Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" Em 14 de julho de 2010 05:32, Marco Lima escreveu: > Estou vendo se vai rolar o churrasco na minha casa no sábado, quem sabe nõa > aparece. Mantenho atualizado aqui na lista. > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > Em 14 de julho de 2010 05:25, breno escreveu: > > Legal! Infelizmente só chego de sexta pra sábado, então fico fora dessa >> :-( >> >> []s >> >> -b >> >> 2010/7/14 Marco Lima : >> > Salve! >> > >> > Esta confirmado para quinta-feira, estou aguardando sugestões de >> lugares. >> > >> > >> > Marco Lima >> > braun.lima em gmail.com >> > im:mago em jabber-br.org >> > >> > Register Linux User #355235 >> > Slackware Linux, for the subgenius >> > >> > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >> é >> > um dever de quem tem." >> > >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta >> > paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa >> > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." >> > >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> > possa ensinar" >> > >> > >> > >> > Em 14 de julho de 2010 03:50, breno escreveu: >> >> >> >> E aí mago, novidades? >> >> >> >> 2010/7/11 Marco Lima : >> >> > Salve Monges: >> >> > >> >> > Essa semana chega ao Rio representantes de uma entidade Espanhola de >> >> > apoio >> >> > ao Software Livre, eles desenvolvem um excelente trabalho na Espanha >> >> > principalmente na Galícia, e poderão ser um excelente contato e >> >> > parceiros >> >> > para o Rio.PM por isso estou convocando um ESX, ainda espero a >> >> > confirmação >> >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, sugiro as >> >> > opções >> >> > de locais. Como não conhecem o Rio, minha sugestão é algo entre >> copacana >> >> > e >> >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em >> Impanema, >> >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou outro. >> >> > Lembrando >> >> > que devemos fazer um esticada para Lapa depois. >> >> > >> >> > No dia 17 estou programando um churrasco na minha casa, que já estam >> >> > todos >> >> > convidados, é só chegar. >> >> > >> >> > Abraços; >> >> > >> >> > >> >> > Marco Lima >> >> > braun.lima em gmail.com >> >> > im:mago em jabber-br.org >> >> > >> >> > Register Linux User #355235 >> >> > Slackware Linux, for the subgenius >> >> > >> >> > "Ter acesso ao conhecimento é um dever de todos; transmitir >> conhecimento >> >> > é >> >> > um dever de quem tem." >> >> > >> >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >> paixão. >> >> > Esta >> >> > paixão é, na realidade, uma atividade significativa, inspiradora e >> >> > prazerosa >> >> > para o indivíduo, seja ela rotulada como "trabalho" ou como >> "diversão." >> >> > >> >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >> não >> >> > possa ensinar" >> >> > >> >> > >> >> > _______________________________________________ >> >> > Rio-pm mailing list >> >> > Rio-pm em pm.org >> >> > http://mail.pm.org/mailman/listinfo/rio-pm >> >> > >> >> _______________________________________________ >> >> Rio-pm mailing list >> >> Rio-pm em pm.org >> >> http://mail.pm.org/mailman/listinfo/rio-pm >> > >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Wed Jul 14 17:05:22 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Wed, 14 Jul 2010 21:05:22 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: Message-ID: Onde vai ser e que horas? 2010/7/14 Marco Lima > Salve! > > Como ninguem se manifestou, vou postar para os que se interessarem em > comparecer, e quem sabe expandir seu network com entidades Espanholas, onde > encontramos um mercado bastante promissor para o Software Livre. > > Vou marcar com o pessoal no Devassa do Flamengo, apartir das 19:00h > > Att; > > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > Em 14 de julho de 2010 05:32, Marco Lima escreveu: > > Estou vendo se vai rolar o churrasco na minha casa no sábado, quem sabe nõa >> aparece. Mantenho atualizado aqui na lista. >> >> Marco Lima >> braun.lima em gmail.com >> im:mago em jabber-br.org >> >> Register Linux User #355235 >> Slackware Linux, for the subgenius >> >> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é >> um dever de quem tem." >> >> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> "diversão." >> >> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> possa ensinar" >> >> >> >> Em 14 de julho de 2010 05:25, breno escreveu: >> >> Legal! Infelizmente só chego de sexta pra sábado, então fico fora dessa >>> :-( >>> >>> []s >>> >>> -b >>> >>> 2010/7/14 Marco Lima : >>> > Salve! >>> > >>> > Esta confirmado para quinta-feira, estou aguardando sugestões de >>> lugares. >>> > >>> > >>> > Marco Lima >>> > braun.lima em gmail.com >>> > im:mago em jabber-br.org >>> > >>> > Register Linux User #355235 >>> > Slackware Linux, for the subgenius >>> > >>> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>> conhecimento é >>> > um dever de quem tem." >>> > >>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>> Esta >>> > paixão é, na realidade, uma atividade significativa, inspiradora e >>> prazerosa >>> > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." >>> > >>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>> > possa ensinar" >>> > >>> > >>> > >>> > Em 14 de julho de 2010 03:50, breno escreveu: >>> >> >>> >> E aí mago, novidades? >>> >> >>> >> 2010/7/11 Marco Lima : >>> >> > Salve Monges: >>> >> > >>> >> > Essa semana chega ao Rio representantes de uma entidade Espanhola de >>> >> > apoio >>> >> > ao Software Livre, eles desenvolvem um excelente trabalho na Espanha >>> >> > principalmente na Galícia, e poderão ser um excelente contato e >>> >> > parceiros >>> >> > para o Rio.PM por isso estou convocando um ESX, ainda espero a >>> >> > confirmação >>> >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, sugiro >>> as >>> >> > opções >>> >> > de locais. Como não conhecem o Rio, minha sugestão é algo entre >>> copacana >>> >> > e >>> >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em >>> Impanema, >>> >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou outro. >>> >> > Lembrando >>> >> > que devemos fazer um esticada para Lapa depois. >>> >> > >>> >> > No dia 17 estou programando um churrasco na minha casa, que já estam >>> >> > todos >>> >> > convidados, é só chegar. >>> >> > >>> >> > Abraços; >>> >> > >>> >> > >>> >> > Marco Lima >>> >> > braun.lima em gmail.com >>> >> > im:mago em jabber-br.org >>> >> > >>> >> > Register Linux User #355235 >>> >> > Slackware Linux, for the subgenius >>> >> > >>> >> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>> conhecimento >>> >> > é >>> >> > um dever de quem tem." >>> >> > >>> >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>> paixão. >>> >> > Esta >>> >> > paixão é, na realidade, uma atividade significativa, inspiradora e >>> >> > prazerosa >>> >> > para o indivíduo, seja ela rotulada como "trabalho" ou como >>> "diversão." >>> >> > >>> >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >>> não >>> >> > possa ensinar" >>> >> > >>> >> > >>> >> > _______________________________________________ >>> >> > Rio-pm mailing list >>> >> > Rio-pm em pm.org >>> >> > http://mail.pm.org/mailman/listinfo/rio-pm >>> >> > >>> >> _______________________________________________ >>> >> Rio-pm mailing list >>> >> Rio-pm em pm.org >>> >> http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> > >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Wed Jul 14 17:24:21 2010 From: eu em samircury.eng.br (Samir Cury) Date: Wed, 14 Jul 2010 21:24:21 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: Message-ID: Devassa do Flamengo, apartir das 19:00h Seria aquele em frente ao planalto do chopp(que inclusive tem uma pizza fenomenal), creio eu, bem próximo ao largo do machado. Se o pessoal se animar, sugiro uma passada lá para comer uma pizza de atum, ou portuguesa, ou "energia" hehe Abraços 2010/7/14 Oscar Marques > Onde vai ser e que horas? > > > 2010/7/14 Marco Lima > >> Salve! >> >> Como ninguem se manifestou, vou postar para os que se interessarem em >> comparecer, e quem sabe expandir seu network com entidades Espanholas, onde >> encontramos um mercado bastante promissor para o Software Livre. >> >> Vou marcar com o pessoal no Devassa do Flamengo, apartir das 19:00h >> >> Att; >> >> >> Marco Lima >> braun.lima em gmail.com >> im:mago em jabber-br.org >> >> Register Linux User #355235 >> Slackware Linux, for the subgenius >> >> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é >> um dever de quem tem." >> >> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> "diversão." >> >> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> possa ensinar" >> >> >> >> Em 14 de julho de 2010 05:32, Marco Lima escreveu: >> >> Estou vendo se vai rolar o churrasco na minha casa no sábado, quem sabe >>> nõa aparece. Mantenho atualizado aqui na lista. >>> >>> Marco Lima >>> braun.lima em gmail.com >>> im:mago em jabber-br.org >>> >>> Register Linux User #355235 >>> Slackware Linux, for the subgenius >>> >>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>> é um dever de quem tem." >>> >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>> "diversão." >>> >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>> possa ensinar" >>> >>> >>> >>> Em 14 de julho de 2010 05:25, breno escreveu: >>> >>> Legal! Infelizmente só chego de sexta pra sábado, então fico fora dessa >>>> :-( >>>> >>>> []s >>>> >>>> -b >>>> >>>> 2010/7/14 Marco Lima : >>>> > Salve! >>>> > >>>> > Esta confirmado para quinta-feira, estou aguardando sugestões de >>>> lugares. >>>> > >>>> > >>>> > Marco Lima >>>> > braun.lima em gmail.com >>>> > im:mago em jabber-br.org >>>> > >>>> > Register Linux User #355235 >>>> > Slackware Linux, for the subgenius >>>> > >>>> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>>> conhecimento é >>>> > um dever de quem tem." >>>> > >>>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>>> paixão. Esta >>>> > paixão é, na realidade, uma atividade significativa, inspiradora e >>>> prazerosa >>>> > para o indivíduo, seja ela rotulada como "trabalho" ou como >>>> "diversão." >>>> > >>>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >>>> não >>>> > possa ensinar" >>>> > >>>> > >>>> > >>>> > Em 14 de julho de 2010 03:50, breno escreveu: >>>> >> >>>> >> E aí mago, novidades? >>>> >> >>>> >> 2010/7/11 Marco Lima : >>>> >> > Salve Monges: >>>> >> > >>>> >> > Essa semana chega ao Rio representantes de uma entidade Espanhola >>>> de >>>> >> > apoio >>>> >> > ao Software Livre, eles desenvolvem um excelente trabalho na >>>> Espanha >>>> >> > principalmente na Galícia, e poderão ser um excelente contato e >>>> >> > parceiros >>>> >> > para o Rio.PM por isso estou convocando um ESX, ainda espero a >>>> >> > confirmação >>>> >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, sugiro >>>> as >>>> >> > opções >>>> >> > de locais. Como não conhecem o Rio, minha sugestão é algo entre >>>> copacana >>>> >> > e >>>> >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em >>>> Impanema, >>>> >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou outro. >>>> >> > Lembrando >>>> >> > que devemos fazer um esticada para Lapa depois. >>>> >> > >>>> >> > No dia 17 estou programando um churrasco na minha casa, que já >>>> estam >>>> >> > todos >>>> >> > convidados, é só chegar. >>>> >> > >>>> >> > Abraços; >>>> >> > >>>> >> > >>>> >> > Marco Lima >>>> >> > braun.lima em gmail.com >>>> >> > im:mago em jabber-br.org >>>> >> > >>>> >> > Register Linux User #355235 >>>> >> > Slackware Linux, for the subgenius >>>> >> > >>>> >> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>>> conhecimento >>>> >> > é >>>> >> > um dever de quem tem." >>>> >> > >>>> >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>>> paixão. >>>> >> > Esta >>>> >> > paixão é, na realidade, uma atividade significativa, inspiradora e >>>> >> > prazerosa >>>> >> > para o indivíduo, seja ela rotulada como "trabalho" ou como >>>> "diversão." >>>> >> > >>>> >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >>>> não >>>> >> > possa ensinar" >>>> >> > >>>> >> > >>>> >> > _______________________________________________ >>>> >> > Rio-pm mailing list >>>> >> > Rio-pm em pm.org >>>> >> > http://mail.pm.org/mailman/listinfo/rio-pm >>>> >> > >>>> >> _______________________________________________ >>>> >> Rio-pm mailing list >>>> >> Rio-pm em pm.org >>>> >> http://mail.pm.org/mailman/listinfo/rio-pm >>>> > >>>> > >>>> > _______________________________________________ >>>> > Rio-pm mailing list >>>> > Rio-pm em pm.org >>>> > http://mail.pm.org/mailman/listinfo/rio-pm >>>> > >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From jc em joaocoutinho.com.br Thu Jul 15 05:27:04 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Thu, 15 Jul 2010 09:27:04 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: Message-ID: Perlsoal, quem mais vai? _o/ [ ]'s, João 2010/7/14 Samir Cury : > Devassa do Flamengo, apartir das 19:00h > > Seria aquele em frente ao planalto do chopp(que inclusive tem uma pizza > fenomenal), creio eu, bem próximo ao largo do machado. > > Se o pessoal se animar, sugiro uma passada lá para comer uma pizza de atum, > ou portuguesa, ou "energia" hehe > > Abraços > > 2010/7/14 Oscar Marques >> >> Onde vai ser e que horas? >> >> 2010/7/14 Marco Lima >>> >>> Salve! >>> >>> Como ninguem se manifestou, vou postar para os que se interessarem em >>> comparecer, e quem sabe expandir seu network com entidades Espanholas, onde >>> encontramos um mercado bastante promissor para o Software Livre. >>> >>> Vou marcar com o pessoal no Devassa do Flamengo, apartir das 19:00h >>> >>> Att; >>> >>> Marco Lima >>> braun.lima em gmail.com >>> im:mago em jabber-br.org >>> >>> Register Linux User #355235 >>> Slackware Linux, for the subgenius >>> >>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>> é um dever de quem tem." >>> >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>> "diversão." >>> >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>> possa ensinar" >>> >>> >>> >>> Em 14 de julho de 2010 05:32, Marco Lima escreveu: >>>> >>>> Estou vendo se vai rolar o churrasco na minha casa no sábado, quem sabe >>>> nõa aparece. Mantenho atualizado aqui na lista. >>>> >>>> Marco Lima >>>> braun.lima em gmail.com >>>> im:mago em jabber-br.org >>>> >>>> Register Linux User #355235 >>>> Slackware Linux, for the subgenius >>>> >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>>> é um dever de quem tem." >>>> >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>>> "diversão." >>>> >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>>> possa ensinar" >>>> >>>> >>>> >>>> Em 14 de julho de 2010 05:25, breno escreveu: >>>>> >>>>> Legal! Infelizmente só chego de sexta pra sábado, então fico fora dessa >>>>> :-( >>>>> >>>>> []s >>>>> >>>>> -b >>>>> >>>>> 2010/7/14 Marco Lima : >>>>> > Salve! >>>>> > >>>>> > Esta confirmado para quinta-feira, estou aguardando sugestões de >>>>> > lugares. >>>>> > >>>>> > >>>>> > Marco Lima >>>>> > braun.lima em gmail.com >>>>> > im:mago em jabber-br.org >>>>> > >>>>> > Register Linux User #355235 >>>>> > Slackware Linux, for the subgenius >>>>> > >>>>> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>>>> > conhecimento é >>>>> > um dever de quem tem." >>>>> > >>>>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>>>> > paixão. Esta >>>>> > paixão é, na realidade, uma atividade significativa, inspiradora e >>>>> > prazerosa >>>>> > para o indivíduo, seja ela rotulada como "trabalho" ou como >>>>> > "diversão." >>>>> > >>>>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >>>>> > não >>>>> > possa ensinar" >>>>> > >>>>> > >>>>> > >>>>> > Em 14 de julho de 2010 03:50, breno escreveu: >>>>> >> >>>>> >> E aí mago, novidades? >>>>> >> >>>>> >> 2010/7/11 Marco Lima : >>>>> >> > Salve Monges: >>>>> >> > >>>>> >> > Essa semana chega ao Rio representantes de uma entidade Espanhola >>>>> >> > de >>>>> >> > apoio >>>>> >> > ao Software Livre, eles desenvolvem um excelente trabalho na >>>>> >> > Espanha >>>>> >> > principalmente na Galícia, e poderão ser um excelente contato e >>>>> >> > parceiros >>>>> >> > para o Rio.PM por isso estou convocando um ESX, ainda espero a >>>>> >> > confirmação >>>>> >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, sugiro >>>>> >> > as >>>>> >> > opções >>>>> >> > de locais. Como não conhecem o Rio, minha sugestão é algo entre >>>>> >> > copacana >>>>> >> > e >>>>> >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em >>>>> >> > Impanema, >>>>> >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou outro. >>>>> >> > Lembrando >>>>> >> > que devemos fazer um esticada para Lapa depois. >>>>> >> > >>>>> >> > No dia 17 estou programando um churrasco na minha casa, que já >>>>> >> > estam >>>>> >> > todos >>>>> >> > convidados, é só chegar. >>>>> >> > >>>>> >> > Abraços; >>>>> >> > >>>>> >> > >>>>> >> > Marco Lima >>>>> >> > braun.lima em gmail.com >>>>> >> > im:mago em jabber-br.org >>>>> >> > >>>>> >> > Register Linux User #355235 >>>>> >> > Slackware Linux, for the subgenius >>>>> >> > >>>>> >> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>>>> >> > conhecimento >>>>> >> > é >>>>> >> > um dever de quem tem." >>>>> >> > >>>>> >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>>>> >> > paixão. >>>>> >> > Esta >>>>> >> > paixão é, na realidade, uma atividade significativa, inspiradora e >>>>> >> > prazerosa >>>>> >> > para o indivíduo, seja ela rotulada como "trabalho" ou como >>>>> >> > "diversão." >>>>> >> > >>>>> >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno >>>>> >> > que não >>>>> >> > possa ensinar" >>>>> >> > >>>>> >> > >>>>> >> > _______________________________________________ >>>>> >> > Rio-pm mailing list >>>>> >> > Rio-pm em pm.org >>>>> >> > http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >> > >>>>> >> _______________________________________________ >>>>> >> Rio-pm mailing list >>>>> >> Rio-pm em pm.org >>>>> >> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> > >>>>> > >>>>> > _______________________________________________ >>>>> > Rio-pm mailing list >>>>> > Rio-pm em pm.org >>>>> > http://mail.pm.org/mailman/listinfo/rio-pm >>>>> > >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From oscarbm em gmail.com Thu Jul 15 05:31:23 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Thu, 15 Jul 2010 09:31:23 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: Message-ID: Eu vou, so me dizer local e hora. 2010/7/15 João C. Coutinho > Perlsoal, > quem mais vai? _o/ > [ ]'s, > João > > > > > > 2010/7/14 Samir Cury : > > Devassa do Flamengo, apartir das 19:00h > > > > Seria aquele em frente ao planalto do chopp(que inclusive tem uma pizza > > fenomenal), creio eu, bem próximo ao largo do machado. > > > > Se o pessoal se animar, sugiro uma passada lá para comer uma pizza de > atum, > > ou portuguesa, ou "energia" hehe > > > > Abraços > > > > 2010/7/14 Oscar Marques > >> > >> Onde vai ser e que horas? > >> > >> 2010/7/14 Marco Lima > >>> > >>> Salve! > >>> > >>> Como ninguem se manifestou, vou postar para os que se interessarem em > >>> comparecer, e quem sabe expandir seu network com entidades Espanholas, > onde > >>> encontramos um mercado bastante promissor para o Software Livre. > >>> > >>> Vou marcar com o pessoal no Devassa do Flamengo, apartir das 19:00h > >>> > >>> Att; > >>> > >>> Marco Lima > >>> braun.lima em gmail.com > >>> im:mago em jabber-br.org > >>> > >>> Register Linux User #355235 > >>> Slackware Linux, for the subgenius > >>> > >>> "Ter acesso ao conhecimento é um dever de todos; transmitir > conhecimento > >>> é um dever de quem tem." > >>> > >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e > >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > >>> "diversão." > >>> > >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > >>> possa ensinar" > >>> > >>> > >>> > >>> Em 14 de julho de 2010 05:32, Marco Lima > escreveu: > >>>> > >>>> Estou vendo se vai rolar o churrasco na minha casa no sábado, quem > sabe > >>>> nõa aparece. Mantenho atualizado aqui na lista. > >>>> > >>>> Marco Lima > >>>> braun.lima em gmail.com > >>>> im:mago em jabber-br.org > >>>> > >>>> Register Linux User #355235 > >>>> Slackware Linux, for the subgenius > >>>> > >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir > conhecimento > >>>> é um dever de quem tem." > >>>> > >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma > paixão. > >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora > e > >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > >>>> "diversão." > >>>> > >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que > não > >>>> possa ensinar" > >>>> > >>>> > >>>> > >>>> Em 14 de julho de 2010 05:25, breno escreveu: > >>>>> > >>>>> Legal! Infelizmente só chego de sexta pra sábado, então fico fora > dessa > >>>>> :-( > >>>>> > >>>>> []s > >>>>> > >>>>> -b > >>>>> > >>>>> 2010/7/14 Marco Lima : > >>>>> > Salve! > >>>>> > > >>>>> > Esta confirmado para quinta-feira, estou aguardando sugestões de > >>>>> > lugares. > >>>>> > > >>>>> > > >>>>> > Marco Lima > >>>>> > braun.lima em gmail.com > >>>>> > im:mago em jabber-br.org > >>>>> > > >>>>> > Register Linux User #355235 > >>>>> > Slackware Linux, for the subgenius > >>>>> > > >>>>> > "Ter acesso ao conhecimento é um dever de todos; transmitir > >>>>> > conhecimento é > >>>>> > um dever de quem tem." > >>>>> > > >>>>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma > >>>>> > paixão. Esta > >>>>> > paixão é, na realidade, uma atividade significativa, inspiradora e > >>>>> > prazerosa > >>>>> > para o indivíduo, seja ela rotulada como "trabalho" ou como > >>>>> > "diversão." > >>>>> > > >>>>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que > >>>>> > não > >>>>> > possa ensinar" > >>>>> > > >>>>> > > >>>>> > > >>>>> > Em 14 de julho de 2010 03:50, breno escreveu: > >>>>> >> > >>>>> >> E aí mago, novidades? > >>>>> >> > >>>>> >> 2010/7/11 Marco Lima : > >>>>> >> > Salve Monges: > >>>>> >> > > >>>>> >> > Essa semana chega ao Rio representantes de uma entidade > Espanhola > >>>>> >> > de > >>>>> >> > apoio > >>>>> >> > ao Software Livre, eles desenvolvem um excelente trabalho na > >>>>> >> > Espanha > >>>>> >> > principalmente na Galícia, e poderão ser um excelente contato e > >>>>> >> > parceiros > >>>>> >> > para o Rio.PM por isso estou convocando um ESX, ainda espero a > >>>>> >> > confirmação > >>>>> >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, > sugiro > >>>>> >> > as > >>>>> >> > opções > >>>>> >> > de locais. Como não conhecem o Rio, minha sugestão é algo entre > >>>>> >> > copacana > >>>>> >> > e > >>>>> >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em > >>>>> >> > Impanema, > >>>>> >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou outro. > >>>>> >> > Lembrando > >>>>> >> > que devemos fazer um esticada para Lapa depois. > >>>>> >> > > >>>>> >> > No dia 17 estou programando um churrasco na minha casa, que já > >>>>> >> > estam > >>>>> >> > todos > >>>>> >> > convidados, é só chegar. > >>>>> >> > > >>>>> >> > Abraços; > >>>>> >> > > >>>>> >> > > >>>>> >> > Marco Lima > >>>>> >> > braun.lima em gmail.com > >>>>> >> > im:mago em jabber-br.org > >>>>> >> > > >>>>> >> > Register Linux User #355235 > >>>>> >> > Slackware Linux, for the subgenius > >>>>> >> > > >>>>> >> > "Ter acesso ao conhecimento é um dever de todos; transmitir > >>>>> >> > conhecimento > >>>>> >> > é > >>>>> >> > um dever de quem tem." > >>>>> >> > > >>>>> >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma > >>>>> >> > paixão. > >>>>> >> > Esta > >>>>> >> > paixão é, na realidade, uma atividade significativa, inspiradora > e > >>>>> >> > prazerosa > >>>>> >> > para o indivíduo, seja ela rotulada como "trabalho" ou como > >>>>> >> > "diversão." > >>>>> >> > > >>>>> >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno > >>>>> >> > que não > >>>>> >> > possa ensinar" > >>>>> >> > > >>>>> >> > > >>>>> >> > _______________________________________________ > >>>>> >> > Rio-pm mailing list > >>>>> >> > Rio-pm em pm.org > >>>>> >> > http://mail.pm.org/mailman/listinfo/rio-pm > >>>>> >> > > >>>>> >> _______________________________________________ > >>>>> >> Rio-pm mailing list > >>>>> >> Rio-pm em pm.org > >>>>> >> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>> > > >>>>> > > >>>>> > _______________________________________________ > >>>>> > Rio-pm mailing list > >>>>> > Rio-pm em pm.org > >>>>> > http://mail.pm.org/mailman/listinfo/rio-pm > >>>>> > > >>>>> _______________________________________________ > >>>>> Rio-pm mailing list > >>>>> Rio-pm em pm.org > >>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>> > >>> > >>> > >>> _______________________________________________ > >>> Rio-pm mailing list > >>> Rio-pm em pm.org > >>> http://mail.pm.org/mailman/listinfo/rio-pm > >> > >> > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From braun.lima em gmail.com Thu Jul 15 05:49:55 2010 From: braun.lima em gmail.com (Marco Lima) Date: Thu, 15 Jul 2010 09:49:55 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: Message-ID: Devassa do Flamengo, apartir das 19:00h Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" 2010/7/15 Oscar Marques > Eu vou, so me dizer local e hora. > > 2010/7/15 João C. Coutinho > > Perlsoal, >> quem mais vai? _o/ >> [ ]'s, >> João >> >> >> >> >> >> 2010/7/14 Samir Cury : >> > Devassa do Flamengo, apartir das 19:00h >> > >> > Seria aquele em frente ao planalto do chopp(que inclusive tem uma pizza >> > fenomenal), creio eu, bem próximo ao largo do machado. >> > >> > Se o pessoal se animar, sugiro uma passada lá para comer uma pizza de >> atum, >> > ou portuguesa, ou "energia" hehe >> > >> > Abraços >> > >> > 2010/7/14 Oscar Marques >> >> >> >> Onde vai ser e que horas? >> >> >> >> 2010/7/14 Marco Lima >> >>> >> >>> Salve! >> >>> >> >>> Como ninguem se manifestou, vou postar para os que se interessarem em >> >>> comparecer, e quem sabe expandir seu network com entidades Espanholas, >> onde >> >>> encontramos um mercado bastante promissor para o Software Livre. >> >>> >> >>> Vou marcar com o pessoal no Devassa do Flamengo, apartir das 19:00h >> >>> >> >>> Att; >> >>> >> >>> Marco Lima >> >>> braun.lima em gmail.com >> >>> im:mago em jabber-br.org >> >>> >> >>> Register Linux User #355235 >> >>> Slackware Linux, for the subgenius >> >>> >> >>> "Ter acesso ao conhecimento é um dever de todos; transmitir >> conhecimento >> >>> é um dever de quem tem." >> >>> >> >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >> paixão. >> >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora >> e >> >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> >>> "diversão." >> >>> >> >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >> não >> >>> possa ensinar" >> >>> >> >>> >> >>> >> >>> Em 14 de julho de 2010 05:32, Marco Lima >> escreveu: >> >>>> >> >>>> Estou vendo se vai rolar o churrasco na minha casa no sábado, quem >> sabe >> >>>> nõa aparece. Mantenho atualizado aqui na lista. >> >>>> >> >>>> Marco Lima >> >>>> braun.lima em gmail.com >> >>>> im:mago em jabber-br.org >> >>>> >> >>>> Register Linux User #355235 >> >>>> Slackware Linux, for the subgenius >> >>>> >> >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir >> conhecimento >> >>>> é um dever de quem tem." >> >>>> >> >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >> paixão. >> >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora >> e >> >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> >>>> "diversão." >> >>>> >> >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >> não >> >>>> possa ensinar" >> >>>> >> >>>> >> >>>> >> >>>> Em 14 de julho de 2010 05:25, breno escreveu: >> >>>>> >> >>>>> Legal! Infelizmente só chego de sexta pra sábado, então fico fora >> dessa >> >>>>> :-( >> >>>>> >> >>>>> []s >> >>>>> >> >>>>> -b >> >>>>> >> >>>>> 2010/7/14 Marco Lima : >> >>>>> > Salve! >> >>>>> > >> >>>>> > Esta confirmado para quinta-feira, estou aguardando sugestões de >> >>>>> > lugares. >> >>>>> > >> >>>>> > >> >>>>> > Marco Lima >> >>>>> > braun.lima em gmail.com >> >>>>> > im:mago em jabber-br.org >> >>>>> > >> >>>>> > Register Linux User #355235 >> >>>>> > Slackware Linux, for the subgenius >> >>>>> > >> >>>>> > "Ter acesso ao conhecimento é um dever de todos; transmitir >> >>>>> > conhecimento é >> >>>>> > um dever de quem tem." >> >>>>> > >> >>>>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >> >>>>> > paixão. Esta >> >>>>> > paixão é, na realidade, uma atividade significativa, inspiradora e >> >>>>> > prazerosa >> >>>>> > para o indivíduo, seja ela rotulada como "trabalho" ou como >> >>>>> > "diversão." >> >>>>> > >> >>>>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno >> que >> >>>>> > não >> >>>>> > possa ensinar" >> >>>>> > >> >>>>> > >> >>>>> > >> >>>>> > Em 14 de julho de 2010 03:50, breno escreveu: >> >>>>> >> >> >>>>> >> E aí mago, novidades? >> >>>>> >> >> >>>>> >> 2010/7/11 Marco Lima : >> >>>>> >> > Salve Monges: >> >>>>> >> > >> >>>>> >> > Essa semana chega ao Rio representantes de uma entidade >> Espanhola >> >>>>> >> > de >> >>>>> >> > apoio >> >>>>> >> > ao Software Livre, eles desenvolvem um excelente trabalho na >> >>>>> >> > Espanha >> >>>>> >> > principalmente na Galícia, e poderão ser um excelente contato e >> >>>>> >> > parceiros >> >>>>> >> > para o Rio.PM por isso estou convocando um ESX, ainda espero a >> >>>>> >> > confirmação >> >>>>> >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, >> sugiro >> >>>>> >> > as >> >>>>> >> > opções >> >>>>> >> > de locais. Como não conhecem o Rio, minha sugestão é algo entre >> >>>>> >> > copacana >> >>>>> >> > e >> >>>>> >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em >> >>>>> >> > Impanema, >> >>>>> >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou >> outro. >> >>>>> >> > Lembrando >> >>>>> >> > que devemos fazer um esticada para Lapa depois. >> >>>>> >> > >> >>>>> >> > No dia 17 estou programando um churrasco na minha casa, que já >> >>>>> >> > estam >> >>>>> >> > todos >> >>>>> >> > convidados, é só chegar. >> >>>>> >> > >> >>>>> >> > Abraços; >> >>>>> >> > >> >>>>> >> > >> >>>>> >> > Marco Lima >> >>>>> >> > braun.lima em gmail.com >> >>>>> >> > im:mago em jabber-br.org >> >>>>> >> > >> >>>>> >> > Register Linux User #355235 >> >>>>> >> > Slackware Linux, for the subgenius >> >>>>> >> > >> >>>>> >> > "Ter acesso ao conhecimento é um dever de todos; transmitir >> >>>>> >> > conhecimento >> >>>>> >> > é >> >>>>> >> > um dever de quem tem." >> >>>>> >> > >> >>>>> >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >> >>>>> >> > paixão. >> >>>>> >> > Esta >> >>>>> >> > paixão é, na realidade, uma atividade significativa, >> inspiradora e >> >>>>> >> > prazerosa >> >>>>> >> > para o indivíduo, seja ela rotulada como "trabalho" ou como >> >>>>> >> > "diversão." >> >>>>> >> > >> >>>>> >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno >> >>>>> >> > que não >> >>>>> >> > possa ensinar" >> >>>>> >> > >> >>>>> >> > >> >>>>> >> > _______________________________________________ >> >>>>> >> > Rio-pm mailing list >> >>>>> >> > Rio-pm em pm.org >> >>>>> >> > http://mail.pm.org/mailman/listinfo/rio-pm >> >>>>> >> > >> >>>>> >> _______________________________________________ >> >>>>> >> Rio-pm mailing list >> >>>>> >> Rio-pm em pm.org >> >>>>> >> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>>> > >> >>>>> > >> >>>>> > _______________________________________________ >> >>>>> > Rio-pm mailing list >> >>>>> > Rio-pm em pm.org >> >>>>> > http://mail.pm.org/mailman/listinfo/rio-pm >> >>>>> > >> >>>>> _______________________________________________ >> >>>>> Rio-pm mailing list >> >>>>> Rio-pm em pm.org >> >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>> >> >>> >> >>> >> >>> _______________________________________________ >> >>> Rio-pm mailing list >> >>> Rio-pm em pm.org >> >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> >> >> >> _______________________________________________ >> >> Rio-pm mailing list >> >> Rio-pm em pm.org >> >> http://mail.pm.org/mailman/listinfo/rio-pm >> > >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From nuba em fastmail.fm Thu Jul 15 05:51:00 2010 From: nuba em fastmail.fm (Nuba Princigalli) Date: Thu, 15 Jul 2010 09:51:00 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: Message-ID: <1279198260.17735.1385016423@webmail.messagingengine.com> Caros, Eu não vou poder ir, mas registro um parabéns ao Mago por fazer essa ponte e trazer esse pessoal aqui! Muito bacana! Nuba On Thu, 15 Jul 2010 09:27 -0300, "João C. Coutinho" wrote: > Perlsoal, > quem mais vai? _o/ > [ ]'s, > João > > > > > > 2010/7/14 Samir Cury : > > Devassa do Flamengo, apartir das 19:00h > > > > Seria aquele em frente ao planalto do chopp(que inclusive tem uma pizza > > fenomenal), creio eu, bem próximo ao largo do machado. > > > > Se o pessoal se animar, sugiro uma passada lá para comer uma pizza de atum, > > ou portuguesa, ou "energia" hehe > > > > Abraços > > > > 2010/7/14 Oscar Marques > >> > >> Onde vai ser e que horas? > >> > >> 2010/7/14 Marco Lima > >>> > >>> Salve! > >>> > >>> Como ninguem se manifestou, vou postar para os que se interessarem em > >>> comparecer, e quem sabe expandir seu network com entidades Espanholas, onde > >>> encontramos um mercado bastante promissor para o Software Livre. > >>> > >>> Vou marcar com o pessoal no Devassa do Flamengo, apartir das 19:00h > >>> > >>> Att; > >>> > >>> Marco Lima > >>> braun.lima em gmail.com > >>> im:mago em jabber-br.org > >>> > >>> Register Linux User #355235 > >>> Slackware Linux, for the subgenius > >>> > >>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento > >>> é um dever de quem tem." > >>> > >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e > >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > >>> "diversão." > >>> > >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > >>> possa ensinar" > >>> > >>> > >>> > >>> Em 14 de julho de 2010 05:32, Marco Lima escreveu: > >>>> > >>>> Estou vendo se vai rolar o churrasco na minha casa no sábado, quem sabe > >>>> nõa aparece. Mantenho atualizado aqui na lista. > >>>> > >>>> Marco Lima > >>>> braun.lima em gmail.com > >>>> im:mago em jabber-br.org > >>>> > >>>> Register Linux User #355235 > >>>> Slackware Linux, for the subgenius > >>>> > >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento > >>>> é um dever de quem tem." > >>>> > >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e > >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > >>>> "diversão." > >>>> > >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > >>>> possa ensinar" > >>>> > >>>> > >>>> > >>>> Em 14 de julho de 2010 05:25, breno escreveu: > >>>>> > >>>>> Legal! Infelizmente só chego de sexta pra sábado, então fico fora dessa > >>>>> :-( > >>>>> > >>>>> []s > >>>>> > >>>>> -b > >>>>> > >>>>> 2010/7/14 Marco Lima : > >>>>> > Salve! > >>>>> > > >>>>> > Esta confirmado para quinta-feira, estou aguardando sugestões de > >>>>> > lugares. > >>>>> > > >>>>> > > >>>>> > Marco Lima > >>>>> > braun.lima em gmail.com > >>>>> > im:mago em jabber-br.org > >>>>> > > >>>>> > Register Linux User #355235 > >>>>> > Slackware Linux, for the subgenius > >>>>> > > >>>>> > "Ter acesso ao conhecimento é um dever de todos; transmitir > >>>>> > conhecimento é > >>>>> > um dever de quem tem." > >>>>> > > >>>>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma > >>>>> > paixão. Esta > >>>>> > paixão é, na realidade, uma atividade significativa, inspiradora e > >>>>> > prazerosa > >>>>> > para o indivíduo, seja ela rotulada como "trabalho" ou como > >>>>> > "diversão." > >>>>> > > >>>>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que > >>>>> > não > >>>>> > possa ensinar" > >>>>> > > >>>>> > > >>>>> > > >>>>> > Em 14 de julho de 2010 03:50, breno escreveu: > >>>>> >> > >>>>> >> E aí mago, novidades? > >>>>> >> > >>>>> >> 2010/7/11 Marco Lima : > >>>>> >> > Salve Monges: > >>>>> >> > > >>>>> >> > Essa semana chega ao Rio representantes de uma entidade Espanhola > >>>>> >> > de > >>>>> >> > apoio > >>>>> >> > ao Software Livre, eles desenvolvem um excelente trabalho na > >>>>> >> > Espanha > >>>>> >> > principalmente na Galícia, e poderão ser um excelente contato e > >>>>> >> > parceiros > >>>>> >> > para o Rio.PM por isso estou convocando um ESX, ainda espero a > >>>>> >> > confirmação > >>>>> >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, sugiro > >>>>> >> > as > >>>>> >> > opções > >>>>> >> > de locais. Como não conhecem o Rio, minha sugestão é algo entre > >>>>> >> > copacana > >>>>> >> > e > >>>>> >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em > >>>>> >> > Impanema, > >>>>> >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou outro. > >>>>> >> > Lembrando > >>>>> >> > que devemos fazer um esticada para Lapa depois. > >>>>> >> > > >>>>> >> > No dia 17 estou programando um churrasco na minha casa, que já > >>>>> >> > estam > >>>>> >> > todos > >>>>> >> > convidados, é só chegar. > >>>>> >> > > >>>>> >> > Abraços; > >>>>> >> > > >>>>> >> > > >>>>> >> > Marco Lima > >>>>> >> > braun.lima em gmail.com > >>>>> >> > im:mago em jabber-br.org > >>>>> >> > > >>>>> >> > Register Linux User #355235 > >>>>> >> > Slackware Linux, for the subgenius > >>>>> >> > > >>>>> >> > "Ter acesso ao conhecimento é um dever de todos; transmitir > >>>>> >> > conhecimento > >>>>> >> > é > >>>>> >> > um dever de quem tem." > >>>>> >> > > >>>>> >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma > >>>>> >> > paixão. > >>>>> >> > Esta > >>>>> >> > paixão é, na realidade, uma atividade significativa, inspiradora e > >>>>> >> > prazerosa > >>>>> >> > para o indivíduo, seja ela rotulada como "trabalho" ou como > >>>>> >> > "diversão." > >>>>> >> > > >>>>> >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno > >>>>> >> > que não > >>>>> >> > possa ensinar" > >>>>> >> > > >>>>> >> > > >>>>> >> > _______________________________________________ > >>>>> >> > Rio-pm mailing list > >>>>> >> > Rio-pm em pm.org > >>>>> >> > http://mail.pm.org/mailman/listinfo/rio-pm > >>>>> >> > > >>>>> >> _______________________________________________ > >>>>> >> Rio-pm mailing list > >>>>> >> Rio-pm em pm.org > >>>>> >> http://mail.pm.org/mailman/listinfo/rio-pm > >>>>> > > >>>>> > > >>>>> > _______________________________________________ > >>>>> > Rio-pm mailing list > >>>>> > Rio-pm em pm.org > >>>>> > http://mail.pm.org/mailman/listinfo/rio-pm > >>>>> > > >>>>> _______________________________________________ > >>>>> Rio-pm mailing list > >>>>> Rio-pm em pm.org > >>>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>> > >>> > >>> > >>> _______________________________________________ > >>> Rio-pm mailing list > >>> Rio-pm em pm.org > >>> http://mail.pm.org/mailman/listinfo/rio-pm > >> > >> > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Nuba Princigalli nuba em fastmail.fm From fernandocorrea em gmail.com Thu Jul 15 09:30:03 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Thu, 15 Jul 2010 13:30:03 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: <1279198260.17735.1385016423@webmail.messagingengine.com> References: <1279198260.17735.1385016423@webmail.messagingengine.com> Message-ID: Mago, é hj, 5a feira? Just another Perl Hacker, Fernando (SmokeMachine) http://perl-e.org Em 15 de julho de 2010 09:51, Nuba Princigalli escreveu: > Caros, > > Eu não vou poder ir, mas registro um parabéns ao Mago > por fazer essa ponte e trazer esse pessoal aqui! > Muito bacana! > > Nuba > > On Thu, 15 Jul 2010 09:27 -0300, "João C. Coutinho" > wrote: > > Perlsoal, > > quem mais vai? _o/ > > [ ]'s, > > João > > > > > > > > > > > > 2010/7/14 Samir Cury : > > > Devassa do Flamengo, apartir das 19:00h > > > > > > Seria aquele em frente ao planalto do chopp(que inclusive tem uma pizza > > > fenomenal), creio eu, bem próximo ao largo do machado. > > > > > > Se o pessoal se animar, sugiro uma passada lá para comer uma pizza de > atum, > > > ou portuguesa, ou "energia" hehe > > > > > > Abraços > > > > > > 2010/7/14 Oscar Marques > > >> > > >> Onde vai ser e que horas? > > >> > > >> 2010/7/14 Marco Lima > > >>> > > >>> Salve! > > >>> > > >>> Como ninguem se manifestou, vou postar para os que se interessarem em > > >>> comparecer, e quem sabe expandir seu network com entidades > Espanholas, onde > > >>> encontramos um mercado bastante promissor para o Software Livre. > > >>> > > >>> Vou marcar com o pessoal no Devassa do Flamengo, apartir das 19:00h > > >>> > > >>> Att; > > >>> > > >>> Marco Lima > > >>> braun.lima em gmail.com > > >>> im:mago em jabber-br.org > > >>> > > >>> Register Linux User #355235 > > >>> Slackware Linux, for the subgenius > > >>> > > >>> "Ter acesso ao conhecimento é um dever de todos; transmitir > conhecimento > > >>> é um dever de quem tem." > > >>> > > >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma > paixão. > > >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora > e > > >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > > >>> "diversão." > > >>> > > >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que > não > > >>> possa ensinar" > > >>> > > >>> > > >>> > > >>> Em 14 de julho de 2010 05:32, Marco Lima > escreveu: > > >>>> > > >>>> Estou vendo se vai rolar o churrasco na minha casa no sábado, quem > sabe > > >>>> nõa aparece. Mantenho atualizado aqui na lista. > > >>>> > > >>>> Marco Lima > > >>>> braun.lima em gmail.com > > >>>> im:mago em jabber-br.org > > >>>> > > >>>> Register Linux User #355235 > > >>>> Slackware Linux, for the subgenius > > >>>> > > >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir > conhecimento > > >>>> é um dever de quem tem." > > >>>> > > >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma > paixão. > > >>>> Esta paixão é, na realidade, uma atividade significativa, > inspiradora e > > >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou > como > > >>>> "diversão." > > >>>> > > >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que > não > > >>>> possa ensinar" > > >>>> > > >>>> > > >>>> > > >>>> Em 14 de julho de 2010 05:25, breno escreveu: > > >>>>> > > >>>>> Legal! Infelizmente só chego de sexta pra sábado, então fico fora > dessa > > >>>>> :-( > > >>>>> > > >>>>> []s > > >>>>> > > >>>>> -b > > >>>>> > > >>>>> 2010/7/14 Marco Lima : > > >>>>> > Salve! > > >>>>> > > > >>>>> > Esta confirmado para quinta-feira, estou aguardando sugestões de > > >>>>> > lugares. > > >>>>> > > > >>>>> > > > >>>>> > Marco Lima > > >>>>> > braun.lima em gmail.com > > >>>>> > im:mago em jabber-br.org > > >>>>> > > > >>>>> > Register Linux User #355235 > > >>>>> > Slackware Linux, for the subgenius > > >>>>> > > > >>>>> > "Ter acesso ao conhecimento é um dever de todos; transmitir > > >>>>> > conhecimento é > > >>>>> > um dever de quem tem." > > >>>>> > > > >>>>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma > > >>>>> > paixão. Esta > > >>>>> > paixão é, na realidade, uma atividade significativa, inspiradora > e > > >>>>> > prazerosa > > >>>>> > para o indivíduo, seja ela rotulada como "trabalho" ou como > > >>>>> > "diversão." > > >>>>> > > > >>>>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno > que > > >>>>> > não > > >>>>> > possa ensinar" > > >>>>> > > > >>>>> > > > >>>>> > > > >>>>> > Em 14 de julho de 2010 03:50, breno escreveu: > > >>>>> >> > > >>>>> >> E aí mago, novidades? > > >>>>> >> > > >>>>> >> 2010/7/11 Marco Lima : > > >>>>> >> > Salve Monges: > > >>>>> >> > > > >>>>> >> > Essa semana chega ao Rio representantes de uma entidade > Espanhola > > >>>>> >> > de > > >>>>> >> > apoio > > >>>>> >> > ao Software Livre, eles desenvolvem um excelente trabalho na > > >>>>> >> > Espanha > > >>>>> >> > principalmente na Galícia, e poderão ser um excelente contato > e > > >>>>> >> > parceiros > > >>>>> >> > para o Rio.PM por isso estou convocando um ESX, ainda espero a > > >>>>> >> > confirmação > > >>>>> >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, > sugiro > > >>>>> >> > as > > >>>>> >> > opções > > >>>>> >> > de locais. Como não conhecem o Rio, minha sugestão é algo > entre > > >>>>> >> > copacana > > >>>>> >> > e > > >>>>> >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em > > >>>>> >> > Impanema, > > >>>>> >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou > outro. > > >>>>> >> > Lembrando > > >>>>> >> > que devemos fazer um esticada para Lapa depois. > > >>>>> >> > > > >>>>> >> > No dia 17 estou programando um churrasco na minha casa, que já > > >>>>> >> > estam > > >>>>> >> > todos > > >>>>> >> > convidados, é só chegar. > > >>>>> >> > > > >>>>> >> > Abraços; > > >>>>> >> > > > >>>>> >> > > > >>>>> >> > Marco Lima > > >>>>> >> > braun.lima em gmail.com > > >>>>> >> > im:mago em jabber-br.org > > >>>>> >> > > > >>>>> >> > Register Linux User #355235 > > >>>>> >> > Slackware Linux, for the subgenius > > >>>>> >> > > > >>>>> >> > "Ter acesso ao conhecimento é um dever de todos; transmitir > > >>>>> >> > conhecimento > > >>>>> >> > é > > >>>>> >> > um dever de quem tem." > > >>>>> >> > > > >>>>> >> > "Na visão do hacker, o sentido da vida está em dedicar-se a > uma > > >>>>> >> > paixão. > > >>>>> >> > Esta > > >>>>> >> > paixão é, na realidade, uma atividade significativa, > inspiradora e > > >>>>> >> > prazerosa > > >>>>> >> > para o indivíduo, seja ela rotulada como "trabalho" ou como > > >>>>> >> > "diversão." > > >>>>> >> > > > >>>>> >> > "Ninguém é tão grande que não possa aprender, e nem tão > pequeno > > >>>>> >> > que não > > >>>>> >> > possa ensinar" > > >>>>> >> > > > >>>>> >> > > > >>>>> >> > _______________________________________________ > > >>>>> >> > Rio-pm mailing list > > >>>>> >> > Rio-pm em pm.org > > >>>>> >> > http://mail.pm.org/mailman/listinfo/rio-pm > > >>>>> >> > > > >>>>> >> _______________________________________________ > > >>>>> >> Rio-pm mailing list > > >>>>> >> Rio-pm em pm.org > > >>>>> >> http://mail.pm.org/mailman/listinfo/rio-pm > > >>>>> > > > >>>>> > > > >>>>> > _______________________________________________ > > >>>>> > Rio-pm mailing list > > >>>>> > Rio-pm em pm.org > > >>>>> > http://mail.pm.org/mailman/listinfo/rio-pm > > >>>>> > > > >>>>> _______________________________________________ > > >>>>> Rio-pm mailing list > > >>>>> Rio-pm em pm.org > > >>>>> http://mail.pm.org/mailman/listinfo/rio-pm > > >>>> > > >>> > > >>> > > >>> _______________________________________________ > > >>> Rio-pm mailing list > > >>> Rio-pm em pm.org > > >>> http://mail.pm.org/mailman/listinfo/rio-pm > > >> > > >> > > >> _______________________________________________ > > >> Rio-pm mailing list > > >> Rio-pm em pm.org > > >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > > > > _______________________________________________ > > > Rio-pm mailing list > > > Rio-pm em pm.org > > > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > -- > Nuba Princigalli > nuba em fastmail.fm > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From braun.lima em gmail.com Thu Jul 15 10:05:20 2010 From: braun.lima em gmail.com (Marco Lima) Date: Thu, 15 Jul 2010 14:05:20 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: <1279198260.17735.1385016423@webmail.messagingengine.com> Message-ID: Salve! Sim é hoje quinta-feira 15 de julho de 2010 !!!! Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" 2010/7/15 Fernando Oliveira > Mago, > > é hj, 5a feira? > > Just another Perl Hacker, > Fernando (SmokeMachine) > http://perl-e.org > > > Em 15 de julho de 2010 09:51, Nuba Princigalli escreveu: > > Caros, >> >> Eu não vou poder ir, mas registro um parabéns ao Mago >> por fazer essa ponte e trazer esse pessoal aqui! >> Muito bacana! >> >> Nuba >> >> On Thu, 15 Jul 2010 09:27 -0300, "João C. Coutinho" >> wrote: >> > Perlsoal, >> > quem mais vai? _o/ >> > [ ]'s, >> > João >> > >> > >> > >> > >> > >> > 2010/7/14 Samir Cury : >> > > Devassa do Flamengo, apartir das 19:00h >> > > >> > > Seria aquele em frente ao planalto do chopp(que inclusive tem uma >> pizza >> > > fenomenal), creio eu, bem próximo ao largo do machado. >> > > >> > > Se o pessoal se animar, sugiro uma passada lá para comer uma pizza de >> atum, >> > > ou portuguesa, ou "energia" hehe >> > > >> > > Abraços >> > > >> > > 2010/7/14 Oscar Marques >> > >> >> > >> Onde vai ser e que horas? >> > >> >> > >> 2010/7/14 Marco Lima >> > >>> >> > >>> Salve! >> > >>> >> > >>> Como ninguem se manifestou, vou postar para os que se interessarem >> em >> > >>> comparecer, e quem sabe expandir seu network com entidades >> Espanholas, onde >> > >>> encontramos um mercado bastante promissor para o Software Livre. >> > >>> >> > >>> Vou marcar com o pessoal no Devassa do Flamengo, apartir das 19:00h >> > >>> >> > >>> Att; >> > >>> >> > >>> Marco Lima >> > >>> braun.lima em gmail.com >> > >>> im:mago em jabber-br.org >> > >>> >> > >>> Register Linux User #355235 >> > >>> Slackware Linux, for the subgenius >> > >>> >> > >>> "Ter acesso ao conhecimento é um dever de todos; transmitir >> conhecimento >> > >>> é um dever de quem tem." >> > >>> >> > >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >> paixão. >> > >>> Esta paixão é, na realidade, uma atividade significativa, >> inspiradora e >> > >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou >> como >> > >>> "diversão." >> > >>> >> > >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >> não >> > >>> possa ensinar" >> > >>> >> > >>> >> > >>> >> > >>> Em 14 de julho de 2010 05:32, Marco Lima >> escreveu: >> > >>>> >> > >>>> Estou vendo se vai rolar o churrasco na minha casa no sábado, quem >> sabe >> > >>>> nõa aparece. Mantenho atualizado aqui na lista. >> > >>>> >> > >>>> Marco Lima >> > >>>> braun.lima em gmail.com >> > >>>> im:mago em jabber-br.org >> > >>>> >> > >>>> Register Linux User #355235 >> > >>>> Slackware Linux, for the subgenius >> > >>>> >> > >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir >> conhecimento >> > >>>> é um dever de quem tem." >> > >>>> >> > >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >> paixão. >> > >>>> Esta paixão é, na realidade, uma atividade significativa, >> inspiradora e >> > >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou >> como >> > >>>> "diversão." >> > >>>> >> > >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >> não >> > >>>> possa ensinar" >> > >>>> >> > >>>> >> > >>>> >> > >>>> Em 14 de julho de 2010 05:25, breno escreveu: >> > >>>>> >> > >>>>> Legal! Infelizmente só chego de sexta pra sábado, então fico fora >> dessa >> > >>>>> :-( >> > >>>>> >> > >>>>> []s >> > >>>>> >> > >>>>> -b >> > >>>>> >> > >>>>> 2010/7/14 Marco Lima : >> > >>>>> > Salve! >> > >>>>> > >> > >>>>> > Esta confirmado para quinta-feira, estou aguardando sugestões de >> > >>>>> > lugares. >> > >>>>> > >> > >>>>> > >> > >>>>> > Marco Lima >> > >>>>> > braun.lima em gmail.com >> > >>>>> > im:mago em jabber-br.org >> > >>>>> > >> > >>>>> > Register Linux User #355235 >> > >>>>> > Slackware Linux, for the subgenius >> > >>>>> > >> > >>>>> > "Ter acesso ao conhecimento é um dever de todos; transmitir >> > >>>>> > conhecimento é >> > >>>>> > um dever de quem tem." >> > >>>>> > >> > >>>>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >> > >>>>> > paixão. Esta >> > >>>>> > paixão é, na realidade, uma atividade significativa, inspiradora >> e >> > >>>>> > prazerosa >> > >>>>> > para o indivíduo, seja ela rotulada como "trabalho" ou como >> > >>>>> > "diversão." >> > >>>>> > >> > >>>>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno >> que >> > >>>>> > não >> > >>>>> > possa ensinar" >> > >>>>> > >> > >>>>> > >> > >>>>> > >> > >>>>> > Em 14 de julho de 2010 03:50, breno >> escreveu: >> > >>>>> >> >> > >>>>> >> E aí mago, novidades? >> > >>>>> >> >> > >>>>> >> 2010/7/11 Marco Lima : >> > >>>>> >> > Salve Monges: >> > >>>>> >> > >> > >>>>> >> > Essa semana chega ao Rio representantes de uma entidade >> Espanhola >> > >>>>> >> > de >> > >>>>> >> > apoio >> > >>>>> >> > ao Software Livre, eles desenvolvem um excelente trabalho na >> > >>>>> >> > Espanha >> > >>>>> >> > principalmente na Galícia, e poderão ser um excelente contato >> e >> > >>>>> >> > parceiros >> > >>>>> >> > para o Rio.PM por isso estou convocando um ESX, ainda espero >> a >> > >>>>> >> > confirmação >> > >>>>> >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, >> sugiro >> > >>>>> >> > as >> > >>>>> >> > opções >> > >>>>> >> > de locais. Como não conhecem o Rio, minha sugestão é algo >> entre >> > >>>>> >> > copacana >> > >>>>> >> > e >> > >>>>> >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy em >> > >>>>> >> > Impanema, >> > >>>>> >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou >> outro. >> > >>>>> >> > Lembrando >> > >>>>> >> > que devemos fazer um esticada para Lapa depois. >> > >>>>> >> > >> > >>>>> >> > No dia 17 estou programando um churrasco na minha casa, que >> já >> > >>>>> >> > estam >> > >>>>> >> > todos >> > >>>>> >> > convidados, é só chegar. >> > >>>>> >> > >> > >>>>> >> > Abraços; >> > >>>>> >> > >> > >>>>> >> > >> > >>>>> >> > Marco Lima >> > >>>>> >> > braun.lima em gmail.com >> > >>>>> >> > im:mago em jabber-br.org >> > >>>>> >> > >> > >>>>> >> > Register Linux User #355235 >> > >>>>> >> > Slackware Linux, for the subgenius >> > >>>>> >> > >> > >>>>> >> > "Ter acesso ao conhecimento é um dever de todos; transmitir >> > >>>>> >> > conhecimento >> > >>>>> >> > é >> > >>>>> >> > um dever de quem tem." >> > >>>>> >> > >> > >>>>> >> > "Na visão do hacker, o sentido da vida está em dedicar-se a >> uma >> > >>>>> >> > paixão. >> > >>>>> >> > Esta >> > >>>>> >> > paixão é, na realidade, uma atividade significativa, >> inspiradora e >> > >>>>> >> > prazerosa >> > >>>>> >> > para o indivíduo, seja ela rotulada como "trabalho" ou como >> > >>>>> >> > "diversão." >> > >>>>> >> > >> > >>>>> >> > "Ninguém é tão grande que não possa aprender, e nem tão >> pequeno >> > >>>>> >> > que não >> > >>>>> >> > possa ensinar" >> > >>>>> >> > >> > >>>>> >> > >> > >>>>> >> > _______________________________________________ >> > >>>>> >> > Rio-pm mailing list >> > >>>>> >> > Rio-pm em pm.org >> > >>>>> >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >>>>> >> > >> > >>>>> >> _______________________________________________ >> > >>>>> >> Rio-pm mailing list >> > >>>>> >> Rio-pm em pm.org >> > >>>>> >> http://mail.pm.org/mailman/listinfo/rio-pm >> > >>>>> > >> > >>>>> > >> > >>>>> > _______________________________________________ >> > >>>>> > Rio-pm mailing list >> > >>>>> > Rio-pm em pm.org >> > >>>>> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >>>>> > >> > >>>>> _______________________________________________ >> > >>>>> Rio-pm mailing list >> > >>>>> Rio-pm em pm.org >> > >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >> > >>>> >> > >>> >> > >>> >> > >>> _______________________________________________ >> > >>> Rio-pm mailing list >> > >>> Rio-pm em pm.org >> > >>> http://mail.pm.org/mailman/listinfo/rio-pm >> > >> >> > >> >> > >> _______________________________________________ >> > >> Rio-pm mailing list >> > >> Rio-pm em pm.org >> > >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > >> > > >> > > _______________________________________________ >> > > Rio-pm mailing list >> > > Rio-pm em pm.org >> > > http://mail.pm.org/mailman/listinfo/rio-pm >> > > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> -- >> Nuba Princigalli >> nuba em fastmail.fm >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From indiox em gentoobr.org Thu Jul 15 10:50:39 2010 From: indiox em gentoobr.org (Claudio Pereira) Date: Thu, 15 Jul 2010 14:50:39 -0300 Subject: [Rio-pm] [OT] sistema de padaria em java :P Message-ID: http://guj.com.br/posts/list/212287.java huahauahuaha! [ ]'s Indio. -- Claudio Pereira aka IndioX GentooBR - http://gentoobr.org mailto: indiox em gentoobr.org --------------------------------------------- Gentoo Documentation Member http://gdp.gentoo.org From eu em samircury.eng.br Thu Jul 15 11:02:20 2010 From: eu em samircury.eng.br (Samir Cury) Date: Thu, 15 Jul 2010 15:02:20 -0300 Subject: [Rio-pm] [OT] sistema de padaria em java :P In-Reply-To: References: Message-ID: Ri muito! "Você está falando sério? Criar uma tabela e uma cacetada de métodos para cada cliente? Estou fazendo de conta que não vi isso. " On Thu, Jul 15, 2010 at 2:50 PM, Claudio Pereira wrote: > http://guj.com.br/posts/list/212287.java > > huahauahuaha! > > [ ]'s Indio. > > -- > Claudio Pereira aka IndioX > GentooBR - http://gentoobr.org > mailto: indiox em gentoobr.org > --------------------------------------------- > Gentoo Documentation Member > http://gdp.gentoo.org > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From andregarciacarneiro em gmail.com Thu Jul 15 11:05:37 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Thu, 15 Jul 2010 15:05:37 -0300 Subject: [Rio-pm] [OT] sistema de padaria em java :P In-Reply-To: References: Message-ID: Não sei se rio ou choro ... Imagino quanto esse cara deve estar cobrando para fazer isso , e quão idiota deve ser a pessoa que o contratou confiando que um imbecil desses pudesse resolver algo tão crucial para o negócio, e ainda se achando espertão por ter contratado alguém por tão pouco. Normalmente nessas situações é esse o cenário que eu vejo. O pior é que tem enganadores desse tipo por toda a parte e para todos os 'sabores'( inclusive Perl ). Cheers! 2010/7/15 Claudio Pereira > http://guj.com.br/posts/list/212287.java > > huahauahuaha! > > [ ]'s Indio. > > -- > Claudio Pereira aka IndioX > GentooBR - http://gentoobr.org > mailto: indiox em gentoobr.org > --------------------------------------------- > Gentoo Documentation Member > http://gdp.gentoo.org > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Thu Jul 15 11:06:01 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Thu, 15 Jul 2010 15:06:01 -0300 Subject: [Rio-pm] [OT] sistema de padaria em java :P In-Reply-To: References: Message-ID: Pior q este cara pode estar falando sério... o que me dá muito medo. 2010/7/15 Samir Cury : > Ri muito! > > "Você está falando sério? Criar uma tabela e uma cacetada de métodos para > cada cliente? Estou fazendo de conta que não vi isso. " > > On Thu, Jul 15, 2010 at 2:50 PM, Claudio Pereira > wrote: >> >> http://guj.com.br/posts/list/212287.java >> >> huahauahuaha! >> >> [  ]'s Indio. >> >> -- >> Claudio Pereira aka IndioX >> GentooBR - http://gentoobr.org >> mailto: indiox em gentoobr.org >> --------------------------------------------- >> Gentoo Documentation Member >> http://gdp.gentoo.org >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br From danltmz.dev em gmail.com Thu Jul 15 13:16:28 2010 From: danltmz.dev em gmail.com (Danillo Souza) Date: Thu, 15 Jul 2010 17:16:28 -0300 Subject: [Rio-pm] Digest Rio-pm, volume 65, assunto 39 In-Reply-To: References: Message-ID: Só pode ser sacanagem oO morri pasodkasdpokasdpo > http://guj.com.br/posts/list/212287.java > > huahauahuaha! > > [ ]'s Indio. > > -- > Claudio Pereira aka IndioX > GentooBR - http://gentoobr.org > mailto: indiox em gentoobr.org > --------------------------------------------- > Gentoo Documentation Member > http://gdp.gentoo.org > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From samuelbretas em gmail.com Thu Jul 15 13:36:55 2010 From: samuelbretas em gmail.com (Samuel Bretas) Date: Thu, 15 Jul 2010 17:36:55 -0300 Subject: [Rio-pm] [OT] sistema de padaria em java :P In-Reply-To: References: Message-ID: Rssssssssssss muito engraçado o pior de tudo que nem precisa ser programador para saber que o que o cara planejou é tremendamente errado. rssssss Deve ser um sobrinho da vida rssssssssss O legal é que nao é em php rsss pois iriam colocar a culpa no coitado rsssssssssss 2010/7/15 Tiago Peczenyj > Pior q este cara pode estar falando sério... o que me dá muito medo. > > 2010/7/15 Samir Cury : > > Ri muito! > > > > "Você está falando sério? Criar uma tabela e uma cacetada de métodos para > > cada cliente? Estou fazendo de conta que não vi isso. " > > > > On Thu, Jul 15, 2010 at 2:50 PM, Claudio Pereira > > wrote: > >> > >> http://guj.com.br/posts/list/212287.java > >> > >> huahauahuaha! > >> > >> [ ]'s Indio. > >> > >> -- > >> Claudio Pereira aka IndioX > >> GentooBR - http://gentoobr.org > >> mailto: indiox em gentoobr.org > >> --------------------------------------------- > >> Gentoo Documentation Member > >> http://gdp.gentoo.org > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > -- > Tiago B. Peczenyj > Linux User #405772 > > http://pacman.blog.br > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From wallace em reis.org.br Thu Jul 15 13:49:56 2010 From: wallace em reis.org.br (Wallace Reis) Date: Thu, 15 Jul 2010 17:49:56 -0300 Subject: [Rio-pm] [OT] sistema de padaria em java :P In-Reply-To: References: Message-ID: <22DF3604-463D-403B-977D-6693D0649755@reis.org.br> On 15/07/2010, at 14:50, Claudio Pereira wrote: > http://guj.com.br/posts/list/212287.java > > huahauahuaha! Isto me lembrou um colega de faculdade que na primeira cadeira de linguagens de programação fez algo semelhante. Ab, -- wallace reis/wreis http://www.linkedin.com/in/wallacereis From andregarciacarneiro em gmail.com Thu Jul 15 13:55:40 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Thu, 15 Jul 2010 17:55:40 -0300 Subject: [Rio-pm] [OT] sistema de padaria em java :P In-Reply-To: <22DF3604-463D-403B-977D-6693D0649755@reis.org.br> References: <22DF3604-463D-403B-977D-6693D0649755@reis.org.br> Message-ID: Mas ele estava na faculdade... aprendendo... Cheers! Em 15 de julho de 2010 17:49, Wallace Reis escreveu: > On 15/07/2010, at 14:50, Claudio Pereira wrote: > > http://guj.com.br/posts/list/212287.java > > > > huahauahuaha! > > Isto me lembrou um colega de faculdade que na primeira cadeira de > linguagens de programação fez algo semelhante. > > Ab, > > -- > wallace reis/wreis http://www.linkedin.com/in/wallacereis > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From diana.g.a.rosa em gmail.com Thu Jul 15 14:39:27 2010 From: diana.g.a.rosa em gmail.com (Diana Rosa) Date: Thu, 15 Jul 2010 18:39:27 -0300 Subject: [Rio-pm] [OT] sistema de padaria em java :P In-Reply-To: References: <22DF3604-463D-403B-977D-6693D0649755@reis.org.br> Message-ID: Em http://thedailywtf.com/ : public boolean isBooleanFalse(boolean value) { boolean response = false; if (value == true) { response = false; } else { response = true; } return response; } XD Abs! 2010/7/15 Andre Carneiro > Mas ele estava na faculdade... aprendendo... > > > > Cheers! > > > Em 15 de julho de 2010 17:49, Wallace Reis escreveu: > > On 15/07/2010, at 14:50, Claudio Pereira wrote: >> > http://guj.com.br/posts/list/212287.java >> > >> > huahauahuaha! >> >> Isto me lembrou um colega de faculdade que na primeira cadeira de >> linguagens de programação fez algo semelhante. >> >> Ab, >> >> -- >> wallace reis/wreis http://www.linkedin.com/in/wallacereis >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > André Garcia Carneiro > Analista/Desenvolvedor Perl > (11)82907780 > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Fri Jul 16 06:15:03 2010 From: eu em samircury.eng.br (Samir Cury) Date: Fri, 16 Jul 2010 10:15:03 -0300 Subject: [Rio-pm] Entidade Espanhola de Empresas de Software Livre In-Reply-To: References: <1279198260.17735.1385016423@webmail.messagingengine.com> Message-ID: Apesar de ter ficado pouco, foi maneiro, várias histórias de angola, transmissores de TV mandando filme pornô na globo e é claro, software livre =) Alguém mais vai subir do Rio para o churrasco? Vamos marcar! Abraços, Samir 2010/7/15 Marco Lima > Salve! > > Sim é hoje quinta-feira 15 de julho de 2010 !!!! > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > 2010/7/15 Fernando Oliveira > > Mago, >> >> é hj, 5a feira? >> >> Just another Perl Hacker, >> Fernando (SmokeMachine) >> http://perl-e.org >> >> >> Em 15 de julho de 2010 09:51, Nuba Princigalli escreveu: >> >> Caros, >>> >>> Eu não vou poder ir, mas registro um parabéns ao Mago >>> por fazer essa ponte e trazer esse pessoal aqui! >>> Muito bacana! >>> >>> Nuba >>> >>> On Thu, 15 Jul 2010 09:27 -0300, "João C. Coutinho" >>> wrote: >>> > Perlsoal, >>> > quem mais vai? _o/ >>> > [ ]'s, >>> > João >>> > >>> > >>> > >>> > >>> > >>> > 2010/7/14 Samir Cury : >>> > > Devassa do Flamengo, apartir das 19:00h >>> > > >>> > > Seria aquele em frente ao planalto do chopp(que inclusive tem uma >>> pizza >>> > > fenomenal), creio eu, bem próximo ao largo do machado. >>> > > >>> > > Se o pessoal se animar, sugiro uma passada lá para comer uma pizza de >>> atum, >>> > > ou portuguesa, ou "energia" hehe >>> > > >>> > > Abraços >>> > > >>> > > 2010/7/14 Oscar Marques >>> > >> >>> > >> Onde vai ser e que horas? >>> > >> >>> > >> 2010/7/14 Marco Lima >>> > >>> >>> > >>> Salve! >>> > >>> >>> > >>> Como ninguem se manifestou, vou postar para os que se interessarem >>> em >>> > >>> comparecer, e quem sabe expandir seu network com entidades >>> Espanholas, onde >>> > >>> encontramos um mercado bastante promissor para o Software Livre. >>> > >>> >>> > >>> Vou marcar com o pessoal no Devassa do Flamengo, apartir das 19:00h >>> > >>> >>> > >>> Att; >>> > >>> >>> > >>> Marco Lima >>> > >>> braun.lima em gmail.com >>> > >>> im:mago em jabber-br.org >>> > >>> >>> > >>> Register Linux User #355235 >>> > >>> Slackware Linux, for the subgenius >>> > >>> >>> > >>> "Ter acesso ao conhecimento é um dever de todos; transmitir >>> conhecimento >>> > >>> é um dever de quem tem." >>> > >>> >>> > >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>> paixão. >>> > >>> Esta paixão é, na realidade, uma atividade significativa, >>> inspiradora e >>> > >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou >>> como >>> > >>> "diversão." >>> > >>> >>> > >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >>> não >>> > >>> possa ensinar" >>> > >>> >>> > >>> >>> > >>> >>> > >>> Em 14 de julho de 2010 05:32, Marco Lima >>> escreveu: >>> > >>>> >>> > >>>> Estou vendo se vai rolar o churrasco na minha casa no sábado, quem >>> sabe >>> > >>>> nõa aparece. Mantenho atualizado aqui na lista. >>> > >>>> >>> > >>>> Marco Lima >>> > >>>> braun.lima em gmail.com >>> > >>>> im:mago em jabber-br.org >>> > >>>> >>> > >>>> Register Linux User #355235 >>> > >>>> Slackware Linux, for the subgenius >>> > >>>> >>> > >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir >>> conhecimento >>> > >>>> é um dever de quem tem." >>> > >>>> >>> > >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>> paixão. >>> > >>>> Esta paixão é, na realidade, uma atividade significativa, >>> inspiradora e >>> > >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou >>> como >>> > >>>> "diversão." >>> > >>>> >>> > >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno >>> que não >>> > >>>> possa ensinar" >>> > >>>> >>> > >>>> >>> > >>>> >>> > >>>> Em 14 de julho de 2010 05:25, breno escreveu: >>> > >>>>> >>> > >>>>> Legal! Infelizmente só chego de sexta pra sábado, então fico fora >>> dessa >>> > >>>>> :-( >>> > >>>>> >>> > >>>>> []s >>> > >>>>> >>> > >>>>> -b >>> > >>>>> >>> > >>>>> 2010/7/14 Marco Lima : >>> > >>>>> > Salve! >>> > >>>>> > >>> > >>>>> > Esta confirmado para quinta-feira, estou aguardando sugestões >>> de >>> > >>>>> > lugares. >>> > >>>>> > >>> > >>>>> > >>> > >>>>> > Marco Lima >>> > >>>>> > braun.lima em gmail.com >>> > >>>>> > im:mago em jabber-br.org >>> > >>>>> > >>> > >>>>> > Register Linux User #355235 >>> > >>>>> > Slackware Linux, for the subgenius >>> > >>>>> > >>> > >>>>> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>> > >>>>> > conhecimento é >>> > >>>>> > um dever de quem tem." >>> > >>>>> > >>> > >>>>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>> > >>>>> > paixão. Esta >>> > >>>>> > paixão é, na realidade, uma atividade significativa, >>> inspiradora e >>> > >>>>> > prazerosa >>> > >>>>> > para o indivíduo, seja ela rotulada como "trabalho" ou como >>> > >>>>> > "diversão." >>> > >>>>> > >>> > >>>>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno >>> que >>> > >>>>> > não >>> > >>>>> > possa ensinar" >>> > >>>>> > >>> > >>>>> > >>> > >>>>> > >>> > >>>>> > Em 14 de julho de 2010 03:50, breno >>> escreveu: >>> > >>>>> >> >>> > >>>>> >> E aí mago, novidades? >>> > >>>>> >> >>> > >>>>> >> 2010/7/11 Marco Lima : >>> > >>>>> >> > Salve Monges: >>> > >>>>> >> > >>> > >>>>> >> > Essa semana chega ao Rio representantes de uma entidade >>> Espanhola >>> > >>>>> >> > de >>> > >>>>> >> > apoio >>> > >>>>> >> > ao Software Livre, eles desenvolvem um excelente trabalho na >>> > >>>>> >> > Espanha >>> > >>>>> >> > principalmente na Galícia, e poderão ser um excelente >>> contato e >>> > >>>>> >> > parceiros >>> > >>>>> >> > para o Rio.PM por isso estou convocando um ESX, ainda espero >>> a >>> > >>>>> >> > confirmação >>> > >>>>> >> > do vôo deles para fechar a data, que será dia 15 ou dia 16, >>> sugiro >>> > >>>>> >> > as >>> > >>>>> >> > opções >>> > >>>>> >> > de locais. Como não conhecem o Rio, minha sugestão é algo >>> entre >>> > >>>>> >> > copacana >>> > >>>>> >> > e >>> > >>>>> >> > leblon, como Sindicato do Chopp no Leme, Botequim do Itahy >>> em >>> > >>>>> >> > Impanema, >>> > >>>>> >> > Devassa (Ipanema, Leblon, ...), Bracarense, Caneco 70, ou >>> outro. >>> > >>>>> >> > Lembrando >>> > >>>>> >> > que devemos fazer um esticada para Lapa depois. >>> > >>>>> >> > >>> > >>>>> >> > No dia 17 estou programando um churrasco na minha casa, que >>> já >>> > >>>>> >> > estam >>> > >>>>> >> > todos >>> > >>>>> >> > convidados, é só chegar. >>> > >>>>> >> > >>> > >>>>> >> > Abraços; >>> > >>>>> >> > >>> > >>>>> >> > >>> > >>>>> >> > Marco Lima >>> > >>>>> >> > braun.lima em gmail.com >>> > >>>>> >> > im:mago em jabber-br.org >>> > >>>>> >> > >>> > >>>>> >> > Register Linux User #355235 >>> > >>>>> >> > Slackware Linux, for the subgenius >>> > >>>>> >> > >>> > >>>>> >> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>> > >>>>> >> > conhecimento >>> > >>>>> >> > é >>> > >>>>> >> > um dever de quem tem." >>> > >>>>> >> > >>> > >>>>> >> > "Na visão do hacker, o sentido da vida está em dedicar-se a >>> uma >>> > >>>>> >> > paixão. >>> > >>>>> >> > Esta >>> > >>>>> >> > paixão é, na realidade, uma atividade significativa, >>> inspiradora e >>> > >>>>> >> > prazerosa >>> > >>>>> >> > para o indivíduo, seja ela rotulada como "trabalho" ou como >>> > >>>>> >> > "diversão." >>> > >>>>> >> > >>> > >>>>> >> > "Ninguém é tão grande que não possa aprender, e nem tão >>> pequeno >>> > >>>>> >> > que não >>> > >>>>> >> > possa ensinar" >>> > >>>>> >> > >>> > >>>>> >> > >>> > >>>>> >> > _______________________________________________ >>> > >>>>> >> > Rio-pm mailing list >>> > >>>>> >> > Rio-pm em pm.org >>> > >>>>> >> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>>>> >> > >>> > >>>>> >> _______________________________________________ >>> > >>>>> >> Rio-pm mailing list >>> > >>>>> >> Rio-pm em pm.org >>> > >>>>> >> http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>>>> > >>> > >>>>> > >>> > >>>>> > _______________________________________________ >>> > >>>>> > Rio-pm mailing list >>> > >>>>> > Rio-pm em pm.org >>> > >>>>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>>>> > >>> > >>>>> _______________________________________________ >>> > >>>>> Rio-pm mailing list >>> > >>>>> Rio-pm em pm.org >>> > >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>>> >>> > >>> >>> > >>> >>> > >>> _______________________________________________ >>> > >>> Rio-pm mailing list >>> > >>> Rio-pm em pm.org >>> > >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> > >> >>> > >> >>> > >> _______________________________________________ >>> > >> Rio-pm mailing list >>> > >> Rio-pm em pm.org >>> > >> http://mail.pm.org/mailman/listinfo/rio-pm >>> > > >>> > > >>> > > _______________________________________________ >>> > > Rio-pm mailing list >>> > > Rio-pm em pm.org >>> > > http://mail.pm.org/mailman/listinfo/rio-pm >>> > > >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> -- >>> Nuba Princigalli >>> nuba em fastmail.fm >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From bitdesigner em gmail.com Fri Jul 16 15:34:45 2010 From: bitdesigner em gmail.com (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Fri, 16 Jul 2010 19:34:45 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Reuni=E3o_com_representantes_de_associa?= =?iso-8859-1?q?=E7=E3o_espanhola?= Message-ID: Perlsoal, como todos sabem, por intermédio do Marco (Lima), alguns de nós estivemos ontem com representantes de uma entidade espanhola de apoio ao software livre.* Eles propuseram uma parceria com o Rio.pm, basicamente relacionada a treinamento local e participação da comunidade em projetos de seus associados. Agendamos uma reunião para a próxima segunda-feira à noite para apresentarmos ideias de como essa parceria pode ser realizada. Eles estão hospedados perto do Largo do Machado e portanto pensamos em fazer a reunião lá por perto. Onde vocês sugerem? É interessante que a gente relacione e discuta as nossas ideias antes da reunião. O que vocês acham? O que imaginam que podemos desenvolver juntos? E como? Mandem suas sugestões e opiniões. E não deixem de ir na segunda-feira. [ ]'s, João * http://www.asolif.es/ http://www.agasol.org/ga/ From indiox em gentoobr.org Fri Jul 16 15:48:12 2010 From: indiox em gentoobr.org (Claudio Pereira) Date: Fri, 16 Jul 2010 19:48:12 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Reuni=E3o_com_representantes_de_associa?= =?iso-8859-1?q?=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: 2010/7/16 João C. Coutinho : > Agendamos uma reunião para a próxima segunda-feira à noite para > apresentarmos ideias de como essa parceria pode ser realizada. Eles > estão hospedados perto do Largo do Machado e portanto pensamos em > fazer a reunião lá por perto. Onde vocês sugerem? Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? hehehehe Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é claro! ps: Na segunda-feira eu poderei ir. [ ]'s Indio. Claudio P Costa From braun.lima em gmail.com Fri Jul 16 16:27:20 2010 From: braun.lima em gmail.com (Marco Lima) Date: Fri, 16 Jul 2010 20:27:20 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Reuni=E3o_com_representantes_de_associa?= =?iso-8859-1?q?=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: Salve: Minha sugestão é que seja em um local tranquilo e que possa conversar melhor, talvez marcar para jantar, temos algumas opções perto do Largo do Machado, como o Manuel e Joaquim, etc. É importante lembrar que não será outro encontro social, mas sim um encontro de negócios, para que seja possível conversar sobre a parceria, o que podemos oferecer a eles, e o que teriamos em troca. Enfim, entender melhor quais são as possibilidades dessa parceria. Já foi falado em duas linhas interessantes, que é fornecimento de pessoal altamente capacidade para treinamento, ou seja, montar projetos de capacitação na Espanha e enviar instrutores. A outra frente é atender a demanda das empresas associadas, no que diz respeito a desenvolvimento de software. Bom, como podem ver as possibilidades são bastante interessante, e podem se expandir ainda mais. Att; Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" Em 16 de julho de 2010 19:48, Claudio Pereira escreveu: > 2010/7/16 João C. Coutinho : > > Agendamos uma reunião para a próxima segunda-feira à noite para > > apresentarmos ideias de como essa parceria pode ser realizada. Eles > > estão hospedados perto do Largo do Machado e portanto pensamos em > > fazer a reunião lá por perto. Onde vocês sugerem? > > Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? > hehehehe > > Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é > claro! > > ps: Na segunda-feira eu poderei ir. > > [ ]'s Indio. > Claudio P Costa > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From diana.g.a.rosa em gmail.com Sat Jul 17 08:54:08 2010 From: diana.g.a.rosa em gmail.com (Diana Rosa) Date: Sat, 17 Jul 2010 12:54:08 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Reuni=E3o_com_representantes_de_associa?= =?iso-8859-1?q?=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: Quem sabe uma possibilidade de patrocinio para o YAPC? Abs! 2010/7/16 Marco Lima > Salve: > > Minha sugestão é que seja em um local tranquilo e que possa conversar > melhor, talvez marcar para jantar, temos algumas opções perto do Largo do > Machado, como o Manuel e Joaquim, etc. > > É importante lembrar que não será outro encontro social, mas sim um > encontro de negócios, para que seja possível conversar sobre a parceria, o > que podemos oferecer a eles, e o que teriamos em troca. Enfim, entender > melhor quais são as possibilidades dessa parceria. > > Já foi falado em duas linhas interessantes, que é fornecimento de pessoal > altamente capacidade para treinamento, ou seja, montar projetos de > capacitação na Espanha e enviar instrutores. A outra frente é atender a > demanda das empresas associadas, no que diz respeito a desenvolvimento de > software. > > Bom, como podem ver as possibilidades são bastante interessante, e podem se > expandir ainda mais. > > Att; > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > Em 16 de julho de 2010 19:48, Claudio Pereira escreveu: > > 2010/7/16 João C. Coutinho : >> > Agendamos uma reunião para a próxima segunda-feira à noite para >> > apresentarmos ideias de como essa parceria pode ser realizada. Eles >> > estão hospedados perto do Largo do Machado e portanto pensamos em >> > fazer a reunião lá por perto. Onde vocês sugerem? >> >> Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? >> hehehehe >> >> Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é >> claro! >> >> ps: Na segunda-feira eu poderei ir. >> >> [ ]'s Indio. >> Claudio P Costa >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Sat Jul 17 09:02:52 2010 From: eu em samircury.eng.br (Samir Cury) Date: Sat, 17 Jul 2010 13:02:52 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Reuni=E3o_com_representantes_de_associa?= =?iso-8859-1?q?=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da ultima vez. Mas pode ser meio repeteco da mesma praca da ultima vez. Se nao aparecerem opcoes melhores vemos ai 2010/7/17 Diana Rosa > Quem sabe uma possibilidade de patrocinio para o YAPC? > Em troca eles podiam dar uma palestra no evento sobre o projeto deles. Assim todos ficam contentes > > Abs! > > 2010/7/16 Marco Lima > > Salve: >> >> Minha sugestão é que seja em um local tranquilo e que possa conversar >> melhor, talvez marcar para jantar, temos algumas opções perto do Largo do >> Machado, como o Manuel e Joaquim, etc. >> >> É importante lembrar que não será outro encontro social, mas sim um >> encontro de negócios, para que seja possível conversar sobre a parceria, o >> que podemos oferecer a eles, e o que teriamos em troca. Enfim, entender >> melhor quais são as possibilidades dessa parceria. >> >> Já foi falado em duas linhas interessantes, que é fornecimento de pessoal >> altamente capacidade para treinamento, ou seja, montar projetos de >> capacitação na Espanha e enviar instrutores. A outra frente é atender a >> demanda das empresas associadas, no que diz respeito a desenvolvimento de >> software. >> >> Bom, como podem ver as possibilidades são bastante interessante, e podem >> se expandir ainda mais. >> >> Att; >> >> Marco Lima >> braun.lima em gmail.com >> im:mago em jabber-br.org >> >> Register Linux User #355235 >> Slackware Linux, for the subgenius >> >> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é >> um dever de quem tem." >> >> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> "diversão." >> >> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> possa ensinar" >> >> >> >> Em 16 de julho de 2010 19:48, Claudio Pereira escreveu: >> >> 2010/7/16 João C. Coutinho : >>> > Agendamos uma reunião para a próxima segunda-feira à noite para >>> > apresentarmos ideias de como essa parceria pode ser realizada. Eles >>> > estão hospedados perto do Largo do Machado e portanto pensamos em >>> > fazer a reunião lá por perto. Onde vocês sugerem? >>> >>> Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? >>> hehehehe >>> >>> Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é >>> claro! >>> >>> ps: Na segunda-feira eu poderei ir. >>> >>> [ ]'s Indio. >>> Claudio P Costa >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From braun.lima em gmail.com Sat Jul 17 13:20:12 2010 From: braun.lima em gmail.com (Marco Lima) Date: Sat, 17 Jul 2010 17:20:12 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Reuni=E3o_com_representantes_de_associa?= =?iso-8859-1?q?=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: Acho o Planalto muito barulhento já que é aberto para Rua. Quanto ao patrocínio para o YAPC, acho muit difícil, não é essa a ideia, tem que lembrar que são um Federação Espanhola, e uma Associação Gaulesa, eles defendem os interesses dos seus membros. Não acredito que patrocianar um evento no Brasil seja de interesse deles, o que pode ser feito é organizar eventos na Espanha, essa é a idéia, como eventos de capacitação e treinamento. Att; Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" 2010/7/17 Samir Cury > O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da ultima > vez. Mas pode ser meio repeteco da mesma praca da ultima vez. Se nao > aparecerem opcoes melhores vemos ai > > 2010/7/17 Diana Rosa > > Quem sabe uma possibilidade de patrocinio para o YAPC? >> > Em troca eles podiam dar uma palestra no evento sobre o projeto deles. > Assim todos ficam contentes > >> >> Abs! >> >> 2010/7/16 Marco Lima >> >> Salve: >>> >>> Minha sugestão é que seja em um local tranquilo e que possa conversar >>> melhor, talvez marcar para jantar, temos algumas opções perto do Largo do >>> Machado, como o Manuel e Joaquim, etc. >>> >>> É importante lembrar que não será outro encontro social, mas sim um >>> encontro de negócios, para que seja possível conversar sobre a parceria, o >>> que podemos oferecer a eles, e o que teriamos em troca. Enfim, entender >>> melhor quais são as possibilidades dessa parceria. >>> >>> Já foi falado em duas linhas interessantes, que é fornecimento de pessoal >>> altamente capacidade para treinamento, ou seja, montar projetos de >>> capacitação na Espanha e enviar instrutores. A outra frente é atender a >>> demanda das empresas associadas, no que diz respeito a desenvolvimento de >>> software. >>> >>> Bom, como podem ver as possibilidades são bastante interessante, e podem >>> se expandir ainda mais. >>> >>> Att; >>> >>> Marco Lima >>> braun.lima em gmail.com >>> im:mago em jabber-br.org >>> >>> Register Linux User #355235 >>> Slackware Linux, for the subgenius >>> >>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>> é um dever de quem tem." >>> >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>> "diversão." >>> >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>> possa ensinar" >>> >>> >>> >>> Em 16 de julho de 2010 19:48, Claudio Pereira escreveu: >>> >>> 2010/7/16 João C. Coutinho : >>>> > Agendamos uma reunião para a próxima segunda-feira à noite para >>>> > apresentarmos ideias de como essa parceria pode ser realizada. Eles >>>> > estão hospedados perto do Largo do Machado e portanto pensamos em >>>> > fazer a reunião lá por perto. Onde vocês sugerem? >>>> >>>> Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? >>>> hehehehe >>>> >>>> Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é >>>> claro! >>>> >>>> ps: Na segunda-feira eu poderei ir. >>>> >>>> [ ]'s Indio. >>>> Claudio P Costa >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eprill em uol.com.br Sat Jul 17 17:37:55 2010 From: eprill em uol.com.br (Eduardo Prillwitz) Date: Sat, 17 Jul 2010 21:37:55 -0300 Subject: [Rio-pm] =?iso-8859-1?q?RES=3A_=09Reuni=E3o_com_representantes_de?= =?iso-8859-1?q?_associa=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: O clube espanhol no humaitá tem uma tortilla ótima e é tranqüilo. Pode ser uma boa. Atc, Eduardo. De: rio-pm-bounces+eprill=uol.com.br em pm.org [mailto:rio-pm-bounces+eprill=uol.com.br em pm.org] Em nome de Marco Lima Enviada em: sábado, 17 de julho de 2010 17:20 Para: Perl Mongers Rio de Janeiro Assunto: Re: [Rio-pm] Reunião com representantes de associação espanhola Acho o Planalto muito barulhento já que é aberto para Rua. Quanto ao patrocínio para o YAPC, acho muit difícil, não é essa a ideia, tem que lembrar que são um Federação Espanhola, e uma Associação Gaulesa, eles defendem os interesses dos seus membros. Não acredito que patrocianar um evento no Brasil seja de interesse deles, o que pode ser feito é organizar eventos na Espanha, essa é a idéia, como eventos de capacitação e treinamento. Att; Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" 2010/7/17 Samir Cury O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da ultima vez. Mas pode ser meio repeteco da mesma praca da ultima vez. Se nao aparecerem opcoes melhores vemos ai 2010/7/17 Diana Rosa Quem sabe uma possibilidade de patrocinio para o YAPC? Em troca eles podiam dar uma palestra no evento sobre o projeto deles. Assim todos ficam contentes Abs! 2010/7/16 Marco Lima Salve: Minha sugestão é que seja em um local tranquilo e que possa conversar melhor, talvez marcar para jantar, temos algumas opções perto do Largo do Machado, como o Manuel e Joaquim, etc. É importante lembrar que não será outro encontro social, mas sim um encontro de negócios, para que seja possível conversar sobre a parceria, o que podemos oferecer a eles, e o que teriamos em troca. Enfim, entender melhor quais são as possibilidades dessa parceria. Já foi falado em duas linhas interessantes, que é fornecimento de pessoal altamente capacidade para treinamento, ou seja, montar projetos de capacitação na Espanha e enviar instrutores. A outra frente é atender a demanda das empresas associadas, no que diz respeito a desenvolvimento de software. Bom, como podem ver as possibilidades são bastante interessante, e podem se expandir ainda mais. Att; Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" Em 16 de julho de 2010 19:48, Claudio Pereira escreveu: 2010/7/16 João C. Coutinho : > Agendamos uma reunião para a próxima segunda-feira à noite para > apresentarmos ideias de como essa parceria pode ser realizada. Eles > estão hospedados perto do Largo do Machado e portanto pensamos em > fazer a reunião lá por perto. Onde vocês sugerem? Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? hehehehe Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é claro! ps: Na segunda-feira eu poderei ir. [ ]'s Indio. Claudio P Costa _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From braun.lima em gmail.com Sat Jul 17 17:47:22 2010 From: braun.lima em gmail.com (Marco Lima) Date: Sat, 17 Jul 2010 21:47:22 -0300 Subject: [Rio-pm] =?iso-8859-1?q?RES=3A_Reuni=E3o_com_representantes_de_as?= =?iso-8859-1?q?socia=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: hahahah Os caras vierão da Espanha para conhecer o Brasil e vc vai levar eles para comer comida Espanhola !?!? Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" 2010/7/17 Eduardo Prillwitz > O clube espanhol no humaitá tem uma tortilla ótima e é tranqüilo. Pode > ser uma boa. > > > > Atc, > > > > Eduardo. > > > > *De:* rio-pm-bounces+eprill=uol.com.br em pm.org [mailto: > rio-pm-bounces+eprill =uol.com.br em pm.org] *Em > nome de *Marco Lima > *Enviada em:* sábado, 17 de julho de 2010 17:20 > *Para:* Perl Mongers Rio de Janeiro > *Assunto:* Re: [Rio-pm] Reunião com representantes de associação espanhola > > > > Acho o Planalto muito barulhento já que é aberto para Rua. > > Quanto ao patrocínio para o YAPC, acho muit difícil, não é essa a ideia, > tem que lembrar que são um Federação Espanhola, e uma Associação Gaulesa, > eles defendem os interesses dos seus membros. Não acredito que patrocianar > um evento no Brasil seja de interesse deles, o que pode ser feito é > organizar eventos na Espanha, essa é a idéia, como eventos de capacitação e > treinamento. > > Att; > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > 2010/7/17 Samir Cury > > O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da ultima > vez. Mas pode ser meio repeteco da mesma praca da ultima vez. Se nao > aparecerem opcoes melhores vemos ai > > 2010/7/17 Diana Rosa > > > > Quem sabe uma possibilidade de patrocinio para o YAPC? > > Em troca eles podiam dar uma palestra no evento sobre o projeto deles. > Assim todos ficam contentes > > > Abs! > > 2010/7/16 Marco Lima > > > > Salve: > > Minha sugestão é que seja em um local tranquilo e que possa conversar > melhor, talvez marcar para jantar, temos algumas opções perto do Largo do > Machado, como o Manuel e Joaquim, etc. > > É importante lembrar que não será outro encontro social, mas sim um > encontro de negócios, para que seja possível conversar sobre a parceria, o > que podemos oferecer a eles, e o que teriamos em troca. Enfim, entender > melhor quais são as possibilidades dessa parceria. > > Já foi falado em duas linhas interessantes, que é fornecimento de pessoal > altamente capacidade para treinamento, ou seja, montar projetos de > capacitação na Espanha e enviar instrutores. A outra frente é atender a > demanda das empresas associadas, no que diz respeito a desenvolvimento de > software. > > Bom, como podem ver as possibilidades são bastante interessante, e podem se > expandir ainda mais. > > Att; > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > Em 16 de julho de 2010 19:48, Claudio Pereira > escreveu: > > > > 2010/7/16 João C. Coutinho : > > > Agendamos uma reunião para a próxima segunda-feira à noite para > > apresentarmos ideias de como essa parceria pode ser realizada. Eles > > estão hospedados perto do Largo do Machado e portanto pensamos em > > fazer a reunião lá por perto. Onde vocês sugerem? > > Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? > hehehehe > > Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é > claro! > > ps: Na segunda-feira eu poderei ir. > > [ ]'s Indio. > Claudio P Costa > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Sun Jul 18 08:55:20 2010 From: breno em rio.pm.org (breno) Date: Sun, 18 Jul 2010 12:55:20 -0300 Subject: [Rio-pm] [SP-pm] Perl for bioinformatics no X-meeting 2010 In-Reply-To: References: Message-ID: Tá de parabéns mesmo - pra alguém que deu seus primeiros passos em Perl em 2007[1], um curso de 3 dias com ênfase em bioinformática, não é pra qualquer um! Parabéns de novo! E espero que seja um excelente curso, com muito Perl moderno :-) []s -b 1. http://mail.pm.org/pipermail/cascavel-pm/2007-February/008790.html 2010/7/18 Ramon Vidal : > Parabens ao Wagner Arbex que vai ministrar um curso de PERL durante o > principal evento de bioinformatica do Brasil > Abaixo a programação: > http://lgmb.fmrp.usp.br/ab3c/xmeeting/2010/program > > _______________________________________________ > SaoPaulo-pm mailing list > SaoPaulo-pm em pm.org > http://mail.pm.org/mailman/listinfo/saopaulo-pm > From lorn.br em gmail.com Sun Jul 18 10:11:54 2010 From: lorn.br em gmail.com (Lindolfo "Lorn" Rodrigues) Date: Sun, 18 Jul 2010 14:11:54 -0300 Subject: [Rio-pm] [Cascavel-pm] [SP-pm] Perl for bioinformatics no X-meeting 2010 In-Reply-To: References: Message-ID: Parabéns Wagner Arbex :) 2010/7/18 breno > Tá de parabéns mesmo - pra alguém que deu seus primeiros passos em > Perl em 2007[1], um curso de 3 dias com ênfase em bioinformática, não > é pra qualquer um! > > Parabéns de novo! E espero que seja um excelente curso, com muito Perl > moderno :-) > > []s > > -b > > 1. http://mail.pm.org/pipermail/cascavel-pm/2007-February/008790.html > > > 2010/7/18 Ramon Vidal : > > Parabens ao Wagner Arbex que vai ministrar um curso de PERL durante o > > principal evento de bioinformatica do Brasil > > Abaixo a programação: > > http://lgmb.fmrp.usp.br/ab3c/xmeeting/2010/program > > > > _______________________________________________ > > SaoPaulo-pm mailing list > > SaoPaulo-pm em pm.org > > http://mail.pm.org/mailman/listinfo/saopaulo-pm > > > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -- lorn at lornlab dot org Lindolfo "Lorn" Rodrigues -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From thiago em aware.com.br Sun Jul 18 19:31:38 2010 From: thiago em aware.com.br (Thiago Rondon) Date: Sun, 18 Jul 2010 23:31:38 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Equin=F3cio_de_Setembro_2010_e_/Eventos_d?= =?iso-8859-1?q?e_Perl/=2E?= Message-ID: <4C43B90A.1000305@aware.com.br> Queridos Amigos, O equinócio é um evento que foi criado pela comunidade para gerar conteúdo sobre a linguagem, no qual é realizado nos meses em que o Sol cruza o plano do equador celeste. Mas o que isto tem haver ? Inventamos uma desculpa para justificar a geração de conteúdo na linguagem nativa, em que nos dois meses que acontecem as /noites iguais/ iremos aguardar /ansiosos/ divulgando um artigo por dia durante o mês. No mês de março deste ano, aconteceu a primeira edição do evento em que todos os artigos estão disponiveis em http://sao-paulo.pm.org/artigos, foram no total 20 ! Teremos agora o evento de setembro, no qual serão 23 dias para aguadar o espetacular momento, e quero aproveitar a grande movimentação das listas e convocar todos os membros para escrever. Para não haver surpresas, e termos um planejamento, peço a gentiliza que todos que queiram partipar, enviem seus esboços até o dia 20 de agosto, e por favor confirmem sua participação *O QUANTO ANTES*! O tema deste equinócio é livre, porém a sugestão é sobre programação com relação a objetos. Quero aproveitar este equinócio, e adicionar /banners/ sobre eventos organizado pelas comunidades no territorio nacional, por favor organizadores do YAPC::Brasil, workshops, e qualquer evento sobre a linguagem, se manifestem para podermos nos alinhar em relação aos interesses a aproveitarmos o trabalho de divulgação que será realizado no equinócio. Lembrando, que na primeira edição existiu uma grande visibilidade do evento, e podemos aproveitar isto para nosso próprio beneficio. Pessoal, novamente: são 23 dias, isto significa que precisamos de 23 pessoas para escrever ! Não vamos deixar a peteca cair ! Forte abraço, -Thiago Rondon From andregarciacarneiro em gmail.com Mon Jul 19 04:35:50 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Mon, 19 Jul 2010 08:35:50 -0300 Subject: [Rio-pm] =?iso-8859-1?q?=5BSP-pm=5D_Equin=F3cio_de_Setembro_2010_?= =?iso-8859-1?q?e_/Eventos_de_Perl/=2E?= In-Reply-To: <4C43B90A.1000305@aware.com.br> References: <4C43B90A.1000305@aware.com.br> Message-ID: Onde estão os temas disponíveis para o Equinócio? Em 18 de julho de 2010 23:31, Thiago Rondon escreveu: > > Queridos Amigos, > > O equinócio é um evento que foi criado pela comunidade para gerar conteúdo > sobre a linguagem, no qual é realizado nos meses em que o Sol cruza o plano > do equador celeste. > > Mas o que isto tem haver ? Inventamos uma desculpa para justificar a > geração de conteúdo na linguagem nativa, em que nos dois meses que acontecem > as /noites iguais/ iremos aguardar /ansiosos/ divulgando um artigo por dia > durante o mês. > > No mês de março deste ano, aconteceu a primeira edição do evento em que > todos os artigos estão disponiveis em http://sao-paulo.pm.org/artigos, > foram no total 20 ! > > Teremos agora o evento de setembro, no qual serão 23 dias para aguadar o > espetacular momento, e quero aproveitar a grande movimentação das listas e > convocar todos os membros para escrever. > > Para não haver surpresas, e termos um planejamento, peço a gentiliza que > todos que queiram partipar, enviem seus esboços até o dia 20 de agosto, e > por favor confirmem sua participação *O QUANTO ANTES*! O tema deste > equinócio é livre, porém a sugestão é sobre programação com relação a > objetos. > > Quero aproveitar este equinócio, e adicionar /banners/ sobre eventos > organizado pelas comunidades no territorio nacional, por favor organizadores > do YAPC::Brasil, workshops, e qualquer evento sobre a linguagem, se > manifestem para podermos nos alinhar em relação aos interesses a > aproveitarmos o trabalho de divulgação que será realizado no equinócio. > > Lembrando, que na primeira edição existiu uma grande visibilidade do > evento, e podemos aproveitar isto para nosso próprio beneficio. > > Pessoal, novamente: são 23 dias, isto significa que precisamos de 23 > pessoas para escrever ! Não vamos deixar a peteca cair ! > > Forte abraço, > -Thiago Rondon > _______________________________________________ > SaoPaulo-pm mailing list > SaoPaulo-pm em pm.org > http://mail.pm.org/mailman/listinfo/saopaulo-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From arbex em arbex.pro.br Mon Jul 19 07:05:30 2010 From: arbex em arbex.pro.br (Wagner Arbex) Date: Mon, 19 Jul 2010 11:05:30 -0300 Subject: [Rio-pm] [Cascavel-pm] [SP-pm] Perl for bioinformatics no X-meeting 2010 In-Reply-To: References: Message-ID: Prezados Monges; Agradeço o apoio e a confiança e farei o possível para merecê-las, visando, principalmente, o fortalecimento do Perl. []s e obrigado. PS: Peço desculpas pelo cross-posting, mas aproveitei para agradecer nas as listas onde o curso foi citado. 2010/7/18 breno : > Tá de parabéns mesmo - pra alguém que deu seus primeiros passos em > Perl em 2007[1], um curso de 3 dias com ênfase em bioinformática, não > é pra qualquer um! > > Parabéns de novo! E espero que seja um excelente curso, com muito Perl > moderno :-) > > []s > > -b > > 1. http://mail.pm.org/pipermail/cascavel-pm/2007-February/008790.html > > > 2010/7/18 Ramon Vidal : >> Parabens ao Wagner Arbex que vai ministrar um curso de PERL durante o >> principal evento de bioinformatica do Brasil >> Abaixo a programação: >> http://lgmb.fmrp.usp.br/ab3c/xmeeting/2010/program >> >> _______________________________________________ >> SaoPaulo-pm mailing list >> SaoPaulo-pm em pm.org >> http://mail.pm.org/mailman/listinfo/saopaulo-pm >> > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > --    Wagner Arbex    http://www.arbex.pro.br/ From eu em samircury.eng.br Mon Jul 19 12:02:07 2010 From: eu em samircury.eng.br (Samir Cury) Date: Mon, 19 Jul 2010 16:02:07 -0300 Subject: [Rio-pm] =?iso-8859-1?q?RES=3A_Reuni=E3o_com_representantes_de_as?= =?iso-8859-1?q?socia=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: E aí pessoal, onde vai ser? HD? HAHAHA (brincadeira hein) Abraços 2010/7/17 Marco Lima > hahahah > > Os caras vierão da Espanha para conhecer o Brasil e vc vai levar eles para > comer comida Espanhola !?!? > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > 2010/7/17 Eduardo Prillwitz > > O clube espanhol no humaitá tem uma tortilla ótima e é tranqüilo. Pode >> ser uma boa. >> >> >> >> Atc, >> >> >> >> Eduardo. >> >> >> >> *De:* rio-pm-bounces+eprill=uol.com.br em pm.org [mailto: >> rio-pm-bounces+eprill =uol.com.br em pm.org] *Em >> nome de *Marco Lima >> *Enviada em:* sábado, 17 de julho de 2010 17:20 >> *Para:* Perl Mongers Rio de Janeiro >> *Assunto:* Re: [Rio-pm] Reunião com representantes de associação >> espanhola >> >> >> >> Acho o Planalto muito barulhento já que é aberto para Rua. >> >> Quanto ao patrocínio para o YAPC, acho muit difícil, não é essa a ideia, >> tem que lembrar que são um Federação Espanhola, e uma Associação Gaulesa, >> eles defendem os interesses dos seus membros. Não acredito que patrocianar >> um evento no Brasil seja de interesse deles, o que pode ser feito é >> organizar eventos na Espanha, essa é a idéia, como eventos de capacitação e >> treinamento. >> >> Att; >> >> Marco Lima >> braun.lima em gmail.com >> im:mago em jabber-br.org >> >> Register Linux User #355235 >> Slackware Linux, for the subgenius >> >> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é >> um dever de quem tem." >> >> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> "diversão." >> >> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> possa ensinar" >> >> >> 2010/7/17 Samir Cury >> >> O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da ultima >> vez. Mas pode ser meio repeteco da mesma praca da ultima vez. Se nao >> aparecerem opcoes melhores vemos ai >> >> 2010/7/17 Diana Rosa >> >> >> >> Quem sabe uma possibilidade de patrocinio para o YAPC? >> >> Em troca eles podiam dar uma palestra no evento sobre o projeto deles. >> Assim todos ficam contentes >> >> >> Abs! >> >> 2010/7/16 Marco Lima >> >> >> >> Salve: >> >> Minha sugestão é que seja em um local tranquilo e que possa conversar >> melhor, talvez marcar para jantar, temos algumas opções perto do Largo do >> Machado, como o Manuel e Joaquim, etc. >> >> É importante lembrar que não será outro encontro social, mas sim um >> encontro de negócios, para que seja possível conversar sobre a parceria, o >> que podemos oferecer a eles, e o que teriamos em troca. Enfim, entender >> melhor quais são as possibilidades dessa parceria. >> >> Já foi falado em duas linhas interessantes, que é fornecimento de pessoal >> altamente capacidade para treinamento, ou seja, montar projetos de >> capacitação na Espanha e enviar instrutores. A outra frente é atender a >> demanda das empresas associadas, no que diz respeito a desenvolvimento de >> software. >> >> Bom, como podem ver as possibilidades são bastante interessante, e podem >> se expandir ainda mais. >> >> Att; >> >> Marco Lima >> braun.lima em gmail.com >> im:mago em jabber-br.org >> >> Register Linux User #355235 >> Slackware Linux, for the subgenius >> >> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é >> um dever de quem tem." >> >> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> "diversão." >> >> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> possa ensinar" >> >> >> Em 16 de julho de 2010 19:48, Claudio Pereira >> escreveu: >> >> >> >> 2010/7/16 João C. Coutinho : >> >> > Agendamos uma reunião para a próxima segunda-feira à noite para >> > apresentarmos ideias de como essa parceria pode ser realizada. Eles >> > estão hospedados perto do Largo do Machado e portanto pensamos em >> > fazer a reunião lá por perto. Onde vocês sugerem? >> >> Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? >> hehehehe >> >> Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é >> claro! >> >> ps: Na segunda-feira eu poderei ir. >> >> [ ]'s Indio. >> Claudio P Costa >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From braun.lima em gmail.com Mon Jul 19 12:14:44 2010 From: braun.lima em gmail.com (Marco Lima) Date: Mon, 19 Jul 2010 16:14:44 -0300 Subject: [Rio-pm] =?iso-8859-1?q?RES=3A_Reuni=E3o_com_representantes_de_as?= =?iso-8859-1?q?socia=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: Salve! Minha suguestão é o Manuel e Joaquim da Largo do Machado, as 19:39h. Att; Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" 2010/7/19 Samir Cury > E aí pessoal, onde vai ser? > > HD? HAHAHA (brincadeira hein) > > Abraços > > 2010/7/17 Marco Lima > > hahahah >> >> Os caras vierão da Espanha para conhecer o Brasil e vc vai levar eles para >> comer comida Espanhola !?!? >> >> Marco Lima >> braun.lima em gmail.com >> im:mago em jabber-br.org >> >> Register Linux User #355235 >> Slackware Linux, for the subgenius >> >> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é >> um dever de quem tem." >> >> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> "diversão." >> >> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> possa ensinar" >> >> >> >> 2010/7/17 Eduardo Prillwitz >> >> O clube espanhol no humaitá tem uma tortilla ótima e é tranqüilo. Pode >>> ser uma boa. >>> >>> >>> >>> Atc, >>> >>> >>> >>> Eduardo. >>> >>> >>> >>> *De:* rio-pm-bounces+eprill=uol.com.br em pm.org [mailto: >>> rio-pm-bounces+eprill =uol.com.br em pm.org] *Em >>> nome de *Marco Lima >>> *Enviada em:* sábado, 17 de julho de 2010 17:20 >>> *Para:* Perl Mongers Rio de Janeiro >>> *Assunto:* Re: [Rio-pm] Reunião com representantes de associação >>> espanhola >>> >>> >>> >>> Acho o Planalto muito barulhento já que é aberto para Rua. >>> >>> Quanto ao patrocínio para o YAPC, acho muit difícil, não é essa a ideia, >>> tem que lembrar que são um Federação Espanhola, e uma Associação Gaulesa, >>> eles defendem os interesses dos seus membros. Não acredito que patrocianar >>> um evento no Brasil seja de interesse deles, o que pode ser feito é >>> organizar eventos na Espanha, essa é a idéia, como eventos de capacitação e >>> treinamento. >>> >>> Att; >>> >>> Marco Lima >>> braun.lima em gmail.com >>> im:mago em jabber-br.org >>> >>> Register Linux User #355235 >>> Slackware Linux, for the subgenius >>> >>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>> é um dever de quem tem." >>> >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>> "diversão." >>> >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>> possa ensinar" >>> >>> >>> 2010/7/17 Samir Cury >>> >>> O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da >>> ultima vez. Mas pode ser meio repeteco da mesma praca da ultima vez. Se nao >>> aparecerem opcoes melhores vemos ai >>> >>> 2010/7/17 Diana Rosa >>> >>> >>> >>> Quem sabe uma possibilidade de patrocinio para o YAPC? >>> >>> Em troca eles podiam dar uma palestra no evento sobre o projeto deles. >>> Assim todos ficam contentes >>> >>> >>> Abs! >>> >>> 2010/7/16 Marco Lima >>> >>> >>> >>> Salve: >>> >>> Minha sugestão é que seja em um local tranquilo e que possa conversar >>> melhor, talvez marcar para jantar, temos algumas opções perto do Largo do >>> Machado, como o Manuel e Joaquim, etc. >>> >>> É importante lembrar que não será outro encontro social, mas sim um >>> encontro de negócios, para que seja possível conversar sobre a parceria, o >>> que podemos oferecer a eles, e o que teriamos em troca. Enfim, entender >>> melhor quais são as possibilidades dessa parceria. >>> >>> Já foi falado em duas linhas interessantes, que é fornecimento de pessoal >>> altamente capacidade para treinamento, ou seja, montar projetos de >>> capacitação na Espanha e enviar instrutores. A outra frente é atender a >>> demanda das empresas associadas, no que diz respeito a desenvolvimento de >>> software. >>> >>> Bom, como podem ver as possibilidades são bastante interessante, e podem >>> se expandir ainda mais. >>> >>> Att; >>> >>> Marco Lima >>> braun.lima em gmail.com >>> im:mago em jabber-br.org >>> >>> Register Linux User #355235 >>> Slackware Linux, for the subgenius >>> >>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>> é um dever de quem tem." >>> >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>> "diversão." >>> >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>> possa ensinar" >>> >>> >>> Em 16 de julho de 2010 19:48, Claudio Pereira >>> escreveu: >>> >>> >>> >>> 2010/7/16 João C. Coutinho : >>> >>> > Agendamos uma reunião para a próxima segunda-feira à noite para >>> > apresentarmos ideias de como essa parceria pode ser realizada. Eles >>> > estão hospedados perto do Largo do Machado e portanto pensamos em >>> > fazer a reunião lá por perto. Onde vocês sugerem? >>> >>> Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? >>> hehehehe >>> >>> Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é >>> claro! >>> >>> ps: Na segunda-feira eu poderei ir. >>> >>> [ ]'s Indio. >>> Claudio P Costa >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Mon Jul 19 12:18:42 2010 From: eu em samircury.eng.br (Samir Cury) Date: Mon, 19 Jul 2010 16:18:42 -0300 Subject: [Rio-pm] =?iso-8859-1?q?RES=3A_Reuni=E3o_com_representantes_de_as?= =?iso-8859-1?q?socia=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: Não sabia que tinha por lá, é um bar com esquina na dois de dezembro? 2010/7/19 Marco Lima > Salve! > > Minha suguestão é o Manuel e Joaquim da Largo do Machado, as 19:39h. > > > Att; > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > 2010/7/19 Samir Cury > > E aí pessoal, onde vai ser? >> >> HD? HAHAHA (brincadeira hein) >> >> Abraços >> >> 2010/7/17 Marco Lima >> >> hahahah >>> >>> Os caras vierão da Espanha para conhecer o Brasil e vc vai levar eles >>> para comer comida Espanhola !?!? >>> >>> Marco Lima >>> braun.lima em gmail.com >>> im:mago em jabber-br.org >>> >>> Register Linux User #355235 >>> Slackware Linux, for the subgenius >>> >>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>> é um dever de quem tem." >>> >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>> "diversão." >>> >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>> possa ensinar" >>> >>> >>> >>> 2010/7/17 Eduardo Prillwitz >>> >>> O clube espanhol no humaitá tem uma tortilla ótima e é tranqüilo. Pode >>>> ser uma boa. >>>> >>>> >>>> >>>> Atc, >>>> >>>> >>>> >>>> Eduardo. >>>> >>>> >>>> >>>> *De:* rio-pm-bounces+eprill=uol.com.br em pm.org [mailto: >>>> rio-pm-bounces+eprill =uol.com.br em pm.org] *Em >>>> nome de *Marco Lima >>>> *Enviada em:* sábado, 17 de julho de 2010 17:20 >>>> *Para:* Perl Mongers Rio de Janeiro >>>> *Assunto:* Re: [Rio-pm] Reunião com representantes de associação >>>> espanhola >>>> >>>> >>>> >>>> Acho o Planalto muito barulhento já que é aberto para Rua. >>>> >>>> Quanto ao patrocínio para o YAPC, acho muit difícil, não é essa a ideia, >>>> tem que lembrar que são um Federação Espanhola, e uma Associação Gaulesa, >>>> eles defendem os interesses dos seus membros. Não acredito que patrocianar >>>> um evento no Brasil seja de interesse deles, o que pode ser feito é >>>> organizar eventos na Espanha, essa é a idéia, como eventos de capacitação e >>>> treinamento. >>>> >>>> Att; >>>> >>>> Marco Lima >>>> braun.lima em gmail.com >>>> im:mago em jabber-br.org >>>> >>>> Register Linux User #355235 >>>> Slackware Linux, for the subgenius >>>> >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>>> é um dever de quem tem." >>>> >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>>> "diversão." >>>> >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>>> possa ensinar" >>>> >>>> >>>> 2010/7/17 Samir Cury >>>> >>>> O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da >>>> ultima vez. Mas pode ser meio repeteco da mesma praca da ultima vez. Se nao >>>> aparecerem opcoes melhores vemos ai >>>> >>>> 2010/7/17 Diana Rosa >>>> >>>> >>>> >>>> Quem sabe uma possibilidade de patrocinio para o YAPC? >>>> >>>> Em troca eles podiam dar uma palestra no evento sobre o projeto deles. >>>> Assim todos ficam contentes >>>> >>>> >>>> Abs! >>>> >>>> 2010/7/16 Marco Lima >>>> >>>> >>>> >>>> Salve: >>>> >>>> Minha sugestão é que seja em um local tranquilo e que possa conversar >>>> melhor, talvez marcar para jantar, temos algumas opções perto do Largo do >>>> Machado, como o Manuel e Joaquim, etc. >>>> >>>> É importante lembrar que não será outro encontro social, mas sim um >>>> encontro de negócios, para que seja possível conversar sobre a parceria, o >>>> que podemos oferecer a eles, e o que teriamos em troca. Enfim, entender >>>> melhor quais são as possibilidades dessa parceria. >>>> >>>> Já foi falado em duas linhas interessantes, que é fornecimento de >>>> pessoal altamente capacidade para treinamento, ou seja, montar projetos de >>>> capacitação na Espanha e enviar instrutores. A outra frente é atender a >>>> demanda das empresas associadas, no que diz respeito a desenvolvimento de >>>> software. >>>> >>>> Bom, como podem ver as possibilidades são bastante interessante, e podem >>>> se expandir ainda mais. >>>> >>>> Att; >>>> >>>> Marco Lima >>>> braun.lima em gmail.com >>>> im:mago em jabber-br.org >>>> >>>> Register Linux User #355235 >>>> Slackware Linux, for the subgenius >>>> >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>>> é um dever de quem tem." >>>> >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>>> "diversão." >>>> >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>>> possa ensinar" >>>> >>>> >>>> Em 16 de julho de 2010 19:48, Claudio Pereira >>>> escreveu: >>>> >>>> >>>> >>>> 2010/7/16 João C. Coutinho : >>>> >>>> > Agendamos uma reunião para a próxima segunda-feira à noite para >>>> > apresentarmos ideias de como essa parceria pode ser realizada. Eles >>>> > estão hospedados perto do Largo do Machado e portanto pensamos em >>>> > fazer a reunião lá por perto. Onde vocês sugerem? >>>> >>>> Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? >>>> hehehehe >>>> >>>> Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é >>>> claro! >>>> >>>> ps: Na segunda-feira eu poderei ir. >>>> >>>> [ ]'s Indio. >>>> Claudio P Costa >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From jc em joaocoutinho.com.br Mon Jul 19 12:19:21 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Mon, 19 Jul 2010 16:19:21 -0300 Subject: [Rio-pm] =?iso-8859-1?q?RES=3A_Reuni=E3o_com_representantes_de_as?= =?iso-8859-1?q?socia=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: Eu ia sugerir às 19:40, mas por mim, 19:39 tá bom! :) Então, tá marcado? [ ]'s 2010/7/19 Marco Lima : > Salve! > > Minha suguestão é o Manuel e Joaquim da Largo do Machado, as 19:39h. > > > Att; > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta > paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > 2010/7/19 Samir Cury >> >> E aí pessoal, onde vai ser? >> >> HD? HAHAHA (brincadeira hein) >> >> Abraços >> >> 2010/7/17 Marco Lima >>> >>> hahahah >>> >>> Os caras vierão da Espanha para conhecer o Brasil e vc vai levar eles >>> para comer comida Espanhola !?!? >>> >>> Marco Lima >>> braun.lima em gmail.com >>> im:mago em jabber-br.org >>> >>> Register Linux User #355235 >>> Slackware Linux, for the subgenius >>> >>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>> é um dever de quem tem." >>> >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>> "diversão." >>> >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>> possa ensinar" >>> >>> >>> >>> 2010/7/17 Eduardo Prillwitz >>>> >>>> O clube espanhol no humaitá tem uma tortilla ótima e é tranqüilo.  Pode >>>> ser uma boa. >>>> >>>> >>>> >>>> Atc, >>>> >>>> >>>> >>>> Eduardo. >>>> >>>> >>>> >>>> De: rio-pm-bounces+eprill=uol.com.br em pm.org >>>> [mailto:rio-pm-bounces+eprill=uol.com.br em pm.org] Em nome de Marco Lima >>>> Enviada em: sábado, 17 de julho de 2010 17:20 >>>> Para: Perl Mongers Rio de Janeiro >>>> Assunto: Re: [Rio-pm] Reunião com representantes de associação espanhola >>>> >>>> >>>> >>>> Acho o Planalto muito barulhento já que é aberto para Rua. >>>> >>>> Quanto ao patrocínio para o YAPC, acho muit difícil, não é essa a ideia, >>>> tem que lembrar que são um Federação Espanhola, e uma Associação Gaulesa, >>>> eles defendem os interesses dos seus membros. Não acredito que patrocianar >>>> um evento no Brasil seja de interesse deles, o que pode ser feito é >>>> organizar eventos na Espanha, essa é a idéia, como eventos de capacitação e >>>> treinamento. >>>> >>>> Att; >>>> >>>> Marco Lima >>>> braun.lima em gmail.com >>>> im:mago em jabber-br.org >>>> >>>> Register Linux User #355235 >>>> Slackware Linux, for the subgenius >>>> >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>>> é um dever de quem tem." >>>> >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>>> "diversão." >>>> >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>>> possa ensinar" >>>> >>>> >>>> 2010/7/17 Samir Cury >>>> >>>> O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da >>>> ultima vez. Mas pode ser meio repeteco da mesma praca da ultima vez. Se nao >>>> aparecerem opcoes melhores vemos ai >>>> >>>> 2010/7/17 Diana Rosa >>>> >>>> >>>> >>>> Quem sabe uma possibilidade de patrocinio para o YAPC? >>>> >>>> Em troca eles podiam dar uma palestra no evento sobre o projeto deles. >>>> Assim todos ficam contentes >>>> >>>> Abs! >>>> >>>> 2010/7/16 Marco Lima >>>> >>>> >>>> >>>> Salve: >>>> >>>> Minha sugestão é que seja em um local tranquilo e que possa conversar >>>> melhor, talvez marcar para jantar, temos algumas opções perto do Largo do >>>> Machado, como o Manuel e Joaquim, etc. >>>> >>>> É importante lembrar que não será outro encontro social, mas sim um >>>> encontro de negócios, para que seja possível conversar sobre a parceria, o >>>> que podemos oferecer a eles, e o que teriamos em troca. Enfim, entender >>>> melhor quais são as possibilidades dessa parceria. >>>> >>>> Já foi falado em duas linhas interessantes, que é fornecimento de >>>> pessoal altamente capacidade para treinamento, ou seja, montar projetos de >>>> capacitação na Espanha e enviar instrutores. A outra frente é atender a >>>> demanda das empresas associadas, no que diz respeito a desenvolvimento de >>>> software. >>>> >>>> Bom, como podem ver as possibilidades são bastante interessante, e podem >>>> se expandir ainda mais. >>>> >>>> Att; >>>> >>>> Marco Lima >>>> braun.lima em gmail.com >>>> im:mago em jabber-br.org >>>> >>>> Register Linux User #355235 >>>> Slackware Linux, for the subgenius >>>> >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>>> é um dever de quem tem." >>>> >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>>> "diversão." >>>> >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>>> possa ensinar" >>>> >>>> >>>> Em 16 de julho de 2010 19:48, Claudio Pereira >>>> escreveu: >>>> >>>> >>>> >>>> 2010/7/16 João C. Coutinho : >>>> >>>> > Agendamos uma reunião para a próxima segunda-feira à noite para >>>> > apresentarmos ideias de como essa parceria pode ser realizada. Eles >>>> > estão hospedados perto do Largo do Machado e portanto pensamos em >>>> > fazer a reunião lá por perto. Onde vocês sugerem? >>>> >>>> Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? >>>> hehehehe >>>> >>>> Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é >>>> claro! >>>> >>>> ps: Na segunda-feira eu poderei ir. >>>> >>>> [  ]'s Indio. >>>> Claudio P Costa >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>>> >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From braun.lima em gmail.com Mon Jul 19 12:26:35 2010 From: braun.lima em gmail.com (Marco Lima) Date: Mon, 19 Jul 2010 16:26:35 -0300 Subject: [Rio-pm] =?iso-8859-1?q?RES=3A_Reuni=E3o_com_representantes_de_as?= =?iso-8859-1?q?socia=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: O Manoel e Joaquim fica na esquina da Almirante Tamandaré se não me engano, do perto do Itaú. Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" 2010/7/19 Samir Cury > Não sabia que tinha por lá, é um bar com esquina na dois de dezembro? > > > 2010/7/19 Marco Lima > > Salve! >> >> Minha suguestão é o Manuel e Joaquim da Largo do Machado, as 19:39h. >> >> >> Att; >> >> Marco Lima >> braun.lima em gmail.com >> im:mago em jabber-br.org >> >> Register Linux User #355235 >> Slackware Linux, for the subgenius >> >> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é >> um dever de quem tem." >> >> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> "diversão." >> >> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> possa ensinar" >> >> >> >> 2010/7/19 Samir Cury >> >> E aí pessoal, onde vai ser? >>> >>> HD? HAHAHA (brincadeira hein) >>> >>> Abraços >>> >>> 2010/7/17 Marco Lima >>> >>> hahahah >>>> >>>> Os caras vierão da Espanha para conhecer o Brasil e vc vai levar eles >>>> para comer comida Espanhola !?!? >>>> >>>> Marco Lima >>>> braun.lima em gmail.com >>>> im:mago em jabber-br.org >>>> >>>> Register Linux User #355235 >>>> Slackware Linux, for the subgenius >>>> >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>>> é um dever de quem tem." >>>> >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>>> "diversão." >>>> >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>>> possa ensinar" >>>> >>>> >>>> >>>> 2010/7/17 Eduardo Prillwitz >>>> >>>> O clube espanhol no humaitá tem uma tortilla ótima e é tranqüilo. >>>>> Pode ser uma boa. >>>>> >>>>> >>>>> >>>>> Atc, >>>>> >>>>> >>>>> >>>>> Eduardo. >>>>> >>>>> >>>>> >>>>> *De:* rio-pm-bounces+eprill=uol.com.br em pm.org [mailto: >>>>> rio-pm-bounces+eprill =uol.com.br em pm.org] *Em >>>>> nome de *Marco Lima >>>>> *Enviada em:* sábado, 17 de julho de 2010 17:20 >>>>> *Para:* Perl Mongers Rio de Janeiro >>>>> *Assunto:* Re: [Rio-pm] Reunião com representantes de associação >>>>> espanhola >>>>> >>>>> >>>>> >>>>> Acho o Planalto muito barulhento já que é aberto para Rua. >>>>> >>>>> Quanto ao patrocínio para o YAPC, acho muit difícil, não é essa a >>>>> ideia, tem que lembrar que são um Federação Espanhola, e uma Associação >>>>> Gaulesa, eles defendem os interesses dos seus membros. Não acredito que >>>>> patrocianar um evento no Brasil seja de interesse deles, o que pode ser >>>>> feito é organizar eventos na Espanha, essa é a idéia, como eventos de >>>>> capacitação e treinamento. >>>>> >>>>> Att; >>>>> >>>>> Marco Lima >>>>> braun.lima em gmail.com >>>>> im:mago em jabber-br.org >>>>> >>>>> Register Linux User #355235 >>>>> Slackware Linux, for the subgenius >>>>> >>>>> "Ter acesso ao conhecimento é um dever de todos; transmitir >>>>> conhecimento é um dever de quem tem." >>>>> >>>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>>>> "diversão." >>>>> >>>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>>>> possa ensinar" >>>>> >>>>> >>>>> 2010/7/17 Samir Cury >>>>> >>>>> O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da >>>>> ultima vez. Mas pode ser meio repeteco da mesma praca da ultima vez. Se nao >>>>> aparecerem opcoes melhores vemos ai >>>>> >>>>> 2010/7/17 Diana Rosa >>>>> >>>>> >>>>> >>>>> Quem sabe uma possibilidade de patrocinio para o YAPC? >>>>> >>>>> Em troca eles podiam dar uma palestra no evento sobre o projeto >>>>> deles. Assim todos ficam contentes >>>>> >>>>> >>>>> Abs! >>>>> >>>>> 2010/7/16 Marco Lima >>>>> >>>>> >>>>> >>>>> Salve: >>>>> >>>>> Minha sugestão é que seja em um local tranquilo e que possa conversar >>>>> melhor, talvez marcar para jantar, temos algumas opções perto do Largo do >>>>> Machado, como o Manuel e Joaquim, etc. >>>>> >>>>> É importante lembrar que não será outro encontro social, mas sim um >>>>> encontro de negócios, para que seja possível conversar sobre a parceria, o >>>>> que podemos oferecer a eles, e o que teriamos em troca. Enfim, entender >>>>> melhor quais são as possibilidades dessa parceria. >>>>> >>>>> Já foi falado em duas linhas interessantes, que é fornecimento de >>>>> pessoal altamente capacidade para treinamento, ou seja, montar projetos de >>>>> capacitação na Espanha e enviar instrutores. A outra frente é atender a >>>>> demanda das empresas associadas, no que diz respeito a desenvolvimento de >>>>> software. >>>>> >>>>> Bom, como podem ver as possibilidades são bastante interessante, e >>>>> podem se expandir ainda mais. >>>>> >>>>> Att; >>>>> >>>>> Marco Lima >>>>> braun.lima em gmail.com >>>>> im:mago em jabber-br.org >>>>> >>>>> Register Linux User #355235 >>>>> Slackware Linux, for the subgenius >>>>> >>>>> "Ter acesso ao conhecimento é um dever de todos; transmitir >>>>> conhecimento é um dever de quem tem." >>>>> >>>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>>>> "diversão." >>>>> >>>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>>>> possa ensinar" >>>>> >>>>> >>>>> Em 16 de julho de 2010 19:48, Claudio Pereira >>>>> escreveu: >>>>> >>>>> >>>>> >>>>> 2010/7/16 João C. Coutinho : >>>>> >>>>> > Agendamos uma reunião para a próxima segunda-feira à noite para >>>>> > apresentarmos ideias de como essa parceria pode ser realizada. Eles >>>>> > estão hospedados perto do Largo do Machado e portanto pensamos em >>>>> > fazer a reunião lá por perto. Onde vocês sugerem? >>>>> >>>>> Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? >>>>> hehehehe >>>>> >>>>> Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é >>>>> claro! >>>>> >>>>> ps: Na segunda-feira eu poderei ir. >>>>> >>>>> [ ]'s Indio. >>>>> Claudio P Costa >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>> >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From fernandocorrea em gmail.com Mon Jul 19 12:28:06 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Mon, 19 Jul 2010 16:28:06 -0300 Subject: [Rio-pm] =?iso-8859-1?q?RES=3A_Reuni=E3o_com_representantes_de_as?= =?iso-8859-1?q?socia=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: Acho o manoel joaquim uma ótima pedida! Qto ao horario, eu não estarei livre hj até depois das 20:30... Just another Perl Hacker, Fernando (SmokeMachine) sip:fco em pbxes.org Em 19 de julho de 2010 16:19, João C. Coutinho escreveu: > Eu ia sugerir às 19:40, mas por mim, 19:39 tá bom! :) > Então, tá marcado? > [ ]'s > > > 2010/7/19 Marco Lima : > > Salve! > > > > Minha suguestão é o Manuel e Joaquim da Largo do Machado, as 19:39h. > > > > > > Att; > > > > Marco Lima > > braun.lima em gmail.com > > im:mago em jabber-br.org > > > > Register Linux User #355235 > > Slackware Linux, for the subgenius > > > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento > é > > um dever de quem tem." > > > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta > > paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa > > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." > > > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > > possa ensinar" > > > > > > > > 2010/7/19 Samir Cury > >> > >> E aí pessoal, onde vai ser? > >> > >> HD? HAHAHA (brincadeira hein) > >> > >> Abraços > >> > >> 2010/7/17 Marco Lima > >>> > >>> hahahah > >>> > >>> Os caras vierão da Espanha para conhecer o Brasil e vc vai levar eles > >>> para comer comida Espanhola !?!? > >>> > >>> Marco Lima > >>> braun.lima em gmail.com > >>> im:mago em jabber-br.org > >>> > >>> Register Linux User #355235 > >>> Slackware Linux, for the subgenius > >>> > >>> "Ter acesso ao conhecimento é um dever de todos; transmitir > conhecimento > >>> é um dever de quem tem." > >>> > >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e > >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > >>> "diversão." > >>> > >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > >>> possa ensinar" > >>> > >>> > >>> > >>> 2010/7/17 Eduardo Prillwitz > >>>> > >>>> O clube espanhol no humaitá tem uma tortilla ótima e é tranqüilo. > Pode > >>>> ser uma boa. > >>>> > >>>> > >>>> > >>>> Atc, > >>>> > >>>> > >>>> > >>>> Eduardo. > >>>> > >>>> > >>>> > >>>> De: rio-pm-bounces+eprill=uol.com.br em pm.org > >>>> [mailto:rio-pm-bounces+eprill =uol.com.br@ > pm.org] Em nome de Marco Lima > >>>> Enviada em: sábado, 17 de julho de 2010 17:20 > >>>> Para: Perl Mongers Rio de Janeiro > >>>> Assunto: Re: [Rio-pm] Reunião com representantes de associação > espanhola > >>>> > >>>> > >>>> > >>>> Acho o Planalto muito barulhento já que é aberto para Rua. > >>>> > >>>> Quanto ao patrocínio para o YAPC, acho muit difícil, não é essa a > ideia, > >>>> tem que lembrar que são um Federação Espanhola, e uma Associação > Gaulesa, > >>>> eles defendem os interesses dos seus membros. Não acredito que > patrocianar > >>>> um evento no Brasil seja de interesse deles, o que pode ser feito é > >>>> organizar eventos na Espanha, essa é a idéia, como eventos de > capacitação e > >>>> treinamento. > >>>> > >>>> Att; > >>>> > >>>> Marco Lima > >>>> braun.lima em gmail.com > >>>> im:mago em jabber-br.org > >>>> > >>>> Register Linux User #355235 > >>>> Slackware Linux, for the subgenius > >>>> > >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir > conhecimento > >>>> é um dever de quem tem." > >>>> > >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma > paixão. > >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora > e > >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > >>>> "diversão." > >>>> > >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que > não > >>>> possa ensinar" > >>>> > >>>> > >>>> 2010/7/17 Samir Cury > >>>> > >>>> O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da > >>>> ultima vez. Mas pode ser meio repeteco da mesma praca da ultima vez. > Se nao > >>>> aparecerem opcoes melhores vemos ai > >>>> > >>>> 2010/7/17 Diana Rosa > >>>> > >>>> > >>>> > >>>> Quem sabe uma possibilidade de patrocinio para o YAPC? > >>>> > >>>> Em troca eles podiam dar uma palestra no evento sobre o projeto deles. > >>>> Assim todos ficam contentes > >>>> > >>>> Abs! > >>>> > >>>> 2010/7/16 Marco Lima > >>>> > >>>> > >>>> > >>>> Salve: > >>>> > >>>> Minha sugestão é que seja em um local tranquilo e que possa conversar > >>>> melhor, talvez marcar para jantar, temos algumas opções perto do Largo > do > >>>> Machado, como o Manuel e Joaquim, etc. > >>>> > >>>> É importante lembrar que não será outro encontro social, mas sim um > >>>> encontro de negócios, para que seja possível conversar sobre a > parceria, o > >>>> que podemos oferecer a eles, e o que teriamos em troca. Enfim, > entender > >>>> melhor quais são as possibilidades dessa parceria. > >>>> > >>>> Já foi falado em duas linhas interessantes, que é fornecimento de > >>>> pessoal altamente capacidade para treinamento, ou seja, montar > projetos de > >>>> capacitação na Espanha e enviar instrutores. A outra frente é atender > a > >>>> demanda das empresas associadas, no que diz respeito a desenvolvimento > de > >>>> software. > >>>> > >>>> Bom, como podem ver as possibilidades são bastante interessante, e > podem > >>>> se expandir ainda mais. > >>>> > >>>> Att; > >>>> > >>>> Marco Lima > >>>> braun.lima em gmail.com > >>>> im:mago em jabber-br.org > >>>> > >>>> Register Linux User #355235 > >>>> Slackware Linux, for the subgenius > >>>> > >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir > conhecimento > >>>> é um dever de quem tem." > >>>> > >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma > paixão. > >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora > e > >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > >>>> "diversão." > >>>> > >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que > não > >>>> possa ensinar" > >>>> > >>>> > >>>> Em 16 de julho de 2010 19:48, Claudio Pereira > >>>> escreveu: > >>>> > >>>> > >>>> > >>>> 2010/7/16 João C. Coutinho : > >>>> > >>>> > Agendamos uma reunião para a próxima segunda-feira à noite para > >>>> > apresentarmos ideias de como essa parceria pode ser realizada. Eles > >>>> > estão hospedados perto do Largo do Machado e portanto pensamos em > >>>> > fazer a reunião lá por perto. Onde vocês sugerem? > >>>> > >>>> Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? > >>>> hehehehe > >>>> > >>>> Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, é > >>>> claro! > >>>> > >>>> ps: Na segunda-feira eu poderei ir. > >>>> > >>>> [ ]'s Indio. > >>>> Claudio P Costa > >>>> > >>>> _______________________________________________ > >>>> Rio-pm mailing list > >>>> Rio-pm em pm.org > >>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>> > >>>> _______________________________________________ > >>>> Rio-pm mailing list > >>>> Rio-pm em pm.org > >>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>> > >>>> _______________________________________________ > >>>> Rio-pm mailing list > >>>> Rio-pm em pm.org > >>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>> > >>>> _______________________________________________ > >>>> Rio-pm mailing list > >>>> Rio-pm em pm.org > >>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>>> > >>>> > >>>> > >>>> _______________________________________________ > >>>> Rio-pm mailing list > >>>> Rio-pm em pm.org > >>>> http://mail.pm.org/mailman/listinfo/rio-pm > >>> > >>> > >>> _______________________________________________ > >>> Rio-pm mailing list > >>> Rio-pm em pm.org > >>> http://mail.pm.org/mailman/listinfo/rio-pm > >> > >> > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From no-reply em dropbox.com Mon Jul 19 13:29:48 2010 From: no-reply em dropbox.com (Dropbox) Date: Mon, 19 Jul 2010 20:29:48 +0000 Subject: [Rio-pm] Franci Clebio Alves Da Silva has invited you to Dropbox Message-ID: <20100719202948.F17A3461E80@mailman.dropbox.com> We're excited to let you know that Franci Clebio Alves Da Silva has invited you to Dropbox! Franci Clebio Alves Da Silva has been using Dropbox to sync and share files online and across computers, and thought you might want it too. Visit http://www.dropbox.com/link/20.KU4tJ1rUni/NjI1NDk3MTU4Nw to get started. - The Dropbox Team ____________________________________________________ To stop receiving invites from Dropbox, please go to http://www.dropbox.com/bl/2e7ef9a67b17/rio-pm%40pm.org -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Mon Jul 19 15:08:50 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Mon, 19 Jul 2010 19:08:50 -0300 Subject: [Rio-pm] =?iso-8859-1?q?RES=3A_Reuni=E3o_com_representantes_de_as?= =?iso-8859-1?q?socia=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: Nao sei se irei, nao estou bem. Se melhorar, eu baixo lá. 2010/7/19 Fernando Oliveira > Acho o manoel joaquim uma ótima pedida! > Qto ao horario, eu não estarei livre hj até depois das 20:30... > > Just another Perl Hacker, > Fernando (SmokeMachine) > sip:fco em pbxes.org > > > Em 19 de julho de 2010 16:19, João C. Coutinho escreveu: > > Eu ia sugerir às 19:40, mas por mim, 19:39 tá bom! :) >> Então, tá marcado? >> [ ]'s >> >> >> 2010/7/19 Marco Lima : >> > Salve! >> > >> > Minha suguestão é o Manuel e Joaquim da Largo do Machado, as 19:39h. >> > >> > >> > Att; >> > >> > Marco Lima >> > braun.lima em gmail.com >> > im:mago em jabber-br.org >> > >> > Register Linux User #355235 >> > Slackware Linux, for the subgenius >> > >> > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >> é >> > um dever de quem tem." >> > >> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta >> > paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa >> > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." >> > >> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> > possa ensinar" >> > >> > >> > >> > 2010/7/19 Samir Cury >> >> >> >> E aí pessoal, onde vai ser? >> >> >> >> HD? HAHAHA (brincadeira hein) >> >> >> >> Abraços >> >> >> >> 2010/7/17 Marco Lima >> >>> >> >>> hahahah >> >>> >> >>> Os caras vierão da Espanha para conhecer o Brasil e vc vai levar eles >> >>> para comer comida Espanhola !?!? >> >>> >> >>> Marco Lima >> >>> braun.lima em gmail.com >> >>> im:mago em jabber-br.org >> >>> >> >>> Register Linux User #355235 >> >>> Slackware Linux, for the subgenius >> >>> >> >>> "Ter acesso ao conhecimento é um dever de todos; transmitir >> conhecimento >> >>> é um dever de quem tem." >> >>> >> >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >> paixão. >> >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora >> e >> >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> >>> "diversão." >> >>> >> >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >> não >> >>> possa ensinar" >> >>> >> >>> >> >>> >> >>> 2010/7/17 Eduardo Prillwitz >> >>>> >> >>>> O clube espanhol no humaitá tem uma tortilla ótima e é tranqüilo. >> Pode >> >>>> ser uma boa. >> >>>> >> >>>> >> >>>> >> >>>> Atc, >> >>>> >> >>>> >> >>>> >> >>>> Eduardo. >> >>>> >> >>>> >> >>>> >> >>>> De: rio-pm-bounces+eprill=uol.com.br em pm.org >> >>>> [mailto:rio-pm-bounces+eprill =uol.com.br@ >> pm.org] Em nome de Marco Lima >> >>>> Enviada em: sábado, 17 de julho de 2010 17:20 >> >>>> Para: Perl Mongers Rio de Janeiro >> >>>> Assunto: Re: [Rio-pm] Reunião com representantes de associação >> espanhola >> >>>> >> >>>> >> >>>> >> >>>> Acho o Planalto muito barulhento já que é aberto para Rua. >> >>>> >> >>>> Quanto ao patrocínio para o YAPC, acho muit difícil, não é essa a >> ideia, >> >>>> tem que lembrar que são um Federação Espanhola, e uma Associação >> Gaulesa, >> >>>> eles defendem os interesses dos seus membros. Não acredito que >> patrocianar >> >>>> um evento no Brasil seja de interesse deles, o que pode ser feito é >> >>>> organizar eventos na Espanha, essa é a idéia, como eventos de >> capacitação e >> >>>> treinamento. >> >>>> >> >>>> Att; >> >>>> >> >>>> Marco Lima >> >>>> braun.lima em gmail.com >> >>>> im:mago em jabber-br.org >> >>>> >> >>>> Register Linux User #355235 >> >>>> Slackware Linux, for the subgenius >> >>>> >> >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir >> conhecimento >> >>>> é um dever de quem tem." >> >>>> >> >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >> paixão. >> >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora >> e >> >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> >>>> "diversão." >> >>>> >> >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >> não >> >>>> possa ensinar" >> >>>> >> >>>> >> >>>> 2010/7/17 Samir Cury >> >>>> >> >>>> O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da >> >>>> ultima vez. Mas pode ser meio repeteco da mesma praca da ultima vez. >> Se nao >> >>>> aparecerem opcoes melhores vemos ai >> >>>> >> >>>> 2010/7/17 Diana Rosa >> >>>> >> >>>> >> >>>> >> >>>> Quem sabe uma possibilidade de patrocinio para o YAPC? >> >>>> >> >>>> Em troca eles podiam dar uma palestra no evento sobre o projeto >> deles. >> >>>> Assim todos ficam contentes >> >>>> >> >>>> Abs! >> >>>> >> >>>> 2010/7/16 Marco Lima >> >>>> >> >>>> >> >>>> >> >>>> Salve: >> >>>> >> >>>> Minha sugestão é que seja em um local tranquilo e que possa conversar >> >>>> melhor, talvez marcar para jantar, temos algumas opções perto do >> Largo do >> >>>> Machado, como o Manuel e Joaquim, etc. >> >>>> >> >>>> É importante lembrar que não será outro encontro social, mas sim um >> >>>> encontro de negócios, para que seja possível conversar sobre a >> parceria, o >> >>>> que podemos oferecer a eles, e o que teriamos em troca. Enfim, >> entender >> >>>> melhor quais são as possibilidades dessa parceria. >> >>>> >> >>>> Já foi falado em duas linhas interessantes, que é fornecimento de >> >>>> pessoal altamente capacidade para treinamento, ou seja, montar >> projetos de >> >>>> capacitação na Espanha e enviar instrutores. A outra frente é atender >> a >> >>>> demanda das empresas associadas, no que diz respeito a >> desenvolvimento de >> >>>> software. >> >>>> >> >>>> Bom, como podem ver as possibilidades são bastante interessante, e >> podem >> >>>> se expandir ainda mais. >> >>>> >> >>>> Att; >> >>>> >> >>>> Marco Lima >> >>>> braun.lima em gmail.com >> >>>> im:mago em jabber-br.org >> >>>> >> >>>> Register Linux User #355235 >> >>>> Slackware Linux, for the subgenius >> >>>> >> >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir >> conhecimento >> >>>> é um dever de quem tem." >> >>>> >> >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >> paixão. >> >>>> Esta paixão é, na realidade, uma atividade significativa, inspiradora >> e >> >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> >>>> "diversão." >> >>>> >> >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >> não >> >>>> possa ensinar" >> >>>> >> >>>> >> >>>> Em 16 de julho de 2010 19:48, Claudio Pereira >> >>>> escreveu: >> >>>> >> >>>> >> >>>> >> >>>> 2010/7/16 João C. Coutinho : >> >>>> >> >>>> > Agendamos uma reunião para a próxima segunda-feira à noite para >> >>>> > apresentarmos ideias de como essa parceria pode ser realizada. Eles >> >>>> > estão hospedados perto do Largo do Machado e portanto pensamos em >> >>>> > fazer a reunião lá por perto. Onde vocês sugerem? >> >>>> >> >>>> Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? >> >>>> hehehehe >> >>>> >> >>>> Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, >> é >> >>>> claro! >> >>>> >> >>>> ps: Na segunda-feira eu poderei ir. >> >>>> >> >>>> [ ]'s Indio. >> >>>> Claudio P Costa >> >>>> >> >>>> _______________________________________________ >> >>>> Rio-pm mailing list >> >>>> Rio-pm em pm.org >> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>> >> >>>> _______________________________________________ >> >>>> Rio-pm mailing list >> >>>> Rio-pm em pm.org >> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>> >> >>>> _______________________________________________ >> >>>> Rio-pm mailing list >> >>>> Rio-pm em pm.org >> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>> >> >>>> _______________________________________________ >> >>>> Rio-pm mailing list >> >>>> Rio-pm em pm.org >> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>>> >> >>>> >> >>>> >> >>>> _______________________________________________ >> >>>> Rio-pm mailing list >> >>>> Rio-pm em pm.org >> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>> >> >>> >> >>> _______________________________________________ >> >>> Rio-pm mailing list >> >>> Rio-pm em pm.org >> >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> >> >> >> _______________________________________________ >> >> Rio-pm mailing list >> >> Rio-pm em pm.org >> >> http://mail.pm.org/mailman/listinfo/rio-pm >> > >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Mon Jul 19 15:16:30 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Mon, 19 Jul 2010 19:16:30 -0300 Subject: [Rio-pm] =?iso-8859-1?q?RES=3A_Reuni=E3o_com_representantes_de_as?= =?iso-8859-1?q?socia=E7=E3o_espanhola?= In-Reply-To: References: Message-ID: se conseguir uma carona pro Flamengo eu vou 2010/7/19 Oscar Marques : > Nao sei se irei, nao estou bem. > Se melhorar, eu baixo lá. > > 2010/7/19 Fernando Oliveira >> >> Acho o manoel joaquim uma ótima pedida! >> Qto ao horario, eu não estarei livre hj até depois das 20:30... >> Just another Perl Hacker, >> Fernando (SmokeMachine) >> sip:fco em pbxes.org >> >> >> Em 19 de julho de 2010 16:19, João C. Coutinho >> escreveu: >>> >>> Eu ia sugerir às 19:40, mas por mim, 19:39 tá bom! :) >>> Então, tá marcado? >>> [ ]'s >>> >>> >>> 2010/7/19 Marco Lima : >>> > Salve! >>> > >>> > Minha suguestão é o Manuel e Joaquim da Largo do Machado, as 19:39h. >>> > >>> > >>> > Att; >>> > >>> > Marco Lima >>> > braun.lima em gmail.com >>> > im:mago em jabber-br.org >>> > >>> > Register Linux User #355235 >>> > Slackware Linux, for the subgenius >>> > >>> > "Ter acesso ao conhecimento é um dever de todos; transmitir >>> > conhecimento é >>> > um dever de quem tem." >>> > >>> > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>> > Esta >>> > paixão é, na realidade, uma atividade significativa, inspiradora e >>> > prazerosa >>> > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." >>> > >>> > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>> > possa ensinar" >>> > >>> > >>> > >>> > 2010/7/19 Samir Cury >>> >> >>> >> E aí pessoal, onde vai ser? >>> >> >>> >> HD? HAHAHA (brincadeira hein) >>> >> >>> >> Abraços >>> >> >>> >> 2010/7/17 Marco Lima >>> >>> >>> >>> hahahah >>> >>> >>> >>> Os caras vierão da Espanha para conhecer o Brasil e vc vai levar eles >>> >>> para comer comida Espanhola !?!? >>> >>> >>> >>> Marco Lima >>> >>> braun.lima em gmail.com >>> >>> im:mago em jabber-br.org >>> >>> >>> >>> Register Linux User #355235 >>> >>> Slackware Linux, for the subgenius >>> >>> >>> >>> "Ter acesso ao conhecimento é um dever de todos; transmitir >>> >>> conhecimento >>> >>> é um dever de quem tem." >>> >>> >>> >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>> >>> paixão. >>> >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora >>> >>> e >>> >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>> >>> "diversão." >>> >>> >>> >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >>> >>> não >>> >>> possa ensinar" >>> >>> >>> >>> >>> >>> >>> >>> 2010/7/17 Eduardo Prillwitz >>> >>>> >>> >>>> O clube espanhol no humaitá tem uma tortilla ótima e é tranqüilo. >>> >>>> Pode >>> >>>> ser uma boa. >>> >>>> >>> >>>> >>> >>>> >>> >>>> Atc, >>> >>>> >>> >>>> >>> >>>> >>> >>>> Eduardo. >>> >>>> >>> >>>> >>> >>>> >>> >>>> De: rio-pm-bounces+eprill=uol.com.br em pm.org >>> >>>> [mailto:rio-pm-bounces+eprill=uol.com.br em pm.org] Em nome de Marco >>> >>>> Lima >>> >>>> Enviada em: sábado, 17 de julho de 2010 17:20 >>> >>>> Para: Perl Mongers Rio de Janeiro >>> >>>> Assunto: Re: [Rio-pm] Reunião com representantes de associação >>> >>>> espanhola >>> >>>> >>> >>>> >>> >>>> >>> >>>> Acho o Planalto muito barulhento já que é aberto para Rua. >>> >>>> >>> >>>> Quanto ao patrocínio para o YAPC, acho muit difícil, não é essa a >>> >>>> ideia, >>> >>>> tem que lembrar que são um Federação Espanhola, e uma Associação >>> >>>> Gaulesa, >>> >>>> eles defendem os interesses dos seus membros. Não acredito que >>> >>>> patrocianar >>> >>>> um evento no Brasil seja de interesse deles, o que pode ser feito é >>> >>>> organizar eventos na Espanha, essa é a idéia, como eventos de >>> >>>> capacitação e >>> >>>> treinamento. >>> >>>> >>> >>>> Att; >>> >>>> >>> >>>> Marco Lima >>> >>>> braun.lima em gmail.com >>> >>>> im:mago em jabber-br.org >>> >>>> >>> >>>> Register Linux User #355235 >>> >>>> Slackware Linux, for the subgenius >>> >>>> >>> >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir >>> >>>> conhecimento >>> >>>> é um dever de quem tem." >>> >>>> >>> >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>> >>>> paixão. >>> >>>> Esta paixão é, na realidade, uma atividade significativa, >>> >>>> inspiradora e >>> >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou >>> >>>> como >>> >>>> "diversão." >>> >>>> >>> >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >>> >>>> não >>> >>>> possa ensinar" >>> >>>> >>> >>>> >>> >>>> 2010/7/17 Samir Cury >>> >>>> >>> >>>> O lugar, sugiro o Planalto do chopp pela Pizza, ja que nao fomos da >>> >>>> ultima vez. Mas pode ser meio repeteco da mesma praca da ultima vez. >>> >>>> Se nao >>> >>>> aparecerem opcoes melhores vemos ai >>> >>>> >>> >>>> 2010/7/17 Diana Rosa >>> >>>> >>> >>>> >>> >>>> >>> >>>> Quem sabe uma possibilidade de patrocinio para o YAPC? >>> >>>> >>> >>>> Em troca eles podiam dar uma palestra no evento sobre o projeto >>> >>>> deles. >>> >>>> Assim todos ficam contentes >>> >>>> >>> >>>> Abs! >>> >>>> >>> >>>> 2010/7/16 Marco Lima >>> >>>> >>> >>>> >>> >>>> >>> >>>> Salve: >>> >>>> >>> >>>> Minha sugestão é que seja em um local tranquilo e que possa >>> >>>> conversar >>> >>>> melhor, talvez marcar para jantar, temos algumas opções perto do >>> >>>> Largo do >>> >>>> Machado, como o Manuel e Joaquim, etc. >>> >>>> >>> >>>> É importante lembrar que não será outro encontro social, mas sim um >>> >>>> encontro de negócios, para que seja possível conversar sobre a >>> >>>> parceria, o >>> >>>> que podemos oferecer a eles, e o que teriamos em troca. Enfim, >>> >>>> entender >>> >>>> melhor quais são as possibilidades dessa parceria. >>> >>>> >>> >>>> Já foi falado em duas linhas interessantes, que é fornecimento de >>> >>>> pessoal altamente capacidade para treinamento, ou seja, montar >>> >>>> projetos de >>> >>>> capacitação na Espanha e enviar instrutores. A outra frente é >>> >>>> atender a >>> >>>> demanda das empresas associadas, no que diz respeito a >>> >>>> desenvolvimento de >>> >>>> software. >>> >>>> >>> >>>> Bom, como podem ver as possibilidades são bastante interessante, e >>> >>>> podem >>> >>>> se expandir ainda mais. >>> >>>> >>> >>>> Att; >>> >>>> >>> >>>> Marco Lima >>> >>>> braun.lima em gmail.com >>> >>>> im:mago em jabber-br.org >>> >>>> >>> >>>> Register Linux User #355235 >>> >>>> Slackware Linux, for the subgenius >>> >>>> >>> >>>> "Ter acesso ao conhecimento é um dever de todos; transmitir >>> >>>> conhecimento >>> >>>> é um dever de quem tem." >>> >>>> >>> >>>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma >>> >>>> paixão. >>> >>>> Esta paixão é, na realidade, uma atividade significativa, >>> >>>> inspiradora e >>> >>>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou >>> >>>> como >>> >>>> "diversão." >>> >>>> >>> >>>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que >>> >>>> não >>> >>>> possa ensinar" >>> >>>> >>> >>>> >>> >>>> Em 16 de julho de 2010 19:48, Claudio Pereira >>> >>>> escreveu: >>> >>>> >>> >>>> >>> >>>> >>> >>>> 2010/7/16 João C. Coutinho : >>> >>>> >>> >>>> > Agendamos uma reunião para a próxima segunda-feira à noite para >>> >>>> > apresentarmos ideias de como essa parceria pode ser realizada. >>> >>>> > Eles >>> >>>> > estão hospedados perto do Largo do Machado e portanto pensamos em >>> >>>> > fazer a reunião lá por perto. Onde vocês sugerem? >>> >>>> >>> >>>> Eles já conhecem o Mercadinho? Ponto oficial de Encontro do Rio PM? >>> >>>> hehehehe >>> >>>> >>> >>>> Temos que apresentá-los ao Serginho e suas comidas, além dos chopps, >>> >>>> é >>> >>>> claro! >>> >>>> >>> >>>> ps: Na segunda-feira eu poderei ir. >>> >>>> >>> >>>> [  ]'s Indio. >>> >>>> Claudio P Costa >>> >>>> >>> >>>> _______________________________________________ >>> >>>> Rio-pm mailing list >>> >>>> Rio-pm em pm.org >>> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>> >>> >>>> _______________________________________________ >>> >>>> Rio-pm mailing list >>> >>>> Rio-pm em pm.org >>> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>> >>> >>>> _______________________________________________ >>> >>>> Rio-pm mailing list >>> >>>> Rio-pm em pm.org >>> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>> >>> >>>> _______________________________________________ >>> >>>> Rio-pm mailing list >>> >>>> Rio-pm em pm.org >>> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>>> >>> >>>> >>> >>>> >>> >>>> _______________________________________________ >>> >>>> Rio-pm mailing list >>> >>>> Rio-pm em pm.org >>> >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> >>> >>> >>> _______________________________________________ >>> >>> Rio-pm mailing list >>> >>> Rio-pm em pm.org >>> >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >>> >> >>> >> _______________________________________________ >>> >> Rio-pm mailing list >>> >> Rio-pm em pm.org >>> >> http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> > >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br From jc em joaocoutinho.com.br Mon Jul 19 23:43:48 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Tue, 20 Jul 2010 03:43:48 -0300 Subject: [Rio-pm] Fwd: [PSL-Brasil] [OT] LinuxCon Brasil 2010 - Proposta de Encontro de desenvolvedores profissionais de Linux In-Reply-To: References: Message-ID: FYI ---------- Forwarded message ---------- From: Jose Pissin Date: Mon, 19 Jul 2010 17:02:16 -0400 Subject: [PSL-Brasil] [OT] LinuxCon Brasil 2010 - Proposta de Encontro de desenvolvedores profissionais de Linux To: Projeto Software Livre BRASIL Estou divulgando aqui porque achei uma boa idéia. Quem concordar divulgue e apoie. José Luis Pissin (pizza) ---------- Forwarded message ---------- From: Klaus Kiwi Date: 2010/7/19 Subject: LinuxCon Brasil 2010 - Encontro de desenvolvedores profissionais de Linux To: Klaus Heinrich Kiwi Olá pessoal. Primeiro, desculpe pelo SPAM. Peguei algumas pessoas da minha lista do Linked-in, + alguns colegas e ex-colegas da Unicamp e IBM que sei que se interessam, já trabalharam ou trabalham com Linux. A idéia é atingir o maior número de pessoas possível, portanto sinta-se livre para repassar (me mantenha em cópia, por favor). Estou escrevendo sobre a possibilidade de termos um "Encontro de desenvolvedores profissionais de Linux" acontecendo no LinuxCon Brasil 2010 (http://events.linuxfoundation.org/events/linuxcon-brazil) acontecendo em 31 de Agosto e 1o de Setembro em São Paulo. Eu fiz a proposta abaixo que foi aprovada: ------------------------------------------------------------------------------ Brazil now has several commercial organizations who invest in Linux development by having full-time developers dedicated to creating technology and products with the Linux kernel at it's core, and open-source as it's ecosystem. This mini-summit will allow those paid professionals, as well as hobbyists, educators, enthusiasts and students to meet and discuss topics relevant to "Linux development as a professional activity", such as: ? Education - what are the most common set of skills for a Linux developer? Is our education system ready? ? Job market - where is Linux development happening? What are the opportunities for professionals? ? Achievements - in what areas or products is Brazil an important contributor? What are the net economical and social results? ------------------------------------------------------------------------------ A idéia deste e-mail é de verificar a viabilidade deste mini-summit antes que eu seja obrigado a confirmar/cancelar a proposta (o que deve acontecer até o final deste mês). Gostaria de saber se há interesse em participar, se há qualquer tópico que você sugere para a agenda, voluntários para ajudar na organização etc. Um simples "boa idéia" ou "FAIL" também vale! Apesar da entrada no evento ser meio salgada (R$ 250,00 até dia 21/07, R$ 350,00 depois), acredito que podemos ter um bom número de participantes de diversas áreas para uma boa conversa. Aqui do LTC devemos ter aproximadamente 10 pessoas participando. Interessados, opiniões etc favor responder assim que possível. Um abraço, -Klaus /* - http://www.klauskiwi.com */ -- Saudações, José Luis Pissin (pizza) -- perl -E '@O=("\x61\x6e\x6f\x74\x68\x65\x72","\x50\x65\x72\x6c","\x68\x61\x63\x6b\x65\x72\x2c\xa");$J0="\x4a\x75\x73\x74\x20";say"$J0 em O"' João C. Coutinho From eu em samircury.eng.br Tue Jul 20 10:53:37 2010 From: eu em samircury.eng.br (Samir Cury) Date: Tue, 20 Jul 2010 14:53:37 -0300 Subject: [Rio-pm] Fwd: [dojo-rio] Dojo Rio Lapa (NOVA SALA - 603) - quarta 21 de julho - 18:30 In-Reply-To: References: Message-ID: E aí pessoal, Alguém a fim? Para quem não conhece talvez ache algo aqui : http://dojorio.wordpress.com/ Mas o lance é propor um problema e todos num rodízio de código, ajudarem a resolver num telão, explicando o que estão fazendo, e assim todos aprendem, parece que há também um "co-piloto", ainda não fui então não sei dizer ao certo. Quem quiser somar para ir lá, de repente até fazemos em Perl =) Abraços, Samir ---------- Forwarded message ---------- From: Leandro Dantas Date: 2010/7/20 Subject: [dojo-rio] Dojo Rio Lapa (NOVA SALA - 603) - quarta 21 de julho - 18:30 To: dojo-rio em googlegroups.com Pessoal, Tudo ok pra mais um Dojo Rio Lapa na próxima quarta-feira 21 de julho às 18:30 no endereço: Rua Teotônio Regadas 26 sala 603 - Lapa , *ao lado da Sala Cecília Meireles*, próximo ao Metrô. Traga sua comida e bebida prediletas: etc... Traga um problema a ser resolvido: http://apoie.org/Dojo.htm#7 Quem vai? [image: ?ui=2&view=att&th=124bbd6f04467be0&attid=0.1&disp=attd&realattid=ii_124bbd6f04467be0&zw] Abraços, Carlos -- * Coding Dojo Rio * dojo-rio em googlegroups.com http://groups.google.com/group/dojo-rio http://code.google.com/p/dojo-rio http://dojorio.wordpress.com -- * Coding Dojo Rio * dojo-rio em googlegroups.com http://groups.google.com/group/dojo-rio http://code.google.com/p/dojo-rio http://dojorio.wordpress.com -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: -------------- Próxima Parte ---------- Um anexo não-texto foi limpo... Nome: não disponível Tipo: image/jpeg Tamanho: 35956 bytes Descrição: não disponível URL: From oscarbm em gmail.com Tue Jul 20 10:57:55 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Tue, 20 Jul 2010 14:57:55 -0300 Subject: [Rio-pm] Fwd: [dojo-rio] Dojo Rio Lapa (NOVA SALA - 603) - quarta 21 de julho - 18:30 In-Reply-To: References: Message-ID: Eu chamo a galera pra ir, eu devo ir na quarta feira talvez. E ae quem joga? Tao me cobrando a presença dos monges lá. 2010/7/20 Samir Cury > E aí pessoal, > > Alguém a fim? > > Para quem não conhece talvez ache algo aqui : > > http://dojorio.wordpress.com/ > > Mas o lance é propor um problema e todos num rodízio de código, ajudarem a > resolver num telão, explicando o que estão fazendo, e assim todos aprendem, > parece que há também um "co-piloto", ainda não fui então não sei dizer ao > certo. Quem quiser somar para ir lá, de repente até fazemos em Perl =) > > Abraços, > Samir > > > ---------- Forwarded message ---------- > From: Leandro Dantas > Date: 2010/7/20 > Subject: [dojo-rio] Dojo Rio Lapa (NOVA SALA - 603) - quarta 21 de julho - > 18:30 > To: dojo-rio em googlegroups.com > > > Pessoal, > > Tudo ok pra mais um Dojo Rio Lapa na próxima quarta-feira 21 de julho às > 18:30 no endereço: > > Rua Teotônio Regadas 26 sala 603 - Lapa > , *ao lado da Sala Cecília Meireles*, próximo ao Metrô. > > Traga sua comida e bebida prediletas: > etc... > > Traga um problema a ser resolvido: > http://apoie.org/Dojo.htm#7 > > > Quem vai? > > [image: > ?ui=2&view=att&th=124bbd6f04467be0&attid=0.1&disp=attd&realattid=ii_124bbd6f04467be0&zw] > > Abraços, > Carlos > -- > * Coding Dojo Rio * > dojo-rio em googlegroups.com > http://groups.google.com/group/dojo-rio > http://code.google.com/p/dojo-rio > http://dojorio.wordpress.com > > -- > * Coding Dojo Rio * > dojo-rio em googlegroups.com > http://groups.google.com/group/dojo-rio > http://code.google.com/p/dojo-rio > http://dojorio.wordpress.com > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: -------------- Próxima Parte ---------- Um anexo não-texto foi limpo... Nome: não disponível Tipo: image/jpeg Tamanho: 35956 bytes Descrição: não disponível URL: From oscarbm em gmail.com Tue Jul 20 10:57:55 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Tue, 20 Jul 2010 14:57:55 -0300 Subject: [Rio-pm] Fwd: [dojo-rio] Dojo Rio Lapa (NOVA SALA - 603) - quarta 21 de julho - 18:30 In-Reply-To: References: Message-ID: Eu chamo a galera pra ir, eu devo ir na quarta feira talvez. E ae quem joga? Tao me cobrando a presença dos monges lá. 2010/7/20 Samir Cury > E aí pessoal, > > Alguém a fim? > > Para quem não conhece talvez ache algo aqui : > > http://dojorio.wordpress.com/ > > Mas o lance é propor um problema e todos num rodízio de código, ajudarem a > resolver num telão, explicando o que estão fazendo, e assim todos aprendem, > parece que há também um "co-piloto", ainda não fui então não sei dizer ao > certo. Quem quiser somar para ir lá, de repente até fazemos em Perl =) > > Abraços, > Samir > > > ---------- Forwarded message ---------- > From: Leandro Dantas > Date: 2010/7/20 > Subject: [dojo-rio] Dojo Rio Lapa (NOVA SALA - 603) - quarta 21 de julho - > 18:30 > To: dojo-rio em googlegroups.com > > > Pessoal, > > Tudo ok pra mais um Dojo Rio Lapa na próxima quarta-feira 21 de julho às > 18:30 no endereço: > > Rua Teotônio Regadas 26 sala 603 - Lapa > , *ao lado da Sala Cecília Meireles*, próximo ao Metrô. > > Traga sua comida e bebida prediletas: > etc... > > Traga um problema a ser resolvido: > http://apoie.org/Dojo.htm#7 > > > Quem vai? > > [image: > ?ui=2&view=att&th=124bbd6f04467be0&attid=0.1&disp=attd&realattid=ii_124bbd6f04467be0&zw] > > Abraços, > Carlos > -- > * Coding Dojo Rio * > dojo-rio em googlegroups.com > http://groups.google.com/group/dojo-rio > http://code.google.com/p/dojo-rio > http://dojorio.wordpress.com > > -- > * Coding Dojo Rio * > dojo-rio em googlegroups.com > http://groups.google.com/group/dojo-rio > http://code.google.com/p/dojo-rio > http://dojorio.wordpress.com > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: -------------- Próxima Parte ---------- Um anexo não-texto foi limpo... Nome: não disponível Tipo: image/jpeg Tamanho: 35956 bytes Descrição: não disponível URL: From oscarbm em gmail.com Tue Jul 20 10:57:55 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Tue, 20 Jul 2010 14:57:55 -0300 Subject: [Rio-pm] Fwd: [dojo-rio] Dojo Rio Lapa (NOVA SALA - 603) - quarta 21 de julho - 18:30 In-Reply-To: References: Message-ID: Eu chamo a galera pra ir, eu devo ir na quarta feira talvez. E ae quem joga? Tao me cobrando a presença dos monges lá. 2010/7/20 Samir Cury > E aí pessoal, > > Alguém a fim? > > Para quem não conhece talvez ache algo aqui : > > http://dojorio.wordpress.com/ > > Mas o lance é propor um problema e todos num rodízio de código, ajudarem a > resolver num telão, explicando o que estão fazendo, e assim todos aprendem, > parece que há também um "co-piloto", ainda não fui então não sei dizer ao > certo. Quem quiser somar para ir lá, de repente até fazemos em Perl =) > > Abraços, > Samir > > > ---------- Forwarded message ---------- > From: Leandro Dantas > Date: 2010/7/20 > Subject: [dojo-rio] Dojo Rio Lapa (NOVA SALA - 603) - quarta 21 de julho - > 18:30 > To: dojo-rio em googlegroups.com > > > Pessoal, > > Tudo ok pra mais um Dojo Rio Lapa na próxima quarta-feira 21 de julho às > 18:30 no endereço: > > Rua Teotônio Regadas 26 sala 603 - Lapa > , *ao lado da Sala Cecília Meireles*, próximo ao Metrô. > > Traga sua comida e bebida prediletas: > etc... > > Traga um problema a ser resolvido: > http://apoie.org/Dojo.htm#7 > > > Quem vai? > > [image: > ?ui=2&view=att&th=124bbd6f04467be0&attid=0.1&disp=attd&realattid=ii_124bbd6f04467be0&zw] > > Abraços, > Carlos > -- > * Coding Dojo Rio * > dojo-rio em googlegroups.com > http://groups.google.com/group/dojo-rio > http://code.google.com/p/dojo-rio > http://dojorio.wordpress.com > > -- > * Coding Dojo Rio * > dojo-rio em googlegroups.com > http://groups.google.com/group/dojo-rio > http://code.google.com/p/dojo-rio > http://dojorio.wordpress.com > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: -------------- Próxima Parte ---------- Um anexo não-texto foi limpo... Nome: não disponível Tipo: image/jpeg Tamanho: 35956 bytes Descrição: não disponível URL: From jc em joaocoutinho.com.br Tue Jul 20 10:59:50 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Tue, 20 Jul 2010 14:59:50 -0300 Subject: [Rio-pm] Fwd: [dojo-rio] Dojo Rio Lapa (NOVA SALA - 603) - quarta 21 de julho - 18:30 In-Reply-To: References: Message-ID: Talvez eu vá. On 7/20/10, Samir Cury wrote: > > E aí pessoal, > > Alguém a fim? > > Para quem não conhece talvez ache algo aqui : > > http://dojorio.wordpress.com/ > > Mas o lance é propor um problema e todos num rodízio de código, ajudarem a > resolver num telão, explicando o que estão fazendo, e assim todos aprendem, > parece que há também um "co-piloto", ainda não fui então não sei dizer ao > certo. Quem quiser somar para ir lá, de repente até fazemos em Perl =) > > Abraços, > Samir > > ---------- Forwarded message ---------- > From: Leandro Dantas > Date: 2010/7/20 > Subject: [dojo-rio] Dojo Rio Lapa (NOVA SALA - 603) - quarta 21 de julho - > 18:30 > To: dojo-rio em googlegroups.com > > > Pessoal, > > Tudo ok pra mais um Dojo Rio Lapa na próxima quarta-feira 21 de julho às > 18:30 no endereço: > > Rua Teotônio Regadas 26 sala 603 - Lapa > , *ao lado da Sala Cecília Meireles*, próximo ao Metrô. > > Traga sua comida e bebida prediletas: > etc... > > Traga um problema a ser resolvido: > http://apoie.org/Dojo.htm#7 > > > Quem vai? > > [image: > ?ui=2&view=att&th=124bbd6f04467be0&attid=0.1&disp=attd&realattid=ii_124bbd6f04467be0&zw] > > Abraços, > Carlos > -- > * Coding Dojo Rio * > dojo-rio em googlegroups.com > http://groups.google.com/group/dojo-rio > http://code.google.com/p/dojo-rio > http://dojorio.wordpress.com > > -- > * Coding Dojo Rio * > dojo-rio em googlegroups.com > http://groups.google.com/group/dojo-rio > http://code.google.com/p/dojo-rio > http://dojorio.wordpress.com > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: -------------- Próxima Parte ---------- Um anexo não-texto foi limpo... Nome: não disponível Tipo: image/jpeg Tamanho: 35956 bytes Descrição: não disponível URL: From mergulhao83 em gmail.com Tue Jul 20 15:44:43 2010 From: mergulhao83 em gmail.com (=?ISO-8859-1?Q?Sylvestre_Mergulh=E3o?=) Date: Tue, 20 Jul 2010 19:44:43 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Fwd=3A_Encontro_comunit=E1rio_no_FISL?= In-Reply-To: References: Message-ID: Pessoal, Alguém do grupo tem interesse em fazer uma lightning no FISL? Só aparecer amanhã 9h na sala "40-A fisl 6". Abraços! Sylvestre Mergulhão ----------------------------------------------------------------------- Helabs Consulting: http://helabs.com.br Clientela, CRM Para Seres Humanos: http://clientela.com.br ---------- Forwarded message ---------- From: Álvaro Justen [Turicas] Date: 2010/7/18 Subject: Encontro comunitário no FISL To: Sylvestre Mergulhão Sylva, você ainda faz parte do Rio.PM? É que gostaria que alguém do grupo fizesse uma lightning talk (5-10min) durante o encontro de usuários "FLOSS in Rio" que eu mandei pro FISL. O encontro acontecerá no dia 21 (quarta) às 9h. Se você não fizer mais parte ou não tiver interesse, tem como me indicar alguém que vá ao FISL e possa falar? Valeu! []s -- Álvaro Justen - @turicas  http://blog.justen.eng.br/  21 9898-0141 From perl em mosconi.mat.br Tue Jul 20 16:05:03 2010 From: perl em mosconi.mat.br (Rodrigo Mosconi (perl)) Date: Tue, 20 Jul 2010 20:05:03 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Fwd=3A_Encontro_comunit=E1rio_no_FISL?= In-Reply-To: References: Message-ID: Em 20 de julho de 2010 19:44, Sylvestre Mergulhão escreveu: > Pessoal, > > Alguém do grupo tem interesse em fazer uma lightning no FISL? Só > aparecer amanhã 9h na sala "40-A fisl 6". Qual o endereço? > > Abraços! > > Sylvestre Mergulhão > ----------------------------------------------------------------------- > Helabs Consulting: http://helabs.com.br > Clientela, CRM Para Seres Humanos: http://clientela.com.br > > > ---------- Forwarded message ---------- > From: Álvaro Justen [Turicas] > Date: 2010/7/18 > Subject: Encontro comunitário no FISL > To: Sylvestre Mergulhão > > > Sylva, > você ainda faz parte do Rio.PM? > É que gostaria que alguém do grupo fizesse uma lightning talk > (5-10min) durante o encontro de usuários "FLOSS in Rio" que eu mandei > pro FISL. O encontro acontecerá no dia 21 (quarta) às 9h. > Se você não fizer mais parte ou não tiver interesse, tem como me > indicar alguém que vá ao FISL e possa falar? > Valeu! > > []s > -- > Álvaro Justen - @turicas >  http://blog.justen.eng.br/ >  21 9898-0141 > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From contato em mergulhao.info Tue Jul 20 16:17:13 2010 From: contato em mergulhao.info (=?ISO-8859-1?Q?Sylvestre_Mergulh=E3o?=) Date: Tue, 20 Jul 2010 20:17:13 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Fwd=3A_Encontro_comunit=E1rio_no_FISL?= In-Reply-To: References: Message-ID: FISL, http://softwarelivre.org/fisl11 Na PUC de Porto Alegre. Sylvestre Mergulhão ----------------------------------------------------------------------- Helabs Consulting: http://helabs.com.br Clientela, CRM Para Seres Humanos: http://clientela.com.br 2010/7/20 Rodrigo Mosconi (perl) > Em 20 de julho de 2010 19:44, Sylvestre Mergulhão > escreveu: > > Pessoal, > > > > Alguém do grupo tem interesse em fazer uma lightning no FISL? Só > > aparecer amanhã 9h na sala "40-A fisl 6". > Qual o endereço? > > > > Abraços! > > > > Sylvestre Mergulhão > > ----------------------------------------------------------------------- > > Helabs Consulting: http://helabs.com.br > > Clientela, CRM Para Seres Humanos: http://clientela.com.br > > > > > > ---------- Forwarded message ---------- > > From: Álvaro Justen [Turicas] > > Date: 2010/7/18 > > Subject: Encontro comunitário no FISL > > To: Sylvestre Mergulhão > > > > > > Sylva, > > você ainda faz parte do Rio.PM? > > É que gostaria que alguém do grupo fizesse uma lightning talk > > (5-10min) durante o encontro de usuários "FLOSS in Rio" que eu mandei > > pro FISL. O encontro acontecerá no dia 21 (quarta) às 9h. > > Se você não fizer mais parte ou não tiver interesse, tem como me > > indicar alguém que vá ao FISL e possa falar? > > Valeu! > > > > []s > > -- > > Álvaro Justen - @turicas > > http://blog.justen.eng.br/ > > 21 9898-0141 > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From perl em mosconi.mat.br Tue Jul 20 16:24:07 2010 From: perl em mosconi.mat.br (Rodrigo Mosconi (perl)) Date: Tue, 20 Jul 2010 20:24:07 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Fwd=3A_Encontro_comunit=E1rio_no_FISL?= In-Reply-To: References: Message-ID: 2010/7/20 Sylvestre Mergulhão : > FISL, http://softwarelivre.org/fisl11 > Na PUC de Porto Alegre. Pergunta filosófica retórica: Por que quando posso, esses eventos não são no rio. E quanto é no Rio, tenho outro(s) compromisso(s) que me impede de ir... From gabriel.vieira em gmail.com Tue Jul 20 17:51:58 2010 From: gabriel.vieira em gmail.com (Gabriel Vieira) Date: Tue, 20 Jul 2010 21:51:58 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Fwd=3A_Encontro_comunit=E1rio_no_FISL?= In-Reply-To: References: Message-ID: Estarei chegando em POA às 9h. O Rondon (BSB) já está por lá.. se ele ler este e-mail certamente irá atender. Abraços, 2010/7/20 Sylvestre Mergulhão > Pessoal, > > Alguém do grupo tem interesse em fazer uma lightning no FISL? Só > aparecer amanhã 9h na sala "40-A fisl 6". > > Abraços! > > Sylvestre Mergulhão > ----------------------------------------------------------------------- > Helabs Consulting: http://helabs.com.br > Clientela, CRM Para Seres Humanos: http://clientela.com.br > > > ---------- Forwarded message ---------- > From: Álvaro Justen [Turicas] > Date: 2010/7/18 > Subject: Encontro comunitário no FISL > To: Sylvestre Mergulhão > > > Sylva, > você ainda faz parte do Rio.PM? > É que gostaria que alguém do grupo fizesse uma lightning talk > (5-10min) durante o encontro de usuários "FLOSS in Rio" que eu mandei > pro FISL. O encontro acontecerá no dia 21 (quarta) às 9h. > Se você não fizer mais parte ou não tiver interesse, tem como me > indicar alguém que vá ao FISL e possa falar? > Valeu! > > []s > -- > Álvaro Justen - @turicas > http://blog.justen.eng.br/ > 21 9898-0141 > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Gabriel Vieira -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From thiagoglauco em ticursos.net Wed Jul 21 19:16:11 2010 From: thiagoglauco em ticursos.net (Thiago Glauco Sanchez) Date: Wed, 21 Jul 2010 23:16:11 -0300 Subject: [Rio-pm] Curso de Perl, segunda turma. In-Reply-To: References: <4C47915B.2020601@links.inf.br> <4C479652.5070006@links.inf.br> Message-ID: <4C47A9EB.90300@ticursos.net> Em 21/07/20 Caros, se houver algum interessado, iremos iniciar em 26/07 mais uma turma do curso de perl online. mais informações: http://ticursos.net/perl.html -- What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? ?Larry Wall Thiago Glauco Sanchez Intrutor Perl e Redes www.ticursos.net From german.valenzuela em gmail.com Thu Jul 22 12:27:34 2010 From: german.valenzuela em gmail.com (German Valenzuela) Date: Thu, 22 Jul 2010 17:27:34 -0200 Subject: [Rio-pm] Remover pacotes Message-ID: Prezados Quais os métodos recomendados para remover pacotes instalados? E outra, você recomendam o uso do local::lib? Obrigado German Egas -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From daniel.oliveira.mantovani em gmail.com Thu Jul 22 12:31:00 2010 From: daniel.oliveira.mantovani em gmail.com (Daniel de Oliveira Mantovani) Date: Thu, 22 Jul 2010 16:31:00 -0300 Subject: [Rio-pm] Remover pacotes In-Reply-To: References: Message-ID: Dependendo do que você quer, você pode usar o local::lib só para colocar os módulos que você vai remover depois. Eu recomendo o cpanplus, http://search.cpan.org/~bingos/CPANPLUS-0.9007/bin/cpanp ... u MODULE ... # uninstall module(s) ... []'s 2010/7/22 German Valenzuela : > Prezados > > Quais os métodos recomendados para remover pacotes instalados? E outra, você > recomendam o uso do local::lib? > > Obrigado > German Egas > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- http://www.danielmantovani.com "If you?ve never written anything thoughtful, then you?ve never had any difficult, important, or interesting thoughts. That?s the secret: people who don?t write, are people who don?t think." From edencardim em gmail.com Thu Jul 22 12:48:37 2010 From: edencardim em gmail.com (Eden Cardim) Date: Thu, 22 Jul 2010 16:48:37 -0300 Subject: [Rio-pm] Remover pacotes In-Reply-To: References: Message-ID: 2010/7/22 German Valenzuela : > Prezados > > Quais os métodos recomendados para remover pacotes instalados? E outra, você > recomendam o uso do local::lib? Perl não tem pacotes. --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From daniel.oliveira.mantovani em gmail.com Thu Jul 22 12:55:10 2010 From: daniel.oliveira.mantovani em gmail.com (Daniel de Oliveira Mantovani) Date: Thu, 22 Jul 2010 16:55:10 -0300 Subject: [Rio-pm] Remover pacotes In-Reply-To: References: Message-ID: 2010/7/22 German Valenzuela : > Prezados > > Quais os métodos recomendados para remover pacotes instalados? E outra, você > recomendam o uso do local::lib? O local::lib é *muito importante*. Com ele você pode distinguir os módulos dos pacotes da sua distribuição e do CPAN, além de resolver vários problemas, fica tudo bem organizado. Se um produto no seu servidor precisa de uma versão X e outro produto precisa de uma versão Y, com o local::lib você não vai ter problema. Eu não consigo pensar em algum motivo para não usar o local::lib. Na empresa que eu trabalhava anteriormente eu não usava o local::lib nos primeiros meses, veio uma atualização do Ubuntu para atualizar o perl-modules e apagou todos os módulos que eu tinha. Recomendo, http://blog.blabos.org/2009/08/instalando-modulos-do-cpan-via-locallib/ > > Obrigado > German Egas > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- http://www.danielmantovani.com "If you?ve never written anything thoughtful, then you?ve never had any difficult, important, or interesting thoughts. That?s the secret: people who don?t write, are people who don?t think." From german.valenzuela em gmail.com Thu Jul 22 13:03:41 2010 From: german.valenzuela em gmail.com (German Valenzuela) Date: Thu, 22 Jul 2010 18:03:41 -0200 Subject: [Rio-pm] Remover pacotes In-Reply-To: References: Message-ID: Obrigado pelas respostas Daniel. Agora qual a real diferença entre usar o local::lib e simplesmente criar um diretório e instalar os módulos neste diretório e na minha aplicação utilizar use lib ...? Obrigado German 2010/7/22 Daniel de Oliveira Mantovani > 2010/7/22 German Valenzuela : > > Prezados > > > > Quais os métodos recomendados para remover pacotes instalados? E outra, > você > > recomendam o uso do local::lib? > > O local::lib é *muito importante*. Com ele você pode distinguir os > módulos dos pacotes da sua distribuição e do CPAN, além de resolver > vários problemas, fica tudo bem organizado. Se um produto no seu > servidor precisa de uma versão X e outro produto precisa de uma versão > Y, com o local::lib você não vai ter problema. > Eu não consigo pensar em algum motivo para não usar o local::lib. > > Na empresa que eu trabalhava anteriormente eu não usava o local::lib > nos primeiros meses, veio uma atualização do Ubuntu para atualizar o > perl-modules e apagou todos os módulos que eu tinha. > > Recomendo, > http://blog.blabos.org/2009/08/instalando-modulos-do-cpan-via-locallib/ > > > > > Obrigado > > German Egas > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > -- > http://www.danielmantovani.com > > "If you?ve never written anything thoughtful, then you?ve never had > any difficult, important, or interesting thoughts. That?s the secret: > people who don?t write, are people who don?t think." > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From edencardim em gmail.com Thu Jul 22 13:07:22 2010 From: edencardim em gmail.com (Eden Cardim) Date: Thu, 22 Jul 2010 17:07:22 -0300 Subject: [Rio-pm] Remover pacotes In-Reply-To: References: Message-ID: 2010/7/22 German Valenzuela : > Obrigado pelas respostas Daniel. > > Agora qual a real diferença entre usar o local::lib e simplesmente criar um > diretório e instalar os módulos neste diretório e na minha aplicação > utilizar use lib ...? Nenhuma, você só vai precisar fazer bastante configuração manual para fazer os sistemas de build de cada módulo instalarem no diretório que você quer. O que o local::lib faz é apenas automatizar essa configuração. --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From andregarciacarneiro em gmail.com Thu Jul 22 13:24:14 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Thu, 22 Jul 2010 17:24:14 -0300 Subject: [Rio-pm] Remover pacotes In-Reply-To: References: Message-ID: A idéia é que você NÃO precise de 'use lib', mas que instale o seu módulo corretamente nos locais adequados, evitando problemas com paths de libs, e outras problemas de organização. Isso permite também que o seu módulo seja facilmente distribuído, já que vai instalar sempre nos locais padrão determinados na instalação do perl( sem ou com local::lib ). É o famoso 'deploy' que você precisa gerar. Isso sintetiza toda a sua aplicação num único local( normalmente determinado por um namespace ), de forma padronizada, facilitando tanto para quem desenvolve quanto para os seus administradores de sistemas. Acredite em mim, eles vão te adorar quando você começar a facilitar a vida deles fazendo isso. Eu utilizo o module-starter para produzir os meus módulos dessa maneira. Esse treco cria, exatamente, todo ambiente que você precisa para desenvolver, testar e homologar o seu módulo. Mais informações: perldoc module-starter http://www.slideshare.net/Skud/packaging-perl-modules Cheers! 2010/7/22 German Valenzuela > Obrigado pelas respostas Daniel. > > Agora qual a real diferença entre usar o local::lib e simplesmente criar um > diretório e instalar os módulos neste diretório e na minha aplicação > utilizar use lib ...? > > Obrigado > German > > 2010/7/22 Daniel de Oliveira Mantovani < > daniel.oliveira.mantovani em gmail.com> > > 2010/7/22 German Valenzuela : >> > Prezados >> > >> > Quais os métodos recomendados para remover pacotes instalados? E outra, >> você >> > recomendam o uso do local::lib? >> >> O local::lib é *muito importante*. Com ele você pode distinguir os >> módulos dos pacotes da sua distribuição e do CPAN, além de resolver >> vários problemas, fica tudo bem organizado. Se um produto no seu >> servidor precisa de uma versão X e outro produto precisa de uma versão >> Y, com o local::lib você não vai ter problema. >> Eu não consigo pensar em algum motivo para não usar o local::lib. >> >> Na empresa que eu trabalhava anteriormente eu não usava o local::lib >> nos primeiros meses, veio uma atualização do Ubuntu para atualizar o >> perl-modules e apagou todos os módulos que eu tinha. >> >> Recomendo, >> http://blog.blabos.org/2009/08/instalando-modulos-do-cpan-via-locallib/ >> >> > >> > Obrigado >> > German Egas >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> >> >> >> -- >> http://www.danielmantovani.com >> >> "If you?ve never written anything thoughtful, then you?ve never had >> any difficult, important, or interesting thoughts. That?s the secret: >> people who don?t write, are people who don?t think." >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From cpaqui em gmail.com Thu Jul 22 16:25:58 2010 From: cpaqui em gmail.com (Cleive Paqui) Date: Thu, 22 Jul 2010 20:25:58 -0300 Subject: [Rio-pm] [OFF-TOPIC] Ajuda Message-ID: Caros, descupem-me pelo off-topic, mas é de muita importância para mim, espero poder contar com compreenção e a colaboração de todos. Tenho um sobrinha de 12 anos que esta internada no Hemorio com Leucemia Mielóide Aguda (MLA), e esta precisando de sangue e plaquetas. Nas últimas horas ela teve um agravamento do quadro e foi transferida para a UTI do Souza Aguiar. A doação de sangue no Hemorio pode ser feita todos os dias da semana, de 7 às 18 horas, inclusive finais de semana e feriados, Para a doação de plaquetas, chamada aférese, *o que ela mais precisa no momento*, pode ser feita de segunda a sexta, de 8 às 12 horas, e é preciso agendar antes pois é um processo mais longo, em torno de 1 hora, e tem poucos equipamentos. Para a aférese *é preciso ser doador de sangue do Hemorio*, e está difícil encontrar pessoas com esse perfil de doador, então caso sejam doadores ou conheçam doadores do Hemorio favor agendar a aférese. Também pedimos para que participem do *banco de doadores de medula óssea*, esse procedimento também pode ser feito no Hemorio para isso basta a coleta de uma pequena amostra de sangue, 5 ml, e o preenchimento de um cadastro. No ato da doação de sangue ou plaquetas basta pedir para ser cadastrado como doador de medula óssea. *IMPORTANTE*, a doação deve ser feita em nome de *Laryssa De Oliveira Araujo Paquy begin_of_the_skype_highlighting end_of_the_skype_highlighting*. Abaixo segue os links para maiores informações sobre os procedimentos e funcionamento do Hemorio, qualquer dúvida enviar e-mail para * cleive em cepel.br *ou *cpaqui em gmail.com.* *O HEMORIO localiza-se na Rua Frei Caneca, 8, Centro - Rio de Janeiro DISQUE -SANGUE: 0800-2820708* Página principal do Hemorio: *http://www.hemorio.rj.gov.br/default.htm* Sobre Aférese, doação de plaquetas: * http://www.hemorio.rj.gov.br/Html/Doacao_aferese.htm* Procedimentos para o cadastro no banco de doadores de medula óssea: * http://www.hemorio.rj.gov.br/Html/Doacao_medula_ossea.htm* Sobre doação de sangue: *http://www.hemorio.rj.gov.br/Html/Doacao_doe.htm* Sobre doação de medula óssea: * http://www.inca.gov.br/conteudo_view.asp?ID=125* Aos que puderem, favor divulgar para sua lista de e-mails. Muito Obrigado Cleive Paqui -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From denilsongv2 em hotmail.com Mon Jul 26 13:08:51 2010 From: denilsongv2 em hotmail.com (Denilson Silva) Date: Mon, 26 Jul 2010 17:08:51 -0300 Subject: [Rio-pm] script reiniciando Message-ID: Oi pessoal, Estou com o seguinte problema: eu tenho um script perl que executa um programa através da função system, este programa gera sua saída num arquivo, ai quando ele termina a execução eu imprimo o conteúdo do arquivo na página web, porém, quando a execução do programa é demorada o script não continua a execução após a chamada system, ele reinicia e depois termina. script resumido: ... my $query = CGI->new; print $query->header; print $query->start_html("Resultado"); &executaBuscas(); print $query->end_html; sub executaBuscas{ .... if ( $query->param('ncbi') ) { ... print $query->h2(' Resultado NCBI'); &NCBI($arquivo_de_entrada, $ncbi_prog, $ncbi_base); } .... } sub NCBI { my $ncbi = NCBI->new(); $arquivo_de_saida = "resultado.txt"; $ncbi->setResultado($arquivo_de_saida); $ncbi->consulta(); $ncbi->exibeResultado(); <- está linha não é executada quanda função consulta demora na chamada system } consulta{ .... system("/usr/local/blast/bin/blastall -p $programa -d $pathbase -i $sequencia -o $resultado"); .... } saída com erro (o script imprime o comando print $query->h2(' Resultado NCBI'); duas vezes) : Resultado NCBI Resultado NCBI saida correta: Resultado NCBI #conteúdo do arquivo Se alguém puder ajudar ? Desde já obrigado. Abraço. Denilson S. de Andrade _________________________________________________________________ QUER ANEXAR VÁRIAS FOTOS NUM EMAIL? PREPARE-SE PARA O NOVO HOTMAIL. CLIQUE AQUI. http://www.windowslive.com.br/public/product.aspx/view/1?ocid=Hotmail:Live:Hotmail:Tagline:senDimensao:QUERANEXAR80:- -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From andregarciacarneiro em gmail.com Mon Jul 26 13:24:33 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Mon, 26 Jul 2010 17:24:33 -0300 Subject: [Rio-pm] script reiniciando In-Reply-To: References: Message-ID: 1 - system não retorna nada, então presta atenção! Seja o que for que você tá imprimindo, é da saída padrão ( STDOUT ), e nem tudo o q vc precisa vem no STDOUT... perldoc -f system 2 - Você deveria usar eval para tratar suas exceções, mas não usando system, porque system não retorna nada. Eu, particularmente gosto do readpipe, mas tem gente aqui que vai falar para você executar o comando assim: @result = `comando` ( Você pode fazer isso, desde que dentro de um eval ). Ambos podem te retornar um array com a resposta do S.O. para vc. Divirta-se! perldoc -f readpipe perldoc -f eval Sugestão: use strict; use warnings; . . . my @result = (); eval { @result = readpipe "COMANDO"; }; if($@){ #TRATE AS EXCECOES AQUI. } else { #COMANDO OK! } Cheers! 2010/7/26 Denilson Silva > > Oi pessoal, > > Estou com o seguinte problema: > eu tenho um script perl que executa um programa através da função > system, este programa gera sua saída num arquivo, ai quando ele > termina a execução eu imprimo o conteúdo do arquivo na página web, > porém, quando a execução do programa é demorada o script não > continua a execução após a chamada system, ele reinicia e depois > termina. > > script resumido: > ... > my $query = CGI->new; > print $query->header; > print $query->start_html("Resultado"); > *&executaBuscas();* > print $query->end_html; > > > sub executaBuscas{ > .... > if ( $query->param('ncbi') ) { > ... > print $query->h2(' Resultado NCBI'); > &*NCBI*($arquivo_de_entrada, $ncbi_prog, $ncbi_base); > } > .... > } > > sub NCBI { > > my $ncbi = NCBI->new(); > $arquivo_de_saida = "resultado.txt"; > $ncbi->setResultado($arquivo_de_saida); > $ncbi->*consulta*(); > $ncbi->exibeResultado(); * <- está linha não é executada quanda função > consulta demora na chamada system* > } > > consulta{ > .... > *system*("/usr/local/blast/bin/blastall -p $programa -d $pathbase -i > $sequencia -o $resultado"); > .... > } > > saída com erro (o script imprime o comando print $query->h2(' Resultado > NCBI'); duas vezes) : > > Resultado NCBI > Resultado NCBI > > saida correta: > > Resultado NCBI > > #conteúdo do arquivo > > > * > Se alguém puder ajudar ?* > > > > Desde já obrigado. > Abraço. > Denilson S. de Andrade > > > > > ------------------------------ > O INTERNET EXPLORER 8 DÁ DICAS DE SEGURANÇA PARA VOCÊ SAIBA MAIS! > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From acid06 em gmail.com Mon Jul 26 13:39:45 2010 From: acid06 em gmail.com (Nilson Santos Figueiredo Jr.) Date: Mon, 26 Jul 2010 17:39:45 -0300 Subject: [Rio-pm] script reiniciando In-Reply-To: References: Message-ID: 2010/7/26 Andre Carneiro : > 1 - system não retorna nada, então presta atenção! Seja o que for que você > tá imprimindo, é da saída padrão ( STDOUT ), e nem tudo o q vc precisa vem > no STDOUT... Apenas um pequeno detalhe - system() retorna o código de saída do processo. Então esta é uma maneira de verificar se um erro ocorreu ou não no processo que você chamou. -Nilson From andregarciacarneiro em gmail.com Mon Jul 26 13:49:08 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Mon, 26 Jul 2010 17:49:08 -0300 Subject: [Rio-pm] script reiniciando In-Reply-To: References: Message-ID: Sim, é verdade! andre -- Cheers! Em 26 de julho de 2010 17:39, Nilson Santos Figueiredo Jr. escreveu: > 2010/7/26 Andre Carneiro : > > 1 - system não retorna nada, então presta atenção! Seja o que for que > você > > tá imprimindo, é da saída padrão ( STDOUT ), e nem tudo o q vc precisa > vem > > no STDOUT... > > Apenas um pequeno detalhe - system() retorna o código de saída do processo. > Então esta é uma maneira de verificar se um erro ocorreu ou não no > processo que você chamou. > > -Nilson > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From edencardim em gmail.com Mon Jul 26 13:52:30 2010 From: edencardim em gmail.com (Eden Cardim) Date: Mon, 26 Jul 2010 17:52:30 -0300 Subject: [Rio-pm] script reiniciando In-Reply-To: (Denilson Silva's message of "Mon, 26 Jul 2010 17:08:51 -0300") References: Message-ID: >>>>> "Denilson" == Denilson Silva writes: Denilson> system("/usr/local/blast/bin/blastall -p $programa -d $pathbase -i $sequencia -o $resultado"); Ih cara, eu recomendo fortemente que você use um módulo chamado BioPerl, vai te economizar muitas visitas ao psiquiatra. From edencardim em gmail.com Mon Jul 26 13:53:48 2010 From: edencardim em gmail.com (Eden Cardim) Date: Mon, 26 Jul 2010 17:53:48 -0300 Subject: [Rio-pm] script reiniciando In-Reply-To: (Nilson Santos Figueiredo, Jr.'s message of "Mon, 26 Jul 2010 17:39:45 -0300") References: Message-ID: >>>>> "Nilson" == Nilson Santos Figueiredo writes: Nilson> Apenas um pequeno detalhe - system() retorna o código de Nilson> saída do processo. Então esta é uma maneira de verificar se Nilson> um erro ocorreu ou não no processo que você chamou. Ixe, ferramentas de linha de comando para bioinformática com exit values significativos? pode esquecer. From acid06 em gmail.com Mon Jul 26 14:04:32 2010 From: acid06 em gmail.com (Nilson Santos Figueiredo Jr.) Date: Mon, 26 Jul 2010 18:04:32 -0300 Subject: [Rio-pm] script reiniciando In-Reply-To: References: Message-ID: 2010/7/26 Eden Cardim : > Ixe, ferramentas de linha de comando para bioinformática com exit values > significativos? pode esquecer. É, realmente eu não me lembro mais sobre os exit values. Na verdade, quando eu trabalhei com isso eu sempre fiquei me perguntando porque não faziam essas coisas na forma de uma biblioteca ao invés de um processo externo. Mas trabalhei só por uns meses com isso e acabei largando. -Nilson From maia em eduardomaia.com Mon Jul 26 14:28:48 2010 From: maia em eduardomaia.com (Eduardo Maia) Date: Mon, 26 Jul 2010 18:28:48 -0300 Subject: [Rio-pm] script reiniciando In-Reply-To: References: Message-ID: Cá estou no email anual que envio à Rio-PM hehehe. Denilson, lembrando que como se trata de um servidor web, você possivelmente está enfrentando problemas com timeout. O que eu sugeriria seria rodar o seu processo em nohup. Exemplo: $result = `nohup processo.pl` Lembro que será necessário atualizar a página periodicamente para observar se o seu processo foi finalizado. Abraços. 2010/7/26 Nilson Santos Figueiredo Jr. > 2010/7/26 Eden Cardim : > > Ixe, ferramentas de linha de comando para bioinformática com exit values > > significativos? pode esquecer. > > É, realmente eu não me lembro mais sobre os exit values. Na verdade, > quando eu trabalhei com isso eu sempre fiquei me perguntando porque > não faziam essas coisas na forma de uma biblioteca ao invés de um > processo externo. Mas trabalhei só por uns meses com isso e acabei > largando. > > -Nilson > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From edencardim em gmail.com Mon Jul 26 14:35:12 2010 From: edencardim em gmail.com (Eden Cardim) Date: Mon, 26 Jul 2010 18:35:12 -0300 Subject: [Rio-pm] script reiniciando In-Reply-To: (Eduardo Maia's message of "Mon, 26 Jul 2010 18:28:48 -0300") References: Message-ID: >>>>> "Eduardo" == Eduardo Maia writes: Eduardo> Cá estou no email anual que envio à Rio-PM hehehe.Denilson, Eduardo> lembrando que como se trata de um servidor web, você Eduardo> possivelmente está enfrentando problemas com timeout. O que Eduardo> eu sugeriria seria rodar o seu processo em nohup. Exemplo: Eduardo> $result = `nohup http://processo.pl` Lembro que será Eduardo> necessário atualizar a página periodicamente para observar Eduardo> se o seu processo foi finalizado. perl -MLWP::Simple -e'get("http://seuendereco") while 1' vamos ver quanto tempo aguenta. Resumindo, não faça isso que você fica vulnerável a DOS. Volto a recomendar o BioPerl, você pode rodar o blast direto no NCBI e pegar os resultados com persistência cross-request. Se você realmente precisa usar sua infra-estrutura local, usa algo como rabbitmq ou gearman. From andregarciacarneiro em gmail.com Mon Jul 26 14:49:33 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Mon, 26 Jul 2010 18:49:33 -0300 Subject: [Rio-pm] script reiniciando In-Reply-To: References: Message-ID: A propósito, tem um módulo chamado BioPerl que você precisa conhecer. http://search.cpan.org/~birney/bioperl-1.4/Bio/Tools/Blast.pm Cheers! 2010/7/26 Denilson Silva > > Oi pessoal, > > Estou com o seguinte problema: > eu tenho um script perl que executa um programa através da função > system, este programa gera sua saída num arquivo, ai quando ele > termina a execução eu imprimo o conteúdo do arquivo na página web, > porém, quando a execução do programa é demorada o script não > continua a execução após a chamada system, ele reinicia e depois > termina. > > script resumido: > ... > my $query = CGI->new; > print $query->header; > print $query->start_html("Resultado"); > *&executaBuscas();* > print $query->end_html; > > > sub executaBuscas{ > .... > if ( $query->param('ncbi') ) { > ... > print $query->h2(' Resultado NCBI'); > &*NCBI*($arquivo_de_entrada, $ncbi_prog, $ncbi_base); > } > .... > } > > sub NCBI { > > my $ncbi = NCBI->new(); > $arquivo_de_saida = "resultado.txt"; > $ncbi->setResultado($arquivo_de_saida); > $ncbi->*consulta*(); > $ncbi->exibeResultado(); * <- está linha não é executada quanda função > consulta demora na chamada system* > } > > consulta{ > .... > *system*("/usr/local/blast/bin/blastall -p $programa -d $pathbase -i > $sequencia -o $resultado"); > .... > } > > saída com erro (o script imprime o comando print $query->h2(' Resultado > NCBI'); duas vezes) : > > Resultado NCBI > Resultado NCBI > > saida correta: > > Resultado NCBI > > #conteúdo do arquivo > > > * > Se alguém puder ajudar ?* > > > > Desde já obrigado. > Abraço. > Denilson S. de Andrade > > > > > ------------------------------ > O INTERNET EXPLORER 8 DÁ DICAS DE SEGURANÇA PARA VOCÊ SAIBA MAIS! > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Tue Jul 27 07:49:49 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Tue, 27 Jul 2010 11:49:49 -0300 Subject: [Rio-pm] podia ter perl nessa salada de frutas Message-ID: http://www.thedevelopersconference.com.br -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br From breno em rio.pm.org Tue Jul 27 23:34:30 2010 From: breno em rio.pm.org (breno) Date: Wed, 28 Jul 2010 03:34:30 -0300 Subject: [Rio-pm] podia ter perl nessa salada de frutas In-Reply-To: References: Message-ID: Com certeza, só não entendi direito a estrutura do evento. A maioria dos palestrantes/coordenadores parece ser da tal GlobalCode, então não sei exatamente o grau de parcialidade deles, mas a trilha "Ruby" inclui "python" e "outras linguagens"... To repassando a mensagem pra lista de SP, quem sabe o povo de lá não se anima a entrar em contato com a organização :-) []s -b On Tue, Jul 27, 2010 at 11:49 AM, Tiago Peczenyj wrote: > http://www.thedevelopersconference.com.br > > -- > Tiago B. Peczenyj > Linux User #405772 > > http://pacman.blog.br > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From henrique.andrade em uniriotec.br Thu Jul 29 06:50:35 2010 From: henrique.andrade em uniriotec.br (Henrique Rabelo de Andrade) Date: Thu, 29 Jul 2010 10:50:35 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Fwd=3A_Encontro_comunit=E1rio_no_FISL?= In-Reply-To: References: Message-ID: http://softwarelivre.org/fisl11/noticias/grupo-de-usuarios-constroi-um-jogo-e-organiza-um-torneio-durante-o-fisl11 -- Henrique Rabelo de Andrade 2010/7/20 Gabriel Vieira > Estarei chegando em POA às 9h. > O Rondon (BSB) já está por lá.. se ele ler este e-mail certamente irá > atender. > > Abraços, > > 2010/7/20 Sylvestre Mergulhão > > Pessoal, >> >> Alguém do grupo tem interesse em fazer uma lightning no FISL? Só >> aparecer amanhã 9h na sala "40-A fisl 6". >> >> Abraços! >> >> Sylvestre Mergulhão >> ----------------------------------------------------------------------- >> Helabs Consulting: http://helabs.com.br >> Clientela, CRM Para Seres Humanos: http://clientela.com.br >> >> >> ---------- Forwarded message ---------- >> From: Álvaro Justen [Turicas] >> Date: 2010/7/18 >> Subject: Encontro comunitário no FISL >> To: Sylvestre Mergulhão >> >> >> Sylva, >> você ainda faz parte do Rio.PM? >> É que gostaria que alguém do grupo fizesse uma lightning talk >> (5-10min) durante o encontro de usuários "FLOSS in Rio" que eu mandei >> pro FISL. O encontro acontecerá no dia 21 (quarta) às 9h. >> Se você não fizer mais parte ou não tiver interesse, tem como me >> indicar alguém que vá ao FISL e possa falar? >> Valeu! >> >> []s >> -- >> Álvaro Justen - @turicas >> http://blog.justen.eng.br/ >> 21 9898-0141 >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > Gabriel Vieira > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Thu Jul 29 07:43:42 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Thu, 29 Jul 2010 11:43:42 -0300 Subject: [Rio-pm] [OT] Fwd: [rubyonrio] Vaga Railer RJ In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Rodrigo Pinto Date: 2010/7/29 Subject: [rubyonrio] [OT] Vaga Railer RJ To: rails-br em googlegroups.com, rubyonrio em googlegroups.com Pessoal, desculpe o OT mas acredito ser de interesse de algums. Existe uma oportunidade para trabalhar com Ruby/Rails no Rio de Janeiro. Quem possuir interesse e quiser saber mais entrar em contato em *PVT*. Abraços; -- Rodrigo Pinto rodrigopqn em gmail.com http://RodrigoPinto.me +55 21 7860-3176 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From acid06 em gmail.com Thu Jul 29 10:03:39 2010 From: acid06 em gmail.com (Nilson Santos Figueiredo Jr.) Date: Thu, 29 Jul 2010 14:03:39 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Fwd=3A_Encontro_comunit=E1rio_no_FISL?= In-Reply-To: References: Message-ID: 2010/7/29 Henrique Rabelo de Andrade : > http://softwarelivre.org/fisl11/noticias/grupo-de-usuarios-constroi-um-jogo-e-organiza-um-torneio-durante-o-fisl11 Parabéns aos envolvidos nessa iniciativa. Acho que Perl precisa de mais publicidade desse tipo, que alguns consideram "inútil", mas que no fundo é o que chama a atenção de muita gente curiosa. -Nilson From breno em rio.pm.org Thu Jul 29 10:37:38 2010 From: breno em rio.pm.org (breno) Date: Thu, 29 Jul 2010 14:37:38 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Fwd=3A_Encontro_comunit=E1rio_no_FISL?= In-Reply-To: References: Message-ID: 2010/7/29 Nilson Santos Figueiredo Jr. : > 2010/7/29 Henrique Rabelo de Andrade : >> http://softwarelivre.org/fisl11/noticias/grupo-de-usuarios-constroi-um-jogo-e-organiza-um-torneio-durante-o-fisl11 > > Parabéns aos envolvidos nessa iniciativa. > Acho que Perl precisa de mais publicidade desse tipo, que alguns > consideram "inútil", mas que no fundo é o que chama a atenção de muita > gente curiosa. > sim sim, aguardem um post sobre isso (e muitas fotos!) num futuro próximo. E, quem quiser entrar na brincadeira pode instalar Games::Zumbis direto do cpan ;-) Ou melhor ainda, ajudar no desenvolvimento no canal #sdl em irc.perl.org (em inglês), ou procurar a gente no #rio-pm ou #brasil-pm (também irc.perl.org), ou até no #perl.br (esse no freenode). []s -b From breno em rio.pm.org Thu Jul 29 14:00:37 2010 From: breno em rio.pm.org (breno) Date: Thu, 29 Jul 2010 18:00:37 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Fwd=3A_=5BSP-pm=5D_Rakudo_Star_lan=E7ado?= In-Reply-To: References: Message-ID: Acho que é do interesse de muitos =) ---------- Forwarded message ---------- From: Lucas Buchala Date: 2010/7/29 Subject: [SP-pm] Rakudo Star lançado To: saopaulo-pm em mail.pm.org Announce: Rakudo Star - a useful, usable, "early adopter" distribution of Perl 6 Ver: http://rakudo.org/node/75 Tarball: http://github.com/downloads/rakudo/star/rakudo-star-2010.07.tar.gz _______________________________________________ SaoPaulo-pm mailing list SaoPaulo-pm em pm.org http://mail.pm.org/mailman/listinfo/saopaulo-pm From breno em rio.pm.org Fri Jul 30 14:14:52 2010 From: breno em rio.pm.org (breno) Date: Fri, 30 Jul 2010 18:14:52 -0300 Subject: [Rio-pm] YAPC::Brasil 2010 - Chamada para Palestras Message-ID: Chegou a tão esperada hora, pessoal! Aos que assinam mais de uma lista, me desculpem pelo cross-posting. Por favor encaminhem essa mensagem a quem interessar possa. O YAPC::Brasil 2010, segunda edição no formato independente do maior evento de Perl de toda a América Latina, acontecerá em Fortaleza de 25 a 31 de Outubro. http://www.yapcbrasil.org.br Chamada oficial para trabalhos ======================= O tema deste ano é Perl: Solução e Integração de Negócios", e dará prioridade a palestras que apresentem, em uma perspectiva prática, as características e ferramentas que fazem do Perl uma escolha viável e estratégica no ambiente corporativo. As palestras deverão apresentar a versatilidade e poder da linguagem Perl, bem como aplicações práticas que ajudem a aumentar a eficiência de operações e processos, oferecendo importante vantagem competitiva. E o já tradicional Perl Quiz, claro ;-) Como submeter suas palestras ======================== Para submeter sua palestra, por favor utilize a interface web, em: * http://www.yapcbrasil.org.br/2010/newtalk Os logins do evento do ano passado continuam valendo, quem já tem o seu basta usar a mesma conta pra registrar-se no evento desse ano. Se você ainda não tem um usuário, por favor registre-se em: * http://www.yapcbrasil.org.br/2010/register É rápido e indolor ;-) Duração das palestras ================= Sua palestra poderá ter: - 110 minutos: ideal para palestras-tutoriais, em que você descreve uma tecnologia ou módulo complexo; - 50 minutos: para palestras mais complexas ou detalhadas; - 20 minutos: para a maioria das palestras; - Palestra Relâmpago (lightning talk): ótimo para apresentações rápidas (5 minutos) focadas em apresentar uma idéia/conceito/solução/aplicação rapidamente. Se você realmente precisa de uma duração personalizada, entre em contato com a organização do evento e veremos o que pode ser feito. Outras informações importantes ======================== - Palestrantes podem submeter quantas apresentações quiserem. - Todos os palestrantes estarão isentos da taxa de inscrição. Para dúvidas, por favor entrem em contato com organizacao em yapcbrasil.org.br Lembrando que o site do evento já está no ar e contém muito mais informações (e uma wiki, pronta pra ser usada à vontade por todos). http://www.yapcbrasil.org.br Nos vemos no final de Outubro! Atenciosamente, Breno (em nome da organização do YAPC::Brasil 2010) From breno em rio.pm.org Sat Jul 31 22:24:28 2010 From: breno em rio.pm.org (breno) Date: Sun, 1 Aug 2010 02:24:28 -0300 Subject: [Rio-pm] =?iso-8859-1?q?=5BSP-pm=5D_Rakudo_Star_lan=E7ado?= In-Reply-To: References: Message-ID: Pessoal, tomei a liberdade de traduzir o anúncio de lançamento do Rakudo Star para o português, que segue abaixo, e também pode ser acessado aqui: http://perl.org.br/Artigos/RakudoStar Perl 6 é uma linguagem incrível, mas está cheia de buzzwords e ainda estou engatinhando nela, então por favor me perdoem se deixei alguma característica sem tradução (como "currying") ou mal traduzida (como "Typing gradual"). Por favor sintam-se a vontade para editar o arquivo (afinal, é uma wiki!) com traduções melhores, sempre que houver. Divirtam-se! ------- Rakudo Star - Um Perl 6 útil e utilizável, hoje! Rakudo Star é uma implementação do Perl 6 voltada para seus "early adopters". Sabemos que ainda há alguns bugs, e que é muito mais lenta do que deveria (otimização é o próximo passo), e existem alguns pedaços avançados da especificação da linguagem Perl 6 que ainda não foram implementados. Mas Rakudo Perl 6 em sua forma atual também está provando ser viável (e divertido!) para desenvolver aplicações e explorar essa incrível nova linguagem. Os lançamentos "Star" procuram tornar o Perl 6 mais acessível para programadores, aumentando a base Perl 6 e obtendo mais avaliações e críticas de usuários finais sobre a linguagem Perl 6 e a implementação Rakudo. No mundo Perl 6, fazemos uma separação entre a linguagem ("Perl 6") e implementações específicas da linguagem, como "Rakudo Perl". O "Rakudo Star" é uma distribuição que inclui o lançamento #31 do compilador Rakudo Perl 6 [1], a versão 2.6.0 da Máquina Virtual Parrot [2], e muitos módulos, documentação, e outros recursos coletados na comunidade Perl 6. Nosso plano é fazer lançamentos do Rakudo Star mensalmente, com releases especiais ocasionais em resposta a correções ou mudanças importantes. Alguns dos recursos mais legais e interessantes do Perl 6 disponíveis nesse lançamento do Rakudo Star: * Gramáticas e Expressões Regulares do Perl 6 * Listas formais de parâmetros e assinaturas * Metaoperadores * Typing gradual * Modelo de objetos poderoso, com classes e roles * Avaliação preguiçosa (lazy) de listas * Dispatch múltiplo * Comparação inteligente (smart matching) * Junctions e autothreading * Overload de operadores (formas limitadas por enquanto) * Introspection * Currying * Um rico conjunto embutido de operadores, funções e tipos * Laço interativo para leitura-avaliação-exibição (REPL) * Unicode no nível do codepoint * Exceções continuáveis Algumas características poderosas do Perl 6 ainda não são tratadas apropriadamente pelo Rakudo Star, mas que aparecerão em lançamentos futuros. Por isso, não consideramos o Rakudo Star como um release "1.0", ou de um "Perl 6.0.0". Algumas das características ainda não totalmente implementadas incluem: * definições aninhadas de pacotes * objetos binários, tipos nativos, pack e unpack * arrays com tipos * macros * variáveis de estados * threads e concorrência * strings Unicode em níveis além do codepoint * restrições pré e pós, e alguns outros phasers * Readline interativo que entenda Unicode * Escapes de contrabarra em classes de caracteres <[...]> em expressões regulares * E/S não-bloqueante * A maior parte da "Sinopse 9" * perl6doc ou ferramentas de manipulação de pod Tentamos fazer o Rakudo ser esperto o suficiente para avisar ao programador em muitos lugares quando determinada característica não está implementada, mas certamente esquecemos alguns. Relatórios de erros sobre características ausentes ou com defeito são muito bem vindos. Veja http://perl6.org/ para links com muito mais informação sobre Perl 6, incluindo documentação, código de exemplo, tutoriais, material de referência, documentos de especificação, e outros recursos de assistência. O Rakudo Star também vem com uma série de módulos; uma lista parcial de módulos disponíveis nesta versão incluem: * Blizkost - permite que alguns módulos de Perl 5 sejam usados dentro do Rakudo Perl 6 * MiniDBI - uma interace simples para bancos de dados para o Rakudo Perl 6 * Zavolaj - chame funções de bibliotecas C a partir do Rakudo Perl 6 * SVG and SVG::Plot - crie gráficos vetoriais redimensionáveis * HTTP::Daemon - um simples servidor HTTP * XML::Writer - gere XML * YAML - exiba objetos Perl 6 como YAML * Term::ANSIColor - colorize a saída na tela usando sequências de escape ANSI * Test::Mock - crie objetos simulados (mocks) e verifique que métodos foram chamados * Math::Model - descreva e execute modelos matemáticos * Config::INI - processe e escreva arquivos de configuração * File::Find - procure arquivos em determinado diretório * LWP::Simple - obtenha recursos pela web Esses não são considerados "módulos core do Perl 6", e a medida que o desenvolvimento de módulos para Perl 6 continua amadurecendo, lançamentos futuros do Rakudo Star provavelmente virão com conjuntos diferentes de módulos. Com o tempo, será criada uma política para avisar sobre módulos obsoletos, e outras distribuições de Perl 6 podem escolher um conjunto diferente de módulos ou políticas. Mais informações sobre módulos para Perl 6 podem ser encontradas em http://modules.perl6.org/. O Rakudo Star também contém o rascunho de um livro sobre Perl 6 -- veja dentro do arquivo com a distribuição. A equipe de desenvolvimento agradece a todos os colaboradores e patrocinadores por tornarem possível o Rakudo Star. Se você deseja contribuir, veja (N.T. recursos em inglês) , pergunte na lista perl6-compiler em perl.org, ou junte-se a nós no IRC em #perl6 na freenode. Os lançamentos Rakudo Star são criados em ciclos mensais ou conforme necessidade para corrigir problemas importantes ou trazer melhorias. O próximo lançamento do Rakudo Star será dia 24 de agosto de 2010. [1] http://github.com/rakudo/rakudo [2] http://parrot.org/ 2010/7/29 breno : > Acho que é do interesse de muitos =) > > > ---------- Forwarded message ---------- > From: Lucas Buchala > Date: 2010/7/29 > Subject: [SP-pm] Rakudo Star lançado > To: saopaulo-pm em mail.pm.org > > > Announce: Rakudo Star - a useful, usable, "early adopter" distribution of Perl 6 > > Ver: > http://rakudo.org/node/75 > > Tarball: > http://github.com/downloads/rakudo/star/rakudo-star-2010.07.tar.gz > _______________________________________________ > SaoPaulo-pm mailing list > SaoPaulo-pm em pm.org > http://mail.pm.org/mailman/listinfo/saopaulo-pm > From lorn.br em gmail.com Mon Aug 2 07:53:28 2010 From: lorn.br em gmail.com (Lindolfo "Lorn" Rodrigues) Date: Mon, 2 Aug 2010 11:53:28 -0300 Subject: [Rio-pm] [Cascavel-pm] The Perl 6 community has the structure of a MMORPG In-Reply-To: References: Message-ID: Passei esse link outro dia no irc :) Tem outro do mesmo cara, masak, em que ele comenta um log do #perl6 da freenode ( o Larry Wall fica logado lá ) onde um cara fica espantado de ter conversado com o Larry Wall sem saber :P http://use.perl.org/~masak/journal/39025 does anyone know of the -devel mailing list for Perl 6, and if Larry himself ever reads it? sjohnson: There's a "Language" list and a "Compilers" list He reads perl6-language and also comes here. Language is for arguing about the Spec. I'm on it, and so is Larry. (perl6-language is the "Language" list I mentioned) I'm not on Compilers, so I can't speak for it skids, how often does he come here? what's his nickname when he does? lambdabot: @seen TimToady TimToady is in #perl6. I last heard TimToady speak 3h 9m 56s ago. sjohnson: you already talked to him, in fact, when you first logged in. wow i had no idea that was him!!! :-) Desculpem o cross-post, mas eu acho isso interessante para todos :) 2010/7/31 João C. Coutinho > Perlsoal, > > vi o link desse post no Twitter (@larsen) e achei a analogia interessante: > > "The Perl 6 community has the structure of a MMORPG." > http://use.perl.org/~masak/journal/39445 > > [ ]'s, > > João > _______________________________________________ > Cascavel-pm mailing list > Cascavel-pm em pm.org > http://mail.pm.org/mailman/listinfo/cascavel-pm > -- lorn at lornlab dot org Lindolfo "Lorn" Rodrigues -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From nuba em fastmail.fm Mon Aug 2 20:36:29 2010 From: nuba em fastmail.fm (Nuba Princigalli) Date: Tue, 3 Aug 2010 00:36:29 -0300 (BRT) Subject: [Rio-pm] =?iso-8859-15?q?Startup_Meetup/RJ_-_1=2Ea_Edi=E7=E3o?= Message-ID: Caros, Eu vou, passo adiante a dica: Startup Meetup/RJ - 1.a Edição Convite: http://aceleradora.net/blog/wp-content/uploads/2010/07/convite_1meetupRJ.png Inscricao: http://bit.ly/1meetupRJ Abraco, Nuba Princigalli From indiox em gentoobr.org Tue Aug 3 06:58:34 2010 From: indiox em gentoobr.org (Claudio Pereira) Date: Tue, 3 Aug 2010 10:58:34 -0300 Subject: [Rio-pm] [OT] Puppet Message-ID: Pessoal, desculpem sobre o off-topic e o crossposting. Vi nas listas o pessoal comentando sobre o Puppet, vocês tem utilizado, o que tem achado? Estou querendo implementar no meu trampo, e to querendo opiniões. Obrigado, Indio. Claudio P Costa From lorn.br em gmail.com Tue Aug 3 08:11:58 2010 From: lorn.br em gmail.com (Lindolfo "Lorn" Rodrigues) Date: Tue, 3 Aug 2010 12:11:58 -0300 Subject: [Rio-pm] [SP-pm] [OT] Puppet In-Reply-To: References: Message-ID: Claudio, estão usando aqui no iG - http://www.slideshare.net/portalig/fisl11-2010-automao-de-datacenters Mas o pessoal falou que o Chef tem um gerenciamento de "fluxo" melhor, tipo, é mais facil/claro você "programar" coisas do tipo: - instale o apache - instale o mod_xyz - instale o perl - instale o mod_perl etc, etc... 2010/8/3 Claudio Pereira > Pessoal, desculpem sobre o off-topic e o crossposting. > > Vi nas listas o pessoal comentando sobre o Puppet, vocês tem > utilizado, o que tem achado? > > Estou querendo implementar no meu trampo, e to querendo opiniões. > > Obrigado, Indio. > Claudio P Costa > _______________________________________________ > SaoPaulo-pm mailing list > SaoPaulo-pm em pm.org > http://mail.pm.org/mailman/listinfo/saopaulo-pm > -- lorn at lornlab dot org Lindolfo "Lorn" Rodrigues -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Tue Aug 3 08:16:32 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Tue, 3 Aug 2010 12:16:32 -0300 Subject: [Rio-pm] yapcbrasil cadastrado no agendatech Message-ID: http://www.agendatech.com.br/eventos/2010/YAPC::Brasil%202010/20 Seria bom agendar la outros eventos que a gente resolva fazer ;-) -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br From breno em rio.pm.org Tue Aug 3 09:23:31 2010 From: breno em rio.pm.org (breno) Date: Tue, 3 Aug 2010 13:23:31 -0300 Subject: [Rio-pm] [SP-pm] [OT] Puppet In-Reply-To: References: Message-ID: Lorn, vc já ouviu falar no eBox? Ouvi falarem muito bem dele, e parece que teremos palestra sobre ele lá no YAPC::Brasil :-) http://www.ebox-platform.com []s -b 2010/8/3 Lindolfo "Lorn" Rodrigues : > Claudio, estão usando aqui no iG - > http://www.slideshare.net/portalig/fisl11-2010-automao-de-datacenters > > Mas o pessoal falou que o Chef tem um gerenciamento de "fluxo" melhor, tipo, > é mais facil/claro você "programar" coisas do tipo: > - instale o apache > - instale o mod_xyz > - instale o perl > - instale o mod_perl > > etc, etc... > > > > 2010/8/3 Claudio Pereira >> >> Pessoal, desculpem sobre o off-topic e o crossposting. >> >> Vi nas listas o pessoal comentando sobre o Puppet, vocês tem >> utilizado, o que tem achado? >> >> Estou querendo implementar no meu trampo, e to querendo opiniões. >> >> Obrigado, Indio. >> Claudio P Costa >> _______________________________________________ >> SaoPaulo-pm mailing list >> SaoPaulo-pm em pm.org >> http://mail.pm.org/mailman/listinfo/saopaulo-pm > > > > -- > lorn at lornlab dot org > Lindolfo "Lorn" Rodrigues > > > _______________________________________________ > SaoPaulo-pm mailing list > SaoPaulo-pm em pm.org > http://mail.pm.org/mailman/listinfo/saopaulo-pm > From breno em rio.pm.org Tue Aug 3 09:27:33 2010 From: breno em rio.pm.org (breno) Date: Tue, 3 Aug 2010 13:27:33 -0300 Subject: [Rio-pm] yapcbrasil cadastrado no agendatech In-Reply-To: References: Message-ID: On Tue, Aug 3, 2010 at 12:16 PM, Tiago Peczenyj wrote: > http://www.agendatech.com.br/eventos/2010/YAPC::Brasil%202010/20 > > Seria bom agendar la outros eventos que a gente resolva fazer ;-) > pacman++ From andreoandre em gmail.com Tue Aug 3 09:53:54 2010 From: andreoandre em gmail.com (=?ISO-8859-1?Q?Andr=E9_Moura?=) Date: Tue, 3 Aug 2010 13:53:54 -0300 Subject: [Rio-pm] [SP-pm] [OT] Puppet In-Reply-To: References: Message-ID: Já usei puppet para gerenciar alguns FreeBSD e para quem tem familiaridade com o ruby, vai se sentir em casa. Eu particulamente gostei dele! Para gerenciar poucas máquinas, sei-la algo entre 100 ou 500, acho ele bem bacana. Mais que isso acho bacana o cfengine3. Abraços Em 3 de agosto de 2010 13:23, breno escreveu: > Lorn, vc já ouviu falar no eBox? Ouvi falarem muito bem dele, e parece > que teremos palestra sobre ele lá no YAPC::Brasil :-) > > http://www.ebox-platform.com > > []s > > -b > > 2010/8/3 Lindolfo "Lorn" Rodrigues : >> Claudio, estão usando aqui no iG - >> http://www.slideshare.net/portalig/fisl11-2010-automao-de-datacenters >> >> Mas o pessoal falou que o Chef tem um gerenciamento de "fluxo" melhor, tipo, >> é mais facil/claro você "programar" coisas do tipo: >> - instale o apache >> - instale o mod_xyz >> - instale o perl >> - instale o mod_perl >> >> etc, etc... >> >> >> >> 2010/8/3 Claudio Pereira >>> >>> Pessoal, desculpem sobre o off-topic e o crossposting. >>> >>> Vi nas listas o pessoal comentando sobre o Puppet, vocês tem >>> utilizado, o que tem achado? >>> >>> Estou querendo implementar no meu trampo, e to querendo opiniões. >>> >>> Obrigado, Indio. >>> Claudio P Costa >>> _______________________________________________ >>> SaoPaulo-pm mailing list >>> SaoPaulo-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/saopaulo-pm >> >> >> >> -- >> lorn at lornlab dot org >> Lindolfo "Lorn" Rodrigues >> >> >> _______________________________________________ >> SaoPaulo-pm mailing list >> SaoPaulo-pm em pm.org >> http://mail.pm.org/mailman/listinfo/saopaulo-pm >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André O Moura http://andrem.wordpress.com From jc em joaocoutinho.com.br Tue Aug 3 13:54:44 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Tue, 3 Aug 2010 17:54:44 -0300 Subject: [Rio-pm] Palestras no YAPC::Brasil Message-ID: Perlsoal, já enviaram suas propostas de palestras? Vamos lá, se animem! http://www.yapcbrasil.org.br/2010/newtalk [ ]'s, João C. Coutinho From oscarbm em gmail.com Tue Aug 3 13:59:21 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Tue, 3 Aug 2010 17:59:21 -0300 Subject: [Rio-pm] Palestras no YAPC::Brasil In-Reply-To: References: Message-ID: Fala patrão! Mandei http://www.yapcbrasil.org.br/2010/talk/43 Ainda tenho que fazer a palestra e upar lá. 2010/8/3 João C. Coutinho > Perlsoal, > > já enviaram suas propostas de palestras? Vamos lá, se animem! > > http://www.yapcbrasil.org.br/2010/newtalk > > [ ]'s, > > João C. Coutinho > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From jc em joaocoutinho.com.br Tue Aug 3 14:00:55 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Tue, 3 Aug 2010 18:00:55 -0300 Subject: [Rio-pm] ET Message-ID: Ei, me lembrei de uma coisa! Vai rolar aquele ET mês que vem? Os tópicos do ET podem virar palestras no YAPC! :P Aposto que os Mongers de SP vão aproveitar o Equinócio nas palestras deles! Que tal? [ ]'s, João From jc em joaocoutinho.com.br Tue Aug 3 14:07:12 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Tue, 3 Aug 2010 18:07:12 -0300 Subject: [Rio-pm] Palestras no YAPC::Brasil In-Reply-To: References: Message-ID: Oscar++ PS: Patrão é em Sampa! :p LOL 2010/8/3 Oscar Marques : > Fala patrão! > Mandei http://www.yapcbrasil.org.br/2010/talk/43 > > Ainda tenho que fazer a palestra e upar lá. > > 2010/8/3 João C. Coutinho >> >> Perlsoal, >> >> já enviaram suas propostas de palestras? Vamos lá, se animem! >> >> http://www.yapcbrasil.org.br/2010/newtalk >> >> [ ]'s, >> >> João C. Coutinho >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From oscarbm em gmail.com Tue Aug 3 14:07:46 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Tue, 3 Aug 2010 18:07:46 -0300 Subject: [Rio-pm] ET In-Reply-To: References: Message-ID: Eu to colocando a minha submissao do YAPC como a mesma do ET que o Fernando comentou comigo. Nem sabia que tinha ET, só conhecia o ES até entao. Por mim apoiado meu caro. Abraços. 2010/8/3 João C. Coutinho > Ei, me lembrei de uma coisa! Vai rolar aquele ET mês que vem? > > Os tópicos do ET podem virar palestras no YAPC! :P Aposto que os > Mongers de SP vão aproveitar o Equinócio nas palestras deles! > > Que tal? > > [ ]'s, > > João > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ricardo_filipo em yahoo.com.br Tue Aug 3 14:27:07 2010 From: ricardo_filipo em yahoo.com.br (Ricardo Filipo) Date: Tue, 3 Aug 2010 14:27:07 -0700 (PDT) Subject: [Rio-pm] Res: ET In-Reply-To: References: Message-ID: <805882.26716.qm@web33001.mail.mud.yahoo.com> Oi, João. Eu vou estar no Rio em alguns dias. Quem sabe eu falo algo no ET, já que não poderei ir ao YAPC. Posso exercitar uma apresentação sobre CMS em Catalyst. Que dia vai ser? :) ----- Mensagem original ---- De: João C. Coutinho Para: Perl Mongers Rio de Janeiro Enviadas: Terça-feira, 3 de Agosto de 2010 18:00:55 Assunto: [Rio-pm] ET Ei, me lembrei de uma coisa! Vai rolar aquele ET mês que vem? Os tópicos do ET podem virar palestras no YAPC! :P Aposto que os Mongers de SP vão aproveitar o Equinócio nas palestras deles! Que tal? [ ]'s, João _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm From jc em joaocoutinho.com.br Tue Aug 3 14:37:10 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Tue, 3 Aug 2010 18:37:10 -0300 Subject: [Rio-pm] Res: ET In-Reply-To: <805882.26716.qm@web33001.mail.mud.yahoo.com> References: <805882.26716.qm@web33001.mail.mud.yahoo.com> Message-ID: Grande Filipo! A ideia inicial foi fazer no dia 18 de setembro, mas temos que confirmar (acho...). Fernando? Que dia você vem? Podemos fazer um ESX, ou um ESX+palestraDoFilipo! ;-) [ ]'s, João 2010/8/3 Ricardo Filipo : > Oi, João. > > Eu vou estar no Rio em alguns dias. > Quem sabe eu falo algo no ET, já que não poderei ir ao YAPC. > Posso exercitar uma apresentação sobre CMS em Catalyst. > > Que dia vai ser? > :) > > > > ----- Mensagem original ---- > De: João C. Coutinho > Para: Perl Mongers Rio de Janeiro > Enviadas: Terça-feira, 3 de Agosto de 2010 18:00:55 > Assunto: [Rio-pm] ET > > Ei, me lembrei de uma coisa! Vai rolar aquele ET mês que vem? > > Os tópicos do ET podem virar palestras no YAPC! :P Aposto que os > Mongers de SP vão aproveitar o Equinócio nas palestras deles! > > Que tal? > > [ ]'s, > > João > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From otaviof em gmail.com Wed Aug 4 08:51:12 2010 From: otaviof em gmail.com (=?ISO-8859-1?Q?Ot=E1vio_Fernandes?=) Date: Wed, 4 Aug 2010 17:51:12 +0200 Subject: [Rio-pm] [SP-pm] [OT] Puppet In-Reply-To: References: Message-ID: 2010/8/3 André Moura : > Já usei puppet para gerenciar alguns FreeBSD e para quem tem > familiaridade com o ruby, vai se sentir em casa. Eu particulamente > gostei dele! Este eu acho o principal ponto sobre o Puppet (coisa que o Chef também é bastante forte). Apesar de ser uma ferramenta feita para o gerenciamento de servidores, leia-se tarefa de um sysadmin, ele é muito voltado para quem vai escrever as regras, sintaxe é um dos pontos fortes. Nos dois, a forma de escrever é usar DSLs em Ruby. > Para gerenciar poucas máquinas, sei-la algo entre 100 ou 500, acho ele > bem bacana. > > Mais que isso acho bacana o cfengine3. Veja que trade-off interessante. De um lado nós temos: gerenciamento voltado ao desenvolvedor (DSLs); do outro: Performance. Para fazer o Puppet gerenciar tantos servidores quanto o Cfengine3, vamos precisar de mais hardware e de uma arquitetura melhor, infelizmente. Porem, escrever e manter as regras de forma inteligente vai custar menos pessoas, outra coisa interessante é poder fazer testes automatizados (parecido com o que é feito em código). Por isso, eu discordo de você Osti (André). Acredito que o setup do Chef/Puppet também é recomendado para quem tem um grande volume de máquinas, só que você vai ter que fazer estes softwares escalarem assim como é feito com qualquer outra aplicação (web, por exemplo); > Abraços > > -- > André O Moura > http://andrem.wordpress.com > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm um abraço, -- Otávio Fernandes otaviof at ( gmail.com, cpan.org ) http://github.com/otaviof From eu em samircury.eng.br Wed Aug 4 09:46:28 2010 From: eu em samircury.eng.br (Samir Cury) Date: Wed, 4 Aug 2010 13:46:28 -0300 Subject: [Rio-pm] Res: ET In-Reply-To: References: <805882.26716.qm@web33001.mail.mud.yahoo.com> Message-ID: Posso ver se apronto algo com Arduino+Perl, mas não prometo. De qualquer forma participarei, nem que seja como ouvinte. dia 18 acho uma boa data também, alguém contra? Abs. Samir 2010/8/3 João C. Coutinho > Grande Filipo! > > A ideia inicial foi fazer no dia 18 de setembro, mas temos que > confirmar (acho...). Fernando? > > Que dia você vem? Podemos fazer um ESX, ou um ESX+palestraDoFilipo! ;-) > > [ ]'s, > > João > > > > > 2010/8/3 Ricardo Filipo : > > Oi, João. > > > > Eu vou estar no Rio em alguns dias. > > Quem sabe eu falo algo no ET, já que não poderei ir ao YAPC. > > Posso exercitar uma apresentação sobre CMS em Catalyst. > > > > Que dia vai ser? > > :) > > > > > > > > ----- Mensagem original ---- > > De: João C. Coutinho > > Para: Perl Mongers Rio de Janeiro > > Enviadas: Terça-feira, 3 de Agosto de 2010 18:00:55 > > Assunto: [Rio-pm] ET > > > > Ei, me lembrei de uma coisa! Vai rolar aquele ET mês que vem? > > > > Os tópicos do ET podem virar palestras no YAPC! :P Aposto que os > > Mongers de SP vão aproveitar o Equinócio nas palestras deles! > > > > Que tal? > > > > [ ]'s, > > > > João > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Wed Aug 4 09:48:49 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Wed, 4 Aug 2010 13:48:49 -0300 Subject: [Rio-pm] Res: ET In-Reply-To: References: <805882.26716.qm@web33001.mail.mud.yahoo.com> Message-ID: Perl + Arduino Rocks, ja vi galera usando Python e PHP pra enviar dados pra serial. 2010/8/4 Samir Cury > Posso ver se apronto algo com Arduino+Perl, mas não prometo. > > De qualquer forma participarei, nem que seja como ouvinte. dia 18 acho uma > boa data também, alguém contra? > > Abs. > Samir > > 2010/8/3 João C. Coutinho > > Grande Filipo! >> >> A ideia inicial foi fazer no dia 18 de setembro, mas temos que >> confirmar (acho...). Fernando? >> >> Que dia você vem? Podemos fazer um ESX, ou um ESX+palestraDoFilipo! ;-) >> >> [ ]'s, >> >> João >> >> >> >> >> 2010/8/3 Ricardo Filipo : >> > Oi, João. >> > >> > Eu vou estar no Rio em alguns dias. >> > Quem sabe eu falo algo no ET, já que não poderei ir ao YAPC. >> > Posso exercitar uma apresentação sobre CMS em Catalyst. >> > >> > Que dia vai ser? >> > :) >> > >> > >> > >> > ----- Mensagem original ---- >> > De: João C. Coutinho >> > Para: Perl Mongers Rio de Janeiro >> > Enviadas: Terça-feira, 3 de Agosto de 2010 18:00:55 >> > Assunto: [Rio-pm] ET >> > >> > Ei, me lembrei de uma coisa! Vai rolar aquele ET mês que vem? >> > >> > Os tópicos do ET podem virar palestras no YAPC! :P Aposto que os >> > Mongers de SP vão aproveitar o Equinócio nas palestras deles! >> > >> > Que tal? >> > >> > [ ]'s, >> > >> > João >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> > >> > >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Wed Aug 4 09:53:32 2010 From: eu em samircury.eng.br (Samir Cury) Date: Wed, 4 Aug 2010 13:53:32 -0300 Subject: [Rio-pm] Res: ET In-Reply-To: References: <805882.26716.qm@web33001.mail.mud.yahoo.com> Message-ID: A idéia é ter mais que isso, o problema é eu ter tempo pra que tenha mais que isso =/ Na verdade já implementei um controle de "first person shooter" para robôs com esse cara, mas faltou ver na prática, posso levar pra lá o tanque e mostrar funcionando. Vou parar por aqui senão acaba virando OT =P Abracos, Samir 2010/8/4 Oscar Marques > Perl + Arduino Rocks, ja vi galera usando Python e PHP pra enviar dados pra > serial. > > 2010/8/4 Samir Cury > > Posso ver se apronto algo com Arduino+Perl, mas não prometo. >> >> De qualquer forma participarei, nem que seja como ouvinte. dia 18 acho uma >> boa data também, alguém contra? >> >> Abs. >> Samir >> >> 2010/8/3 João C. Coutinho >> >> Grande Filipo! >>> >>> A ideia inicial foi fazer no dia 18 de setembro, mas temos que >>> confirmar (acho...). Fernando? >>> >>> Que dia você vem? Podemos fazer um ESX, ou um ESX+palestraDoFilipo! ;-) >>> >>> [ ]'s, >>> >>> João >>> >>> >>> >>> >>> 2010/8/3 Ricardo Filipo : >>> > Oi, João. >>> > >>> > Eu vou estar no Rio em alguns dias. >>> > Quem sabe eu falo algo no ET, já que não poderei ir ao YAPC. >>> > Posso exercitar uma apresentação sobre CMS em Catalyst. >>> > >>> > Que dia vai ser? >>> > :) >>> > >>> > >>> > >>> > ----- Mensagem original ---- >>> > De: João C. Coutinho >>> > Para: Perl Mongers Rio de Janeiro >>> > Enviadas: Terça-feira, 3 de Agosto de 2010 18:00:55 >>> > Assunto: [Rio-pm] ET >>> > >>> > Ei, me lembrei de uma coisa! Vai rolar aquele ET mês que vem? >>> > >>> > Os tópicos do ET podem virar palestras no YAPC! :P Aposto que os >>> > Mongers de SP vão aproveitar o Equinócio nas palestras deles! >>> > >>> > Que tal? >>> > >>> > [ ]'s, >>> > >>> > João >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> > >>> > >>> > >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From indiox em gentoobr.org Wed Aug 4 10:31:49 2010 From: indiox em gentoobr.org (Claudio Pereira) Date: Wed, 4 Aug 2010 14:31:49 -0300 Subject: [Rio-pm] [SP-pm] [OT] Puppet In-Reply-To: References: Message-ID: Breno, eu uso o eBox em alguns dos meus clientes freelas. E inclusive já fiz alguns módulos extras usando a API deles em Perl. [ ]'s Indio. 2010/8/3 breno : > Lorn, vc já ouviu falar no eBox? Ouvi falarem muito bem dele, e parece > que teremos palestra sobre ele lá no YAPC::Brasil :-) > > http://www.ebox-platform.com > > []s > > -b > > 2010/8/3 Lindolfo "Lorn" Rodrigues : >> Claudio, estão usando aqui no iG - >> http://www.slideshare.net/portalig/fisl11-2010-automao-de-datacenters >> >> Mas o pessoal falou que o Chef tem um gerenciamento de "fluxo" melhor, tipo, >> é mais facil/claro você "programar" coisas do tipo: >> - instale o apache >> - instale o mod_xyz >> - instale o perl >> - instale o mod_perl >> >> etc, etc... >> >> >> >> 2010/8/3 Claudio Pereira >>> >>> Pessoal, desculpem sobre o off-topic e o crossposting. >>> >>> Vi nas listas o pessoal comentando sobre o Puppet, vocês tem >>> utilizado, o que tem achado? >>> >>> Estou querendo implementar no meu trampo, e to querendo opiniões. >>> >>> Obrigado, Indio. >>> Claudio P Costa >>> _______________________________________________ >>> SaoPaulo-pm mailing list >>> SaoPaulo-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/saopaulo-pm >> >> >> >> -- >> lorn at lornlab dot org >> Lindolfo "Lorn" Rodrigues >> >> >> _______________________________________________ >> SaoPaulo-pm mailing list >> SaoPaulo-pm em pm.org >> http://mail.pm.org/mailman/listinfo/saopaulo-pm >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- -- Claudio Pereira aka IndioX GentooBR - http://gentoobr.org mailto: indiox em gentoobr.org --------------------------------------------- Gentoo Documentation Member http://gdp.gentoo.org From jc em joaocoutinho.com.br Wed Aug 4 13:53:37 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Wed, 4 Aug 2010 17:53:37 -0300 Subject: [Rio-pm] [SP-pm] [OT] Puppet In-Reply-To: References: Message-ID: Oi, Indio! Vou falar sobre o eBox no YAPC. Ainda não preparei o material, mas a intenção é exatamente demonstrar o sistema e a API. Vou te perturbar pra pegar uns bizus! :-) [ ]'s, João On 8/4/10, Claudio Pereira wrote: > Breno, eu uso o eBox em alguns dos meus clientes freelas. > > E inclusive já fiz alguns módulos extras usando a API deles em Perl. > > [ ]'s Indio. > > 2010/8/3 breno : >> Lorn, vc já ouviu falar no eBox? Ouvi falarem muito bem dele, e parece >> que teremos palestra sobre ele lá no YAPC::Brasil :-) >> >> http://www.ebox-platform.com >> >> []s >> >> -b >> >> 2010/8/3 Lindolfo "Lorn" Rodrigues : >>> Claudio, estão usando aqui no iG - >>> http://www.slideshare.net/portalig/fisl11-2010-automao-de-datacenters >>> >>> Mas o pessoal falou que o Chef tem um gerenciamento de "fluxo" melhor, >>> tipo, >>> é mais facil/claro você "programar" coisas do tipo: >>> - instale o apache >>> - instale o mod_xyz >>> - instale o perl >>> - instale o mod_perl >>> >>> etc, etc... >>> >>> >>> >>> 2010/8/3 Claudio Pereira >>>> >>>> Pessoal, desculpem sobre o off-topic e o crossposting. >>>> >>>> Vi nas listas o pessoal comentando sobre o Puppet, vocês tem >>>> utilizado, o que tem achado? >>>> >>>> Estou querendo implementar no meu trampo, e to querendo opiniões. >>>> >>>> Obrigado, Indio. >>>> Claudio P Costa >>>> _______________________________________________ >>>> SaoPaulo-pm mailing list >>>> SaoPaulo-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm >>> >>> >>> >>> -- >>> lorn at lornlab dot org >>> Lindolfo "Lorn" Rodrigues >>> >>> >>> _______________________________________________ >>> SaoPaulo-pm mailing list >>> SaoPaulo-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/saopaulo-pm >>> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > -- > Claudio Pereira aka IndioX > GentooBR - http://gentoobr.org > mailto: indiox em gentoobr.org > --------------------------------------------- > Gentoo Documentation Member > http://gdp.gentoo.org > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From indiox em gentoobr.org Wed Aug 4 13:55:29 2010 From: indiox em gentoobr.org (Claudio Pereira) Date: Wed, 4 Aug 2010 17:55:29 -0300 Subject: [Rio-pm] [SP-pm] [OT] Puppet In-Reply-To: References: Message-ID: hehe blz! Vou tentar aparecer nos próximos ES's e aproveitamos para trocar algumas dicas. [ ]'s Indio. 2010/8/4 João C. Coutinho : > Oi, Indio! > Vou falar sobre o eBox no YAPC. Ainda não preparei o material, mas a > intenção é exatamente demonstrar o sistema e a API. Vou te perturbar > pra pegar uns bizus! :-) > [ ]'s, > João > > > > > On 8/4/10, Claudio Pereira wrote: >> Breno, eu uso o eBox em alguns dos meus clientes freelas. >> >> E inclusive já fiz alguns módulos extras usando a API deles em Perl. >> >> [  ]'s Indio. >> >> 2010/8/3 breno : >>> Lorn, vc já ouviu falar no eBox? Ouvi falarem muito bem dele, e parece >>> que teremos palestra sobre ele lá no YAPC::Brasil :-) >>> >>> http://www.ebox-platform.com >>> >>> []s >>> >>> -b >>> >>> 2010/8/3 Lindolfo "Lorn" Rodrigues : >>>> Claudio, estão usando aqui no iG - >>>> http://www.slideshare.net/portalig/fisl11-2010-automao-de-datacenters >>>> >>>> Mas o pessoal falou que o Chef tem um gerenciamento de "fluxo" melhor, >>>> tipo, >>>> é mais facil/claro você "programar" coisas do tipo: >>>> - instale o apache >>>> - instale o mod_xyz >>>> - instale o perl >>>> - instale o mod_perl >>>> >>>> etc, etc... >>>> >>>> >>>> >>>> 2010/8/3 Claudio Pereira >>>>> >>>>> Pessoal, desculpem sobre o off-topic e o crossposting. >>>>> >>>>> Vi nas listas o pessoal comentando sobre o Puppet, vocês tem >>>>> utilizado, o que tem achado? >>>>> >>>>> Estou querendo implementar no meu trampo, e to querendo opiniões. >>>>> >>>>> Obrigado, Indio. >>>>> Claudio P Costa >>>>> _______________________________________________ >>>>> SaoPaulo-pm mailing list >>>>> SaoPaulo-pm em pm.org >>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm >>>> >>>> >>>> >>>> -- >>>> lorn at lornlab dot org >>>> Lindolfo "Lorn" Rodrigues >>>> >>>> >>>> _______________________________________________ >>>> SaoPaulo-pm mailing list >>>> SaoPaulo-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm >>>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> >> -- >> -- >> Claudio Pereira aka IndioX >> GentooBR - http://gentoobr.org >> mailto: indiox em gentoobr.org >> --------------------------------------------- >> Gentoo Documentation Member >> http://gdp.gentoo.org >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- -- Claudio Pereira aka IndioX GentooBR - http://gentoobr.org mailto: indiox em gentoobr.org --------------------------------------------- Gentoo Documentation Member http://gdp.gentoo.org From breno em rio.pm.org Thu Aug 5 11:29:27 2010 From: breno em rio.pm.org (breno) Date: Thu, 5 Aug 2010 15:29:27 -0300 Subject: [Rio-pm] [OT] Fwd: Processing and Arduino in Tandem--New Course from O'Reilly Message-ID: Oi pessoal, desculpem o off-topic, mas sei que tem muita gente aqui na lista que curte Arduino - acho até que vai ter palestra dele com Perl no encontro técnico da Rio-PM mês que vem... Né Samir? Né Oscar? ;-) []s -b ---------- Forwarded message ---------- View in Browser . *Forward this announcement to your user group or a friend*. [image: Free Online Course] [image: Processing with Arduino] Create your own drawing and animation software-and learn basic programming and electronics skills at the same time. This engaging 5-week online course introduces you to two simple tools: Processing, a programming language for visual thinkers, and Arduino, a hardware platform for working with electronics. You'll learn how to use these tools together to build something useful right away. You'll learn to: - Use Processing to create basic software applications - Make your own drawing and animation tools - Create a GUI (Graphical User Interface) to control your software - Use an Arduino to provide physical controls for your drawing and animation tools Learn more *Processing and Arduino in Tandem*. [image: Register Now] Price: Free [image: calender icon] 5-Week Course: Tues, 8/31 ? 9/28 [image: clock icon] 3:00pm PST Each 90 - 120 minutes Make the most of your course with our exclusive project kit. projBox Kit Price: $75 The projBox Kit contains everything you need to follow along with Processing and Arduino in Tandem. The kit, which requires no soldering, is ideal for beginners in electronics and physical computing. The projBox Kit contains: - projBox - Arduino Duemilanove - Electronics Breadboard - 4 10k potentiometers - 4 SPST switches - 4 LEDs - USB cable - Wires Spreading the knowledge of innovators oreilly.com O'Reilly Media, Inc. 1005 Gravenstein Highway North, Sebastopol, CA 95472 (707) 827-7000 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Thu Aug 5 11:36:28 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Thu, 5 Aug 2010 15:36:28 -0300 Subject: [Rio-pm] [OT] Fwd: Processing and Arduino in Tandem--New Course from O'Reilly In-Reply-To: References: Message-ID: Sim. Com certeza. Já vou repassar essa mensagem pro grupo também. Valeu garu! 2010/8/5 breno > Oi pessoal, > > desculpem o off-topic, mas sei que tem muita gente aqui na lista que curte > Arduino - acho até que vai ter palestra dele com Perl no encontro técnico da > Rio-PM mês que vem... Né Samir? Né Oscar? ;-) > > []s > > -b > > ---------- Forwarded message ---------- > > View in Browser > . > > *Forward this announcement to your user group or a friend*. > > [image: Free Online Course] [image: Processing with Arduino] > > Create your own drawing and animation software-and learn basic programming > and electronics skills at the same time. This engaging 5-week online course > introduces you to two simple tools: Processing, a programming language for > visual thinkers, and Arduino, a hardware platform for working with > electronics. You'll learn how to use these tools together to build something > useful right away. You'll learn to: > > - Use Processing to create basic software applications > - Make your own drawing and animation tools > - Create a GUI (Graphical User Interface) to control your software > - Use an Arduino to provide physical controls for your drawing and > animation tools > > Learn more *Processing and Arduino in Tandem*. > > [image: Register Now] > Price: Free > [image: calender icon] 5-Week Course: > Tues, 8/31 ? 9/28 > [image: clock icon] 3:00pm PST > Each 90 - 120 minutes > > Make the most of your course with our exclusive project kit. > > projBox Kit > Price: $75 > > > The projBox Kit contains everything you need to follow along with > Processing and Arduino in Tandem. The kit, which requires no soldering, is > ideal for beginners in electronics and physical computing. The projBox Kit > contains: > > - projBox > - Arduino Duemilanove > - Electronics Breadboard > - 4 10k potentiometers > - 4 SPST switches > - 4 LEDs > - USB cable > - Wires > > Spreading the knowledge of innovators > > oreilly.com > O'Reilly Media, Inc. 1005 Gravenstein Highway North, Sebastopol, CA > 95472 (707) 827-7000 > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Fri Aug 6 04:49:40 2010 From: eu em samircury.eng.br (Samir Cury) Date: Fri, 6 Aug 2010 08:49:40 -0300 Subject: [Rio-pm] [OT] Fwd: Processing and Arduino in Tandem--New Course from O'Reilly In-Reply-To: References: Message-ID: Opa! Bem provável que role sim, Então, rolou um palestrão de tarde inteira um tempo atrás no "pontão da eco" (WTF!) (UFRJ) de uma galera que é um grupo de teatro e circo que usava Arduino e controles de Wii para fazer com que o cenário (luz e som) fizessem parte do show, mas sendo algo totalmente interativo e mutável de acordo com as cenas, e não somente um "script". Eles falaram bastante não só do que esse curso fala mas outras coisas agora, como diversos dispositivos como estes se comunicando via um protocolo de controle que esqueci agora, malabarismos com áudio e TCP/IP, e por aí vai. Acho que vai rolar outra, se rolar eu aviso por aqui. Talvez lá pro YAPC dê pra falar um pouco disso, mas agora to mais na automação de veículos e robôs mesmo, dá pra falar disso no E.T., mas ando meio por fora dessa união computação+artes (que é muito interessante). Abraços, Samir On Thu, Aug 5, 2010 at 3:36 PM, Oscar Marques wrote: > Sim. > Com certeza. Já vou repassar essa mensagem pro grupo também. > Valeu garu! > > 2010/8/5 breno > >> Oi pessoal, >> >> desculpem o off-topic, mas sei que tem muita gente aqui na lista que curte >> Arduino - acho até que vai ter palestra dele com Perl no encontro técnico da >> Rio-PM mês que vem... Né Samir? Né Oscar? ;-) >> >> []s >> >> -b >> >> ---------- Forwarded message ---------- >> >> View in Browser >> . >> >> *Forward this announcement to your user group or a friend*. >> >> [image: Free Online Course] [image: Processing with Arduino] >> >> Create your own drawing and animation software-and learn basic programming >> and electronics skills at the same time. This engaging 5-week online course >> introduces you to two simple tools: Processing, a programming language for >> visual thinkers, and Arduino, a hardware platform for working with >> electronics. You'll learn how to use these tools together to build something >> useful right away. You'll learn to: >> >> - Use Processing to create basic software applications >> - Make your own drawing and animation tools >> - Create a GUI (Graphical User Interface) to control your software >> - Use an Arduino to provide physical controls for your drawing and >> animation tools >> >> Learn more *Processing and Arduino in Tandem*. >> >> [image: Register Now] >> Price: Free >> [image: calender icon] 5-Week Course: >> Tues, 8/31 ? 9/28 >> [image: clock icon] 3:00pm PST >> Each 90 - 120 minutes >> >> Make the most of your course with our exclusive project kit. >> >> projBox Kit >> Price: $75 >> >> >> The projBox Kit contains everything you need to follow along with >> Processing and Arduino in Tandem. The kit, which requires no soldering, is >> ideal for beginners in electronics and physical computing. The projBox Kit >> contains: >> >> - projBox >> - Arduino Duemilanove >> - Electronics Breadboard >> - 4 10k potentiometers >> - 4 SPST switches >> - 4 LEDs >> - USB cable >> - Wires >> >> Spreading the knowledge of innovators >> >> oreilly.com >> O'Reilly Media, Inc. 1005 Gravenstein Highway North, Sebastopol, >> CA 95472 (707) 827-7000 >> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Fri Aug 6 10:46:17 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Fri, 6 Aug 2010 14:46:17 -0300 Subject: [Rio-pm] [SL-RJ] LINUX IN RIO 2010 - Chamada de desenvolvedores In-Reply-To: <39757.146.164.11.67.1281116432.squirrel@webmail.keduque.com.br> References: <39757.146.164.11.67.1281116432.squirrel@webmail.keduque.com.br> Message-ID: Eu vou repassar esse email para os grupos do RJ. Pode contar comigo no que for preciso pra ajudar. O que rolou no V Fórum? PS: Galera coder, partiu? 2010/8/6 Alessandro Silva > * Prezados colegas,* > > Estou montando um painel de desenvolvedores para o LINUX IN RIO 2010 ( > http://www.linuxinrio.com.br) e procuro especialistas nas seguintes > linguagens: > > > - PHP > - PYTHON > - PERL > - JAVA > - RUBY > > A proposta é repetir o que foi feito e muito bem, no V Fórum de Software > Livre do Rio de Janeiro em 2007, foi uma idéia brilhante e que me chamou > atenção. > > Quem se habilita ou poderia me indicar alguém? > > > Abraços livres, > > > > *Alessandro de Souza e Silva* > Administrador de Sistemas Linux - LPIC1 > (21) 9237-5461 > > -- > Você está recebendo esta mensagem porque se inscreveu no grupo "Software > Livre Rio de Janeiro" dos Grupos do Google. > Para postar neste grupo, envie um e-mail para slrj em googlegroups.com. > Para cancelar a inscrição nesse grupo, envie um e-mail para > slrj+unsubscribe em googlegroups.com . > Para obter mais opções, visite esse grupo em > http://groups.google.com/group/slrj?hl=pt-BR. > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From edencardim em gmail.com Fri Aug 6 13:09:14 2010 From: edencardim em gmail.com (Eden Cardim) Date: Fri, 06 Aug 2010 17:09:14 -0300 Subject: [Rio-pm] [SL-RJ] LINUX IN RIO 2010 - Chamada de desenvolvedores In-Reply-To: (Oscar Marques's message of "Fri, 6 Aug 2010 14:46:17 -0300") References: <39757.146.164.11.67.1281116432.squirrel@webmail.keduque.com.br> Message-ID: <87y6cj33md.fsf@gmail.com> >>>>> "Oscar" == Oscar Marques writes: Oscar> Eu vou repassar esse email para os grupos do RJ. Pode contar Oscar> comigo no que for preciso pra ajudar. Oscar> O que rolou no V Fórum? Oscar> PS: Galera coder, partiu? Fiquei curioso pra saber do que se trata. From eu em samircury.eng.br Fri Aug 6 13:16:14 2010 From: eu em samircury.eng.br (Samir Cury) Date: Fri, 6 Aug 2010 17:16:14 -0300 Subject: [Rio-pm] [SL-RJ] LINUX IN RIO 2010 - Chamada de desenvolvedores In-Reply-To: <87y6cj33md.fsf@gmail.com> References: <39757.146.164.11.67.1281116432.squirrel@webmail.keduque.com.br> <87y6cj33md.fsf@gmail.com> Message-ID: Na "minha epoca" era palestra pra garotada de SL, tipo, mini-curso de Nagios, em 2007 se nao me engano rolou até um mini-curso de Perl (se nao me engano foi ate o Breno que deu), e em 2007 foi quando primeiro ouvi falar de Perl e Rio-PM depois da palestra de Segurança do Breno. Foi um evento maneiro, mas dependendo é bom escolher bem o que vai assistir. Ah, e geralmente cobram por palestra / mini-curso Não sei como está esse ano Abraços, Samir 2010/8/6 Eden Cardim > >>>>> "Oscar" == Oscar Marques writes: > > Oscar> Eu vou repassar esse email para os grupos do RJ. Pode contar > Oscar> comigo no que for preciso pra ajudar. > > Oscar> O que rolou no V Fórum? > > Oscar> PS: Galera coder, partiu? > > Fiquei curioso pra saber do que se trata. > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Fri Aug 6 13:27:07 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Fri, 6 Aug 2010 17:27:07 -0300 Subject: [Rio-pm] [SL-RJ] LINUX IN RIO 2010 - Chamada de desenvolvedores In-Reply-To: References: <39757.146.164.11.67.1281116432.squirrel@webmail.keduque.com.br> <87y6cj33md.fsf@gmail.com> Message-ID: Se trata de: enviado pelo Alessandro , *=== * * Prezados colegas,* Estou montando um painel de desenvolvedores para o LINUX IN RIO 2010 ( http://www.linuxinrio.com.br) e procuro especialistas nas seguintes linguagens: - PHP - PYTHON - PERL - JAVA - RUBY A proposta é repetir o que foi feito e muito bem, no V Fórum de Software Livre do Rio de Janeiro em 2007, foi uma idéia brilhante e que me chamou atenção. Quem se habilita ou poderia me indicar alguém? Abraços livres, *===* *Alessandro de Souza e Silva* Administrador de Sistemas Linux - LPIC1 (21) 9237-5461 -- Você está recebendo esta mensagem porque se inscreveu no grupo "Software Livre Rio de Janeiro" dos Grupos do Google. Para postar neste grupo, envie um e-mail para slrj em googlegroups.com. Para cancelar a inscrição nesse grupo, envie um e-mail para slrj+unsubscribe em googlegroups.com . Para obter mais opções, visite esse grupo em http://groups.google.com/group/slrj?hl=pt-BR. 2010/8/6 Samir Cury > Na "minha epoca" era palestra pra garotada de SL, tipo, mini-curso de > Nagios, em 2007 se nao me engano rolou até um mini-curso de Perl (se nao me > engano foi ate o Breno que deu), e em 2007 foi quando primeiro ouvi falar de > Perl e Rio-PM depois da palestra de Segurança do Breno. > > Foi um evento maneiro, mas dependendo é bom escolher bem o que vai > assistir. > > Ah, e geralmente cobram por palestra / mini-curso > > Não sei como está esse ano > > Abraços, > Samir > > 2010/8/6 Eden Cardim > > >>>>> "Oscar" == Oscar Marques writes: >> >> Oscar> Eu vou repassar esse email para os grupos do RJ. Pode contar >> Oscar> comigo no que for preciso pra ajudar. >> >> Oscar> O que rolou no V Fórum? >> >> Oscar> PS: Galera coder, partiu? >> >> Fiquei curioso pra saber do que se trata. >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From henrique.andrade em uniriotec.br Fri Aug 6 13:54:41 2010 From: henrique.andrade em uniriotec.br (Henrique Rabelo de Andrade) Date: Fri, 6 Aug 2010 17:54:41 -0300 Subject: [Rio-pm] [SL-RJ] LINUX IN RIO 2010 - Chamada de desenvolvedores In-Reply-To: References: <39757.146.164.11.67.1281116432.squirrel@webmail.keduque.com.br> <87y6cj33md.fsf@gmail.com> Message-ID: Nesse fórum eu coordenei uma mesa com um representante de cada linguagem em um "clima de batalha". Apresentei cada um deles com a música do Rocky no fundo falando nome, idade e peso de cada um, hehe. A moderação da mesa foi um tanto quanto "provocativa" para que alfinetadas acontecessem. O resultado foi uma mesa onde as pessoas aprenderam um pouco mas se divertiram demais! PS. O V Fórum não foi o primeiro com essa Mesa de Linguagens. Lá na época do Terceiro Fórum nosso Mago Marco Lima que trouxe a idéia de colocar várias pessoas de linguagens diferentes na mesa para debater a diferença entre elas e o sucesso foi garantido! [s] -- Henrique Rabelo de Andrade 2010/8/6 Oscar Marques > Se trata de: > > enviado pelo Alessandro , > > *=== > * > > * Prezados colegas,* > > Estou montando um painel de desenvolvedores para o LINUX IN RIO 2010 ( > http://www.linuxinrio.com.br) e procuro especialistas nas seguintes > linguagens: > > - PHP > - PYTHON > - PERL > - JAVA > - RUBY > > A proposta é repetir o que foi feito e muito bem, no V Fórum de Software > Livre do Rio de Janeiro em 2007, foi uma idéia brilhante e que me chamou > atenção. > > Quem se habilita ou poderia me indicar alguém? > > > Abraços livres, > > *===* > > *Alessandro de Souza e Silva* > Administrador de Sistemas Linux - LPIC1 > (21) 9237-5461 > -- > Você está recebendo esta mensagem porque se inscreveu no grupo "Software > Livre Rio de Janeiro" dos Grupos do Google. > Para postar neste grupo, envie um e-mail para slrj em googlegroups.com. > Para cancelar a inscrição nesse grupo, envie um e-mail para > slrj+unsubscribe em googlegroups.com . > Para obter mais opções, visite esse grupo em > http://groups.google.com/group/slrj?hl=pt-BR. > > 2010/8/6 Samir Cury > > Na "minha epoca" era palestra pra garotada de SL, tipo, mini-curso de >> Nagios, em 2007 se nao me engano rolou até um mini-curso de Perl (se nao me >> engano foi ate o Breno que deu), e em 2007 foi quando primeiro ouvi falar de >> Perl e Rio-PM depois da palestra de Segurança do Breno. >> >> Foi um evento maneiro, mas dependendo é bom escolher bem o que vai >> assistir. >> >> Ah, e geralmente cobram por palestra / mini-curso >> >> Não sei como está esse ano >> >> Abraços, >> Samir >> >> 2010/8/6 Eden Cardim >> >> >>>>> "Oscar" == Oscar Marques writes: >>> >>> Oscar> Eu vou repassar esse email para os grupos do RJ. Pode contar >>> Oscar> comigo no que for preciso pra ajudar. >>> >>> Oscar> O que rolou no V Fórum? >>> >>> Oscar> PS: Galera coder, partiu? >>> >>> Fiquei curioso pra saber do que se trata. >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Fri Aug 6 14:03:56 2010 From: eu em samircury.eng.br (Samir Cury) Date: Fri, 6 Aug 2010 18:03:56 -0300 Subject: [Rio-pm] [SL-RJ] LINUX IN RIO 2010 - Chamada de desenvolvedores In-Reply-To: References: <39757.146.164.11.67.1281116432.squirrel@webmail.keduque.com.br> <87y6cj33md.fsf@gmail.com> Message-ID: Ah é! Lembro que a idéia das mesas foi genial, pena que não puder ir heheheh Gravem a deste ano, vai ser engraçada também, se tiver =P Abracos, Samir 2010/8/6 Henrique Rabelo de Andrade > Nesse fórum eu coordenei uma mesa com um representante de cada linguagem em > um "clima de batalha". Apresentei cada um deles com a música do Rocky no > fundo falando nome, idade e peso de cada um, hehe. A moderação da mesa foi > um tanto quanto "provocativa" para que alfinetadas acontecessem. > > O resultado foi uma mesa onde as pessoas aprenderam um pouco mas se > divertiram demais! > > > PS. O V Fórum não foi o primeiro com essa Mesa de Linguagens. Lá na época > do Terceiro Fórum nosso Mago Marco Lima que trouxe a idéia de colocar várias > pessoas de linguagens diferentes na mesa para debater a diferença entre elas > e o sucesso foi garantido! > > [s] > -- > Henrique Rabelo de Andrade > > > 2010/8/6 Oscar Marques > > Se trata de: >> >> enviado pelo Alessandro , >> >> *=== >> * >> >> * Prezados colegas,* >> >> Estou montando um painel de desenvolvedores para o LINUX IN RIO 2010 ( >> http://www.linuxinrio.com.br) e procuro especialistas nas seguintes >> linguagens: >> >> - PHP >> - PYTHON >> - PERL >> - JAVA >> - RUBY >> >> A proposta é repetir o que foi feito e muito bem, no V Fórum de Software >> Livre do Rio de Janeiro em 2007, foi uma idéia brilhante e que me chamou >> atenção. >> >> Quem se habilita ou poderia me indicar alguém? >> >> >> Abraços livres, >> >> *===* >> >> *Alessandro de Souza e Silva* >> Administrador de Sistemas Linux - LPIC1 >> (21) 9237-5461 >> -- >> Você está recebendo esta mensagem porque se inscreveu no grupo "Software >> Livre Rio de Janeiro" dos Grupos do Google. >> Para postar neste grupo, envie um e-mail para slrj em googlegroups.com. >> Para cancelar a inscrição nesse grupo, envie um e-mail para >> slrj+unsubscribe em googlegroups.com . >> Para obter mais opções, visite esse grupo em >> http://groups.google.com/group/slrj?hl=pt-BR. >> >> 2010/8/6 Samir Cury >> >> Na "minha epoca" era palestra pra garotada de SL, tipo, mini-curso de >>> Nagios, em 2007 se nao me engano rolou até um mini-curso de Perl (se nao me >>> engano foi ate o Breno que deu), e em 2007 foi quando primeiro ouvi falar de >>> Perl e Rio-PM depois da palestra de Segurança do Breno. >>> >>> Foi um evento maneiro, mas dependendo é bom escolher bem o que vai >>> assistir. >>> >>> Ah, e geralmente cobram por palestra / mini-curso >>> >>> Não sei como está esse ano >>> >>> Abraços, >>> Samir >>> >>> 2010/8/6 Eden Cardim >>> >>> >>>>> "Oscar" == Oscar Marques writes: >>>> >>>> Oscar> Eu vou repassar esse email para os grupos do RJ. Pode contar >>>> Oscar> comigo no que for preciso pra ajudar. >>>> >>>> Oscar> O que rolou no V Fórum? >>>> >>>> Oscar> PS: Galera coder, partiu? >>>> >>>> Fiquei curioso pra saber do que se trata. >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From maia em eduardomaia.com Fri Aug 6 19:41:29 2010 From: maia em eduardomaia.com (Eduardo Maia) Date: Fri, 6 Aug 2010 23:41:29 -0300 Subject: [Rio-pm] Perl song Message-ID: O Fernando Oliveira me mostrou essa hoje, eu não conhecia, achei excelente... "Perl in a nutshell" http://www.youtube.com/watch?v=Mxk5RMQF6Js\ Abraços -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Sat Aug 7 12:31:56 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Sat, 7 Aug 2010 16:31:56 -0300 Subject: [Rio-pm] dev in rio Message-ID: vamos participar?? http://www.devinrio.com.br/ acho que é a galera da #horaextra que esta organizando. -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br From eu em samircury.eng.br Sat Aug 7 14:19:27 2010 From: eu em samircury.eng.br (Samir Cury) Date: Sat, 7 Aug 2010 18:19:27 -0300 Subject: [Rio-pm] dev in rio In-Reply-To: References: Message-ID: To dentro, se as condicoes climaticas ajudarem =P Bonde do Perl , so tacada violenta! hahahhahaa On Sat, Aug 7, 2010 at 4:31 PM, Tiago Peczenyj wrote: > vamos participar?? > > http://www.devinrio.com.br/ > > acho que é a galera da #horaextra que esta organizando. > > -- > Tiago B. Peczenyj > Linux User #405772 > > http://pacman.blog.br > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From contato em mergulhao.info Sun Aug 8 17:28:01 2010 From: contato em mergulhao.info (=?ISO-8859-1?Q?Sylvestre_Mergulh=E3o?=) Date: Sun, 8 Aug 2010 21:28:01 -0300 Subject: [Rio-pm] dev in rio In-Reply-To: References: Message-ID: Mais do que convidados a participar. Qualquer coisa falem comigo, estou na organização. Vamos ter openspaces e lightning talks rolando quero vocês apresentando lá! Breno podia apresentar o zombies feito no fisl! Sylvestre Mergulhão ----------------------------------------------------------------------- Helabs Consulting: http://helabs.com.br Clientela, CRM Para Seres Humanos: http://clientela.com.br On Sat, Aug 7, 2010 at 4:31 PM, Tiago Peczenyj wrote: > vamos participar?? > > http://www.devinrio.com.br/ > > acho que é a galera da #horaextra que esta organizando. > > -- > Tiago B. Peczenyj > Linux User #405772 > > http://pacman.blog.br > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From contato em mergulhao.info Sun Aug 8 18:05:10 2010 From: contato em mergulhao.info (=?ISO-8859-1?Q?Sylvestre_Mergulh=E3o?=) Date: Sun, 8 Aug 2010 22:05:10 -0300 Subject: [Rio-pm] Perl song In-Reply-To: References: Message-ID: Sensacional! Sylvestre Mergulhão ----------------------------------------------------------------------- Helabs Consulting: http://helabs.com.br Clientela, CRM Para Seres Humanos: http://clientela.com.br 2010/8/6 Eduardo Maia : > O Fernando Oliveira me mostrou essa hoje, eu não conhecia, achei > excelente... > > "Perl in a nutshell" > > http://www.youtube.com/watch?v=Mxk5RMQF6Js\ > > Abraços > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From breno em rio.pm.org Sun Aug 8 18:35:02 2010 From: breno em rio.pm.org (breno) Date: Sun, 8 Aug 2010 22:35:02 -0300 Subject: [Rio-pm] dev in rio In-Reply-To: References: Message-ID: On Sun, Aug 8, 2010 at 9:28 PM, Sylvestre Mergulhão wrote: > Mais do que convidados a participar. Qualquer coisa falem comigo, > estou na organização. Vamos ter openspaces e lightning talks rolando > quero vocês apresentando lá! > > Breno podia apresentar o zombies feito no fisl! > Se interessar ao evento, apresento sim, com o maior prazer :-) From contato em mergulhao.info Sun Aug 8 18:36:57 2010 From: contato em mergulhao.info (=?ISO-8859-1?Q?Sylvestre_Mergulh=E3o?=) Date: Sun, 8 Aug 2010 22:36:57 -0300 Subject: [Rio-pm] dev in rio In-Reply-To: References: Message-ID: >> Breno podia apresentar o zombies feito no fisl! > > Se interessar ao evento, apresento sim, com o maior prazer :-) \o/ Sylvestre Mergulhão ----------------------------------------------------------------------- Helabs Consulting: http://helabs.com.br Clientela, CRM Para Seres Humanos: http://clientela.com.br From ricardo_filipo em yahoo.com.br Mon Aug 9 08:18:33 2010 From: ricardo_filipo em yahoo.com.br (Ricardo Filipo) Date: Mon, 9 Aug 2010 08:18:33 -0700 (PDT) Subject: [Rio-pm] Res: dev in rio In-Reply-To: References: Message-ID: <424906.83990.qm@web33006.mail.mud.yahoo.com> Oi, Sylva! Estou iniciando o YAC, o CMS mais simples que existe. Vou apresentar no equinócio aqui em SP. Quando será o devinrio? Dependendo da data, se eu puder, quero participar sim! Abs! Filipo ----- Mensagem original ---- De: Sylvestre Mergulhão Para: Perl Mongers Rio de Janeiro Enviadas: Domingo, 8 de Agosto de 2010 21:28:01 Assunto: Re: [Rio-pm] dev in rio Mais do que convidados a participar. Qualquer coisa falem comigo, estou na organização. Vamos ter openspaces e lightning talks rolando quero vocês apresentando lá! Breno podia apresentar o zombies feito no fisl! Sylvestre Mergulhão ----------------------------------------------------------------------- Helabs Consulting: http://helabs.com.br Clientela, CRM Para Seres Humanos: http://clientela.com.br On Sat, Aug 7, 2010 at 4:31 PM, Tiago Peczenyj wrote: > vamos participar?? > > http://www.devinrio.com.br/ > > acho que é a galera da #horaextra que esta organizando. > > -- > Tiago B. Peczenyj > Linux User #405772 > > http://pacman.blog.br > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm From eu em samircury.eng.br Mon Aug 9 08:50:04 2010 From: eu em samircury.eng.br (Samir Cury) Date: Mon, 9 Aug 2010 12:50:04 -0300 Subject: [Rio-pm] Res: dev in rio In-Reply-To: <424906.83990.qm@web33006.mail.mud.yahoo.com> References: <424906.83990.qm@web33006.mail.mud.yahoo.com> Message-ID: Quando tiver forma manda o link! Gostei da idéia Abraços, Samir 2010/8/9 Ricardo Filipo > Oi, Sylva! > > Estou iniciando o YAC, o CMS mais simples que existe. > Vou apresentar no equinócio aqui em SP. > > Quando será o devinrio? Dependendo da data, se eu puder, quero participar > sim! > > Abs! > Filipo > > > > ----- Mensagem original ---- > De: Sylvestre Mergulhão > Para: Perl Mongers Rio de Janeiro > Enviadas: Domingo, 8 de Agosto de 2010 21:28:01 > Assunto: Re: [Rio-pm] dev in rio > > Mais do que convidados a participar. Qualquer coisa falem comigo, > estou na organização. Vamos ter openspaces e lightning talks rolando > quero vocês apresentando lá! > > Breno podia apresentar o zombies feito no fisl! > > Sylvestre Mergulhão > ----------------------------------------------------------------------- > Helabs Consulting: http://helabs.com.br > Clientela, CRM Para Seres Humanos: http://clientela.com.br > > On Sat, Aug 7, 2010 at 4:31 PM, Tiago Peczenyj > wrote: > > vamos participar?? > > > > http://www.devinrio.com.br/ > > > > acho que é a galera da #horaextra que esta organizando. > > > > -- > > Tiago B. Peczenyj > > Linux User #405772 > > > > http://pacman.blog.br > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From contato em mergulhao.info Mon Aug 9 09:08:05 2010 From: contato em mergulhao.info (=?ISO-8859-1?Q?Sylvestre_Mergulh=E3o?=) Date: Mon, 9 Aug 2010 13:08:05 -0300 Subject: [Rio-pm] Res: dev in rio In-Reply-To: <424906.83990.qm@web33006.mail.mud.yahoo.com> References: <424906.83990.qm@web33006.mail.mud.yahoo.com> Message-ID: Show Filipo! Deve ser dia 25 de setembro. Ainda aguardando confirmação. Sylvestre Mergulhão ----------------------------------------------------------------------- Helabs Consulting: http://helabs.com.br Clientela, CRM Para Seres Humanos: http://clientela.com.br 2010/8/9 Ricardo Filipo : > Oi, Sylva! > > Estou iniciando o YAC, o CMS mais simples que existe. > Vou apresentar no equinócio aqui em SP. > > Quando será o devinrio? Dependendo da data, se eu puder, quero participar sim! > > Abs! > Filipo > > > > ----- Mensagem original ---- > De: Sylvestre Mergulhão > Para: Perl Mongers Rio de Janeiro > Enviadas: Domingo, 8 de Agosto de 2010 21:28:01 > Assunto: Re: [Rio-pm] dev in rio > > Mais do que convidados a participar. Qualquer coisa falem comigo, > estou na organização. Vamos ter openspaces e lightning talks rolando > quero vocês apresentando lá! > > Breno podia apresentar o zombies feito no fisl! > > Sylvestre Mergulhão > ----------------------------------------------------------------------- > Helabs Consulting: http://helabs.com.br > Clientela, CRM Para Seres Humanos: http://clientela.com.br > > On Sat, Aug 7, 2010 at 4:31 PM, Tiago Peczenyj wrote: >> vamos participar?? >> >> http://www.devinrio.com.br/ >> >> acho que é a galera da #horaextra que esta organizando. >> >> -- >> Tiago B. Peczenyj >> Linux User #405772 >> >> http://pacman.blog.br >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From henrique.andrade em uniriotec.br Tue Aug 10 05:24:01 2010 From: henrique.andrade em uniriotec.br (Henrique Rabelo de Andrade) Date: Tue, 10 Aug 2010 09:24:01 -0300 Subject: [Rio-pm] Res: dev in rio In-Reply-To: References: <424906.83990.qm@web33006.mail.mud.yahoo.com> Message-ID: Podia rolar campeonato de GOLF em várias linguagens lá! -- Henrique Rabelo de Andrade 2010/8/9 Sylvestre Mergulhão > Show Filipo! Deve ser dia 25 de setembro. Ainda aguardando confirmação. > > Sylvestre Mergulhão > ----------------------------------------------------------------------- > Helabs Consulting: http://helabs.com.br > Clientela, CRM Para Seres Humanos: http://clientela.com.br > > 2010/8/9 Ricardo Filipo : > > Oi, Sylva! > > > > Estou iniciando o YAC, o CMS mais simples que existe. > > Vou apresentar no equinócio aqui em SP. > > > > Quando será o devinrio? Dependendo da data, se eu puder, quero participar > sim! > > > > Abs! > > Filipo > > > > > > > > ----- Mensagem original ---- > > De: Sylvestre Mergulhão > > Para: Perl Mongers Rio de Janeiro > > Enviadas: Domingo, 8 de Agosto de 2010 21:28:01 > > Assunto: Re: [Rio-pm] dev in rio > > > > Mais do que convidados a participar. Qualquer coisa falem comigo, > > estou na organização. Vamos ter openspaces e lightning talks rolando > > quero vocês apresentando lá! > > > > Breno podia apresentar o zombies feito no fisl! > > > > Sylvestre Mergulhão > > ----------------------------------------------------------------------- > > Helabs Consulting: http://helabs.com.br > > Clientela, CRM Para Seres Humanos: http://clientela.com.br > > > > On Sat, Aug 7, 2010 at 4:31 PM, Tiago Peczenyj > wrote: > >> vamos participar?? > >> > >> http://www.devinrio.com.br/ > >> > >> acho que é a galera da #horaextra que esta organizando. > >> > >> -- > >> Tiago B. Peczenyj > >> Linux User #405772 > >> > >> http://pacman.blog.br > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > >> > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From daniel.oliveira.mantovani em gmail.com Tue Aug 10 11:53:25 2010 From: daniel.oliveira.mantovani em gmail.com (Daniel de Oliveira Mantovani) Date: Tue, 10 Aug 2010 15:53:25 -0300 Subject: [Rio-pm] Res: dev in rio In-Reply-To: References: <424906.83990.qm@web33006.mail.mud.yahoo.com> Message-ID: 2010/8/10 Henrique Rabelo de Andrade : > Podia rolar campeonato de GOLF em várias linguagens lá! Eu acho que os campeonatos de golf dos eventos deveriam seguir o modelo do codegolf, sem esse lance de ficar separando por linguagem. http://codegolf.com/home-on-the-range > > -- > Henrique Rabelo de Andrade > > > 2010/8/9 Sylvestre Mergulhão >> >> Show Filipo! Deve ser dia 25 de setembro. Ainda aguardando confirmação. >> >> Sylvestre Mergulhão >> ----------------------------------------------------------------------- >> Helabs Consulting: http://helabs.com.br >> Clientela, CRM Para Seres Humanos: http://clientela.com.br >> >> 2010/8/9 Ricardo Filipo : >> > Oi, Sylva! >> > >> > Estou iniciando o YAC, o CMS mais simples que existe. >> > Vou apresentar no equinócio aqui em SP. >> > >> > Quando será o devinrio? Dependendo da data, se eu puder, quero >> > participar sim! >> > >> > Abs! >> > Filipo >> > >> > >> > >> > ----- Mensagem original ---- >> > De: Sylvestre Mergulhão >> > Para: Perl Mongers Rio de Janeiro >> > Enviadas: Domingo, 8 de Agosto de 2010 21:28:01 >> > Assunto: Re: [Rio-pm] dev in rio >> > >> > Mais do que convidados a participar. Qualquer coisa falem comigo, >> > estou na organização. Vamos ter openspaces e lightning talks rolando >> > quero vocês apresentando lá! >> > >> > Breno podia apresentar o zombies feito no fisl! >> > >> > Sylvestre Mergulhão >> > ----------------------------------------------------------------------- >> > Helabs Consulting: http://helabs.com.br >> > Clientela, CRM Para Seres Humanos: http://clientela.com.br >> > >> > On Sat, Aug 7, 2010 at 4:31 PM, Tiago Peczenyj >> > wrote: >> >> vamos participar?? >> >> >> >> http://www.devinrio.com.br/ >> >> >> >> acho que é a galera da #horaextra que esta organizando. >> >> >> >> -- >> >> Tiago B. Peczenyj >> >> Linux User #405772 >> >> >> >> http://pacman.blog.br >> >> _______________________________________________ >> >> Rio-pm mailing list >> >> Rio-pm em pm.org >> >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> > >> > >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- http://www.danielmantovani.com "If you?ve never written anything thoughtful, then you?ve never had any difficult, important, or interesting thoughts. That?s the secret: people who don?t write, are people who don?t think." From breno em rio.pm.org Tue Aug 10 21:10:17 2010 From: breno em rio.pm.org (breno) Date: Wed, 11 Aug 2010 01:10:17 -0300 Subject: [Rio-pm] Encontro Social essa quinta! Message-ID: A segunda quinta feira do mês já é essa semana! E ai, onde será? []s -b From breno em rio.pm.org Tue Aug 10 21:21:51 2010 From: breno em rio.pm.org (breno) Date: Wed, 11 Aug 2010 01:21:51 -0300 Subject: [Rio-pm] Entrevista com Larry Wall Message-ID: A BigThink publicou uma entrevista muito bacana com Larry Wall: http://bigthink.com/larrywall A entrevista tem 45 minutos e particularmente acho que vale cada segundo. De qualquer forma, e/ou para referência futura, está dividida em vários grupos bacanas: * Você pode xingar em Perl * Por que Perl é como uma linguagem humana * Desenvolvedores Perl são mais sociais que outros desenvolvedores * Programação de computadores em 5 minutos * 5 linguagens de programação todo mundo deveria saber * Hobbits seriam ótimos programadores * Apple tenta ser a árbitra do bom gosto * Como programar como Larry Wall Infelizmente, só em inglês e sem legendas. []s -b From gabriel.vieira em gmail.com Tue Aug 10 21:49:12 2010 From: gabriel.vieira em gmail.com (Gabriel Vieira) Date: Wed, 11 Aug 2010 01:49:12 -0300 Subject: [Rio-pm] Encontro Social essa quinta! In-Reply-To: References: Message-ID: Mercadinho? 2010/8/11 breno : > A segunda quinta feira do mês já é essa semana! > > E ai, onde será? > > []s > > -b > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Gabriel Vieira From braun.lima em gmail.com Wed Aug 11 03:50:47 2010 From: braun.lima em gmail.com (Marco Lima) Date: Wed, 11 Aug 2010 07:50:47 -0300 Subject: [Rio-pm] Encontro Social essa quinta! In-Reply-To: References: Message-ID: hehehehehe Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" Em 11 de agosto de 2010 01:49, Gabriel Vieira escreveu: > Mercadinho? > > 2010/8/11 breno : > > A segunda quinta feira do mês já é essa semana! > > > > E ai, onde será? > > > > []s > > > > -b > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > -- > Gabriel Vieira > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Wed Aug 11 03:57:49 2010 From: eu em samircury.eng.br (Samir Cury) Date: Wed, 11 Aug 2010 07:57:49 -0300 Subject: [Rio-pm] Encontro Social essa quinta! In-Reply-To: References: Message-ID: Mercadinho! 2010/8/11 Marco Lima > hehehehehe > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > Em 11 de agosto de 2010 01:49, Gabriel Vieira escreveu: > > Mercadinho? >> >> 2010/8/11 breno : >> > A segunda quinta feira do mês já é essa semana! >> > >> > E ai, onde será? >> > >> > []s >> > >> > -b >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> >> >> >> -- >> Gabriel Vieira >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Thu Aug 12 03:49:42 2010 From: eu em samircury.eng.br (Samir Cury) Date: Thu, 12 Aug 2010 07:49:42 -0300 Subject: [Rio-pm] Quem nao foi no FISL perdeu o que? Message-ID: O campeonato de jogos de zumbi da comunidade de Perl hahahaha http://www.youtube.com/watch?v=GpIN6H-7Rw4 Por essa eu nao esperava! Breno, ta no github? Abracos, Samir -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Thu Aug 12 08:57:12 2010 From: breno em rio.pm.org (breno) Date: Thu, 12 Aug 2010 12:57:12 -0300 Subject: [Rio-pm] Quem nao foi no FISL perdeu o que? In-Reply-To: References: Message-ID: 2010/8/12 Samir Cury : > O campeonato de jogos de zumbi da comunidade de Perl hahahaha > > http://www.youtube.com/watch?v=GpIN6H-7Rw4 > > Por essa eu nao esperava! Breno, ta no github? > Tá no github e no CPAN: http://github.com/ruoso/Zumbis http://search.cpan.org/perldoc?Games::Zumbis Fiz um resumo muito resumido do evento aqui: http://info.abril.com.br/forum/viewtopic.php?f=281&t=9398#p31024 Mas quanto ao campeonato, bom, quem não foi ao FISL.... perdeu :-) []s -b From sergiogcunha em gmail.com Thu Aug 12 10:05:30 2010 From: sergiogcunha em gmail.com (Sergio Garcia Cunha Junior) Date: Thu, 12 Aug 2010 10:05:30 -0700 (PDT) Subject: [Rio-pm] Convite para se conectar no LinkedIn Message-ID: <1535687617.3978764.1281632730326.JavaMail.app@ech3-cdn06.prod> LinkedIn ------------ Perl, Eu gostaria de adicioná-lo à minha rede profissional no LinkedIn. -Sergio Garcia Sergio Garcia Cunha Junior Analista de Suporte I na Documentar Rio de Janeiro e região, Brasil Confirme que você conhece Sergio Garcia Cunha Junior https://www.linkedin.com/e/-2t955r-gcrv1brn-w/isd/1557540706/mnpEsVSY/ ------ (c) 2010, LinkedIn Corporation -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From diana.g.a.rosa em gmail.com Thu Aug 12 10:58:20 2010 From: diana.g.a.rosa em gmail.com (Diana Rosa) Date: Thu, 12 Aug 2010 14:58:20 -0300 Subject: [Rio-pm] Encontro Social essa quinta! In-Reply-To: References: Message-ID: Mercadinho =) 2010/8/11 Samir Cury > Mercadinho! > > 2010/8/11 Marco Lima > > hehehehehe >> >> Marco Lima >> braun.lima em gmail.com >> im:mago em jabber-br.org >> >> Register Linux User #355235 >> Slackware Linux, for the subgenius >> >> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é >> um dever de quem tem." >> >> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> "diversão." >> >> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> possa ensinar" >> >> >> >> Em 11 de agosto de 2010 01:49, Gabriel Vieira escreveu: >> >> Mercadinho? >>> >>> 2010/8/11 breno : >>> > A segunda quinta feira do mês já é essa semana! >>> > >>> > E ai, onde será? >>> > >>> > []s >>> > >>> > -b >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> >>> >>> >>> -- >>> Gabriel Vieira >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Fri Aug 13 18:47:52 2010 From: breno em rio.pm.org (breno) Date: Fri, 13 Aug 2010 22:47:52 -0300 Subject: [Rio-pm] Lista Brasil Perl Mongers ativa! Message-ID: Oi pessoal! Desculpem o cross-posting, mas acredito que esse seja um assunto que interesse a todos: Após muitos pedidos, finalmente ativamos a lista Brasil Perl Mongers! http://mail.pm.org/mailman/listinfo/brasil-pm O objetivo da lista é oferecer um ponto central para usuários, desenvolvedores e entusiastas da linguagem Perl de programação em todo o Brasil, de iniciantes a especialistas. Assim, poderemos organizar melhor a comunidade nacional de Perl, tirando dúvidas sobre a linguagem, seus módulos, melhores práticas, tudo o que está acontecendo no cenário nacional e mundial, eventos das comunidades e muita cultura Perl. E da mesma forma desafogando as listas regionais, que podem se concentrar nas atividades sociais locais - evitando também esses meus cross-postings chatos =P A comunidade nacional de Perl nunca esteve tão unida, e acho que está mais do que na hora de mostrarmos essa força. Juntem-se à revolução! Inscrevam-se já :-) []s -b From nuba em fastmail.fm Fri Aug 13 19:23:42 2010 From: nuba em fastmail.fm (Nuba Princigalli) Date: Fri, 13 Aug 2010 23:23:42 -0300 (BRT) Subject: [Rio-pm] Lista Brasil Perl Mongers ativa! In-Reply-To: References: Message-ID: Caros, On Fri, 13 Aug 2010, breno wrote: > O objetivo da lista é oferecer um ponto central para usuários, > desenvolvedores e entusiastas da linguagem Perl de programação em todo > o Brasil, de iniciantes a especialistas. > > Assim, poderemos organizar melhor a comunidade nacional de Perl, > tirando dúvidas sobre a linguagem, seus módulos, melhores práticas, > tudo o que está acontecendo no cenário nacional e mundial, eventos das > comunidades e muita cultura Perl. E da mesma forma desafogando as > listas regionais, que podem se concentrar nas atividades sociais > locais - evitando também esses meus cross-postings chatos =P > > A comunidade nacional de Perl nunca esteve tão unida, e acho que está > mais do que na hora de mostrarmos essa força. Eu acho xposting um saco tb e sempre achei muito perneta isso de limitarmos as discussoes tecnicas, sem localidade envolvida, em listas regionais. Vejo isso como mais um sinal bacana da nossa comunidade amadurecendo! VIVA! :D Nuba Princigalli From eu em samircury.eng.br Fri Aug 13 21:40:05 2010 From: eu em samircury.eng.br (Samir Cury) Date: Sat, 14 Aug 2010 01:40:05 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Resum=E3o_do_ES_de_=28ante=29ontem?= Message-ID: Fala aí perlssoal, O último ES foi tão revolucionário que resolvi voltar a escrever os resumões, basicamente além do que geralmente falamos: Piadas de Java, histórias e técnicas com Perl, escovação de bits com C, Rakudo Star,baby Perl 6, Mercados, áreas de atuação em Telecom e muito mais, estamos voltando às origens de nossa cultura! Sim, pois ouvi dos mais antigos na comunidade que antigamente os ESs serviam basicamente pra beber, e organizar os ETs, entre outras atividades da comunidade, e isto que aproveitamos para fazer ontem =) Falamos sobre o Slackshow, decidimos o teor final da palestra que eu darei : Introdução a Perl voltado para sysadmins e usuários de Slackware, como migrar de versão no Slackware e continuar com seus módulos usando Local::Lib, para condizer um pouco com o evento em si também, um pouquinho de One-liners, App::Rad e como fazer os dois interagirem ao final. Falamos um pouco do que poderíamos apresentar no E.T. e sobre o local, que deve estar saindo a confirmação até a próxima semana, e também sobre o YAPC::BR , inclusive estamos nos organizando para todos do Rio irem comprar as passagens juntos o quanto antes, para ser o mais barato possível, aproveitando o gancho também falamos das possíveis palestras no YAPC, o que me motivou a submeter ontem uma palestra sobre como Perl é usado no CERN/LHC (http://www.cern.ch) Quando fui mandar a palestra até vi a palestra do Oscar : "Perl : O SERPRO usa!" hehehe, se tudo correr bem o Rio vai botar pra quebrar com cases esse ano, o que é bom, porque fortalece o tema deste ano, que é a utilização corporativa da linguagem. Também percebemos tristemente que o nosso amigo Serginho parece ter fechado de vez, mas o opcional "Sarjeta" também não é nada mal, o caldinho de feijão é muito bom, com bastante alho e temperos em geral =) O que lembro foi isso, se esqueci algo fiquem à vontade a completar. Abraços, Samir -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ole.ufg em gmail.com Sun Aug 15 18:14:00 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Sun, 15 Aug 2010 22:14:00 -0300 Subject: [Rio-pm] Introduzindo-me Message-ID: Caros Acabei juntar-me a lista. Sou dinamarques, morando quais um decade em Brasil (Goiania-GO), programador de Perl por uns 15++ anos, porem de forma extremamente autodidata. Qr dizer, esta e meu primeiro contato com qq lista ligado a Perl, mesmo que aqui em Goiania mantenho fortes relacoes com a comunidade SL. Sou professor de matematica, por isso Geometria Computacional e um grande paixao meu, porem tambem sou meio fanatico quanto ao interfaces de bancos de dados - por causa da ultima estou comencando me interessar por Catalyst. Alguem sabe onde encontro um manual impresso desta? GratOOO, Ole -- ######################################## Quem Leva Brincadeira somente por Brincadeira E Sério somente Sério De Fato Desentendeu Ambos - Piet Hein ######################################## Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From daniel.oliveira.mantovani em gmail.com Sun Aug 15 18:30:45 2010 From: daniel.oliveira.mantovani em gmail.com (Daniel de Oliveira Mantovani) Date: Sun, 15 Aug 2010 22:30:45 -0300 Subject: [Rio-pm] Introduzindo-me In-Reply-To: References: Message-ID: Olá, seja muito bem vindo. Você pode encontrar uma documentação bastante completa no CPAN. http://search.cpan.org/~hkclark/Catalyst-Manual-5.8004/lib/Catalyst/Manual.pm 2010/8/15 Ole Peter Smith : > Caros > > Acabei juntar-me a lista. Sou dinamarques, morando quais um decade em Brasil > (Goiania-GO), programador de Perl por uns 15++ anos, porem de forma > extremamente autodidata. Qr dizer, esta e meu primeiro contato com qq lista > ligado a Perl, mesmo que aqui em Goiania mantenho fortes relacoes com a > comunidade SL. > > Sou professor de matematica, por isso Geometria Computacional e um grande > paixao meu, porem tambem sou meio fanatico quanto ao interfaces de bancos de > dados - por causa da ultima estou comencando me interessar por Catalyst. > Alguem sabe onde encontro um manual impresso desta? > > GratOOO, > Ole > -- > ######################################## > Quem Leva Brincadeira somente por Brincadeira >                    E Sério somente Sério >        De Fato Desentendeu Ambos - Piet Hein > ######################################## >                   Ole Peter Smith, IME, UFG >           http://www.mat.ufg.br - ole at mat.ufg.br > ###################################### >              Live sure is a Mystery to be Lived >                   Not a Problem to be Solved > ###################################### > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- http://www.danielmantovani.com "If you?ve never written anything thoughtful, then you?ve never had any difficult, important, or interesting thoughts. That?s the secret: people who don?t write, are people who don?t think." From eu em samircury.eng.br Sun Aug 15 18:54:17 2010 From: eu em samircury.eng.br (Samir Cury) Date: Sun, 15 Aug 2010 22:54:17 -0300 Subject: [Rio-pm] Introduzindo-me In-Reply-To: References: Message-ID: Bem vindo! Se gosta de bancos de dados e as últimas novidades de Perl, há pouco tempo o pessoal de são-paulo fez um ótimo trabalho de documentação, e lá você pode ler tutoriais muito amigáveis para quem está começando ou para quem quer saber mais de maneira rápida e prática em : DBIx::Class (e DBI?) http://sao-paulo.pm.org/artigo/2010/DBIC e pelo menos outros 3 artigos sobre Catalyst : http://sao-paulo.pm.org/artigos Como criar um blog usando catalyst, como usar o Padre para te ajudar a desenvolver mais rápido com o Catalyst e por aí vai. Abraços, Samir 2010/8/15 Daniel de Oliveira Mantovani > Olá, seja muito bem vindo. Você pode encontrar uma documentação > bastante completa no CPAN. > > http://search.cpan.org/~hkclark/Catalyst-Manual-5.8004/lib/Catalyst/Manual.pm > > 2010/8/15 Ole Peter Smith : > > Caros > > > > Acabei juntar-me a lista. Sou dinamarques, morando quais um decade em > Brasil > > (Goiania-GO), programador de Perl por uns 15++ anos, porem de forma > > extremamente autodidata. Qr dizer, esta e meu primeiro contato com qq > lista > > ligado a Perl, mesmo que aqui em Goiania mantenho fortes relacoes com a > > comunidade SL. > > > > Sou professor de matematica, por isso Geometria Computacional e um grande > > paixao meu, porem tambem sou meio fanatico quanto ao interfaces de bancos > de > > dados - por causa da ultima estou comencando me interessar por Catalyst. > > Alguem sabe onde encontro um manual impresso desta? > > > > GratOOO, > > Ole > > -- > > ######################################## > > Quem Leva Brincadeira somente por Brincadeira > > E Sério somente Sério > > De Fato Desentendeu Ambos - Piet Hein > > ######################################## > > Ole Peter Smith, IME, UFG > > http://www.mat.ufg.br - ole at mat.ufg.br > > ###################################### > > Live sure is a Mystery to be Lived > > Not a Problem to be Solved > > ###################################### > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > -- > http://www.danielmantovani.com > > "If you?ve never written anything thoughtful, then you?ve never had > any difficult, important, or interesting thoughts. That?s the secret: > people who don?t write, are people who don?t think." > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Sun Aug 15 18:56:27 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Sun, 15 Aug 2010 22:56:27 -0300 Subject: [Rio-pm] Introduzindo-me In-Reply-To: References: Message-ID: Seja bem vindo! 2010/8/15 Samir Cury > Bem vindo! > > Se gosta de bancos de dados e as últimas novidades de Perl, há pouco tempo > o pessoal de são-paulo fez um ótimo trabalho de documentação, e lá você pode > ler tutoriais muito amigáveis para quem está começando ou para quem quer > saber mais de maneira rápida e prática em : > > DBIx::Class (e DBI?) > http://sao-paulo.pm.org/artigo/2010/DBIC > > e pelo menos outros 3 artigos sobre Catalyst : > > http://sao-paulo.pm.org/artigos > > Como criar um blog usando catalyst, como usar o Padre para te ajudar a > desenvolver mais rápido com o Catalyst e por aí vai. > > Abraços, > Samir > > 2010/8/15 Daniel de Oliveira Mantovani < > daniel.oliveira.mantovani em gmail.com> > > Olá, seja muito bem vindo. Você pode encontrar uma documentação >> bastante completa no CPAN. >> >> http://search.cpan.org/~hkclark/Catalyst-Manual-5.8004/lib/Catalyst/Manual.pm >> >> 2010/8/15 Ole Peter Smith : >> > Caros >> > >> > Acabei juntar-me a lista. Sou dinamarques, morando quais um decade em >> Brasil >> > (Goiania-GO), programador de Perl por uns 15++ anos, porem de forma >> > extremamente autodidata. Qr dizer, esta e meu primeiro contato com qq >> lista >> > ligado a Perl, mesmo que aqui em Goiania mantenho fortes relacoes com a >> > comunidade SL. >> > >> > Sou professor de matematica, por isso Geometria Computacional e um >> grande >> > paixao meu, porem tambem sou meio fanatico quanto ao interfaces de >> bancos de >> > dados - por causa da ultima estou comencando me interessar por Catalyst. >> > Alguem sabe onde encontro um manual impresso desta? >> > >> > GratOOO, >> > Ole >> > -- >> > ######################################## >> > Quem Leva Brincadeira somente por Brincadeira >> > E Sério somente Sério >> > De Fato Desentendeu Ambos - Piet Hein >> > ######################################## >> > Ole Peter Smith, IME, UFG >> > http://www.mat.ufg.br - ole at mat.ufg.br >> > ###################################### >> > Live sure is a Mystery to be Lived >> > Not a Problem to be Solved >> > ###################################### >> > >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> >> >> >> -- >> http://www.danielmantovani.com >> >> "If you?ve never written anything thoughtful, then you?ve never had >> any difficult, important, or interesting thoughts. That?s the secret: >> people who don?t write, are people who don?t think." >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From zeeaugusto em gmail.com Sun Aug 15 19:19:54 2010 From: zeeaugusto em gmail.com (Jose Augusto Gomes) Date: Sun, 15 Aug 2010 23:19:54 -0300 Subject: [Rio-pm] Introduzindo-me In-Reply-To: References: Message-ID: when in rio... www.ceb.org.br...he..he.. wellcome ! -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Sun Aug 15 19:27:17 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Sun, 15 Aug 2010 23:27:17 -0300 Subject: [Rio-pm] Introduzindo-me In-Reply-To: References: Message-ID: Wonderful! I am going to Macchu Picchu! When back, I will stay tuned in CEB. 2010/8/15 Jose Augusto Gomes > when in rio... www.ceb.org.br...he..he.. wellcome ! > > > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Sun Aug 15 21:17:24 2010 From: breno em rio.pm.org (breno) Date: Mon, 16 Aug 2010 01:17:24 -0300 Subject: [Rio-pm] Introduzindo-me In-Reply-To: References: Message-ID: O Ole achou a gente no stand de Perl lá no FISL, foi muito legal conversar com ele e saber que temos um Perl Monger ativo e vibrante lá no meio de Goiânia! Ole, seja muito bem-vindo! Aproveite e inscreva-se também na recém-criada lista da Brasil-PM: http://mail.pm.org/mailman/listinfo/brasil-pm []s -b 2010/8/15 Ole Peter Smith : > Caros > > Acabei juntar-me a lista. Sou dinamarques, morando quais um decade em Brasil > (Goiania-GO), programador de Perl por uns 15++ anos, porem de forma > extremamente autodidata. Qr dizer, esta e meu primeiro contato com qq lista > ligado a Perl, mesmo que aqui em Goiania mantenho fortes relacoes com a > comunidade SL. > > Sou professor de matematica, por isso Geometria Computacional e um grande > paixao meu, porem tambem sou meio fanatico quanto ao interfaces de bancos de > dados - por causa da ultima estou comencando me interessar por Catalyst. > Alguem sabe onde encontro um manual impresso desta? > > GratOOO, > Ole > -- > ######################################## > Quem Leva Brincadeira somente por Brincadeira >                    E Sério somente Sério >        De Fato Desentendeu Ambos - Piet Hein > ######################################## >                   Ole Peter Smith, IME, UFG >           http://www.mat.ufg.br - ole at mat.ufg.br > ###################################### >              Live sure is a Mystery to be Lived >                   Not a Problem to be Solved > ###################################### > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From ole.ufg em gmail.com Mon Aug 16 00:52:50 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Mon, 16 Aug 2010 04:52:50 -0300 Subject: [Rio-pm] Introduzindo-me In-Reply-To: References: Message-ID: BrenOOO Tu por ae - que coincidencia!!! ggggg Ja aproveitei e me inscrivi no brasil-pm. Abracos a todos - e obrigado pela recepcao - quero para M(acchu)P tmbm - divirta-se, pois com falou o maior escritor dinamarques, HC Andersen (A menina dos fosforos, o pathinho feio, nova ropa de emperador,etc, etc): Viajar e viver!!! Ole 2010/8/16 breno > O Ole achou a gente no stand de Perl lá no FISL, foi muito legal > conversar com ele e saber que temos um Perl Monger ativo e vibrante lá > no meio de Goiânia! > > Ole, seja muito bem-vindo! Aproveite e inscreva-se também na > recém-criada lista da Brasil-PM: > > http://mail.pm.org/mailman/listinfo/brasil-pm > > []s > > -b > > 2010/8/15 Ole Peter Smith : > > Caros > > > > Acabei juntar-me a lista. Sou dinamarques, morando quais um decade em > Brasil > > (Goiania-GO), programador de Perl por uns 15++ anos, porem de forma > > extremamente autodidata. Qr dizer, esta e meu primeiro contato com qq > lista > > ligado a Perl, mesmo que aqui em Goiania mantenho fortes relacoes com a > > comunidade SL. > > > > Sou professor de matematica, por isso Geometria Computacional e um grande > > paixao meu, porem tambem sou meio fanatico quanto ao interfaces de bancos > de > > dados - por causa da ultima estou comencando me interessar por Catalyst. > > Alguem sabe onde encontro um manual impresso desta? > > > > GratOOO, > > Ole > > -- > > ######################################## > > Quem Leva Brincadeira somente por Brincadeira > > E Sério somente Sério > > De Fato Desentendeu Ambos - Piet Hein > > ######################################## > > Ole Peter Smith, IME, UFG > > http://www.mat.ufg.br - ole at mat.ufg.br > > ###################################### > > Live sure is a Mystery to be Lived > > Not a Problem to be Solved > > ###################################### > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- ######################################## Quem Leva Brincadeira somente por Brincadeira E Sério somente Sério De Fato Desentendeu Ambos - Piet Hein ######################################## Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From russoz em gmail.com Mon Aug 16 07:40:49 2010 From: russoz em gmail.com (Alexei Znamensky) Date: Mon, 16 Aug 2010 11:40:49 -0300 Subject: [Rio-pm] Introduzindo-me In-Reply-To: References: Message-ID: Ola Ole!!! Bem vindo!! Se eu soubesse, eu estava em Goiânia ontem e anteontem, para uma reunião de família. Da próxima vez, podemos tomar uma cerveja - se você (que mora lá) achar um lugar que vende cerveja de verdade. Se não achar, a gente bebe aquela água mijada que se vende neste país. :-) []s, Alexei 2010/8/16 Ole Peter Smith > BrenOOO > > Tu por ae - que coincidencia!!! ggggg > > Ja aproveitei e me inscrivi no brasil-pm. > > Abracos a todos - e obrigado pela recepcao - quero para M(acchu)P tmbm - > divirta-se, pois com falou o maior escritor dinamarques, HC Andersen (A > menina dos fosforos, o pathinho feio, nova ropa de emperador,etc, etc): > > Viajar e viver!!! > > Ole > > 2010/8/16 breno > > O Ole achou a gente no stand de Perl lá no FISL, foi muito legal >> conversar com ele e saber que temos um Perl Monger ativo e vibrante lá >> no meio de Goiânia! >> >> Ole, seja muito bem-vindo! Aproveite e inscreva-se também na >> recém-criada lista da Brasil-PM: >> >> http://mail.pm.org/mailman/listinfo/brasil-pm >> >> []s >> >> -b >> >> 2010/8/15 Ole Peter Smith : >> > Caros >> > >> > Acabei juntar-me a lista. Sou dinamarques, morando quais um decade em >> Brasil >> > (Goiania-GO), programador de Perl por uns 15++ anos, porem de forma >> > extremamente autodidata. Qr dizer, esta e meu primeiro contato com qq >> lista >> > ligado a Perl, mesmo que aqui em Goiania mantenho fortes relacoes com a >> > comunidade SL. >> > >> > Sou professor de matematica, por isso Geometria Computacional e um >> grande >> > paixao meu, porem tambem sou meio fanatico quanto ao interfaces de >> bancos de >> > dados - por causa da ultima estou comencando me interessar por Catalyst. >> > Alguem sabe onde encontro um manual impresso desta? >> > >> > GratOOO, >> > Ole >> > -- >> > ######################################## >> > Quem Leva Brincadeira somente por Brincadeira >> > E Sério somente Sério >> > De Fato Desentendeu Ambos - Piet Hein >> > ######################################## >> > Ole Peter Smith, IME, UFG >> > http://www.mat.ufg.br - ole at mat.ufg.br >> > ###################################### >> > Live sure is a Mystery to be Lived >> > Not a Problem to be Solved >> > ###################################### >> > >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > ######################################## > Quem Leva Brincadeira somente por Brincadeira > E Sério somente Sério > De Fato Desentendeu Ambos - Piet Hein > ######################################## > Ole Peter Smith, IME, UFG > http://www.mat.ufg.br - ole at mat.ufg.br > ###################################### > Live sure is a Mystery to be Lived > Not a Problem to be Solved > ###################################### > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] [ www.flickr.com/photos/alexeiz] «Only love / Can bring the rain / That makes you yearn to the sky» -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ole.ufg em gmail.com Mon Aug 16 09:06:05 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Mon, 16 Aug 2010 13:06:05 -0300 Subject: [Rio-pm] Introduzindo-me In-Reply-To: References: Message-ID: So avisar proxima vez que estas por aqui!!! Ole 2010/8/16 Alexei Znamensky > Ola Ole!!! Bem vindo!! > > Se eu soubesse, eu estava em Goiânia ontem e anteontem, para uma reunião de > família. Da próxima vez, podemos tomar uma cerveja - se você (que mora lá) > achar um lugar que vende cerveja de verdade. Se não achar, a gente bebe > aquela água mijada que se vende neste país. :-) > > []s, > Alexei > > 2010/8/16 Ole Peter Smith > > BrenOOO >> >> Tu por ae - que coincidencia!!! ggggg >> >> Ja aproveitei e me inscrivi no brasil-pm. >> >> Abracos a todos - e obrigado pela recepcao - quero para M(acchu)P tmbm - >> divirta-se, pois com falou o maior escritor dinamarques, HC Andersen (A >> menina dos fosforos, o pathinho feio, nova ropa de emperador,etc, etc): >> >> Viajar e viver!!! >> >> Ole >> >> 2010/8/16 breno >> >> O Ole achou a gente no stand de Perl lá no FISL, foi muito legal >>> conversar com ele e saber que temos um Perl Monger ativo e vibrante lá >>> no meio de Goiânia! >>> >>> Ole, seja muito bem-vindo! Aproveite e inscreva-se também na >>> recém-criada lista da Brasil-PM: >>> >>> http://mail.pm.org/mailman/listinfo/brasil-pm >>> >>> []s >>> >>> -b >>> >>> 2010/8/15 Ole Peter Smith : >>> > Caros >>> > >>> > Acabei juntar-me a lista. Sou dinamarques, morando quais um decade em >>> Brasil >>> > (Goiania-GO), programador de Perl por uns 15++ anos, porem de forma >>> > extremamente autodidata. Qr dizer, esta e meu primeiro contato com qq >>> lista >>> > ligado a Perl, mesmo que aqui em Goiania mantenho fortes relacoes com a >>> > comunidade SL. >>> > >>> > Sou professor de matematica, por isso Geometria Computacional e um >>> grande >>> > paixao meu, porem tambem sou meio fanatico quanto ao interfaces de >>> bancos de >>> > dados - por causa da ultima estou comencando me interessar por >>> Catalyst. >>> > Alguem sabe onde encontro um manual impresso desta? >>> > >>> > GratOOO, >>> > Ole >>> > -- >>> > ######################################## >>> > Quem Leva Brincadeira somente por Brincadeira >>> > E Sério somente Sério >>> > De Fato Desentendeu Ambos - Piet Hein >>> > ######################################## >>> > Ole Peter Smith, IME, UFG >>> > http://www.mat.ufg.br - ole at mat.ufg.br >>> > ###################################### >>> > Live sure is a Mystery to be Lived >>> > Not a Problem to be Solved >>> > ###################################### >>> > >>> > >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> >> -- >> ######################################## >> Quem Leva Brincadeira somente por Brincadeira >> E Sério somente Sério >> De Fato Desentendeu Ambos - Piet Hein >> ######################################## >> Ole Peter Smith, IME, UFG >> http://www.mat.ufg.br - ole at mat.ufg.br >> ###################################### >> Live sure is a Mystery to be Lived >> Not a Problem to be Solved >> ###################################### >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] [ > www.flickr.com/photos/alexeiz] > «Only love / Can bring the rain / That makes you yearn to the sky» > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- ######################################## Quem Leva Brincadeira somente por Brincadeira E Sério somente Sério De Fato Desentendeu Ambos - Piet Hein ######################################## Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From jc em joaocoutinho.com.br Tue Aug 17 07:15:28 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Tue, 17 Aug 2010 11:15:28 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_com_o_pessoal_da_Gal=EDcia?= Message-ID: Perlsoal, mandei um email para os representantes das associações de software livre da Galícia com quem nos reunimos (conversando sobre o eBox, com o que eles estão envolvidos) e transcrevo aqui parte da resposta do Sr Roberto Brenlla, a seu pedido (sic): "PD: em breve (ou isso espero) gostaria de lhes escrever sobre possíveis oportunidades para as partes. Emquanto isso nao aconteça, por favor, seja vc o nosso emisário e comunique a todo o mundo o quanto agradecidos ficamos com vcs. Foi ótimo lhes conhecer e desejamos que isso nao fique só num encontro de amizade e sinceridade de trato." Não fui ao último ES, mas conversaram sobre o assunto? [ ]'s, João From indiox em gentoobr.org Tue Aug 17 08:21:58 2010 From: indiox em gentoobr.org (Claudio Pereira) Date: Tue, 17 Aug 2010 12:21:58 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_com_o_pessoal_da_Gal=EDcia?= In-Reply-To: References: Message-ID: João, o pessoal da Warp.es esteve aqui? [ ]'s Indio 2010/8/17 João C. Coutinho : > Perlsoal, > > mandei um email para os representantes das associações de software > livre da Galícia com quem nos reunimos (conversando sobre o eBox, com > o que eles estão envolvidos) e transcrevo aqui parte da resposta do Sr > Roberto Brenlla, a seu pedido (sic): > > "PD: em breve (ou isso espero) gostaria de lhes escrever sobre > possíveis oportunidades para as partes. Emquanto isso nao aconteça, > por favor, seja vc o nosso emisário e comunique a todo o mundo o > quanto agradecidos ficamos com vcs. Foi ótimo lhes conhecer e > desejamos que isso nao fique só num encontro de amizade e sinceridade > de trato." > > Não fui ao último ES, mas conversaram sobre o assunto? > > [ ]'s, > > João > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- -- Claudio Pereira aka IndioX GentooBR - http://gentoobr.org mailto: indiox em gentoobr.org --------------------------------------------- Gentoo Documentation Member http://gdp.gentoo.org From jc em joaocoutinho.com.br Tue Aug 17 08:44:10 2010 From: jc em joaocoutinho.com.br (=?ISO-8859-1?Q?Jo=E3o_C=2E_Coutinho?=) Date: Tue, 17 Aug 2010 12:44:10 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_com_o_pessoal_da_Gal=EDcia?= In-Reply-To: References: Message-ID: Índio, foi o pessoal da Asolif / Agasol, por intermédio do Marco (Lima). Passaram aqui antes do FISL e conversamos sobre possibilidades de colaboração entre as comunidades. Isso pode render bons frutos, é só a gente não deixar passar a oportunidade. [ ]'s, João On 8/17/10, Claudio Pereira wrote: > João, o pessoal da Warp.es esteve aqui? > > [ ]'s Indio > > 2010/8/17 João C. Coutinho : >> Perlsoal, >> >> mandei um email para os representantes das associações de software >> livre da Galícia com quem nos reunimos (conversando sobre o eBox, com >> o que eles estão envolvidos) e transcrevo aqui parte da resposta do Sr >> Roberto Brenlla, a seu pedido (sic): >> >> "PD: em breve (ou isso espero) gostaria de lhes escrever sobre >> possíveis oportunidades para as partes. Emquanto isso nao aconteça, >> por favor, seja vc o nosso emisário e comunique a todo o mundo o >> quanto agradecidos ficamos com vcs. Foi ótimo lhes conhecer e >> desejamos que isso nao fique só num encontro de amizade e sinceridade >> de trato." >> >> Não fui ao último ES, mas conversaram sobre o assunto? >> >> [ ]'s, >> >> João >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > -- > Claudio Pereira aka IndioX > GentooBR - http://gentoobr.org > mailto: indiox em gentoobr.org > --------------------------------------------- > Gentoo Documentation Member > http://gdp.gentoo.org > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From breno em rio.pm.org Tue Aug 17 14:39:03 2010 From: breno em rio.pm.org (breno) Date: Tue, 17 Aug 2010 18:39:03 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Fwd=3A_=5BBrasil-PM=5D_YAPC=3A=3ABrasil_2?= =?iso-8859-1?q?010_-_Descontos_nas_Passagens_A=E9reas_e_Hospedagen?= =?iso-8859-1?q?s?= In-Reply-To: References: Message-ID: Vamos fazer uma lista, galera? Quero desconto :D Por enquanto, do Rio, sei que vão: * Samir * Oscar * João Coutinho * Breno (eu) Quem mais aqui do Rio quer participar da lista?? Pelo que entendi, quanto mais gente, mais barato sai! []s -b ---------- Forwarded message ---------- From: Gabriel Vieira Date: 2010/8/17 Subject: [Brasil-PM] YAPC::Brasil 2010 - Descontos nas Passagens Aéreas e Hospedagens To: Brasil Perl Mongers Olá amig[ao]s, trago boas novas! Venho informar a todos que a organização do YAPC::Brasil 2010 está em contato com uma operadora de turismo para o fornecimento de descontos na aquisição de passagens aéreas bem como, quem sabe, um desconto ainda maior nas hospedagens do Hotel Sonata. De tal forma, convocamos os líderes das PMs regionais[1] a organizarem uma lista contendo o nome dos interessados na aquisição de passagens aéreas e/ou hospedagem. Esta lista será utilizada para negociarmos o maior desconto juntamente com a operadora. Devido a estarmos muito em cima da data, peço que esta lista seja enviada para organizacao em yapcbrasil.org.br até o dia 22 de Agosto, domingo próximo. [1] Caso você não seja líder e que organizar um grupo saindo da sua cidade, entre em contato também! ====================================================== O YAPC::Brasil 2010 O YAPC::Brasil é um evento anual feito pela comunidade Perl e, este ano, tendo como tema "Perl: Solução e Integração de Negócios", o YAPC::Brasil acontecerá de 25 a 31 de Outubro no Auditório do Hotel Sonata em Fortaleza, Ceará. AS INSCRIÇÕES As inscrições para o evento e para o mini-curso já estão abertas!!! Não perca tempo, pois as vagas para o mini-curso são limitadas e os que se inscreverem até 10 de Setembro concorrerão no sorteio de livros da O'Reilly, patrocinadora do evento. Acesse: http://www.yapcbrasil.org.br/2010/inscricao.html SUBMISSÃO DE PALESTRAS A data limite para submissão de palestras está chegando! Submeta a sua! Acesse: http://www.yapcbrasil.org.br/2010/newtalk (palestrantes são isentos da taxa de inscrição) ====================================================== A prévia da programação e mais informações podem ser conferidas em http://www.yapcbrasil.org.br/. Nos vemos em Fortaleza! \o/ Abraços, -- Gabriel Vieira Organização YAPC::Brasil 2010 http://www.yapcbrasil.org.br/ _______________________________________________ Brasil-PM mailing list Brasil-PM em pm.org http://mail.pm.org/mailman/listinfo/brasil-pm From eu em samircury.eng.br Tue Aug 17 21:54:09 2010 From: eu em samircury.eng.br (Samir Cury) Date: Wed, 18 Aug 2010 01:54:09 -0300 Subject: [Rio-pm] Curious speech Message-ID: Fala Perlssoal, Estava procurando algumas coisas sobre Perl aqui e achei uma palestra (escrita) muito interessante e engracada do Larry, que gostaria de compartilhar : http://www.wall.org/~larry/pm.html Trailer : I just did an interview for Feed Magazine. When I read their intro to it, I was interested to see that they made reference to my ``curious speeches.'' I'll take that as a compliment. Why I take it as a compliment is the subject of this speech. That's assuming this speech actually has a subject, which is still in doubt. Hey, at least it has a title. That's something. . . . Heidi said, ``You wanna know something really funny. In my IMP class, our class slogan is, 'There's more than one way to do it.''' ``You're kidding,'' I said. [I should also say that that IMP stands for Interactive Math Program, which is a math curriculum in which you sort of learn everything at once. In sort of a postmodern way.] Anyway, I said, ``You're kidding.'' ``No,'' she said, ``That's why IMP is better for math students like me--we learn better when we can see the big picture, and how everything fits in. The old way of learning math never gave you any context''. Abracos, Samir -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ole.ufg em gmail.com Tue Aug 17 22:42:52 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Wed, 18 Aug 2010 02:42:52 -0300 Subject: [Rio-pm] Curious speech In-Reply-To: References: Message-ID: Caras Gostei desse, seems to me like this dude -like his enfant Perl - is all about free thinking... 'I have to be honest here. I'm with Linus--I personally want to take over the world. I want to take over the world because I'm an egomaniac. A nice sort of egomaniac, an egomaniac moderated by belief in the value of humility, but an egomaniac nonetheless.' Hoje levantei, tinha um cadastro no ar - em Php, pelas imposicoes externas, uaaad - mais eles queriam somente uma tabela de totais; pensei de novo uaaaaad, lembrei 'the butler' e fez uma daquelas de 50 linhas, 30 minutos (e ainda formatado), o que LW fala: 'Fortunately, I am not Perl. Perl was my servant before it was anyone else's, so I taught Perl to be a better servant than I could ever teach myself to be. Perl is like the perfect butler. Whatever you ask Perl to do, it says ``Very good, sir,'' or ``Very good, madam.'' Back to work, Ole 2010/8/18 Samir Cury > Fala Perlssoal, > > Estava procurando algumas coisas sobre Perl aqui e achei uma palestra > (escrita) muito interessante e engracada do Larry, que gostaria de > compartilhar : > > http://www.wall.org/~larry/pm.html > > Trailer : > > I just did an interview for Feed Magazine. When I read their intro to it, I > was interested to see that they made reference to my ``curious speeches.'' > I'll take that as a compliment. Why I take it as a compliment is the subject > of this speech. That's assuming this speech actually has a subject, which is > still in doubt. Hey, at least it has a title. That's something. > . > . > > . > > Heidi said, ``You wanna know something really funny. In my IMP class, our > class slogan is, 'There's more than one way to do it.''' > > ``You're kidding,'' I said. [I should also say that that IMP stands for > Interactive Math Program, which is a math curriculum in which you sort of > learn everything at once. In sort of a postmodern way.] Anyway, I said, > ``You're kidding.'' > > ``No,'' she said, ``That's why IMP is better for math students like me--we > learn better when we can see the big picture, and how everything fits in. > The old way of learning math never gave you any context''. > > Abracos, > Samir > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- ######################################## Quem Leva Brincadeira somente por Brincadeira E Sério somente Sério De Fato Desentendeu Ambos - Piet Hein ######################################## Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Wed Aug 18 10:30:22 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Wed, 18 Aug 2010 14:30:22 -0300 Subject: [Rio-pm] Tipagem em Perl Message-ID: Povo. A muito estou acostumado com a sintaxe perl com $ para escalares, @ para arrays e % para hashes (e por ai vai), entretanto eu fico curioso pela origem destes simbolos. Em outras linguagens eu posso ter uma variavel de qualquer tipo (como java eu tenho objetos e primitivos, em javascript eu tenho qualquer coisa, em ruby tudo é objeto então não tenho necessidade de especificar este tipo de coisa) sem que o seu nome seja afetado. fico eu pensando então pq em Perl é diferente. Afinal É uma caracteristica interna do interpretador ou Eu tenho estas primitivas e, dessa forma, eu posso prevenir erros ao utilizar um tipo num contexto inadequado e ser facilmente verificavel, por exemplo? Pergunto pq eu ainda vejo isso como ruido na linguagem se comparar com outras que eu uso mais frequentemente. Entretanto como tudo faz parte de um plano... ;-) -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br From eu em samircury.eng.br Wed Aug 18 10:35:57 2010 From: eu em samircury.eng.br (Samir Cury) Date: Wed, 18 Aug 2010 14:35:57 -0300 Subject: [Rio-pm] Tipagem em Perl In-Reply-To: References: Message-ID: Maneiro levantar esta questao Tiago, Falamos um pouco disto no ultimo ES tambem. E pra mim e o contrario, ate estranho quando vejo essas linguagens "baguncadas", onde voce nao bate o olho e sabe com o que esta mexendo, e uma vez letrado em Perl, o cara bate o olho no trecho que for, e sabe o que esta acontecendo. Foi curioso ver um ponto exatamente oposto, nao tenho muito a acrescentar, tirando que eu que estou acostumado so com Perl e Perl-likes fica muito mais intuitivo ver $scalar @array e %hash. Voce de cara sabe do que se trata, mesmo que fosse $hash, @scalar e %array Abracos, Samir 2010/8/18 Tiago Peczenyj > Povo. > > A muito estou acostumado com a sintaxe perl com $ para escalares, @ > para arrays e % para hashes (e por ai vai), entretanto eu fico curioso > pela origem destes simbolos. Em outras linguagens eu posso ter uma > variavel de qualquer tipo (como java eu tenho objetos e primitivos, em > javascript eu tenho qualquer coisa, em ruby tudo é objeto então não > tenho necessidade de especificar este tipo de coisa) sem que o seu > nome seja afetado. fico eu pensando então pq em Perl é diferente. > > Afinal É uma caracteristica interna do interpretador ou Eu tenho estas > primitivas e, dessa forma, eu posso prevenir erros ao utilizar um tipo > num contexto inadequado e ser facilmente verificavel, por exemplo? > > Pergunto pq eu ainda vejo isso como ruido na linguagem se comparar com > outras que eu uso mais frequentemente. Entretanto como tudo faz parte > de um plano... ;-) > > > > -- > Tiago B. Peczenyj > Linux User #405772 > > http://pacman.blog.br > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From thiagoglauco em ticursos.net Wed Aug 18 11:53:07 2010 From: thiagoglauco em ticursos.net (thiagoglauco em ticursos.net) Date: Wed, 18 Aug 2010 15:53:07 -0300 Subject: [Rio-pm] Tipagem em Perl In-Reply-To: References: Message-ID: <20100818155307.i7q4hziyasgk4sg8@www.ticursos.net> Não eh ruido. Pelo contrario, deixa o conteudo mais legivel. 1 - Imagine, primeiramente que o Perl eh uma linguagem com muitos verbos(funcoes). As funcoes internas do Perl sao, por padrao, formadas letras minusculas sem prefixo. Assim, se eu crio uma varivel "$house" e num futuro distante os porters do Perl resolvem criar uma funcao chamada "house" nao terei de reescrever minha aplicacao. 2 - O Perl foi contruido por um estudioso de linguistica e letras. Os idiomas tem prefixos e sufixos que identificam as palavras... via de regra, em portugues os verbos terminam com 'r' (amar, correr, voar, nadar), os substantivos plurais com 's' (sapos, casas, carros). Trazendo o mesmo principio para o Perl, porem em vez de sufixos o Perl usa prefixos: $ (substantivo singular), @ e % plurais de diferentes tipos... tornam mais faceis para o programador saber do que se trata em codigos extensos. Na verdade eh um recurso muito inteligente!!!! 3 - Conflitos de nomes: isso diminui as chances de conflitos de nomes... Quoting Samir Cury : > Maneiro levantar esta questao Tiago, > > Falamos um pouco disto no ultimo ES tambem. > > E pra mim e o contrario, ate estranho quando vejo essas linguagens > "baguncadas", onde voce nao bate o olho e sabe com o que esta mexendo, e uma > vez letrado em Perl, o cara bate o olho no trecho que for, e sabe o que esta > acontecendo. > > Foi curioso ver um ponto exatamente oposto, nao tenho muito a acrescentar, > tirando que eu que estou acostumado so com Perl e Perl-likes fica muito mais > intuitivo ver $scalar @array e %hash. Voce de cara sabe do que se trata, > mesmo que fosse $hash, @scalar e %array > > Abracos, > Samir > > 2010/8/18 Tiago Peczenyj > >> Povo. >> >> A muito estou acostumado com a sintaxe perl com $ para escalares, @ >> para arrays e % para hashes (e por ai vai), entretanto eu fico curioso >> pela origem destes simbolos. Em outras linguagens eu posso ter uma >> variavel de qualquer tipo (como java eu tenho objetos e primitivos, em >> javascript eu tenho qualquer coisa, em ruby tudo é objeto então não >> tenho necessidade de especificar este tipo de coisa) sem que o seu >> nome seja afetado. fico eu pensando então pq em Perl é diferente. >> >> Afinal É uma caracteristica interna do interpretador ou Eu tenho estas >> primitivas e, dessa forma, eu posso prevenir erros ao utilizar um tipo >> num contexto inadequado e ser facilmente verificavel, por exemplo? >> >> Pergunto pq eu ainda vejo isso como ruido na linguagem se comparar com >> outras que eu uso mais frequentemente. Entretanto como tudo faz parte >> de um plano... ;-) >> >> >> >> -- >> Tiago B. Peczenyj >> Linux User #405772 >> >> http://pacman.blog.br >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > From ole.ufg em gmail.com Wed Aug 18 12:07:56 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Wed, 18 Aug 2010 16:07:56 -0300 Subject: [Rio-pm] Tipagem em Perl In-Reply-To: References: Message-ID: Concordo com Samir! As outras linguagens que esta baguncados!!! Quanto veja um $ sei que e escalar, @ e lista, etc. Outro: posso ter @list ser uma lista, e ao mesmo tempo %list, senda um hash (array ass), e ate um escalar, por ex $list=\@list. Bacano, pois esses vars realmente sao relacionados... Exemplo: (@items uma lista de refs pra ass arrays) my %items=(); foreach my $item (@items) { my $sortid=$item{ $sort }; $items{ $sortid.$item->{ "ID" } }=$item; } my @ritems=(); foreach my $key (sort keys %items) { push(@ritems,$items{ $key }); } Agora @ritems estao em ordem alfabetico em resp. da chave $sort. Adicione $item->{ "ID" }, (se houver um chave ID, pensando nele como unico), pra nao perder elementos ao fazer o sort. So tem um 'catch': se quisser pode escrever: @list=%list, pois um hash nada mais e, que uma lista com um unumero par de elementos; usar com responsa - quem quisser (nao lembro de nenhum uso construtivo desse ultimo). Ole 2010/8/18 Samir Cury > Maneiro levantar esta questao Tiago, > > Falamos um pouco disto no ultimo ES tambem. > > E pra mim e o contrario, ate estranho quando vejo essas linguagens > "baguncadas", onde voce nao bate o olho e sabe com o que esta mexendo, e uma > vez letrado em Perl, o cara bate o olho no trecho que for, e sabe o que esta > acontecendo. > > Foi curioso ver um ponto exatamente oposto, nao tenho muito a acrescentar, > tirando que eu que estou acostumado so com Perl e Perl-likes fica muito mais > intuitivo ver $scalar @array e %hash. Voce de cara sabe do que se trata, > mesmo que fosse $hash, @scalar e %array > > Abracos, > Samir > > 2010/8/18 Tiago Peczenyj > > Povo. >> >> A muito estou acostumado com a sintaxe perl com $ para escalares, @ >> para arrays e % para hashes (e por ai vai), entretanto eu fico curioso >> pela origem destes simbolos. Em outras linguagens eu posso ter uma >> variavel de qualquer tipo (como java eu tenho objetos e primitivos, em >> javascript eu tenho qualquer coisa, em ruby tudo é objeto então não >> tenho necessidade de especificar este tipo de coisa) sem que o seu >> nome seja afetado. fico eu pensando então pq em Perl é diferente. >> >> Afinal É uma caracteristica interna do interpretador ou Eu tenho estas >> primitivas e, dessa forma, eu posso prevenir erros ao utilizar um tipo >> num contexto inadequado e ser facilmente verificavel, por exemplo? >> >> Pergunto pq eu ainda vejo isso como ruido na linguagem se comparar com >> outras que eu uso mais frequentemente. Entretanto como tudo faz parte >> de um plano... ;-) >> >> >> >> -- >> Tiago B. Peczenyj >> Linux User #405772 >> >> http://pacman.blog.br >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- ######################################## Quem Leva Brincadeira somente por Brincadeira E Sério somente Sério De Fato Desentendeu Ambos - Piet Hein ######################################## Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ole.ufg em gmail.com Wed Aug 18 12:14:38 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Wed, 18 Aug 2010 16:14:38 -0300 Subject: [Rio-pm] Tipagem em Perl In-Reply-To: References: Message-ID: Outro curiosidade: Perl permite 'abencoar' (bless) qualquer tipo de variavel ($,@,%) com os 'poderes' de um objeto. Eu nunca usei outro que objetos escalares, nao sei se tem lagum uso de um objeto @? Ole 2010/8/18 Tiago Peczenyj > Povo. > > A muito estou acostumado com a sintaxe perl com $ para escalares, @ > para arrays e % para hashes (e por ai vai), entretanto eu fico curioso > pela origem destes simbolos. Em outras linguagens eu posso ter uma > variavel de qualquer tipo (como java eu tenho objetos e primitivos, em > javascript eu tenho qualquer coisa, em ruby tudo é objeto então não > tenho necessidade de especificar este tipo de coisa) sem que o seu > nome seja afetado. fico eu pensando então pq em Perl é diferente. > > Afinal É uma caracteristica interna do interpretador ou Eu tenho estas > primitivas e, dessa forma, eu posso prevenir erros ao utilizar um tipo > num contexto inadequado e ser facilmente verificavel, por exemplo? > > Pergunto pq eu ainda vejo isso como ruido na linguagem se comparar com > outras que eu uso mais frequentemente. Entretanto como tudo faz parte > de um plano... ;-) > > > > -- > Tiago B. Peczenyj > Linux User #405772 > > http://pacman.blog.br > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- ######################################## Quem Leva Brincadeira somente por Brincadeira E Sério somente Sério De Fato Desentendeu Ambos - Piet Hein ######################################## Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From andregarciacarneiro em gmail.com Wed Aug 18 12:29:10 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Wed, 18 Aug 2010 16:29:10 -0300 Subject: [Rio-pm] Tipagem em Perl In-Reply-To: References: Message-ID: 2010/8/18 Samir Cury > Maneiro levantar esta questao Tiago, > > Falamos um pouco disto no ultimo ES tambem. > > E pra mim e o contrario, ate estranho quando vejo essas linguagens > "baguncadas", onde voce nao bate o olho e sabe com o que esta mexendo, e uma > vez letrado em Perl, o cara bate o olho no trecho que for, e sabe o que esta > acontecendo. > > Se isso acontece é muito mais provável que exista falha no projeto, não 'bagunça' na linguagem... > Foi curioso ver um ponto exatamente oposto, nao tenho muito a acrescentar, > tirando que eu que estou acostumado so com Perl e Perl-likes fica muito mais > intuitivo ver $scalar @array e %hash. Voce de cara sabe do que se trata, > mesmo que fosse $hash, @scalar e %array > Assim como é possível 'bagunçar' um código Java, C, Ruby etc., é possível bagunçar um código Perl também. Declarações globais sem controle, bizarrisses de lógica, falta de organização estrutural, má definição de escopo, não seguir as boas práticas de programação, resumindo, , são alguns dos reais motivo da 'bagunça'. E isso vale em qualquer linguagem e depende somente da 'pecinha' na frente do teclado, e um pouco( bem pouco) das políticas da empresa e do seu chefe... ;-) Cheers! > Abracos, > Samir > > 2010/8/18 Tiago Peczenyj > > Povo. >> >> A muito estou acostumado com a sintaxe perl com $ para escalares, @ >> para arrays e % para hashes (e por ai vai), entretanto eu fico curioso >> pela origem destes simbolos. Em outras linguagens eu posso ter uma >> variavel de qualquer tipo (como java eu tenho objetos e primitivos, em >> javascript eu tenho qualquer coisa, em ruby tudo é objeto então não >> tenho necessidade de especificar este tipo de coisa) sem que o seu >> nome seja afetado. fico eu pensando então pq em Perl é diferente. >> >> Afinal É uma caracteristica interna do interpretador ou Eu tenho estas >> primitivas e, dessa forma, eu posso prevenir erros ao utilizar um tipo >> num contexto inadequado e ser facilmente verificavel, por exemplo? >> >> Pergunto pq eu ainda vejo isso como ruido na linguagem se comparar com >> outras que eu uso mais frequentemente. Entretanto como tudo faz parte >> de um plano... ;-) >> >> >> >> -- >> Tiago B. Peczenyj >> Linux User #405772 >> >> http://pacman.blog.br >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ricardo_filipo em yahoo.com.br Wed Aug 18 12:36:38 2010 From: ricardo_filipo em yahoo.com.br (Ricardo Filipo) Date: Wed, 18 Aug 2010 12:36:38 -0700 (PDT) Subject: [Rio-pm] Res: Tipagem em Perl In-Reply-To: References: Message-ID: <491813.29031.qm@web33005.mail.mud.yahoo.com> Pode ser educativo olhar o capítulo 20 do "Advanced Perl Programming" http://docstore.mik.ua/orelly/perl/advprog/ch20_03.htm Na verdade as variáveis em perl são muito bem tipadas, mas tem mágica aqui! O resultado do código abaixo pode elucidar as mágicas do perl, vale a pena estudar. use Devel::Peek 'Dump'; $a = 1234567890; Dump ($a); abs! ________________________________ De: Ole Peter Smith Para: Perl Mongers Rio de Janeiro Enviadas: Quarta-feira, 18 de Agosto de 2010 16:14:38 Assunto: Re: [Rio-pm] Tipagem em Perl Outro curiosidade: Perl permite 'abencoar' (bless) qualquer tipo de variavel ($,@,%) com os 'poderes' de um objeto. Eu nunca usei outro que objetos escalares, nao sei se tem lagum uso de um objeto @? Ole 2010/8/18 Tiago Peczenyj Povo. > >A muito estou acostumado com a sintaxe perl com $ para escalares, @ >para arrays e % para hashes (e por ai vai), entretanto eu fico curioso >pela origem destes simbolos. Em outras linguagens eu posso ter uma >variavel de qualquer tipo (como java eu tenho objetos e primitivos, em >javascript eu tenho qualquer coisa, em ruby tudo é objeto então não >tenho necessidade de especificar este tipo de coisa) sem que o seu >nome seja afetado. fico eu pensando então pq em Perl é diferente. > >Afinal É uma caracteristica interna do interpretador ou Eu tenho estas >primitivas e, dessa forma, eu posso prevenir erros ao utilizar um tipo >num contexto inadequado e ser facilmente verificavel, por exemplo? > >Pergunto pq eu ainda vejo isso como ruido na linguagem se comparar com >outras que eu uso mais frequentemente. Entretanto como tudo faz parte >de um plano... ;-) > > > >-- >Tiago B. Peczenyj >Linux User #405772 > >http://pacman.blog.br >_______________________________________________ >Rio-pm mailing list >Rio-pm em pm.org >http://mail.pm.org/mailman/listinfo/rio-pm > -- ######################################## Quem Leva Brincadeira somente por Brincadeira E Sério somente Sério De Fato Desentendeu Ambos - Piet Hein ######################################## Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From acid06 em gmail.com Wed Aug 18 12:49:09 2010 From: acid06 em gmail.com (Nilson Santos Figueiredo Jr.) Date: Wed, 18 Aug 2010 16:49:09 -0300 Subject: [Rio-pm] Tipagem em Perl In-Reply-To: References: Message-ID: 2010/8/18 Ole Peter Smith : > Outro curiosidade: Perl permite 'abencoar' (bless) qualquer tipo de variavel > ($,@,%) com os 'poderes' de um objeto. Eu nunca usei outro que objetos > escalares, nao sei se tem lagum uso de um objeto @? Na verdade, você pode apenas dar bless() em referências (escalares). Por exemplo: $ perl -e "bless @foo" Can't bless non-reference value at -e line 1. Mas esta referência pode apontar pra qualquer tipo de dados (hash, array, scalar, code, etc). -Nilson From breno em rio.pm.org Wed Aug 18 13:07:15 2010 From: breno em rio.pm.org (breno) Date: Wed, 18 Aug 2010 17:07:15 -0300 Subject: [Rio-pm] Tipagem em Perl In-Reply-To: References: Message-ID: 2010/8/18 Andre Carneiro : > 2010/8/18 Samir Cury >> E pra mim e o contrario, ate estranho quando vejo essas linguagens >> "baguncadas", onde voce nao bate o olho e sabe com o que esta mexendo, e uma >> vez letrado em Perl, o cara bate o olho no trecho que for, e sabe o que esta >> acontecendo. > > Se isso acontece é muito mais provável que exista falha no projeto, não > 'bagunça' na linguagem... > Andre, participei dessa conversa no último ES e acho q não foi isso que o Samir quis dizer. Em Perl, qdo vc olha pro código, sabe exatamente onde estão as variáveis justamente por causa da tal "sujeira". Uma linguagem sem "sigils" pode parecer mais limpa de relance - ou ferir menos os olhos - quando contém apenas os caracteres que estamos acostumados a ler: a-zA-Z0-9[-.,:;]. Por outro lado, quando nos acostumamos com eles, fica muito facil distinguir variáveis de funções, etc, enquanto que em outras linguagens isso pode não ser tão imediato. Pelo menos é um pouco do que sinto quando programo em linguagens sem "sigils". De volta a pergunta do Pac, gosto de pensar que o tipo primitivo em Perl é sempre o escalar ($), e só ele. O @array é uma coleção de escalares ordenados sequencialmente, e um %hash é uma coleção de escalares indexados por chaves. Por isso que, pra mim, acessar um valor dentro de um array ou hash usando $ faz tanto sentido, pois estamos acessando o $escalar dentro da coleção. Isso mudou no Perl 6, então talvez seja só eu :-) Adoraria botar uma banca de p5p aqui e explicar pq os sigils auxiliam e otimizam a compilação/interpretação do código, mas foge à minha alçada. De repente vc tira um pouco mais de http://en.wikipedia.org/wiki/Sigil_(computer_programming) []s -b []s -b From rafacordeiro93 em hotmail.com Thu Aug 19 14:08:50 2010 From: rafacordeiro93 em hotmail.com (=?utf-8?B?UuC4hMWm4LiE0ZRs4LiEIEPguIRzVNGUbGxPJw==?=) Date: Fri, 20 Aug 2010 00:08:50 +0300 Subject: [Rio-pm] Digest Rio-pm, volume 66, assunto 23 In-Reply-To: References: Message-ID: Estou começando agora com o Perl, estou na fase de aprendizado, rs! E já estou gostando muito, espero poder depois compartilhar os conhecimentos com bvocês! =] > From: rio-pm-request em pm.org > Subject: Digest Rio-pm, volume 66, assunto 23 > To: rio-pm em pm.org > Date: Thu, 19 Aug 2010 12:00:25 -0700 > > Enviar submissões para a lista de discussão Rio-pm para > rio-pm em pm.org > > Para se cadastrar ou descadastrar via WWW, visite o endereço > http://mail.pm.org/mailman/listinfo/rio-pm > ou, via email, envie uma mensagem com a palavra 'help' no assunto ou > corpo da mensagem para > rio-pm-request em pm.org > > Você poderá entrar em contato com a pessoa que gerencia a lista pelo > endereço > rio-pm-owner em pm.org > > Quando responder, por favor edite sua linha Assunto assim ela será > mais específica que "Re: Contents of Rio-pm digest..." > > > Tópicos de Hoje: > > 1. Re: Tipagem em Perl (Nilson Santos Figueiredo Jr.) > 2. Re: Tipagem em Perl (breno) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Wed, 18 Aug 2010 16:49:09 -0300 > From: "Nilson Santos Figueiredo Jr." > Subject: Re: [Rio-pm] Tipagem em Perl > To: Perl Mongers Rio de Janeiro > Message-ID: > > Content-Type: text/plain; charset=ISO-8859-1 > > 2010/8/18 Ole Peter Smith : > > Outro curiosidade: Perl permite 'abencoar' (bless) qualquer tipo de variavel > > ($,@,%) com os 'poderes' de um objeto. Eu nunca usei outro que objetos > > escalares, nao sei se tem lagum uso de um objeto @? > > Na verdade, você pode apenas dar bless() em referências (escalares). > Por exemplo: > > $ perl -e "bless @foo" > Can't bless non-reference value at -e line 1. > > Mas esta referência pode apontar pra qualquer tipo de dados (hash, > array, scalar, code, etc). > > -Nilson > > > ------------------------------ > > Message: 2 > Date: Wed, 18 Aug 2010 17:07:15 -0300 > From: breno > Subject: Re: [Rio-pm] Tipagem em Perl > To: Perl Mongers Rio de Janeiro > Message-ID: > > Content-Type: text/plain; charset=ISO-8859-1 > > 2010/8/18 Andre Carneiro : > > 2010/8/18 Samir Cury > >> E pra mim e o contrario, ate estranho quando vejo essas linguagens > >> "baguncadas", onde voce nao bate o olho e sabe com o que esta mexendo, e uma > >> vez letrado em Perl, o cara bate o olho no trecho que for, e sabe o que esta > >> acontecendo. > > > > Se isso acontece é muito mais provável que exista falha no projeto, não > > 'bagunça' na linguagem... > > > > Andre, participei dessa conversa no último ES e acho q não foi isso > que o Samir quis dizer. Em Perl, qdo vc olha pro código, sabe > exatamente onde estão as variáveis justamente por causa da tal > "sujeira". > > Uma linguagem sem "sigils" pode parecer mais limpa de relance - ou > ferir menos os olhos - quando contém apenas os caracteres que estamos > acostumados a ler: a-zA-Z0-9[-.,:;]. Por outro lado, quando nos > acostumamos com eles, fica muito facil distinguir variáveis de > funções, etc, enquanto que em outras linguagens isso pode não ser tão > imediato. Pelo menos é um pouco do que sinto quando programo em > linguagens sem "sigils". > > De volta a pergunta do Pac, gosto de pensar que o tipo primitivo em > Perl é sempre o escalar ($), e só ele. O @array é uma coleção de > escalares ordenados sequencialmente, e um %hash é uma coleção de > escalares indexados por chaves. Por isso que, pra mim, acessar um > valor dentro de um array ou hash usando $ faz tanto sentido, pois > estamos acessando o $escalar dentro da coleção. Isso mudou no Perl 6, > então talvez seja só eu :-) > > Adoraria botar uma banca de p5p aqui e explicar pq os sigils auxiliam > e otimizam a compilação/interpretação do código, mas foge à minha > alçada. De repente vc tira um pouco mais de > http://en.wikipedia.org/wiki/Sigil_(computer_programming) > > > []s > > -b > > []s > > -b > > > ------------------------------ > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > Fim da Digest Rio-pm, volume 66, assunto 23 > ******************************************* -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Thu Aug 19 20:55:47 2010 From: eu em samircury.eng.br (Samir Cury) Date: Fri, 20 Aug 2010 00:55:47 -0300 Subject: [Rio-pm] Slackshow 2010 Message-ID: Fala pessoal, Aproveitando o embalo, amanhã começa o Slackshow, para os desavisados e os que não souberam antes, vai no momento propício : http://slackshow.slackwarebrasil.org/programacao.php Vai rolar palestra "Perl para sysadmins" comigo, e uma palestra de seguranca do Oscar, aqui da comunidade tambem, quem costuma ir nos ESs conhece =) Fora muitas outras bastante interessantes tambem, fico feliz de poder assistir a elas, e triste de nao poder ir amanha. Mas sabado tamos ai, quem quiser marcar a ida, so falar. Abracos, Samir -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From braun.lima em gmail.com Fri Aug 20 06:11:39 2010 From: braun.lima em gmail.com (Marco Lima) Date: Fri, 20 Aug 2010 10:11:39 -0300 Subject: [Rio-pm] Slackshow 2010 In-Reply-To: References: Message-ID: Amanhã? não é hoje !!? Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" 2010/8/20 Samir Cury > Fala pessoal, > > Aproveitando o embalo, amanhã começa o Slackshow, para os desavisados e os > que não souberam antes, vai no momento propício : > > http://slackshow.slackwarebrasil.org/programacao.php > > Vai rolar palestra "Perl para sysadmins" comigo, e uma palestra de > seguranca do Oscar, aqui da comunidade tambem, quem costuma ir nos ESs > conhece =) > > Fora muitas outras bastante interessantes tambem, fico feliz de poder > assistir a elas, e triste de nao poder ir amanha. Mas sabado tamos ai, quem > quiser marcar a ida, so falar. > > Abracos, > Samir > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Fri Aug 20 06:13:54 2010 From: eu em samircury.eng.br (Samir Cury) Date: Fri, 20 Aug 2010 10:13:54 -0300 Subject: [Rio-pm] Slackshow 2010 In-Reply-To: References: Message-ID: Comeca hoje, mas quando escrevi ainda nao tinha dormido hehehe E so amanha que vou poder ir tambem (acho que muita gente tambem) 2010/8/20 Marco Lima > Amanhã? não é hoje !!? > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. > Esta paixão é, na realidade, uma atividade significativa, inspiradora e > prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como > "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > 2010/8/20 Samir Cury > >> Fala pessoal, >> >> Aproveitando o embalo, amanhã começa o Slackshow, para os desavisados e >> os que não souberam antes, vai no momento propício : >> >> http://slackshow.slackwarebrasil.org/programacao.php >> >> Vai rolar palestra "Perl para sysadmins" comigo, e uma palestra de >> seguranca do Oscar, aqui da comunidade tambem, quem costuma ir nos ESs >> conhece =) >> >> Fora muitas outras bastante interessantes tambem, fico feliz de poder >> assistir a elas, e triste de nao poder ir amanha. Mas sabado tamos ai, quem >> quiser marcar a ida, so falar. >> >> Abracos, >> Samir >> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From braun.lima em gmail.com Fri Aug 20 06:17:25 2010 From: braun.lima em gmail.com (Marco Lima) Date: Fri, 20 Aug 2010 10:17:25 -0300 Subject: [Rio-pm] Slackshow 2010 In-Reply-To: References: Message-ID: Estou indo para lá !!! Marco Lima braun.lima em gmail.com im:mago em jabber-br.org Register Linux User #355235 Slackware Linux, for the subgenius "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é um dever de quem tem." "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não possa ensinar" 2010/8/20 Samir Cury > Comeca hoje, mas quando escrevi ainda nao tinha dormido hehehe > > E so amanha que vou poder ir tambem (acho que muita gente tambem) > > 2010/8/20 Marco Lima > > Amanhã? não é hoje !!? >> >> Marco Lima >> braun.lima em gmail.com >> im:mago em jabber-br.org >> >> Register Linux User #355235 >> Slackware Linux, for the subgenius >> >> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é >> um dever de quem tem." >> >> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >> "diversão." >> >> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >> possa ensinar" >> >> >> >> 2010/8/20 Samir Cury >> >>> Fala pessoal, >>> >>> Aproveitando o embalo, amanhã começa o Slackshow, para os desavisados e >>> os que não souberam antes, vai no momento propício : >>> >>> http://slackshow.slackwarebrasil.org/programacao.php >>> >>> Vai rolar palestra "Perl para sysadmins" comigo, e uma palestra de >>> seguranca do Oscar, aqui da comunidade tambem, quem costuma ir nos ESs >>> conhece =) >>> >>> Fora muitas outras bastante interessantes tambem, fico feliz de poder >>> assistir a elas, e triste de nao poder ir amanha. Mas sabado tamos ai, quem >>> quiser marcar a ida, so falar. >>> >>> Abracos, >>> Samir >>> >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From estranho em diogoleal.com Fri Aug 20 07:21:14 2010 From: estranho em diogoleal.com (Diogo Leal) Date: Fri, 20 Aug 2010 11:21:14 -0300 Subject: [Rio-pm] Slackshow 2010 In-Reply-To: References: Message-ID: Estamos esperando vocês hoje Caso precisem o meu telefone é 21 81352272 Diogo Leal [aka estranho] http://diogoleal.com msn | gtalk: estranho em diogoleal.com 2010/8/20 Marco Lima : > Estou indo para lá !!! > > Marco Lima > braun.lima em gmail.com > im:mago em jabber-br.org > > Register Linux User #355235 > Slackware Linux, for the subgenius > > "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento é > um dever de quem tem." > > "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. Esta > paixão é, na realidade, uma atividade significativa, inspiradora e prazerosa > para o indivíduo, seja ela rotulada como "trabalho" ou como "diversão." > > "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não > possa ensinar" > > > > 2010/8/20 Samir Cury >> >> Comeca hoje, mas quando escrevi ainda nao tinha dormido hehehe >> >> E so amanha que vou poder ir tambem (acho que muita gente tambem) >> >> 2010/8/20 Marco Lima >>> >>> Amanhã? não é hoje !!? >>> >>> Marco Lima >>> braun.lima em gmail.com >>> im:mago em jabber-br.org >>> >>> Register Linux User #355235 >>> Slackware Linux, for the subgenius >>> >>> "Ter acesso ao conhecimento é um dever de todos; transmitir conhecimento >>> é um dever de quem tem." >>> >>> "Na visão do hacker, o sentido da vida está em dedicar-se a uma paixão. >>> Esta paixão é, na realidade, uma atividade significativa, inspiradora e >>> prazerosa para o indivíduo, seja ela rotulada como "trabalho" ou como >>> "diversão." >>> >>> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que não >>> possa ensinar" >>> >>> >>> >>> 2010/8/20 Samir Cury >>>> >>>> Fala pessoal, >>>> >>>> Aproveitando o  embalo, amanhã começa o Slackshow, para os desavisados e >>>> os que não souberam antes, vai no momento propício : >>>> >>>> http://slackshow.slackwarebrasil.org/programacao.php >>>> >>>> Vai rolar palestra "Perl para sysadmins" comigo, e uma palestra de >>>> seguranca do Oscar, aqui da comunidade tambem, quem costuma ir nos ESs >>>> conhece =) >>>> >>>> Fora muitas outras bastante interessantes tambem, fico feliz de poder >>>> assistir a elas, e triste de nao poder ir amanha. Mas sabado tamos ai, quem >>>> quiser marcar a ida, so falar. >>>> >>>> Abracos, >>>> Samir >>>> >>>> >>>> >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From ailtonzsilva em gmail.com Fri Aug 20 07:22:46 2010 From: ailtonzsilva em gmail.com (Ailton Zacarias) Date: Fri, 20 Aug 2010 11:22:46 -0300 Subject: [Rio-pm] Listagem de Arquivos Message-ID: Bom dia Amigos Gostaria de saber onde estou errando ... pq na listagem de arquivos ele duplica os nomes de arquivos??? Obrigado! use strict; use warnings; my $diretorio="C:/Tmp/e-Mails/ENVIADOS"; opendir(IMD, $diretorio) || die("Cannot open directory"); my @thefiles= readdir(IMD); closedir(IMD); my $produrar = 'ALLTASKS'; open(ARQ1,">Lista.html"); print ARQ1 "Listagem de arquivos\n"; print ARQ1 "

Listagem de Arquivos\n"; foreach my $f (@thefiles) { unless ( ($f eq ".") || ($f eq "..") ) { my @arquivos = grep(/^$produrar/, em thefiles); foreach my $Nome(@arquivos) { print ARQ1 "
".$Nome."
"; } } } print ARQ1 "\n"; close(ARQ1); -- Ailton Zacarias F4 Computer ? Soluções em Tecnologia da Informação Tel: 55 +11 4062-0180 (Ailton) Cel: 55 +11 8405-8334 MSN: ailton em f4computer.com Skype: ailton.zacarias http://www.f4computer.com -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ole.ufg em gmail.com Fri Aug 20 07:27:57 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Fri, 20 Aug 2010 11:27:57 -0300 Subject: [Rio-pm] Listagem de Arquivos In-Reply-To: References: Message-ID: Nao e pra: my @arquivos = grep(/^$produrar/, em thefiles); ser antes do que: foreach my $f (@thefiles) ? e ae o foreach ser de @arquivos? Ole 2010/8/20 Ailton Zacarias > Bom dia Amigos > > Gostaria de saber onde estou errando ... pq na listagem de arquivos ele > duplica os nomes de arquivos??? Obrigado! > > > use strict; > use warnings; > > my $diretorio="C:/Tmp/e-Mails/ENVIADOS"; > opendir(IMD, $diretorio) || die("Cannot open directory"); > my @thefiles= readdir(IMD); > closedir(IMD); > > my $produrar = 'ALLTASKS'; > > open(ARQ1,">Lista.html"); > print ARQ1 "Listagem de arquivos\n"; > print ARQ1 "

Listagem de Arquivos\n"; > > > foreach my $f (@thefiles) > { > unless ( ($f eq ".") || ($f eq "..") ) > { > my @arquivos = grep(/^$produrar/, em thefiles); > foreach my $Nome(@arquivos) > { > print ARQ1 "
href=".$diretorio."/".$Nome.">".$Nome."
"; > } > } > } > > print ARQ1 "\n"; > close(ARQ1); > > > > > -- > Ailton Zacarias > F4 Computer ? Soluções em Tecnologia da Informação > Tel: 55 +11 4062-0180 (Ailton) > Cel: 55 +11 8405-8334 > MSN: ailton em f4computer.com > Skype: ailton.zacarias > http://www.f4computer.com > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- ######################################## Quem Leva Brincadeira somente por Brincadeira E Sério somente Sério De Fato Desentendeu Ambos - Piet Hein ######################################## Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ailtonzsilva em gmail.com Fri Aug 20 07:35:32 2010 From: ailtonzsilva em gmail.com (Ailton Zacarias) Date: Fri, 20 Aug 2010 11:35:32 -0300 Subject: [Rio-pm] Listagem de Arquivos In-Reply-To: References: Message-ID: Opa Funcionou! Muito Obrigado. 2010/8/20 Ole Peter Smith > Nao e pra: > > my @arquivos = grep(/^$produrar/, em thefiles); > > ser antes do que: > > foreach my $f (@thefiles) > > ? > > e ae o foreach ser de @arquivos? > > Ole > > 2010/8/20 Ailton Zacarias > >> Bom dia Amigos >> >> Gostaria de saber onde estou errando ... pq na listagem de arquivos ele >> duplica os nomes de arquivos??? Obrigado! >> >> >> use strict; >> use warnings; >> >> my $diretorio="C:/Tmp/e-Mails/ENVIADOS"; >> opendir(IMD, $diretorio) || die("Cannot open directory"); >> my @thefiles= readdir(IMD); >> closedir(IMD); >> >> my $produrar = 'ALLTASKS'; >> >> open(ARQ1,">Lista.html"); >> print ARQ1 "Listagem de arquivos\n"; >> print ARQ1 "

Listagem de Arquivos\n"; >> >> >> foreach my $f (@thefiles) >> { >> unless ( ($f eq ".") || ($f eq "..") ) >> { >> my @arquivos = grep(/^$produrar/, em thefiles); >> foreach my $Nome(@arquivos) >> { >> print ARQ1 "
> href=".$diretorio."/".$Nome.">".$Nome."
"; >> } >> } >> } >> >> print ARQ1 "\n"; >> close(ARQ1); >> >> >> >> >> -- >> Ailton Zacarias >> F4 Computer ? Soluções em Tecnologia da Informação >> Tel: 55 +11 4062-0180 (Ailton) >> Cel: 55 +11 8405-8334 >> MSN: ailton em f4computer.com >> Skype: ailton.zacarias >> http://www.f4computer.com >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > ######################################## > Quem Leva Brincadeira somente por Brincadeira > E Sério somente Sério > De Fato Desentendeu Ambos - Piet Hein > ######################################## > Ole Peter Smith, IME, UFG > http://www.mat.ufg.br - ole at mat.ufg.br > ###################################### > Live sure is a Mystery to be Lived > Not a Problem to be Solved > ###################################### > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Ailton Zacarias F4 Computer ? Soluções em Tecnologia da Informação Tel: 55 +11 4062-0180 (Ailton) Cel: 55 +11 8405-8334 MSN: ailton em f4computer.com Skype: ailton.zacarias http://www.f4computer.com -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From nuba em fastmail.fm Mon Aug 23 09:18:28 2010 From: nuba em fastmail.fm (Nuba Princigalli) Date: Mon, 23 Aug 2010 13:18:28 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= Message-ID: <1282580308.28008.1391313431@webmail.messagingengine.com> Caros, É com grande satisfação que anunciamos oficialmente aos confrades da Rio-PM o nosso próximo Encontro Técnico! http://rio.pm.org/enc_tecnicos.pl Esperamos que recebam com o mesmo carinho com que os organizadores estão preparando o evento, e encaminhem também para quem acreditem que possa se beneficiar. Ainda estamos trabalhando na programação, então se você tiver interesse em apresentar algo sobre Perl durante o evento, envie um email para a lista! Segue o que já está confirmado: TEMA ==== "Esquenta" para o YAPC::Brasil 2010!!!! QUANDO, ONDE E COMO CHEGAR ========================== Domingo, 19 de setembro de 2010, a partir das 13h. ESTUDODEBOM - O Clube do Aprender Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? 22251-050 - Tel. (21) 2554-7408 O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e dicas de linhas de ônibus no site do encontro: http://rio.pm.org/enc_tecnicos.pl INSCRIÇÕES ========== O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC ATENÇÃO: VAGAS LIMITADAS! Assim que as vagas forem preenchidas, informaremos no site e aqui na lista. A partir desse ponto, a lista de inscrição funcionará como uma lista de espera. GRADE PRELIMINAR ================ Como foi dito aí em cima, ainda estamos recebendo palestras e montando a grade! Destaques até o momento: * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida sobre a teoria do protocolo AMQP e prática da implementação RabbitMQ, além de outras soluções no CPAN. Rondon é líder da São Paulo Perl Mongers e vem prestigiar o nosso evento! :) * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa mais cobiçada do momento. Arduino + Perl = <3 * Desenvolvimento de Exploits com Perl (Oscar Marques) - usando Perl para desenvolver exploits e testar a segurança da nossa rede, aplicativos, sistemas e etc. Serão mostrados exemplos de criação de arquivos, uso de sockets, fuzzing e geração de códigos para explorar vulnerabilidades remotas e locais. * Jogos em Perl (Breno G. de Oliveira) - Como tirar proveito dos novos bindings de SDL em Perl para criar jogos divertidos rapida e facilmente. BÔNUS ===== Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da casa. Quem tiver dotes culinários e quiser complementar com algum tira-gosto para os confrades, fique à vontade! :) PROGRAMAÇÃO SOCIAL ================== Na noite do dia anterior, sábado, 18 de setembro de 2010, faremos alguma coisa. Não sabemos ainda o quê, mas provavelmente envolverá testar a resistência etílica dos palestrantes, participantes e organizadores! :) Será discutido na lista. DÚVIDAS ======= Como estamos entretidos nos preparativos, pedimos que eventuais dúvidas e sugestões sejam enviadas preferencialmente à lista da Rio-PM (rio-pm em pm.org) [1]. Caso você precise contatar a organização diretamente, fale com Breno (breno em rio.pm.org, 8821-2155). E aí? Tá esperando o quê?! Inscreva-se já! =) [1] Se você recebeu essa mensagem, e não está ainda na Rio-PM, agora é a hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm -- Nuba R. Princigalli nuba em pauleira.com http://pauleira.com @nprincigalli Discipline is not an end in itself, just a means to an end. - King Crimson From oscarbm em gmail.com Mon Aug 23 09:51:45 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Mon, 23 Aug 2010 13:51:45 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: <1282580308.28008.1391313431@webmail.messagingengine.com> References: <1282580308.28008.1391313431@webmail.messagingengine.com> Message-ID: Eu ainda não confirmo a minha presença, pois provavelmente eu vá estar de férias nesta data. Porém ainda depende de algumas informações para saber se realmente vou ter condições de tirar férias. Até lá, vamos levar o que já está. Abraços Em 23 de agosto de 2010 13:18, Nuba Princigalli escreveu: > Caros, > > É com grande satisfação que anunciamos oficialmente aos confrades da > Rio-PM o nosso próximo Encontro Técnico! > > http://rio.pm.org/enc_tecnicos.pl > > Esperamos que recebam com o mesmo carinho com que os organizadores estão > preparando o evento, e encaminhem também para quem acreditem que possa > se beneficiar. > > Ainda estamos trabalhando na programação, então se você tiver interesse > em apresentar algo sobre Perl durante o evento, envie um email para a > lista! Segue o que já está confirmado: > > > TEMA > ==== > > "Esquenta" para o YAPC::Brasil 2010!!!! > > > QUANDO, ONDE E COMO CHEGAR > ========================== > > Domingo, 19 de setembro de 2010, a partir das 13h. > > ESTUDODEBOM - O Clube do Aprender > Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? 22251-050 - Tel. (21) > 2554-7408 > > O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e dicas de > linhas de ônibus no site do encontro: > > http://rio.pm.org/enc_tecnicos.pl > > > INSCRIÇÕES > ========== > > O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC > > ATENÇÃO: VAGAS LIMITADAS! > > Assim que as vagas forem preenchidas, informaremos no site e aqui na > lista. A partir desse ponto, a lista de inscrição funcionará como uma > lista de espera. > > > GRADE PRELIMINAR > ================ > > Como foi dito aí em cima, ainda estamos recebendo palestras e montando a > grade! Destaques até o momento: > > * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida sobre a teoria do > protocolo AMQP e prática da implementação RabbitMQ, além de outras > soluções no CPAN. Rondon é líder da São Paulo Perl Mongers e vem > prestigiar o nosso evento! :) > > * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa mais cobiçada > do momento. Arduino + Perl = <3 > > * Desenvolvimento de Exploits com Perl (Oscar Marques) - usando Perl > para desenvolver exploits e testar a segurança da nossa rede, > aplicativos, sistemas e etc. Serão mostrados exemplos de criação de > arquivos, uso de sockets, fuzzing e geração de códigos para explorar > vulnerabilidades remotas e locais. > > * Jogos em Perl (Breno G. de Oliveira) - Como tirar proveito dos novos > bindings de SDL em Perl para criar jogos divertidos rapida e facilmente. > > > BÔNUS > ===== > > Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da casa. Quem > tiver dotes culinários e quiser complementar com algum tira-gosto para > os confrades, fique à vontade! :) > > > PROGRAMAÇÃO SOCIAL > ================== > > Na noite do dia anterior, sábado, 18 de setembro de 2010, faremos alguma > coisa. Não sabemos ainda o quê, mas provavelmente envolverá testar a > resistência etílica dos palestrantes, participantes e organizadores! :) > Será discutido na lista. > > > DÚVIDAS > ======= > > Como estamos entretidos nos preparativos, pedimos que eventuais dúvidas > e sugestões sejam enviadas preferencialmente à lista da Rio-PM > (rio-pm em pm.org) [1]. > > Caso você precise contatar a organização diretamente, fale com Breno > (breno em rio.pm.org, 8821-2155). > > > E aí? Tá esperando o quê?! Inscreva-se já! =) > > > [1] Se você recebeu essa mensagem, e não está ainda na Rio-PM, agora é a > hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm > > > -- > Nuba R. Princigalli nuba em pauleira.com http://pauleira.com @nprincigalli > Discipline is not an end in itself, just a means to an end. - King Crimson > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Mon Aug 23 10:03:59 2010 From: breno em rio.pm.org (breno) Date: Mon, 23 Aug 2010 14:03:59 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: <1282580308.28008.1391313431@webmail.messagingengine.com> References: <1282580308.28008.1391313431@webmail.messagingengine.com> Message-ID: 2010/8/23 Nuba Princigalli : > BÔNUS > ===== > > Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da casa. Quem > tiver dotes culinários e quiser complementar com algum tira-gosto para > os confrades, fique à vontade! :) > Ouvi dizer que o Samir que vai preparar o brigadeiro :-P From breno em rio.pm.org Mon Aug 23 10:04:44 2010 From: breno em rio.pm.org (breno) Date: Mon, 23 Aug 2010 14:04:44 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: References: <1282580308.28008.1391313431@webmail.messagingengine.com> Message-ID: 2010/8/23 Oscar Marques : > Eu ainda não confirmo a minha presença, pois provavelmente eu vá estar de > férias nesta data. > Porém ainda depende de algumas informações para saber se realmente vou ter > condições de tirar férias. > Até lá, vamos levar o que já está. > Abraços > Beleza, Oscar! Vamos ficar esperando a sua confirmação então :-) []s -b From estranho em diogoleal.com Mon Aug 23 10:04:57 2010 From: estranho em diogoleal.com (Diogo Leal) Date: Mon, 23 Aug 2010 14:04:57 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: <1282580308.28008.1391313431@webmail.messagingengine.com> References: <1282580308.28008.1391313431@webmail.messagingengine.com> Message-ID: O local da pra quantas pessoas? (já fiz a minha inscrição) Diogo Leal [aka estranho] http://diogoleal.com msn | gtalk: estranho em diogoleal.com 2010/8/23 Nuba Princigalli : > Caros, > > É com grande satisfação que anunciamos oficialmente aos confrades da > Rio-PM o nosso próximo Encontro Técnico! > > http://rio.pm.org/enc_tecnicos.pl > > Esperamos que recebam com o mesmo carinho com que os organizadores estão > preparando o evento, e encaminhem também para quem acreditem que possa > se beneficiar. > > Ainda estamos trabalhando na programação, então se você tiver interesse > em apresentar algo sobre Perl durante o evento, envie um email para a > lista! Segue o que já está confirmado: > > > TEMA > ==== > > "Esquenta" para o YAPC::Brasil 2010!!!! > > > QUANDO, ONDE E COMO CHEGAR > ========================== > > Domingo, 19 de setembro de 2010, a partir das 13h. > > ESTUDODEBOM - O Clube do Aprender > Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? 22251-050 - Tel. (21) > 2554-7408 > > O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e dicas de > linhas de ônibus no site do encontro: > > http://rio.pm.org/enc_tecnicos.pl > > > INSCRIÇÕES > ========== > > O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC > > ATENÇÃO: VAGAS LIMITADAS! > > Assim que as vagas forem preenchidas, informaremos no site e aqui na > lista. A partir desse ponto, a lista de inscrição funcionará como uma > lista de espera. > > > GRADE PRELIMINAR > ================ > > Como foi dito aí em cima, ainda estamos recebendo palestras e montando a > grade! Destaques até o momento: > > * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida sobre a teoria do > protocolo AMQP e prática da implementação RabbitMQ, além de outras > soluções no CPAN. Rondon é líder da São Paulo Perl Mongers e vem > prestigiar o nosso evento! :) > > * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa mais cobiçada > do momento. Arduino + Perl = <3 > > * Desenvolvimento de Exploits com Perl (Oscar Marques) - usando Perl > para desenvolver exploits e testar a segurança da nossa rede, > aplicativos, sistemas e etc. Serão mostrados exemplos de criação de > arquivos, uso de sockets, fuzzing e geração de códigos para explorar > vulnerabilidades remotas e locais. > > * Jogos em Perl (Breno G. de Oliveira) - Como tirar proveito dos novos > bindings de SDL em Perl para criar jogos divertidos rapida e facilmente. > > > BÔNUS > ===== > > Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da casa. Quem > tiver dotes culinários e quiser complementar com algum tira-gosto para > os confrades, fique à vontade! :) > > > PROGRAMAÇÃO SOCIAL > ================== > > Na noite do dia anterior, sábado, 18 de setembro de 2010, faremos alguma > coisa. Não sabemos ainda o quê, mas provavelmente envolverá testar a > resistência etílica dos palestrantes, participantes e organizadores! :) > Será discutido na lista. > > > DÚVIDAS > ======= > > Como estamos entretidos nos preparativos, pedimos que eventuais dúvidas > e sugestões sejam enviadas preferencialmente à lista da Rio-PM > (rio-pm em pm.org) [1]. > > Caso você precise contatar a organização diretamente, fale com Breno > (breno em rio.pm.org, 8821-2155). > > > E aí? Tá esperando o quê?! Inscreva-se já! =) > > > [1] Se você recebeu essa mensagem, e não está ainda na Rio-PM, agora é a > hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm > > > -- > Nuba R. Princigalli  nuba em pauleira.com  http://pauleira.com  @nprincigalli > Discipline is not an end in itself, just a means to an end. - King Crimson > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm From eu em samircury.eng.br Mon Aug 23 10:08:33 2010 From: eu em samircury.eng.br (Samir Cury) Date: Mon, 23 Aug 2010 14:08:33 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: References: <1282580308.28008.1391313431@webmail.messagingengine.com> Message-ID: Até onde lembro o ESTUDODEBOM fica confortável para até 25, mas o Breno esteve lá e sabe dizer melhor do que eu. E vai rolar brigadeiro mesmo =D Abracos, Samir 2010/8/23 Diogo Leal > O local da pra quantas pessoas? > > (já fiz a minha inscrição) > > Diogo Leal [aka estranho] > http://diogoleal.com > msn | gtalk: estranho em diogoleal.com > > > > > 2010/8/23 Nuba Princigalli : > > Caros, > > > > É com grande satisfação que anunciamos oficialmente aos confrades da > > Rio-PM o nosso próximo Encontro Técnico! > > > > http://rio.pm.org/enc_tecnicos.pl > > > > Esperamos que recebam com o mesmo carinho com que os organizadores estão > > preparando o evento, e encaminhem também para quem acreditem que possa > > se beneficiar. > > > > Ainda estamos trabalhando na programação, então se você tiver interesse > > em apresentar algo sobre Perl durante o evento, envie um email para a > > lista! Segue o que já está confirmado: > > > > > > TEMA > > ==== > > > > "Esquenta" para o YAPC::Brasil 2010!!!! > > > > > > QUANDO, ONDE E COMO CHEGAR > > ========================== > > > > Domingo, 19 de setembro de 2010, a partir das 13h. > > > > ESTUDODEBOM - O Clube do Aprender > > Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? 22251-050 - Tel. (21) > > 2554-7408 > > > > O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e dicas de > > linhas de ônibus no site do encontro: > > > > http://rio.pm.org/enc_tecnicos.pl > > > > > > INSCRIÇÕES > > ========== > > > > O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC > > > > ATENÇÃO: VAGAS LIMITADAS! > > > > Assim que as vagas forem preenchidas, informaremos no site e aqui na > > lista. A partir desse ponto, a lista de inscrição funcionará como uma > > lista de espera. > > > > > > GRADE PRELIMINAR > > ================ > > > > Como foi dito aí em cima, ainda estamos recebendo palestras e montando a > > grade! Destaques até o momento: > > > > * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida sobre a teoria do > > protocolo AMQP e prática da implementação RabbitMQ, além de outras > > soluções no CPAN. Rondon é líder da São Paulo Perl Mongers e vem > > prestigiar o nosso evento! :) > > > > * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa mais cobiçada > > do momento. Arduino + Perl = <3 > > > > * Desenvolvimento de Exploits com Perl (Oscar Marques) - usando Perl > > para desenvolver exploits e testar a segurança da nossa rede, > > aplicativos, sistemas e etc. Serão mostrados exemplos de criação de > > arquivos, uso de sockets, fuzzing e geração de códigos para explorar > > vulnerabilidades remotas e locais. > > > > * Jogos em Perl (Breno G. de Oliveira) - Como tirar proveito dos novos > > bindings de SDL em Perl para criar jogos divertidos rapida e facilmente. > > > > > > BÔNUS > > ===== > > > > Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da casa. Quem > > tiver dotes culinários e quiser complementar com algum tira-gosto para > > os confrades, fique à vontade! :) > > > > > > PROGRAMAÇÃO SOCIAL > > ================== > > > > Na noite do dia anterior, sábado, 18 de setembro de 2010, faremos alguma > > coisa. Não sabemos ainda o quê, mas provavelmente envolverá testar a > > resistência etílica dos palestrantes, participantes e organizadores! :) > > Será discutido na lista. > > > > > > DÚVIDAS > > ======= > > > > Como estamos entretidos nos preparativos, pedimos que eventuais dúvidas > > e sugestões sejam enviadas preferencialmente à lista da Rio-PM > > (rio-pm em pm.org) [1]. > > > > Caso você precise contatar a organização diretamente, fale com Breno > > (breno em rio.pm.org, 8821-2155). > > > > > > E aí? Tá esperando o quê?! Inscreva-se já! =) > > > > > > [1] Se você recebeu essa mensagem, e não está ainda na Rio-PM, agora é a > > hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > -- > > Nuba R. Princigalli nuba em pauleira.com http://pauleira.com @nprincigalli > > Discipline is not an end in itself, just a means to an end. - King > Crimson > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Mon Aug 23 10:10:25 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Mon, 23 Aug 2010 14:10:25 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: References: <1282580308.28008.1391313431@webmail.messagingengine.com> Message-ID: Samir, vou te passar um ingrediente especial pro brigadeiro. Com certeza a galera vai ficar viciada em briga... ops ET do RIo PM :) 2010/8/23 Samir Cury > Até onde lembro o ESTUDODEBOM fica confortável para até 25, mas o Breno > esteve lá e sabe dizer melhor do que eu. > > E vai rolar brigadeiro mesmo =D > > Abracos, > Samir > > 2010/8/23 Diogo Leal > > O local da pra quantas pessoas? >> >> (já fiz a minha inscrição) >> >> Diogo Leal [aka estranho] >> http://diogoleal.com >> msn | gtalk: estranho em diogoleal.com >> >> >> >> >> 2010/8/23 Nuba Princigalli : >> > Caros, >> > >> > É com grande satisfação que anunciamos oficialmente aos confrades da >> > Rio-PM o nosso próximo Encontro Técnico! >> > >> > http://rio.pm.org/enc_tecnicos.pl >> > >> > Esperamos que recebam com o mesmo carinho com que os organizadores estão >> > preparando o evento, e encaminhem também para quem acreditem que possa >> > se beneficiar. >> > >> > Ainda estamos trabalhando na programação, então se você tiver interesse >> > em apresentar algo sobre Perl durante o evento, envie um email para a >> > lista! Segue o que já está confirmado: >> > >> > >> > TEMA >> > ==== >> > >> > "Esquenta" para o YAPC::Brasil 2010!!!! >> > >> > >> > QUANDO, ONDE E COMO CHEGAR >> > ========================== >> > >> > Domingo, 19 de setembro de 2010, a partir das 13h. >> > >> > ESTUDODEBOM - O Clube do Aprender >> > Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? 22251-050 - Tel. (21) >> > 2554-7408 >> > >> > O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e dicas de >> > linhas de ônibus no site do encontro: >> > >> > http://rio.pm.org/enc_tecnicos.pl >> > >> > >> > INSCRIÇÕES >> > ========== >> > >> > O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC >> > >> > ATENÇÃO: VAGAS LIMITADAS! >> > >> > Assim que as vagas forem preenchidas, informaremos no site e aqui na >> > lista. A partir desse ponto, a lista de inscrição funcionará como uma >> > lista de espera. >> > >> > >> > GRADE PRELIMINAR >> > ================ >> > >> > Como foi dito aí em cima, ainda estamos recebendo palestras e montando a >> > grade! Destaques até o momento: >> > >> > * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida sobre a teoria do >> > protocolo AMQP e prática da implementação RabbitMQ, além de outras >> > soluções no CPAN. Rondon é líder da São Paulo Perl Mongers e vem >> > prestigiar o nosso evento! :) >> > >> > * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa mais cobiçada >> > do momento. Arduino + Perl = <3 >> > >> > * Desenvolvimento de Exploits com Perl (Oscar Marques) - usando Perl >> > para desenvolver exploits e testar a segurança da nossa rede, >> > aplicativos, sistemas e etc. Serão mostrados exemplos de criação de >> > arquivos, uso de sockets, fuzzing e geração de códigos para explorar >> > vulnerabilidades remotas e locais. >> > >> > * Jogos em Perl (Breno G. de Oliveira) - Como tirar proveito dos novos >> > bindings de SDL em Perl para criar jogos divertidos rapida e facilmente. >> > >> > >> > BÔNUS >> > ===== >> > >> > Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da casa. Quem >> > tiver dotes culinários e quiser complementar com algum tira-gosto para >> > os confrades, fique à vontade! :) >> > >> > >> > PROGRAMAÇÃO SOCIAL >> > ================== >> > >> > Na noite do dia anterior, sábado, 18 de setembro de 2010, faremos alguma >> > coisa. Não sabemos ainda o quê, mas provavelmente envolverá testar a >> > resistência etílica dos palestrantes, participantes e organizadores! :) >> > Será discutido na lista. >> > >> > >> > DÚVIDAS >> > ======= >> > >> > Como estamos entretidos nos preparativos, pedimos que eventuais dúvidas >> > e sugestões sejam enviadas preferencialmente à lista da Rio-PM >> > (rio-pm em pm.org) [1]. >> > >> > Caso você precise contatar a organização diretamente, fale com Breno >> > (breno em rio.pm.org, 8821-2155). >> > >> > >> > E aí? Tá esperando o quê?! Inscreva-se já! =) >> > >> > >> > [1] Se você recebeu essa mensagem, e não está ainda na Rio-PM, agora é a >> > hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm >> > >> > >> > -- >> > Nuba R. Princigalli nuba em pauleira.com http://pauleira.com @nprincigalli >> > Discipline is not an end in itself, just a means to an end. - King >> Crimson >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Mon Aug 23 10:16:33 2010 From: eu em samircury.eng.br (Samir Cury) Date: Mon, 23 Aug 2010 14:16:33 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: References: <1282580308.28008.1391313431@webmail.messagingengine.com> Message-ID: galera, relaxa que o brigadeiro não vai estar "batizado" não hahahhaha 2010/8/23 Oscar Marques > Samir, vou te passar um ingrediente especial pro brigadeiro. > Com certeza a galera vai ficar viciada em briga... ops ET do RIo PM :) > > 2010/8/23 Samir Cury > > Até onde lembro o ESTUDODEBOM fica confortável para até 25, mas o Breno >> esteve lá e sabe dizer melhor do que eu. >> >> E vai rolar brigadeiro mesmo =D >> >> Abracos, >> Samir >> >> 2010/8/23 Diogo Leal >> >> O local da pra quantas pessoas? >>> >>> (já fiz a minha inscrição) >>> >>> Diogo Leal [aka estranho] >>> http://diogoleal.com >>> msn | gtalk: estranho em diogoleal.com >>> >>> >>> >>> >>> 2010/8/23 Nuba Princigalli : >>> > Caros, >>> > >>> > É com grande satisfação que anunciamos oficialmente aos confrades da >>> > Rio-PM o nosso próximo Encontro Técnico! >>> > >>> > http://rio.pm.org/enc_tecnicos.pl >>> > >>> > Esperamos que recebam com o mesmo carinho com que os organizadores >>> estão >>> > preparando o evento, e encaminhem também para quem acreditem que possa >>> > se beneficiar. >>> > >>> > Ainda estamos trabalhando na programação, então se você tiver interesse >>> > em apresentar algo sobre Perl durante o evento, envie um email para a >>> > lista! Segue o que já está confirmado: >>> > >>> > >>> > TEMA >>> > ==== >>> > >>> > "Esquenta" para o YAPC::Brasil 2010!!!! >>> > >>> > >>> > QUANDO, ONDE E COMO CHEGAR >>> > ========================== >>> > >>> > Domingo, 19 de setembro de 2010, a partir das 13h. >>> > >>> > ESTUDODEBOM - O Clube do Aprender >>> > Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? 22251-050 - Tel. (21) >>> > 2554-7408 >>> > >>> > O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e dicas de >>> > linhas de ônibus no site do encontro: >>> > >>> > http://rio.pm.org/enc_tecnicos.pl >>> > >>> > >>> > INSCRIÇÕES >>> > ========== >>> > >>> > O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC >>> > >>> > ATENÇÃO: VAGAS LIMITADAS! >>> > >>> > Assim que as vagas forem preenchidas, informaremos no site e aqui na >>> > lista. A partir desse ponto, a lista de inscrição funcionará como uma >>> > lista de espera. >>> > >>> > >>> > GRADE PRELIMINAR >>> > ================ >>> > >>> > Como foi dito aí em cima, ainda estamos recebendo palestras e montando >>> a >>> > grade! Destaques até o momento: >>> > >>> > * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida sobre a teoria do >>> > protocolo AMQP e prática da implementação RabbitMQ, além de outras >>> > soluções no CPAN. Rondon é líder da São Paulo Perl Mongers e vem >>> > prestigiar o nosso evento! :) >>> > >>> > * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa mais >>> cobiçada >>> > do momento. Arduino + Perl = <3 >>> > >>> > * Desenvolvimento de Exploits com Perl (Oscar Marques) - usando Perl >>> > para desenvolver exploits e testar a segurança da nossa rede, >>> > aplicativos, sistemas e etc. Serão mostrados exemplos de criação de >>> > arquivos, uso de sockets, fuzzing e geração de códigos para explorar >>> > vulnerabilidades remotas e locais. >>> > >>> > * Jogos em Perl (Breno G. de Oliveira) - Como tirar proveito dos novos >>> > bindings de SDL em Perl para criar jogos divertidos rapida e >>> facilmente. >>> > >>> > >>> > BÔNUS >>> > ===== >>> > >>> > Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da casa. Quem >>> > tiver dotes culinários e quiser complementar com algum tira-gosto para >>> > os confrades, fique à vontade! :) >>> > >>> > >>> > PROGRAMAÇÃO SOCIAL >>> > ================== >>> > >>> > Na noite do dia anterior, sábado, 18 de setembro de 2010, faremos >>> alguma >>> > coisa. Não sabemos ainda o quê, mas provavelmente envolverá testar a >>> > resistência etílica dos palestrantes, participantes e organizadores! :) >>> > Será discutido na lista. >>> > >>> > >>> > DÚVIDAS >>> > ======= >>> > >>> > Como estamos entretidos nos preparativos, pedimos que eventuais dúvidas >>> > e sugestões sejam enviadas preferencialmente à lista da Rio-PM >>> > (rio-pm em pm.org) [1]. >>> > >>> > Caso você precise contatar a organização diretamente, fale com Breno >>> > (breno em rio.pm.org, 8821-2155). >>> > >>> > >>> > E aí? Tá esperando o quê?! Inscreva-se já! =) >>> > >>> > >>> > [1] Se você recebeu essa mensagem, e não está ainda na Rio-PM, agora é >>> a >>> > hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> > >>> > -- >>> > Nuba R. Princigalli nuba em pauleira.com http://pauleira.com @nprincigalli >>> > Discipline is not an end in itself, just a means to an end. - King >>> Crimson >>> > >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From thiago em aware.com.br Mon Aug 23 10:16:06 2010 From: thiago em aware.com.br (Thiago Rondon) Date: Mon, 23 Aug 2010 14:16:06 -0300 Subject: [Rio-pm] =?utf-8?q?Encontro_T=C3=A9cnico_da_Rio-PM=3A_=22Esquenta?= =?utf-8?q?=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: <1282580308.28008.1391313431@webmail.messagingengine.com> References: <1282580308.28008.1391313431@webmail.messagingengine.com> Message-ID: <4C72ACD6.10305@aware.com.br> Opa! Eu estarei lá já no sábado. :-) A previsão é que chegue por volta das 18:00, se vocês quiserem marcar o algum ES no sábado, me digam o bar/local que eu saiu do aeroporto e chego já para guardar a mesa. :-) Abs! -Thiago Rondon Em 23/08/10 13:18, Nuba Princigalli escreveu: > Caros, > > É com grande satisfação que anunciamos oficialmente aos confrades da > Rio-PM o nosso próximo Encontro Técnico! > > http://rio.pm.org/enc_tecnicos.pl > > Esperamos que recebam com o mesmo carinho com que os organizadores estão > preparando o evento, e encaminhem também para quem acreditem que possa > se beneficiar. > > Ainda estamos trabalhando na programação, então se você tiver interesse > em apresentar algo sobre Perl durante o evento, envie um email para a > lista! Segue o que já está confirmado: > > > TEMA > ==== > > "Esquenta" para o YAPC::Brasil 2010!!!! > > > QUANDO, ONDE E COMO CHEGAR > ========================== > > Domingo, 19 de setembro de 2010, a partir das 13h. > > ESTUDODEBOM - O Clube do Aprender > Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? 22251-050 - Tel. (21) > 2554-7408 > > O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e dicas de > linhas de ônibus no site do encontro: > > http://rio.pm.org/enc_tecnicos.pl > > > INSCRIÇÕES > ========== > > O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC > > ATENÇÃO: VAGAS LIMITADAS! > > Assim que as vagas forem preenchidas, informaremos no site e aqui na > lista. A partir desse ponto, a lista de inscrição funcionará como uma > lista de espera. > > > GRADE PRELIMINAR > ================ > > Como foi dito aí em cima, ainda estamos recebendo palestras e montando a > grade! Destaques até o momento: > > * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida sobre a teoria do > protocolo AMQP e prática da implementação RabbitMQ, além de outras > soluções no CPAN. Rondon é líder da São Paulo Perl Mongers e vem > prestigiar o nosso evento! :) > > * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa mais cobiçada > do momento. Arduino + Perl =<3 > > * Desenvolvimento de Exploits com Perl (Oscar Marques) - usando Perl > para desenvolver exploits e testar a segurança da nossa rede, > aplicativos, sistemas e etc. Serão mostrados exemplos de criação de > arquivos, uso de sockets, fuzzing e geração de códigos para explorar > vulnerabilidades remotas e locais. > > * Jogos em Perl (Breno G. de Oliveira) - Como tirar proveito dos novos > bindings de SDL em Perl para criar jogos divertidos rapida e facilmente. > > > BÔNUS > ===== > > Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da casa. Quem > tiver dotes culinários e quiser complementar com algum tira-gosto para > os confrades, fique à vontade! :) > > > PROGRAMAÇÃO SOCIAL > ================== > > Na noite do dia anterior, sábado, 18 de setembro de 2010, faremos alguma > coisa. Não sabemos ainda o quê, mas provavelmente envolverá testar a > resistência etílica dos palestrantes, participantes e organizadores! :) > Será discutido na lista. > > > DÚVIDAS > ======= > > Como estamos entretidos nos preparativos, pedimos que eventuais dúvidas > e sugestões sejam enviadas preferencialmente à lista da Rio-PM > (rio-pm em pm.org) [1]. > > Caso você precise contatar a organização diretamente, fale com Breno > (breno em rio.pm.org, 8821-2155). > > > E aí? Tá esperando o quê?! Inscreva-se já! =) > > > [1] Se você recebeu essa mensagem, e não está ainda na Rio-PM, agora é a > hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm > > > -- > Nuba R. Princigalli nuba em pauleira.com http://pauleira.com @nprincigalli > Discipline is not an end in itself, just a means to an end. - King Crimson > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm From tiago.peczenyj em gmail.com Mon Aug 23 10:27:13 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Mon, 23 Aug 2010 14:27:13 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: <4C72ACD6.10305@aware.com.br> References: <1282580308.28008.1391313431@webmail.messagingengine.com> <4C72ACD6.10305@aware.com.br> Message-ID: Eu vou. 2010/8/23 Thiago Rondon : > > Opa! > > Eu estarei lá já no sábado. :-) > > A previsão é que chegue por volta das 18:00, se vocês quiserem marcar o > algum ES no sábado, me digam o bar/local que eu saiu do aeroporto e chego já > para guardar a mesa. :-) > > Abs! > -Thiago Rondon > > > Em 23/08/10 13:18, Nuba Princigalli escreveu: >> >> Caros, >> >> É com grande satisfação que anunciamos oficialmente aos confrades da >> Rio-PM o nosso próximo Encontro Técnico! >> >> http://rio.pm.org/enc_tecnicos.pl >> >> Esperamos que recebam com o mesmo carinho com que os organizadores estão >> preparando o evento, e encaminhem também para quem acreditem que possa >> se beneficiar. >> >> Ainda estamos trabalhando na programação, então se você tiver interesse >> em apresentar algo sobre Perl durante o evento, envie um email para a >> lista! Segue o que já está confirmado: >> >> >> TEMA >> ==== >> >> "Esquenta" para o YAPC::Brasil 2010!!!! >> >> >> QUANDO, ONDE E COMO CHEGAR >> ========================== >> >> Domingo, 19 de setembro de 2010, a partir das 13h. >> >> ESTUDODEBOM - O Clube do Aprender >> Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? 22251-050 - Tel. (21) >> 2554-7408 >> >> O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e dicas de >> linhas de ônibus no site do encontro: >> >> http://rio.pm.org/enc_tecnicos.pl >> >> >> INSCRIÇÕES >> ========== >> >> O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC >> >> ATENÇÃO: VAGAS LIMITADAS! >> >> Assim que as vagas forem preenchidas, informaremos no site e aqui na >> lista. A partir desse ponto, a lista de inscrição funcionará como uma >> lista de espera. >> >> >> GRADE PRELIMINAR >> ================ >> >> Como foi dito aí em cima, ainda estamos recebendo palestras e montando a >> grade! Destaques até o momento: >> >> * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida sobre a teoria do >> protocolo AMQP e prática da implementação RabbitMQ, além de outras >> soluções no CPAN. Rondon é líder da São Paulo Perl Mongers e vem >> prestigiar o nosso evento! :) >> >> * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa mais cobiçada >> do momento. Arduino + Perl =<3 >> >> * Desenvolvimento de Exploits com Perl (Oscar Marques) - usando Perl >> para desenvolver exploits e testar a segurança da nossa rede, >> aplicativos, sistemas e etc. Serão mostrados exemplos de criação de >> arquivos, uso de sockets, fuzzing e geração de códigos para explorar >> vulnerabilidades remotas e locais. >> >> * Jogos em Perl (Breno G. de Oliveira) - Como tirar proveito dos novos >> bindings de SDL em Perl para criar jogos divertidos rapida e facilmente. >> >> >> BÔNUS >> ===== >> >> Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da casa. Quem >> tiver dotes culinários e quiser complementar com algum tira-gosto para >> os confrades, fique à vontade! :) >> >> >> PROGRAMAÇÃO SOCIAL >> ================== >> >> Na noite do dia anterior, sábado, 18 de setembro de 2010, faremos alguma >> coisa. Não sabemos ainda o quê, mas provavelmente envolverá testar a >> resistência etílica dos palestrantes, participantes e organizadores! :) >> Será discutido na lista. >> >> >> DÚVIDAS >> ======= >> >> Como estamos entretidos nos preparativos, pedimos que eventuais dúvidas >> e sugestões sejam enviadas preferencialmente à lista da Rio-PM >> (rio-pm em pm.org) [1]. >> >> Caso você precise contatar a organização diretamente, fale com Breno >> (breno em rio.pm.org, 8821-2155). >> >> >> E aí? Tá esperando o quê?! Inscreva-se já! =) >> >> >> [1] Se você recebeu essa mensagem, e não está ainda na Rio-PM, agora é a >> hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> -- >> Nuba R. Princigalli  nuba em pauleira.com  http://pauleira.com  @nprincigalli >> Discipline is not an end in itself, just a means to an end. - King Crimson >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br From marciodesouzaferreira em gmail.com Mon Aug 23 16:02:22 2010 From: marciodesouzaferreira em gmail.com (Marcio Ferreira) Date: Mon, 23 Aug 2010 20:02:22 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= Message-ID: Alguém indica um Hotel próximo ao local (bom e barato) ? valeu Marcio Ferreira -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Mon Aug 23 16:31:33 2010 From: breno em rio.pm.org (breno) Date: Mon, 23 Aug 2010 20:31:33 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: References: Message-ID: Oi Marcio, o evento é do lado do metrô *mesmo*, então qualquer lugar que você fique, recomendo que escolha um próximo ao metrô. Tem alguns hotéis baratos no Largo do Machado e Catete, outra opção seria procurar por algo em Botafogo mesmo. Onde quer que fique, avisa pra gente que a gente dá as direções a pé, de ônibus ou de metrô. Se bobear vc ganha até carona =) []s -b 2010/8/23 Marcio Ferreira : > Alguém indica um Hotel próximo ao local (bom e barato) ? valeu > > Marcio Ferreira > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From daniel.oliveira.mantovani em gmail.com Mon Aug 23 17:19:36 2010 From: daniel.oliveira.mantovani em gmail.com (Daniel de Oliveira Mantovani) Date: Mon, 23 Aug 2010 21:19:36 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Tradu=E7=E3o_da_documenta=E7=E3o_oficial_?= =?iso-8859-1?q?do_Perl?= Message-ID: Há alguns anos atrás, o Solli começou a ver um projeto de tradução da documentação do Perl para o português brasileiro. Em paralelo, com a criação da wiki da comunidade (perl.org.br), Joênio, Nelson e cia. fizeram a iniciativa virar algo colaborativo e começaram a traduzir a documentação toda. A comunidade Perl participou bastante, mas o projeto aos poucos foi esfriando. Agora vem a novidade: o Breno juntou toda documentação feita até agora usando o POD2::Base do Adriano e lançou o POD2::PT_BR no CPAN! Podemos ver a documentação pelo CPAN em http://search.cpan.org/dist/POD2-PT_BR/ Ao instalar o módulo, vc pode ver a documentação traduzida direto do perldoc! Por exemplo: perldoc -L PT_BR perlintro Como o -L bota o original sempre que a tradução não tiver disponível, podemos fazer um alias na linha de comando: alias perldoc='perldoc -L PT_BR' E passar a usar diretamente: perldoc perlintro O Breno Oliveira no canal do #brasil-pm (irc.org.perl) nos incentivou a continuar a tradução desses documentos, http://github.com/garu/POD2-PT_BR Eu estou traduzindo agora o perlperf, que é um manual que fala sobre optimização. Seria muito bom se a comunidade se unisse para essa projeto de tradução. Por favor, entrem no irc.perl.org #brasil-pm http://bit.ly/bIdeef Peçam para o Breno (garu), o status de commiter no repositório da tradução, o link do repositório está acima. Se você não quiser entrar no IRC, mande um e-mail para o Breno, com o seu usuário do Github. "breno" , Não esqucendo, que vocês podem traduzir pela wiki também no Github. Se você não tem conta no Github, não tem problema também, mande um e-mail para ele com o documento que você gostaria traduzir, só para ele checar se não tem ninguém traduzindo, aí você traduz e manda o documento por e-mail. Obrigado pela atenção de vocês. Ter essa documentação traduzida para português é muito importante para a comunidade brasileira. -- http://www.danielmantovani.com "If you?ve never written anything thoughtful, then you?ve never had any difficult, important, or interesting thoughts. That?s the secret: people who don?t write, are people who don?t think." From cristina_amazonas em yahoo.com.br Mon Aug 23 19:20:21 2010 From: cristina_amazonas em yahoo.com.br (Cristina Amazonas) Date: Mon, 23 Aug 2010 19:20:21 -0700 (PDT) Subject: [Rio-pm] =?utf-8?q?Encontro_T=C3=A9cnico_da_Rio-PM=3A_=22Esquenta?= =?utf-8?q?=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: Message-ID: <767101.50736.qm@web53502.mail.re2.yahoo.com> --- Em seg, 23/8/10, Tiago Peczenyj escreveu: De: Tiago Peczenyj Assunto: Re: [Rio-pm] Encontro Técnico da Rio-PM: "Esquenta" para o YAPC::Brasil 2010! Para: "Perl Mongers Rio de Janeiro" Data: Segunda-feira, 23 de Agosto de 2010, 14:27 Eu vou. 2010/8/23 Thiago Rondon : > > Opa! > > Eu estarei lá já no sábado. :-) > > A previsão é que chegue por volta das 18:00, se vocês quiserem marcar o > algum ES no sábado, me digam o bar/local que eu saiu do aeroporto e chego já > para guardar a mesa. :-) > > Abs! > -Thiago Rondon > > > Em 23/08/10 13:18, Nuba Princigalli escreveu: >> >> Caros, >> >> É com grande satisfação que anunciamos oficialmente aos confrades da >> Rio-PM o nosso próximo Encontro Técnico! >> >> http://rio.pm.org/enc_tecnicos.pl >> >> Esperamos que recebam com o mesmo carinho com que os organizadores estão >> preparando o evento, e encaminhem também para quem acreditem que possa >> se beneficiar. >> >> Ainda estamos trabalhando na programação, então se você tiver interesse >> em apresentar algo sobre Perl durante o evento, envie um email para a >> lista! Segue o que já está confirmado: >> >> >> TEMA >> ==== >> >> "Esquenta" para o YAPC::Brasil 2010!!!! >> >> >> QUANDO, ONDE E COMO CHEGAR >> ========================== >> >> Domingo, 19 de setembro de 2010, a partir das 13h. >> >> ESTUDODEBOM - O Clube do Aprender >> Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? 22251-050 - Tel. (21) >> 2554-7408 >> >> O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e dicas de >> linhas de ônibus no site do encontro: >> >> http://rio.pm.org/enc_tecnicos.pl >> >> >> INSCRIÇÕES >> ========== >> >> O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC >> >> ATENÇÃO: VAGAS LIMITADAS! >> >> Assim que as vagas forem preenchidas, informaremos no site e aqui na >> lista. A partir desse ponto, a lista de inscrição funcionará como uma >> lista de espera. >> >> >> GRADE PRELIMINAR >> ================ >> >> Como foi dito aí em cima, ainda estamos recebendo palestras e montando a >> grade! Destaques até o momento: >> >> * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida sobre a teoria do >> protocolo AMQP e prática da implementação RabbitMQ, além de outras >> soluções no CPAN. Rondon é líder da São Paulo Perl Mongers e vem >> prestigiar o nosso evento! :) >> >> * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa mais cobiçada >> do momento. Arduino + Perl =<3 >> >> * Desenvolvimento de Exploits com Perl (Oscar Marques) - usando Perl >> para desenvolver exploits e testar a segurança da nossa rede, >> aplicativos, sistemas e etc. Serão mostrados exemplos de criação de >> arquivos, uso de sockets, fuzzing e geração de códigos para explorar >> vulnerabilidades remotas e locais. >> >> * Jogos em Perl (Breno G. de Oliveira) - Como tirar proveito dos novos >> bindings de SDL em Perl para criar jogos divertidos rapida e facilmente. >> >> >> BÔNUS >> ===== >> >> Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da casa. Quem >> tiver dotes culinários e quiser complementar com algum tira-gosto para >> os confrades, fique à vontade! :) >> >> >> PROGRAMAÇÃO SOCIAL >> ================== >> >> Na noite do dia anterior, sábado, 18 de setembro de 2010, faremos alguma >> coisa. Não sabemos ainda o quê, mas provavelmente envolverá testar a >> resistência etílica dos palestrantes, participantes e organizadores! :) >> Será discutido na lista. >> >> >> DÚVIDAS >> ======= >> >> Como estamos entretidos nos preparativos, pedimos que eventuais dúvidas >> e sugestões sejam enviadas preferencialmente à lista da Rio-PM >> (rio-pm em pm.org) [1]. >> >> Caso você precise contatar a organização diretamente, fale com Breno >> (breno em rio.pm.org, 8821-2155). >> >> >> E aí? Tá esperando o quê?! Inscreva-se já! =) >> >> >> [1] Se você recebeu essa mensagem, e não está ainda na Rio-PM, agora é a >> hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> -- >> Nuba R. Princigalli  nuba em pauleira.com  http://pauleira.com  @nprincigalli >> Discipline is not an end in itself, just a means to an end. - King Crimson >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Tue Aug 24 06:00:24 2010 From: eu em samircury.eng.br (Samir Cury) Date: Tue, 24 Aug 2010 10:00:24 -0300 Subject: [Rio-pm] Dojo Lapa quarta-feira Message-ID: E aí monges! Há um tempo eu estava falando com o Oscar de irmos no Dojo pra puxar um Dojo de Perl. O pessoal do Dojo até perguntou por isto há um tempo atrás =P Daí estou pensando em ir semana que vem, alguém mais quer dar um push em @Dojo_monks ? Abraços, Samir -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Tue Aug 24 06:03:59 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Tue, 24 Aug 2010 10:03:59 -0300 Subject: [Rio-pm] Dojo Lapa quarta-feira In-Reply-To: References: Message-ID: Eu to pensando em dar um pulo no Dojo amanhã com uma galera daqui do trampo. Semana que vem seria uma boa se os Monges aparecessem por lá, visto que já fomos convocados e ainda não aparecemos por lá. Quem tiver interesse, levanta a mão! o/ 2010/8/24 Samir Cury > E aí monges! > > Há um tempo eu estava falando com o Oscar de irmos no Dojo pra puxar um > Dojo de Perl. O pessoal do Dojo até perguntou por isto há um tempo atrás =P > > Daí estou pensando em ir semana que vem, alguém mais quer dar um push em > @Dojo_monks ? > > Abraços, > Samir > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Tue Aug 24 06:30:59 2010 From: breno em rio.pm.org (breno) Date: Tue, 24 Aug 2010 10:30:59 -0300 Subject: [Rio-pm] Dojo Lapa quarta-feira In-Reply-To: References: Message-ID: o/ 2010/8/24 Oscar Marques : > Eu to pensando em dar um pulo no Dojo amanhã com uma galera daqui do trampo. > Semana que vem seria uma boa se os Monges aparecessem por lá, visto que já > fomos convocados e ainda não aparecemos por lá. > > Quem tiver interesse, levanta a mão! > > o/ > > 2010/8/24 Samir Cury >> >> E aí monges! >> Há um tempo eu estava falando com o Oscar de irmos no Dojo pra puxar um >> Dojo de Perl. O pessoal do Dojo até perguntou por isto há um tempo atrás =P >> Daí estou pensando em ir semana que vem, alguém mais quer dar um push em >> @Dojo_monks ? >> Abraços, >> Samir >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From ricardo_filipo em yahoo.com.br Tue Aug 24 09:26:54 2010 From: ricardo_filipo em yahoo.com.br (Ricardo Filipo) Date: Tue, 24 Aug 2010 09:26:54 -0700 (PDT) Subject: [Rio-pm] =?utf-8?q?Encontro_T=C3=A9cnico_da_Rio-PM=3A_=22Esquenta?= =?utf-8?q?=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: <1282580308.28008.1391313431@webmail.messagingengine.com> Message-ID: <851545.73049.qm@web33002.mail.mud.yahoo.com> Eu estarei no Rio nestes dias. Se interessar posso falar o CMS YAC. :) Filipo --- Em seg, 23/8/10, Nuba Princigalli escreveu: > De: Nuba Princigalli > Assunto: [Rio-pm] Encontro Técnico da Rio-PM: "Esquenta" para o YAPC::Brasil 2010! > Para: "Perl Mongers Rio de Janeiro" > Data: Segunda-feira, 23 de Agosto de 2010, 13:18 > Caros, > > É com grande satisfação que anunciamos oficialmente aos > confrades da > Rio-PM o nosso próximo Encontro Técnico! > > http://rio.pm.org/enc_tecnicos.pl > > Esperamos que recebam com o mesmo carinho com que os > organizadores estão > preparando o evento, e encaminhem também para quem > acreditem que possa > se beneficiar. > > Ainda estamos trabalhando na programação, então se você > tiver interesse > em apresentar algo sobre Perl durante o evento, envie um > email para a > lista! Segue o que já está confirmado: > > > TEMA > ==== > > "Esquenta" para o YAPC::Brasil 2010!!!! > > > QUANDO, ONDE E COMO CHEGAR > ========================== > > Domingo, 19 de setembro de 2010, a partir das 13h. > > ESTUDODEBOM - O Clube do Aprender > Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? > 22251-050 - Tel. (21) > 2554-7408 > > O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e > dicas de > linhas de ônibus no site do encontro: > > http://rio.pm.org/enc_tecnicos.pl > > > INSCRIÇÕES > ========== > > O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC > > ATENÇÃO: VAGAS LIMITADAS! > > Assim que as vagas forem preenchidas, informaremos no site > e aqui na > lista. A partir desse ponto, a lista de inscrição > funcionará como uma > lista de espera. > > > GRADE PRELIMINAR > ================ > > Como foi dito aí em cima, ainda estamos recebendo > palestras e montando a > grade! Destaques até o momento: > > * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida > sobre a teoria do > protocolo AMQP e prática da implementação RabbitMQ, > além de outras > soluções no CPAN. Rondon é líder da São Paulo Perl > Mongers e vem > prestigiar o nosso evento! :) > > * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa > mais cobiçada > do momento. Arduino + Perl = <3 > > * Desenvolvimento de Exploits com Perl (Oscar Marques) - > usando Perl > para desenvolver exploits e testar a segurança da nossa > rede, > aplicativos, sistemas e etc. Serão mostrados exemplos de > criação de > arquivos, uso de sockets, fuzzing e geração de códigos > para explorar > vulnerabilidades remotas e locais. > > * Jogos em Perl (Breno G. de Oliveira) - Como tirar > proveito dos novos > bindings de SDL em Perl para criar jogos divertidos rapida > e facilmente. > > > BÔNUS > ===== > > Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da > casa. Quem > tiver dotes culinários e quiser complementar com algum > tira-gosto para > os confrades, fique à vontade! :) > > > PROGRAMAÇÃO SOCIAL > ================== > > Na noite do dia anterior, sábado, 18 de setembro de 2010, > faremos alguma > coisa. Não sabemos ainda o quê, mas provavelmente > envolverá testar a > resistência etílica dos palestrantes, participantes e > organizadores! :) > Será discutido na lista. > > > DÚVIDAS > ======= > > Como estamos entretidos nos preparativos, pedimos que > eventuais dúvidas > e sugestões sejam enviadas preferencialmente à lista da > Rio-PM > (rio-pm em pm.org) [1]. > > > Caso você precise contatar a organização diretamente, > fale com Breno > (breno em rio.pm.org, > 8821-2155). > > > E aí? Tá esperando o quê?! Inscreva-se já! =) > > > [1] Se você recebeu essa mensagem, e não está ainda na > Rio-PM, agora é a > hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm > > > -- > Nuba R. Princigalli  nuba em pauleira.com  > http://pauleira.com  @nprincigalli > Discipline is not an end in itself, just a means to an end. > - King Crimson > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm From eu em samircury.eng.br Tue Aug 24 09:35:40 2010 From: eu em samircury.eng.br (Samir Cury) Date: Tue, 24 Aug 2010 13:35:40 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Encontro_T=E9cnico_da_Rio-PM=3A_=22Esquen?= =?iso-8859-1?q?ta=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: <767101.50736.qm@web53502.mail.re2.yahoo.com> References: <767101.50736.qm@web53502.mail.re2.yahoo.com> Message-ID: Cristina : ??? Deves ter esbarrado no hotkey de send tambem, sempre faço isso e até hoje não descobri qual é =P 2010/8/23 Cristina Amazonas > > > --- Em *seg, 23/8/10, Tiago Peczenyj * escreveu: > > > De: Tiago Peczenyj > Assunto: Re: [Rio-pm] Encontro Técnico da Rio-PM: "Esquenta" para o > YAPC::Brasil 2010! > > Para: "Perl Mongers Rio de Janeiro" > Data: Segunda-feira, 23 de Agosto de 2010, 14:27 > > > Eu vou. > > 2010/8/23 Thiago Rondon > >: > > > > Opa! > > > > Eu estarei lá já no sábado. :-) > > > > A previsão é que chegue por volta das 18:00, se vocês quiserem marcar o > > algum ES no sábado, me digam o bar/local que eu saiu do aeroporto e chego > já > > para guardar a mesa. :-) > > > > Abs! > > -Thiago Rondon > > > > > > Em 23/08/10 13:18, Nuba Princigalli escreveu: > >> > >> Caros, > >> > >> É com grande satisfação que anunciamos oficialmente aos confrades da > >> Rio-PM o nosso próximo Encontro Técnico! > >> > >> http://rio.pm.org/enc_tecnicos.pl > >> > >> Esperamos que recebam com o mesmo carinho com que os organizadores estão > >> preparando o evento, e encaminhem também para quem acreditem que possa > >> se beneficiar. > >> > >> Ainda estamos trabalhando na programação, então se você tiver interesse > >> em apresentar algo sobre Perl durante o evento, envie um email para a > >> lista! Segue o que já está confirmado: > >> > >> > >> TEMA > >> ==== > >> > >> "Esquenta" para o YAPC::Brasil 2010!!!! > >> > >> > >> QUANDO, ONDE E COMO CHEGAR > >> ========================== > >> > >> Domingo, 19 de setembro de 2010, a partir das 13h. > >> > >> ESTUDODEBOM - O Clube do Aprender > >> Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? 22251-050 - Tel. (21) > >> 2554-7408 > >> > >> O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e dicas de > >> linhas de ônibus no site do encontro: > >> > >> http://rio.pm.org/enc_tecnicos.pl > >> > >> > >> INSCRIÇÕES > >> ========== > >> > >> O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC > >> > >> ATENÇÃO: VAGAS LIMITADAS! > >> > >> Assim que as vagas forem preenchidas, informaremos no site e aqui na > >> lista. A partir desse ponto, a lista de inscrição funcionará como uma > >> lista de espera. > >> > >> > >> GRADE PRELIMINAR > >> ================ > >> > >> Como foi dito aí em cima, ainda estamos recebendo palestras e montando a > >> grade! Destaques até o momento: > >> > >> * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida sobre a teoria do > >> protocolo AMQP e prática da implementação RabbitMQ, além de outras > >> soluções no CPAN. Rondon é líder da São Paulo Perl Mongers e vem > >> prestigiar o nosso evento! :) > >> > >> * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa mais cobiçada > >> do momento. Arduino + Perl =<3 > >> > >> * Desenvolvimento de Exploits com Perl (Oscar Marques) - usando Perl > >> para desenvolver exploits e testar a segurança da nossa rede, > >> aplicativos, sistemas e etc. Serão mostrados exemplos de criação de > >> arquivos, uso de sockets, fuzzing e geração de códigos para explorar > >> vulnerabilidades remotas e locais. > >> > >> * Jogos em Perl (Breno G. de Oliveira) - Como tirar proveito dos novos > >> bindings de SDL em Perl para criar jogos divertidos rapida e facilmente. > >> > >> > >> BÔNUS > >> ===== > >> > >> Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da casa. Quem > >> tiver dotes culinários e quiser complementar com algum tira-gosto para > >> os confrades, fique à vontade! :) > >> > >> > >> PROGRAMAÇÃO SOCIAL > >> ================== > >> > >> Na noite do dia anterior, sábado, 18 de setembro de 2010, faremos alguma > >> coisa. Não sabemos ainda o quê, mas provavelmente envolverá testar a > >> resistência etílica dos palestrantes, participantes e organizadores! :) > >> Será discutido na lista. > >> > >> > >> DÚVIDAS > >> ======= > >> > >> Como estamos entretidos nos preparativos, pedimos que eventuais dúvidas > >> e sugestões sejam enviadas preferencialmente à lista da Rio-PM > >> (rio-pm em pm.org ) [1]. > >> > >> Caso você precise contatar a organização diretamente, fale com Breno > >> (breno em rio.pm.org , 8821-2155). > >> > >> > >> E aí? Tá esperando o quê?! Inscreva-se já! =) > >> > >> > >> [1] Se você recebeu essa mensagem, e não está ainda na Rio-PM, agora é a > >> hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm > >> > >> > >> -- > >> Nuba R. Princigalli nuba em pauleira.com > http://pauleira.com @nprincigalli > >> Discipline is not an end in itself, just a means to an end. - King > Crimson > >> > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > > -- > Tiago B. Peczenyj > Linux User #405772 > > http://pacman.blog.br > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Tue Aug 24 10:07:41 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Tue, 24 Aug 2010 14:07:41 -0300 Subject: [Rio-pm] [OT] Fwd: [SL-RJ] Lei ODF RJ In-Reply-To: References: Message-ID: Esqueci dos amigos aqui! Me desculpem! Segue o chamado. Favor ajudar. ---------- Mensagem encaminhada ---------- De: Oscar Marques Data: 24 de agosto de 2010 13:57 Assunto: [OT] Fwd: [SL-RJ] Lei ODF RJ Para: arduinrio em googlegroups.com, forkinrio em googlegroups.com, Lista Geral do Partido Pirata , Lista Geral do Partido Pirata , Lista Geral do Partido Pirata , androidinrio em googlegroups.com, phprio-org em googlegroups.com, rubyonrio em googlegroups.com, ubuntu-global-jam-brasil , horaextra em googlegroups.com, dojo-rio em googlegroups.com, slackchopp em googlegroups.com Prezados: O Marcelo escreveu pedindo nosso apoio: ================================================================== 2010/8/24 Marcelo Massao Prezados, Gostaria de começar uma campanha no estado do Rio de Janeiro a fim de que possamos colher o máximo de assinaturas possíveis para que a Assembléia Legislativa de nosso estado crie e aprove um Projeto de Lei a favor da padronização de documentos eletrônicos (leia-se ODF) Precisamos basicamente seguir alguns passos a saber (talvez não necessariamente nesta ordem): - Coletar assinaturas - Encontrar um parlamentar interessado na causa. - Conversar com o pessoal de TI da Assembléia Legislativa. - Juntar materiais e reunir com o deputado. Pretendo começar a colher assinaturas durante o Linux in Rio que irá acontecer no próximo dia 03/09 no Hotel Mont Blanc em Duque de Caxias. Alguém do RJ topa encarar??? Estou a disposição! Abraços. ps.: caso já exista alguma iniciativa neste sentido por favor me informem para que possamos "unir as forças". -- Marcelo Massao Osava Coordenador de Inclusão Social http://www.ekaaty.org Ekaaty Linux Feito por Brasileiros Padrão Aberto de Documentos (ODF) Linux user number 436596 ================================================================== Segue em anexo a lista, favor imprimir, assinar e me enviar quando nos encontrarmos e/ou SEDEX. Upei para o servidor e baixe e envie para todos que desejam ajudar o ODF. Link em: http://www.dunkelheit.com.br/ODF/Abaixo%20Assinado%20ODF%20RJ.odt Seria bom se o ODF fosse adotado pois é uma vitória importante para o SL. Conto com a participação de todos. Grato. ---------- Mensagem encaminhada ---------- De: Oscar Marques Data: 24 de agosto de 2010 13:49 Assunto: Re: [SL-RJ] Lei ODF RJ Para: slrj em googlegroups.com Júlio, eu vou entrar de férias no começo de Setembro mas até lá eu posso passar a lista pela empresa. Porém será que isso é possível? Se for o caso eu fico lá fora com ela na mão pra galera assinar. Em 24 de agosto de 2010 13:44, Julio C. Neves escreveu: > Assim como o Rodrigo, gostaria de assinar, mas estarei na Linuxcon, o que > me impossibilita. > > > Se o Oscar ficasse com a lista, conseguiríamos diversas assinaturas no > SERPRO. > > Abc, > Julio > Cursos de Shell e Zenity em 2 fins de semana? > - SE turma de Shell/Zenity em 13/09 - clemisson em gmail.com > - SP turma de Shell em 14/08 - www.4Linux.com.br > - Turmas fechadas em outras cidades ligue (21)8112-9988. > > --- @ WiseStamp Signature. > Get it now > > > Em 24 de agosto de 2010 13:14, Henrique de Andrade < > henrique.andrade em ufrj.br> escreveu: > > Eu acho que seria legal já existir uma proposta de lei para correr junto do >> abaixo assinado. >> >> -- >> Henrique Rabelo de Andrade >> >> >> 2010/8/24 Marcelo Massao >> >>> Concordo com vc Eurico... todo apoio e ajuda será muito bem vinda >>> (independente de partido político). >>> Disponibilizei a lista no Grupo para que apareçam voluntários para >>> disseminar a ideia. >>> Abs >>> >>> Em 24 de agosto de 2010 12:08, Eurico Zimbres escreveu: >>> >>> Olá Oscar, eu não estou no Rio neste momento mas no que puder ajudar, >>>> conte comigo. Acho uma grande iniciativa. Do ponto de vista da logística >>>> política, acho interessante que o projeto seja multipartidário, isto é, >>>> conte com o apoio inicial de deputados de vários partidos. >>>> >>>> Abraços >>>> >>>> Zimbres >>>> >>>> 2010/8/24 Oscar Marques >>>> >>>> Tem meu apoio. >>>>> Vou repassar para as comunidade SL do RJ! >>>>> >>>>> >>>>> Em 24 de agosto de 2010 11:42, Rodrigo Carvalho Silva < >>>>> rcsilva83 em gmail.com> escreveu: >>>>> >>>>>> Eu quero assinar, mas não vou no Linux In Rio. Como posso fazer? >>>>>> -- >>>>>> Rodrigo >>>>>> >>>>>> http://www.rodrigocarvalho.blog.br >>>>>> >>>>>> >>>>>> 2010/8/24 Marcelo Massao >>>>>> >>>>>> Prezados, >>>>>>> Gostaria de começar uma campanha no estado do Rio de Janeiro a fim de >>>>>>> que possamos colher o máximo de assinaturas possíveis para que a Assembléia >>>>>>> Legislativa de nosso estado crie e aprove um Projeto de Lei a favor da >>>>>>> padronização de documentos eletrônicos (leia-se ODF) >>>>>>> Precisamos basicamente seguir alguns passos a saber (talvez não >>>>>>> necessariamente nesta ordem): >>>>>>> - Coletar assinaturas >>>>>>> - Encontrar um parlamentar interessado na causa. >>>>>>> - Conversar com o pessoal de TI da Assembléia Legislativa. >>>>>>> - Juntar materiais e reunir com o deputado. >>>>>>> >>>>>>> Pretendo começar a colher assinaturas durante o Linux in Rio que irá >>>>>>> acontecer no próximo dia 03/09 no Hotel Mont Blanc em Duque de Caxias. >>>>>>> Alguém do RJ topa encarar??? Estou a disposição! >>>>>>> Abraços. >>>>>>> >>>>>>> ps.: caso já exista alguma iniciativa neste sentido por favor me >>>>>>> informem para que possamos "unir as forças". >>>>>>> >>>>>>> -- >>>>>>> Marcelo Massao Osava >>>>>>> Coordenador de Inclusão Social >>>>>>> http://www.ekaaty.org >>>>>>> Ekaaty Linux Feito por Brasileiros >>>>>>> Padrão Aberto de Documentos (ODF) >>>>>>> Linux user number 436596 >>>>>>> >>>>>>> -- >>>>>>> Você está recebendo esta mensagem porque se inscreveu no grupo >>>>>>> "Software Livre Rio de Janeiro" dos Grupos do Google. >>>>>>> Para postar neste grupo, envie um e-mail para slrj em googlegroups.com. >>>>>>> Para cancelar a inscrição nesse grupo, envie um e-mail para >>>>>>> slrj+unsubscribe em googlegroups.com >>>>>>> . >>>>>>> Para obter mais opções, visite esse grupo em >>>>>>> http://groups.google.com/group/slrj?hl=pt-BR. >>>>>>> >>>>>> >>>>>> -- >>>>>> Você está recebendo esta mensagem porque se inscreveu no grupo >>>>>> "Software Livre Rio de Janeiro" dos Grupos do Google. >>>>>> Para postar neste grupo, envie um e-mail para slrj em googlegroups.com. >>>>>> Para cancelar a inscrição nesse grupo, envie um e-mail para >>>>>> slrj+unsubscribe em googlegroups.com >>>>>> . >>>>>> Para obter mais opções, visite esse grupo em >>>>>> http://groups.google.com/group/slrj?hl=pt-BR. >>>>>> >>>>> >>>>> -- >>>>> Você está recebendo esta mensagem porque se inscreveu no grupo >>>>> "Software Livre Rio de Janeiro" dos Grupos do Google. >>>>> Para postar neste grupo, envie um e-mail para slrj em googlegroups.com. >>>>> Para cancelar a inscrição nesse grupo, envie um e-mail para >>>>> slrj+unsubscribe em googlegroups.com >>>>> . >>>>> Para obter mais opções, visite esse grupo em >>>>> http://groups.google.com/group/slrj?hl=pt-BR. >>>>> >>>> >>>> >>>> >>>> -- >>>> Eurico Zimbres >>>> >>>> www.meioambiente.pro.br >>>> www.dicionario.pro.br >>>> >>>> -- >>>> Você está recebendo esta mensagem porque se inscreveu no grupo "Software >>>> Livre Rio de Janeiro" dos Grupos do Google. >>>> Para postar neste grupo, envie um e-mail para slrj em googlegroups.com. >>>> Para cancelar a inscrição nesse grupo, envie um e-mail para >>>> slrj+unsubscribe em googlegroups.com >>>> . >>>> Para obter mais opções, visite esse grupo em >>>> http://groups.google.com/group/slrj?hl=pt-BR. >>>> >>> >>> >>> >>> -- >>> Marcelo Massao Osava >>> Coordenador de Inclusão Social >>> http://www.ekaaty.org >>> Ekaaty Linux Feito por Brasileiros >>> Padrão Aberto de Documentos (ODF) >>> Linux user number 436596 >>> >>> -- >>> Você está recebendo esta mensagem porque se inscreveu no grupo "Software >>> Livre Rio de Janeiro" dos Grupos do Google. >>> Para postar neste grupo, envie um e-mail para slrj em googlegroups.com. >>> Para cancelar a inscrição nesse grupo, envie um e-mail para >>> slrj+unsubscribe em googlegroups.com . >>> Para obter mais opções, visite esse grupo em >>> http://groups.google.com/group/slrj?hl=pt-BR. >>> >> >> -- >> Você está recebendo esta mensagem porque se inscreveu no grupo "Software >> Livre Rio de Janeiro" dos Grupos do Google. >> Para postar neste grupo, envie um e-mail para slrj em googlegroups.com. >> Para cancelar a inscrição nesse grupo, envie um e-mail para >> slrj+unsubscribe em googlegroups.com . >> Para obter mais opções, visite esse grupo em >> http://groups.google.com/group/slrj?hl=pt-BR. >> > > -- > Você está recebendo esta mensagem porque se inscreveu no grupo "Software > Livre Rio de Janeiro" dos Grupos do Google. > Para postar neste grupo, envie um e-mail para slrj em googlegroups.com. > Para cancelar a inscrição nesse grupo, envie um e-mail para > slrj+unsubscribe em googlegroups.com . > Para obter mais opções, visite esse grupo em > http://groups.google.com/group/slrj?hl=pt-BR. > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: -------------- Próxima Parte ---------- Um anexo não-texto foi limpo... Nome: Abaixo Assinado ODF RJ.odt Tipo: application/vnd.oasis.opendocument.text Tamanho: 19658 bytes Descrição: não disponível URL: From ricardo_filipo em yahoo.com.br Tue Aug 24 11:22:02 2010 From: ricardo_filipo em yahoo.com.br (Ricardo Filipo) Date: Tue, 24 Aug 2010 11:22:02 -0700 (PDT) Subject: [Rio-pm] =?utf-8?q?Res=3A__Encontro_T=C3=A9cnico_da_Rio-PM=3A_=22?= =?utf-8?q?Esquenta=22_para_o_YAPC=3A=3ABrasil_2010!?= Message-ID: <700683.47561.qm@web33002.mail.mud.yahoo.com> Eu estarei no Rio nestes dias. Se interessar posso falar sobre o CMS YAC, baseado em Catalyst. :) Filipo --- Em seg, 23/8/10, Nuba Princigalli escreveu: > De: Nuba Princigalli > Assunto: [Rio-pm] Encontro Técnico da Rio-PM: "Esquenta" para o YAPC::Brasil >2010! > Para: "Perl Mongers Rio de Janeiro" > Data: Segunda-feira, 23 de Agosto de 2010, 13:18 > Caros, > > É com grande satisfação que anunciamos oficialmente aos > confrades da > Rio-PM o nosso próximo Encontro Técnico! > > http://rio.pm.org/enc_tecnicos.pl > > Esperamos que recebam com o mesmo carinho com que os > organizadores estão > preparando o evento, e encaminhem também para quem > acreditem que possa > se beneficiar. > > Ainda estamos trabalhando na programação, então se você > tiver interesse > em apresentar algo sobre Perl durante o evento, envie um > email para a > lista! Segue o que já está confirmado: > > > TEMA > ==== > > "Esquenta" para o YAPC::Brasil 2010!!!! > > > QUANDO, ONDE E COMO CHEGAR > ========================== > > Domingo, 19 de setembro de 2010, a partir das 13h. > > ESTUDODEBOM - O Clube do Aprender > Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? > 22251-050 - Tel. (21) > 2554-7408 > > O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e > dicas de > linhas de ônibus no site do encontro: > > http://rio.pm.org/enc_tecnicos.pl > > > INSCRIÇÕES > ========== > > O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC > > ATENÇÃO: VAGAS LIMITADAS! > > Assim que as vagas forem preenchidas, informaremos no site > e aqui na > lista. A partir desse ponto, a lista de inscrição > funcionará como uma > lista de espera. > > > GRADE PRELIMINAR > ================ > > Como foi dito aí em cima, ainda estamos recebendo > palestras e montando a > grade! Destaques até o momento: > > * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida > sobre a teoria do > protocolo AMQP e prática da implementação RabbitMQ, > além de outras > soluções no CPAN. Rondon é líder da São Paulo Perl > Mongers e vem > prestigiar o nosso evento! :) > > * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa > mais cobiçada > do momento. Arduino + Perl = <3 > > * Desenvolvimento de Exploits com Perl (Oscar Marques) - > usando Perl > para desenvolver exploits e testar a segurança da nossa > rede, > aplicativos, sistemas e etc. Serão mostrados exemplos de > criação de > arquivos, uso de sockets, fuzzing e geração de códigos > para explorar > vulnerabilidades remotas e locais. > > * Jogos em Perl (Breno G. de Oliveira) - Como tirar > proveito dos novos > bindings de SDL em Perl para criar jogos divertidos rapida > e facilmente. > > > BÔNUS > ===== > > Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da > casa. Quem > tiver dotes culinários e quiser complementar com algum > tira-gosto para > os confrades, fique à vontade! :) > > > PROGRAMAÇÃO SOCIAL > ================== > > Na noite do dia anterior, sábado, 18 de setembro de 2010, > faremos alguma > coisa. Não sabemos ainda o quê, mas provavelmente > envolverá testar a > resistência etílica dos palestrantes, participantes e > organizadores! :) > Será discutido na lista. > > > DÚVIDAS > ======= > > Como estamos entretidos nos preparativos, pedimos que > eventuais dúvidas > e sugestões sejam enviadas preferencialmente à lista da > Rio-PM > (rio-pm em pm.org) [1]. > > > Caso você precise contatar a organização diretamente, > fale com Breno > (breno em rio.pm.org, > 8821-2155). > > > E aí? Tá esperando o quê?! Inscreva-se já! =) > > > [1] Se você recebeu essa mensagem, e não está ainda na > Rio-PM, agora é a > hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm > > > -- > Nuba R. Princigalli nuba em pauleira.com > http://pauleira.com @nprincigalli > Discipline is not an end in itself, just a means to an end. > - King Crimson > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm From daniel.oliveira.mantovani em gmail.com Mon Aug 23 17:19:36 2010 From: daniel.oliveira.mantovani em gmail.com (Daniel de Oliveira Mantovani) Date: Mon, 23 Aug 2010 21:19:36 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Tradu=E7=E3o_da_documenta=E7=E3o_oficial_?= =?iso-8859-1?q?do_Perl?= Message-ID: Há alguns anos atrás, o Solli começou a ver um projeto de tradução da documentação do Perl para o português brasileiro. Em paralelo, com a criação da wiki da comunidade (perl.org.br), Joênio, Nelson e cia. fizeram a iniciativa virar algo colaborativo e começaram a traduzir a documentação toda. A comunidade Perl participou bastante, mas o projeto aos poucos foi esfriando. Agora vem a novidade: o Breno juntou toda documentação feita até agora usando o POD2::Base do Adriano e lançou o POD2::PT_BR no CPAN! Podemos ver a documentação pelo CPAN em http://search.cpan.org/dist/POD2-PT_BR/ Ao instalar o módulo, vc pode ver a documentação traduzida direto do perldoc! Por exemplo: perldoc -L PT_BR perlintro Como o -L bota o original sempre que a tradução não tiver disponível, podemos fazer um alias na linha de comando: alias perldoc='perldoc -L PT_BR' E passar a usar diretamente: perldoc perlintro O Breno Oliveira no canal do #brasil-pm (irc.org.perl) nos incentivou a continuar a tradução desses documentos, http://github.com/garu/POD2-PT_BR Eu estou traduzindo agora o perlperf, que é um manual que fala sobre optimização. Seria muito bom se a comunidade se unisse para essa projeto de tradução. Por favor, entrem no irc.perl.org #brasil-pm http://bit.ly/bIdeef Peçam para o Breno (garu), o status de commiter no repositório da tradução, o link do repositório está acima. Se você não quiser entrar no IRC, mande um e-mail para o Breno, com o seu usuário do Github. "breno" , Não esqucendo, que vocês podem traduzir pela wiki também no Github. Se você não tem conta no Github, não tem problema também, mande um e-mail para ele com o documento que você gostaria traduzir, só para ele checar se não tem ninguém traduzindo, aí você traduz e manda o documento por e-mail. Obrigado pela atenção de vocês. Ter essa documentação traduzida para português é muito importante para a comunidade brasileira. -- http://www.danielmantovani.com "If you?ve never written anything thoughtful, then you?ve never had any difficult, important, or interesting thoughts. That?s the secret: people who don?t write, are people who don?t think." From breno em rio.pm.org Tue Aug 24 15:33:36 2010 From: breno em rio.pm.org (breno) Date: Tue, 24 Aug 2010 19:33:36 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Res=3A_Encontro_T=E9cnico_da_Rio-PM=3A_?= =?iso-8859-1?q?=22Esquenta=22_para_o_YAPC=3A=3ABrasil_2010!?= In-Reply-To: <700683.47561.qm@web33002.mail.mud.yahoo.com> References: <700683.47561.qm@web33002.mail.mud.yahoo.com> Message-ID: Oi Filipo! Claro que interessa, pode me procurar no irc pra gente acertar os ponteiros? abraço! 2010/8/24 Ricardo Filipo : > Eu estarei no Rio nestes dias. > Se interessar posso falar sobre o CMS YAC, baseado em Catalyst. > > :) > Filipo > > --- Em seg, 23/8/10, Nuba Princigalli escreveu: > >> De: Nuba Princigalli >> Assunto: [Rio-pm] Encontro Técnico da Rio-PM: "Esquenta" para o YAPC::Brasil >>2010! >> Para: "Perl Mongers Rio de Janeiro" >> Data: Segunda-feira, 23 de Agosto de 2010, 13:18 >> Caros, >> >> É com grande satisfação que anunciamos oficialmente aos >> confrades da >> Rio-PM o nosso próximo Encontro Técnico! >> >> http://rio.pm.org/enc_tecnicos.pl >> >> Esperamos que recebam com o mesmo carinho com que os >> organizadores estão >> preparando o evento, e encaminhem também para quem >> acreditem que possa >> se beneficiar. >> >> Ainda estamos trabalhando na programação, então se você >> tiver interesse >> em apresentar algo sobre Perl durante o evento, envie um >> email para a >> lista! Segue o que já está confirmado: >> >> >> TEMA >> ==== >> >> "Esquenta" para o YAPC::Brasil 2010!!!! >> >> >> QUANDO, ONDE E COMO CHEGAR >> ========================== >> >> Domingo, 19 de setembro de 2010, a partir das 13h. >> >> ESTUDODEBOM - O Clube do Aprender >> Rua Bambina, 147, Sala 101 ? Rio de Janeiro, RJ ? >> 22251-050 - Tel. (21) >> 2554-7408 >> >> O ESTUDODEBOM fica em frente ao metrô de Botafogo. Mapas e >> dicas de >> linhas de ônibus no site do encontro: >> >> http://rio.pm.org/enc_tecnicos.pl >> >> >> INSCRIÇÕES >> ========== >> >> O evento é gratuito! Faça sua inscrição em http://bit.ly/cMEicC >> >> ATENÇÃO: VAGAS LIMITADAS! >> >> Assim que as vagas forem preenchidas, informaremos no site >> e aqui na >> lista. A partir desse ponto, a lista de inscrição >> funcionará como uma >> lista de espera. >> >> >> GRADE PRELIMINAR >> ================ >> >> Como foi dito aí em cima, ainda estamos recebendo >> palestras e montando a >> grade! Destaques até o momento: >> >> * Net::RabbitMQ (Thiago Rondon) - Uma conversa rápida >> sobre a teoria do >> protocolo AMQP e prática da implementação RabbitMQ, >> além de outras >> soluções no CPAN. Rondon é líder da São Paulo Perl >> Mongers e vem >> prestigiar o nosso evento! :) >> >> * "Perlduino" (Samir Cury) - Dividindo tarefas com a placa >> mais cobiçada >> do momento. Arduino + Perl = <3 >> >> * Desenvolvimento de Exploits com Perl (Oscar Marques) - >> usando Perl >> para desenvolver exploits e testar a segurança da nossa >> rede, >> aplicativos, sistemas e etc. Serão mostrados exemplos de >> criação de >> arquivos, uso de sockets, fuzzing e geração de códigos >> para explorar >> vulnerabilidades remotas e locais. >> >> * Jogos em Perl (Breno G. de Oliveira) - Como tirar >> proveito dos novos >> bindings de SDL em Perl para criar jogos divertidos rapida >> e facilmente. >> >> >> BÔNUS >> ===== >> >> Ofereceremos Pizza, Brigadeiro e Refrigerante por conta da >> casa. Quem >> tiver dotes culinários e quiser complementar com algum >> tira-gosto para >> os confrades, fique à vontade! :) >> >> >> PROGRAMAÇÃO SOCIAL >> ================== >> >> Na noite do dia anterior, sábado, 18 de setembro de 2010, >> faremos alguma >> coisa. Não sabemos ainda o quê, mas provavelmente >> envolverá testar a >> resistência etílica dos palestrantes, participantes e >> organizadores! :) >> Será discutido na lista. >> >> >> DÚVIDAS >> ======= >> >> Como estamos entretidos nos preparativos, pedimos que >> eventuais dúvidas >> e sugestões sejam enviadas preferencialmente à lista da >> Rio-PM >> (rio-pm em pm.org) [1]. >> >> >> Caso você precise contatar a organização diretamente, >> fale com Breno >> (breno em rio.pm.org, >> 8821-2155). >> >> >> E aí? Tá esperando o quê?! Inscreva-se já! =) >> >> >> [1] Se você recebeu essa mensagem, e não está ainda na >> Rio-PM, agora é a >> hora de resolver isso! http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> -- >> Nuba R. Princigalli  nuba em pauleira.com >> http://pauleira.com  @nprincigalli >> Discipline is not an end in itself, just a means to an end. >> - King Crimson >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm From estranho em diogoleal.com Tue Aug 24 19:00:19 2010 From: estranho em diogoleal.com (Diogo Leal) Date: Tue, 24 Aug 2010 23:00:19 -0300 Subject: [Rio-pm] Dojo Lapa quarta-feira In-Reply-To: References: Message-ID: Agora trabalhando de manhã, é só o/ Diogo Leal [aka estranho] http://diogoleal.com msn | gtalk: estranho em diogoleal.com 2010/8/24 breno : > o/ > > 2010/8/24 Oscar Marques : >> Eu to pensando em dar um pulo no Dojo amanhã com uma galera daqui do trampo. >> Semana que vem seria uma boa se os Monges aparecessem por lá, visto que já >> fomos convocados e ainda não aparecemos por lá. >> >> Quem tiver interesse, levanta a mão! >> >> o/ >> >> 2010/8/24 Samir Cury >>> >>> E aí monges! >>> Há um tempo eu estava falando com o Oscar de irmos no Dojo pra puxar um >>> Dojo de Perl. O pessoal do Dojo até perguntou por isto há um tempo atrás =P >>> Daí estou pensando em ir semana que vem, alguém mais quer dar um push em >>> @Dojo_monks ? >>> Abraços, >>> Samir >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From daniel.oliveira.mantovani em gmail.com Mon Aug 23 17:19:36 2010 From: daniel.oliveira.mantovani em gmail.com (Daniel de Oliveira Mantovani) Date: Mon, 23 Aug 2010 21:19:36 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Tradu=E7=E3o_da_documenta=E7=E3o_oficial_?= =?iso-8859-1?q?do_Perl?= Message-ID: Há alguns anos atrás, o Solli começou a ver um projeto de tradução da documentação do Perl para o português brasileiro. Em paralelo, com a criação da wiki da comunidade (perl.org.br), Joênio, Nelson e cia. fizeram a iniciativa virar algo colaborativo e começaram a traduzir a documentação toda. A comunidade Perl participou bastante, mas o projeto aos poucos foi esfriando. Agora vem a novidade: o Breno juntou toda documentação feita até agora usando o POD2::Base do Adriano e lançou o POD2::PT_BR no CPAN! Podemos ver a documentação pelo CPAN em http://search.cpan.org/dist/POD2-PT_BR/ Ao instalar o módulo, vc pode ver a documentação traduzida direto do perldoc! Por exemplo: perldoc -L PT_BR perlintro Como o -L bota o original sempre que a tradução não tiver disponível, podemos fazer um alias na linha de comando: alias perldoc='perldoc -L PT_BR' E passar a usar diretamente: perldoc perlintro O Breno Oliveira no canal do #brasil-pm (irc.org.perl) nos incentivou a continuar a tradução desses documentos, http://github.com/garu/POD2-PT_BR Eu estou traduzindo agora o perlperf, que é um manual que fala sobre optimização. Seria muito bom se a comunidade se unisse para essa projeto de tradução. Por favor, entrem no irc.perl.org #brasil-pm http://bit.ly/bIdeef Peçam para o Breno (garu), o status de commiter no repositório da tradução, o link do repositório está acima. Se você não quiser entrar no IRC, mande um e-mail para o Breno, com o seu usuário do Github. "breno" , Não esqucendo, que vocês podem traduzir pela wiki também no Github. Se você não tem conta no Github, não tem problema também, mande um e-mail para ele com o documento que você gostaria traduzir, só para ele checar se não tem ninguém traduzindo, aí você traduz e manda o documento por e-mail. Obrigado pela atenção de vocês. Ter essa documentação traduzida para português é muito importante para a comunidade brasileira. -- http://www.danielmantovani.com "If you?ve never written anything thoughtful, then you?ve never had any difficult, important, or interesting thoughts. That?s the secret: people who don?t write, are people who don?t think." From daniel.oliveira.mantovani em gmail.com Mon Aug 23 17:19:36 2010 From: daniel.oliveira.mantovani em gmail.com (Daniel de Oliveira Mantovani) Date: Mon, 23 Aug 2010 21:19:36 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Tradu=E7=E3o_da_documenta=E7=E3o_oficial_?= =?iso-8859-1?q?do_Perl?= Message-ID: Há alguns anos atrás, o Solli começou a ver um projeto de tradução da documentação do Perl para o português brasileiro. Em paralelo, com a criação da wiki da comunidade (perl.org.br), Joênio, Nelson e cia. fizeram a iniciativa virar algo colaborativo e começaram a traduzir a documentação toda. A comunidade Perl participou bastante, mas o projeto aos poucos foi esfriando. Agora vem a novidade: o Breno juntou toda documentação feita até agora usando o POD2::Base do Adriano e lançou o POD2::PT_BR no CPAN! Podemos ver a documentação pelo CPAN em http://search.cpan.org/dist/POD2-PT_BR/ Ao instalar o módulo, vc pode ver a documentação traduzida direto do perldoc! Por exemplo: perldoc -L PT_BR perlintro Como o -L bota o original sempre que a tradução não tiver disponível, podemos fazer um alias na linha de comando: alias perldoc='perldoc -L PT_BR' E passar a usar diretamente: perldoc perlintro O Breno Oliveira no canal do #brasil-pm (irc.org.perl) nos incentivou a continuar a tradução desses documentos, http://github.com/garu/POD2-PT_BR Eu estou traduzindo agora o perlperf, que é um manual que fala sobre optimização. Seria muito bom se a comunidade se unisse para essa projeto de tradução. Por favor, entrem no irc.perl.org #brasil-pm http://bit.ly/bIdeef Peçam para o Breno (garu), o status de commiter no repositório da tradução, o link do repositório está acima. Se você não quiser entrar no IRC, mande um e-mail para o Breno, com o seu usuário do Github. "breno" , Não esqucendo, que vocês podem traduzir pela wiki também no Github. Se você não tem conta no Github, não tem problema também, mande um e-mail para ele com o documento que você gostaria traduzir, só para ele checar se não tem ninguém traduzindo, aí você traduz e manda o documento por e-mail. Obrigado pela atenção de vocês. Ter essa documentação traduzida para português é muito importante para a comunidade brasileira. -- http://www.danielmantovani.com "If you?ve never written anything thoughtful, then you?ve never had any difficult, important, or interesting thoughts. That?s the secret: people who don?t write, are people who don?t think." From daniel.oliveira.mantovani em gmail.com Mon Aug 23 17:19:36 2010 From: daniel.oliveira.mantovani em gmail.com (Daniel de Oliveira Mantovani) Date: Mon, 23 Aug 2010 21:19:36 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Tradu=E7=E3o_da_documenta=E7=E3o_oficial_?= =?iso-8859-1?q?do_Perl?= Message-ID: Há alguns anos atrás, o Solli começou a ver um projeto de tradução da documentação do Perl para o português brasileiro. Em paralelo, com a criação da wiki da comunidade (perl.org.br), Joênio, Nelson e cia. fizeram a iniciativa virar algo colaborativo e começaram a traduzir a documentação toda. A comunidade Perl participou bastante, mas o projeto aos poucos foi esfriando. Agora vem a novidade: o Breno juntou toda documentação feita até agora usando o POD2::Base do Adriano e lançou o POD2::PT_BR no CPAN! Podemos ver a documentação pelo CPAN em http://search.cpan.org/dist/POD2-PT_BR/ Ao instalar o módulo, vc pode ver a documentação traduzida direto do perldoc! Por exemplo: perldoc -L PT_BR perlintro Como o -L bota o original sempre que a tradução não tiver disponível, podemos fazer um alias na linha de comando: alias perldoc='perldoc -L PT_BR' E passar a usar diretamente: perldoc perlintro O Breno Oliveira no canal do #brasil-pm (irc.org.perl) nos incentivou a continuar a tradução desses documentos, http://github.com/garu/POD2-PT_BR Eu estou traduzindo agora o perlperf, que é um manual que fala sobre optimização. Seria muito bom se a comunidade se unisse para essa projeto de tradução. Por favor, entrem no irc.perl.org #brasil-pm http://bit.ly/bIdeef Peçam para o Breno (garu), o status de commiter no repositório da tradução, o link do repositório está acima. Se você não quiser entrar no IRC, mande um e-mail para o Breno, com o seu usuário do Github. "breno" , Não esqucendo, que vocês podem traduzir pela wiki também no Github. Se você não tem conta no Github, não tem problema também, mande um e-mail para ele com o documento que você gostaria traduzir, só para ele checar se não tem ninguém traduzindo, aí você traduz e manda o documento por e-mail. Obrigado pela atenção de vocês. Ter essa documentação traduzida para português é muito importante para a comunidade brasileira. -- http://www.danielmantovani.com "If you?ve never written anything thoughtful, then you?ve never had any difficult, important, or interesting thoughts. That?s the secret: people who don?t write, are people who don?t think." From eu em samircury.eng.br Mon Aug 30 10:12:52 2010 From: eu em samircury.eng.br (Samir Cury) Date: Mon, 30 Aug 2010 14:12:52 -0300 Subject: [Rio-pm] =?iso-8859-1?q?=5BOT=5D=5BJob=5D_Vaga_de_est=E1gio?= Message-ID: Fala pessoal, Repassando a vaga para trabalhar com sistemas para o mercado financeiro. Abracos, Samir ----------------------------------------------------------------------- Venha praticar seu talento. Venha trabalhar conosco. Procuramos estudantes de 4º a 6º período com experiência prévia em programação, que estejam interessados em ter contato com o mercado de trabalho por até 2 anos antes de iniciar pós-graduação. Você terá a oportunidade de programar em diversas linguagens, como Javascript+HTML, SQL, Perl, .Net, Flex, entre outras, em um ambiente de trabalho que conta com eXtreme Programming. O estágio é de 20 a 30 horas semanais, horário flexível, na Bowne, multinacional com equipe jovem, projetos muito interessantes e desafiadores, em escritório na Praia de Botafogo. Envie seu currículo para quero-programar em infoinvest.com.br e não deixe de mencionar sua experiência com as tecnologias mencionadas. Para obter mais informações, ligue para: 2103.0500 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Tue Aug 31 10:42:26 2010 From: eu em samircury.eng.br (Samir Cury) Date: Tue, 31 Aug 2010 14:42:26 -0300 Subject: [Rio-pm] Dojo Lapa quarta-feira In-Reply-To: References: Message-ID: E ae galera, vamos lá amanhã? Daí puxamos pra fazer em Perl =) Abraços, Samir 2010/8/24 Diogo Leal > Agora trabalhando de manhã, é só o/ > > > Diogo Leal [aka estranho] > http://diogoleal.com > msn | gtalk: estranho em diogoleal.com > > > > > 2010/8/24 breno : > > o/ > > > > 2010/8/24 Oscar Marques : > >> Eu to pensando em dar um pulo no Dojo amanhã com uma galera daqui do > trampo. > >> Semana que vem seria uma boa se os Monges aparecessem por lá, visto que > já > >> fomos convocados e ainda não aparecemos por lá. > >> > >> Quem tiver interesse, levanta a mão! > >> > >> o/ > >> > >> 2010/8/24 Samir Cury > >>> > >>> E aí monges! > >>> Há um tempo eu estava falando com o Oscar de irmos no Dojo pra puxar um > >>> Dojo de Perl. O pessoal do Dojo até perguntou por isto há um tempo > atrás =P > >>> Daí estou pensando em ir semana que vem, alguém mais quer dar um push > em > >>> @Dojo_monks ? > >>> Abraços, > >>> Samir > >>> _______________________________________________ > >>> Rio-pm mailing list > >>> Rio-pm em pm.org > >>> http://mail.pm.org/mailman/listinfo/rio-pm > >> > >> > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > >> > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Tue Aug 31 10:44:02 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Tue, 31 Aug 2010 14:44:02 -0300 Subject: [Rio-pm] Dojo Lapa quarta-feira In-Reply-To: References: Message-ID: Eu vou estar la, quem joga comigo? 2010/8/31 Samir Cury > E ae galera, vamos lá amanhã? > > Daí puxamos pra fazer em Perl =) > > Abraços, > Samir > > 2010/8/24 Diogo Leal > > Agora trabalhando de manhã, é só o/ >> >> >> Diogo Leal [aka estranho] >> http://diogoleal.com >> msn | gtalk: estranho em diogoleal.com >> >> >> >> >> 2010/8/24 breno : >> > o/ >> > >> > 2010/8/24 Oscar Marques : >> >> Eu to pensando em dar um pulo no Dojo amanhã com uma galera daqui do >> trampo. >> >> Semana que vem seria uma boa se os Monges aparecessem por lá, visto que >> já >> >> fomos convocados e ainda não aparecemos por lá. >> >> >> >> Quem tiver interesse, levanta a mão! >> >> >> >> o/ >> >> >> >> 2010/8/24 Samir Cury >> >>> >> >>> E aí monges! >> >>> Há um tempo eu estava falando com o Oscar de irmos no Dojo pra puxar >> um >> >>> Dojo de Perl. O pessoal do Dojo até perguntou por isto há um tempo >> atrás =P >> >>> Daí estou pensando em ir semana que vem, alguém mais quer dar um push >> em >> >>> @Dojo_monks ? >> >>> Abraços, >> >>> Samir >> >>> _______________________________________________ >> >>> Rio-pm mailing list >> >>> Rio-pm em pm.org >> >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> >> >> >> _______________________________________________ >> >> Rio-pm mailing list >> >> Rio-pm em pm.org >> >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From estranho em diogoleal.com Tue Aug 31 10:46:40 2010 From: estranho em diogoleal.com (Diogo Leal) Date: Tue, 31 Aug 2010 14:46:40 -0300 Subject: [Rio-pm] Dojo Lapa quarta-feira In-Reply-To: References: Message-ID: o/ Diogo Leal [aka estranho] http://diogoleal.com msn | gtalk: estranho em diogoleal.com 2010/8/31 Oscar Marques : > Eu vou estar la, quem joga comigo? > > 2010/8/31 Samir Cury >> >> E ae galera, vamos lá amanhã? >> >> Daí puxamos pra fazer em Perl =) >> >> Abraços, >> Samir >> >> 2010/8/24 Diogo Leal >>> >>> Agora trabalhando de manhã, é só o/ >>> >>> >>> Diogo Leal [aka estranho] >>> http://diogoleal.com >>> msn | gtalk: estranho em diogoleal.com >>> >>> >>> >>> >>> 2010/8/24 breno : >>> > o/ >>> > >>> > 2010/8/24 Oscar Marques : >>> >> Eu to pensando em dar um pulo no Dojo amanhã com uma galera daqui do >>> >> trampo. >>> >> Semana que vem seria uma boa se os Monges aparecessem por lá, visto >>> >> que já >>> >> fomos convocados e ainda não aparecemos por lá. >>> >> >>> >> Quem tiver interesse, levanta a mão! >>> >> >>> >> o/ >>> >> >>> >> 2010/8/24 Samir Cury >>> >>> >>> >>> E aí monges! >>> >>> Há um tempo eu estava falando com o Oscar de irmos no Dojo pra puxar >>> >>> um >>> >>> Dojo de Perl. O pessoal do Dojo até perguntou por isto há um tempo >>> >>> atrás =P >>> >>> Daí estou pensando em ir semana que vem, alguém mais quer dar um push >>> >>> em >>> >>> @Dojo_monks ? >>> >>> Abraços, >>> >>> Samir >>> >>> _______________________________________________ >>> >>> Rio-pm mailing list >>> >>> Rio-pm em pm.org >>> >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >>> >> >>> >> _______________________________________________ >>> >> Rio-pm mailing list >>> >> Rio-pm em pm.org >>> >> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From eu em samircury.eng.br Tue Aug 31 10:49:32 2010 From: eu em samircury.eng.br (Samir Cury) Date: Tue, 31 Aug 2010 14:49:32 -0300 Subject: [Rio-pm] Dojo Lapa quarta-feira In-Reply-To: References: Message-ID: o/ 2010/8/31 Diogo Leal > o/ > > Diogo Leal [aka estranho] > http://diogoleal.com > msn | gtalk: estranho em diogoleal.com > > > > > 2010/8/31 Oscar Marques : > > Eu vou estar la, quem joga comigo? > > > > 2010/8/31 Samir Cury > >> > >> E ae galera, vamos lá amanhã? > >> > >> Daí puxamos pra fazer em Perl =) > >> > >> Abraços, > >> Samir > >> > >> 2010/8/24 Diogo Leal > >>> > >>> Agora trabalhando de manhã, é só o/ > >>> > >>> > >>> Diogo Leal [aka estranho] > >>> http://diogoleal.com > >>> msn | gtalk: estranho em diogoleal.com > >>> > >>> > >>> > >>> > >>> 2010/8/24 breno : > >>> > o/ > >>> > > >>> > 2010/8/24 Oscar Marques : > >>> >> Eu to pensando em dar um pulo no Dojo amanhã com uma galera daqui do > >>> >> trampo. > >>> >> Semana que vem seria uma boa se os Monges aparecessem por lá, visto > >>> >> que já > >>> >> fomos convocados e ainda não aparecemos por lá. > >>> >> > >>> >> Quem tiver interesse, levanta a mão! > >>> >> > >>> >> o/ > >>> >> > >>> >> 2010/8/24 Samir Cury > >>> >>> > >>> >>> E aí monges! > >>> >>> Há um tempo eu estava falando com o Oscar de irmos no Dojo pra > puxar > >>> >>> um > >>> >>> Dojo de Perl. O pessoal do Dojo até perguntou por isto há um tempo > >>> >>> atrás =P > >>> >>> Daí estou pensando em ir semana que vem, alguém mais quer dar um > push > >>> >>> em > >>> >>> @Dojo_monks ? > >>> >>> Abraços, > >>> >>> Samir > >>> >>> _______________________________________________ > >>> >>> Rio-pm mailing list > >>> >>> Rio-pm em pm.org > >>> >>> http://mail.pm.org/mailman/listinfo/rio-pm > >>> >> > >>> >> > >>> >> _______________________________________________ > >>> >> Rio-pm mailing list > >>> >> Rio-pm em pm.org > >>> >> http://mail.pm.org/mailman/listinfo/rio-pm > >>> >> > >>> > _______________________________________________ > >>> > Rio-pm mailing list > >>> > Rio-pm em pm.org > >>> > http://mail.pm.org/mailman/listinfo/rio-pm > >>> > > >>> _______________________________________________ > >>> Rio-pm mailing list > >>> Rio-pm em pm.org > >>> http://mail.pm.org/mailman/listinfo/rio-pm > >> > >> > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Tue Aug 31 14:32:58 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Tue, 31 Aug 2010 18:32:58 -0300 Subject: [Rio-pm] [dojo-rio] Dojo shellscript In-Reply-To: References: Message-ID: Po que bom! Nao sabia desa. Vou convida-lo (mas tanto eu quanto ele estamos ocupados). Cara, pode ser Randori, Kata ou Kake. Se a gente não conseguir com o Julio, que tal um Dojo de sysadmin comigo e Samir? Amanha provavelmente eu e Samir estaremos no Dojo (esperamos que dessa vez os Perl Monges comparecam lá). PS: Rio PM, porra galera, já to cansado de falar pra gente dar um pulo lá que os caras tao cobrando a gente, quem vai? Breno? Diana? Fernando? Coutinho? Até. Em 31 de agosto de 2010 18:23, Israel da Silva Teixeira escreveu: > Oscar, > > O Julio Neves já participou de um dojo que eu, o Bernardo e o Dukão tocamos > no Estudodebom. Ele disse que curtiu mas q achou uma pena não fazer usando > shellscript. Convide-o sim, seria mto bom! > > Sobre todos esses dojos, não sei se estamos com o mesmo formato em mente, > mas vamos conversar amanhã. E falando em amanhã, tu saca Shell o bastante > pra ajudar a gente? > > > > Se alguém topar, eu chego mais cedo e monto o ambiente. > > Abraço. > > > 2010/8/31 Oscar Marques > > Entao, isso eu e o Samir discutimos no SlackShow. >> Se tem Dojo de Programacao, porque nao ter Dojo de sysadmin com perl, awk, >> shellscript, c, etc...? Porque não Dojo de Comp Grafica? Por que nao Dojo de >> Arduino? Dojo pode e deve ser expandido. >> Se eu conseguir tempo (do Julio Neves), eu posso tentar trazer ele para um >> Dojo inicial (isso se ele tiver tempo). >> Bom, vou fazer o convite e vamos esperar se ele aceita. >> Do resto a gente já poderia pensar em montar um local (TecnoCoop rola?) e >> um horário. >> Mas vamos tocando isso e vamos levando. >> O Samir tava pensando inicialmente em Perl pra sysadmins. >> >> Em 31 de agosto de 2010 17:55, Israel da Silva Teixeira < >> israelst em gmail.com> escreveu: >> >>> O Oscar comentou na thread "Dojo de Design" que queria um dojo >>> sysadmin... >>> >>> Coincidentemente, eu estou testando o *shunit* essa semana pra tentar >>> algo nessa direção. Então, se houver masters em shellscript na casa amanhã, >>> podemos estrear mais uma linguagem!! >>> >>> Algum guru shell estará presente? Flávio? Álvaro? Alguém mais saca? >>> >>> >>> -- >>> Israel Teixeira >>> >>> -- >>> * Coding Dojo Rio * >>> dojo-rio em googlegroups.com >>> http://groups.google.com/group/dojo-rio >>> http://code.google.com/p/dojo-rio >>> http://dojorio.wordpress.com >> >> >> -- >> * Coding Dojo Rio * >> dojo-rio em googlegroups.com >> http://groups.google.com/group/dojo-rio >> http://code.google.com/p/dojo-rio >> http://dojorio.wordpress.com > > > > > -- > Israel Teixeira > > -- > * Coding Dojo Rio * > dojo-rio em googlegroups.com > http://groups.google.com/group/dojo-rio > http://code.google.com/p/dojo-rio > http://dojorio.wordpress.com > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Wed Sep 1 10:56:23 2010 From: eu em samircury.eng.br (Samir Cury) Date: Wed, 1 Sep 2010 14:56:23 -0300 Subject: [Rio-pm] Dojo Lapa quarta-feira In-Reply-To: References: Message-ID: Alguem mais vem? O estranho tá chegando lá cedo, já eu, mais tarde, quem não souber chegar marque com o Estranho se for chegar mais cedo ou comigo se for chegar mais tarde. Abraços, Samir 2010/8/31 Samir Cury > o/ > > 2010/8/31 Diogo Leal > > o/ >> >> Diogo Leal [aka estranho] >> http://diogoleal.com >> msn | gtalk: estranho em diogoleal.com >> >> >> >> >> 2010/8/31 Oscar Marques : >> > Eu vou estar la, quem joga comigo? >> > >> > 2010/8/31 Samir Cury >> >> >> >> E ae galera, vamos lá amanhã? >> >> >> >> Daí puxamos pra fazer em Perl =) >> >> >> >> Abraços, >> >> Samir >> >> >> >> 2010/8/24 Diogo Leal >> >>> >> >>> Agora trabalhando de manhã, é só o/ >> >>> >> >>> >> >>> Diogo Leal [aka estranho] >> >>> http://diogoleal.com >> >>> msn | gtalk: estranho em diogoleal.com >> >>> >> >>> >> >>> >> >>> >> >>> 2010/8/24 breno : >> >>> > o/ >> >>> > >> >>> > 2010/8/24 Oscar Marques : >> >>> >> Eu to pensando em dar um pulo no Dojo amanhã com uma galera daqui >> do >> >>> >> trampo. >> >>> >> Semana que vem seria uma boa se os Monges aparecessem por lá, visto >> >>> >> que já >> >>> >> fomos convocados e ainda não aparecemos por lá. >> >>> >> >> >>> >> Quem tiver interesse, levanta a mão! >> >>> >> >> >>> >> o/ >> >>> >> >> >>> >> 2010/8/24 Samir Cury >> >>> >>> >> >>> >>> E aí monges! >> >>> >>> Há um tempo eu estava falando com o Oscar de irmos no Dojo pra >> puxar >> >>> >>> um >> >>> >>> Dojo de Perl. O pessoal do Dojo até perguntou por isto há um tempo >> >>> >>> atrás =P >> >>> >>> Daí estou pensando em ir semana que vem, alguém mais quer dar um >> push >> >>> >>> em >> >>> >>> @Dojo_monks ? >> >>> >>> Abraços, >> >>> >>> Samir >> >>> >>> _______________________________________________ >> >>> >>> Rio-pm mailing list >> >>> >>> Rio-pm em pm.org >> >>> >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >>> >> >> >>> >> >> >>> >> _______________________________________________ >> >>> >> Rio-pm mailing list >> >>> >> Rio-pm em pm.org >> >>> >> http://mail.pm.org/mailman/listinfo/rio-pm >> >>> >> >> >>> > _______________________________________________ >> >>> > Rio-pm mailing list >> >>> > Rio-pm em pm.org >> >>> > http://mail.pm.org/mailman/listinfo/rio-pm >> >>> > >> >>> _______________________________________________ >> >>> Rio-pm mailing list >> >>> Rio-pm em pm.org >> >>> http://mail.pm.org/mailman/listinfo/rio-pm >> >> >> >> >> >> _______________________________________________ >> >> Rio-pm mailing list >> >> Rio-pm em pm.org >> >> http://mail.pm.org/mailman/listinfo/rio-pm >> > >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Wed Sep 1 11:15:34 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Wed, 1 Sep 2010 15:15:34 -0300 Subject: [Rio-pm] Dojo Lapa quarta-feira In-Reply-To: References: Message-ID: Eu vou sair de casa lá pelas 7hs. Qualquer coisa, 9293-9343. Até. 2010/9/1 Samir Cury > Alguem mais vem? > > O estranho tá chegando lá cedo, já eu, mais tarde, quem não souber chegar > marque com o Estranho se for chegar mais cedo ou comigo se for chegar mais > tarde. > > Abraços, > Samir > > > 2010/8/31 Samir Cury > >> o/ >> >> 2010/8/31 Diogo Leal >> >> o/ >>> >>> Diogo Leal [aka estranho] >>> http://diogoleal.com >>> msn | gtalk: estranho em diogoleal.com >>> >>> >>> >>> >>> 2010/8/31 Oscar Marques : >>> > Eu vou estar la, quem joga comigo? >>> > >>> > 2010/8/31 Samir Cury >>> >> >>> >> E ae galera, vamos lá amanhã? >>> >> >>> >> Daí puxamos pra fazer em Perl =) >>> >> >>> >> Abraços, >>> >> Samir >>> >> >>> >> 2010/8/24 Diogo Leal >>> >>> >>> >>> Agora trabalhando de manhã, é só o/ >>> >>> >>> >>> >>> >>> Diogo Leal [aka estranho] >>> >>> http://diogoleal.com >>> >>> msn | gtalk: estranho em diogoleal.com >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> 2010/8/24 breno : >>> >>> > o/ >>> >>> > >>> >>> > 2010/8/24 Oscar Marques : >>> >>> >> Eu to pensando em dar um pulo no Dojo amanhã com uma galera daqui >>> do >>> >>> >> trampo. >>> >>> >> Semana que vem seria uma boa se os Monges aparecessem por lá, >>> visto >>> >>> >> que já >>> >>> >> fomos convocados e ainda não aparecemos por lá. >>> >>> >> >>> >>> >> Quem tiver interesse, levanta a mão! >>> >>> >> >>> >>> >> o/ >>> >>> >> >>> >>> >> 2010/8/24 Samir Cury >>> >>> >>> >>> >>> >>> E aí monges! >>> >>> >>> Há um tempo eu estava falando com o Oscar de irmos no Dojo pra >>> puxar >>> >>> >>> um >>> >>> >>> Dojo de Perl. O pessoal do Dojo até perguntou por isto há um >>> tempo >>> >>> >>> atrás =P >>> >>> >>> Daí estou pensando em ir semana que vem, alguém mais quer dar um >>> push >>> >>> >>> em >>> >>> >>> @Dojo_monks ? >>> >>> >>> Abraços, >>> >>> >>> Samir >>> >>> >>> _______________________________________________ >>> >>> >>> Rio-pm mailing list >>> >>> >>> Rio-pm em pm.org >>> >>> >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >> >>> >>> >> >>> >>> >> _______________________________________________ >>> >>> >> Rio-pm mailing list >>> >>> >> Rio-pm em pm.org >>> >>> >> http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> >> >>> >>> > _______________________________________________ >>> >>> > Rio-pm mailing list >>> >>> > Rio-pm em pm.org >>> >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> >>> > >>> >>> _______________________________________________ >>> >>> Rio-pm mailing list >>> >>> Rio-pm em pm.org >>> >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >>> >> >>> >> _______________________________________________ >>> >> Rio-pm mailing list >>> >> Rio-pm em pm.org >>> >> http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> > >>> > _______________________________________________ >>> > Rio-pm mailing list >>> > Rio-pm em pm.org >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>> > >>> _______________________________________________ >>> Rio-pm mailing list >>> Rio-pm em pm.org >>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From estranho em diogoleal.com Wed Sep 1 11:27:22 2010 From: estranho em diogoleal.com (Diogo Leal) Date: Wed, 1 Sep 2010 15:27:22 -0300 Subject: [Rio-pm] Dojo Lapa quarta-feira In-Reply-To: References: Message-ID: Eu estou saindo daqui da barra as 16h e devo chegar no centro as 18h no máximo. O meu telefone é 8135-2272. O endereço atualizado é este? DojoRio em LapaRua Teotônio Regadas 26 sala 201 - Lapa Ao lado da sala Cecília Meireles, próximo ao Metrô Cinelândia Diogo Leal [aka estranho] http://diogoleal.com msn | gtalk: estranho em diogoleal.com 2010/9/1 Oscar Marques : > Eu vou sair de casa lá pelas 7hs. > Qualquer coisa, 9293-9343. > Até. > > 2010/9/1 Samir Cury >> >> Alguem mais vem? >> >> O estranho tá chegando lá cedo, já eu, mais tarde, quem não souber chegar >> marque com o Estranho se for chegar mais cedo ou comigo se for chegar mais >> tarde. >> >> Abraços, >> Samir >> >> 2010/8/31 Samir Cury >>> >>> o/ >>> >>> 2010/8/31 Diogo Leal >>>> >>>> o/ >>>> >>>> Diogo Leal [aka estranho] >>>> http://diogoleal.com >>>> msn | gtalk: estranho em diogoleal.com >>>> >>>> >>>> >>>> >>>> 2010/8/31 Oscar Marques : >>>> > Eu vou estar la, quem joga comigo? >>>> > >>>> > 2010/8/31 Samir Cury >>>> >> >>>> >> E ae galera, vamos lá amanhã? >>>> >> >>>> >> Daí puxamos pra fazer em Perl =) >>>> >> >>>> >> Abraços, >>>> >> Samir >>>> >> >>>> >> 2010/8/24 Diogo Leal >>>> >>> >>>> >>> Agora trabalhando de manhã, é só o/ >>>> >>> >>>> >>> >>>> >>> Diogo Leal [aka estranho] >>>> >>> http://diogoleal.com >>>> >>> msn | gtalk: estranho em diogoleal.com >>>> >>> >>>> >>> >>>> >>> >>>> >>> >>>> >>> 2010/8/24 breno : >>>> >>> > o/ >>>> >>> > >>>> >>> > 2010/8/24 Oscar Marques : >>>> >>> >> Eu to pensando em dar um pulo no Dojo amanhã com uma galera daqui >>>> >>> >> do >>>> >>> >> trampo. >>>> >>> >> Semana que vem seria uma boa se os Monges aparecessem por lá, >>>> >>> >> visto >>>> >>> >> que já >>>> >>> >> fomos convocados e ainda não aparecemos por lá. >>>> >>> >> >>>> >>> >> Quem tiver interesse, levanta a mão! >>>> >>> >> >>>> >>> >> o/ >>>> >>> >> >>>> >>> >> 2010/8/24 Samir Cury >>>> >>> >>> >>>> >>> >>> E aí monges! >>>> >>> >>> Há um tempo eu estava falando com o Oscar de irmos no Dojo pra >>>> >>> >>> puxar >>>> >>> >>> um >>>> >>> >>> Dojo de Perl. O pessoal do Dojo até perguntou por isto há um >>>> >>> >>> tempo >>>> >>> >>> atrás =P >>>> >>> >>> Daí estou pensando em ir semana que vem, alguém mais quer dar um >>>> >>> >>> push >>>> >>> >>> em >>>> >>> >>> @Dojo_monks ? >>>> >>> >>> Abraços, >>>> >>> >>> Samir >>>> >>> >>> _______________________________________________ >>>> >>> >>> Rio-pm mailing list >>>> >>> >>> Rio-pm em pm.org >>>> >>> >>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >> >>>> >>> >> >>>> >>> >> _______________________________________________ >>>> >>> >> Rio-pm mailing list >>>> >>> >> Rio-pm em pm.org >>>> >>> >> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> >> >>>> >>> > _______________________________________________ >>>> >>> > Rio-pm mailing list >>>> >>> > Rio-pm em pm.org >>>> >>> > http://mail.pm.org/mailman/listinfo/rio-pm >>>> >>> > >>>> >>> _______________________________________________ >>>> >>> Rio-pm mailing list >>>> >>> Rio-pm em pm.org >>>> >>> http://mail.pm.org/mailman/listinfo/rio-pm >>>> >> >>>> >> >>>> >> _______________________________________________ >>>> >> Rio-pm mailing list >>>> >> Rio-pm em pm.org >>>> >> http://mail.pm.org/mailman/listinfo/rio-pm >>>> > >>>> > >>>> > _______________________________________________ >>>> > Rio-pm mailing list >>>> > Rio-pm em pm.org >>>> > http://mail.pm.org/mailman/listinfo/rio-pm >>>> > >>>> _______________________________________________ >>>> Rio-pm mailing list >>>> Rio-pm em pm.org >>>> http://mail.pm.org/mailman/listinfo/rio-pm >>> >> >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From eu em samircury.eng.br Mon Sep 6 12:24:07 2010 From: eu em samircury.eng.br (Samir Cury) Date: Mon, 6 Sep 2010 16:24:07 -0300 Subject: [Rio-pm] Encontro Social - Setembro Message-ID: Fala Perlssoal, Segunda quinta do mês está chegando aí, quem vai e onde preferem? Por mim podemos variar do mercadinho mesmo, tijucanos, alguma preferência? Ou qualquer bar em qualquer outro bairro? Abraços, Samir -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Wed Sep 8 07:39:31 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Wed, 8 Sep 2010 11:39:31 -0300 Subject: [Rio-pm] use moose Message-ID: Galera Recentemente descobri o Joose, um port do Moose para Javascript com algumas limitações. http://www.nonblocking.io/2008/11/joose-presentation-at-barcamp-hamburg.html Parece muito bom, ainda não testei. Fiquei com a seguinte duvida: existem outros ports do Moose para outras linguangens? -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br From ailtonzsilva em gmail.com Thu Sep 9 08:31:08 2010 From: ailtonzsilva em gmail.com (Ailton Zacarias) Date: Thu, 9 Sep 2010 12:31:08 -0300 Subject: [Rio-pm] msg X Perl Message-ID: Boa tarde a todos ... Gostaria de saber pq não posso ler um arquivo de menssagem do Outlook deste jeito? e o como tenho que pesquisar no cpan para este tipo de aplicação pois procurei como Email::Outlook::Message mas não veio como eu estava pensando. ;( Abrs, Ailton #!c:/Perl/perl.exe -w use strict; use warnings; my $Lista = 'Ailton.msg'; BKP($Lista); sub BKP{ open(my $file, q{<}, $_[0]); foreach my $arquivo ( <$file> ) { chomp($arquivo); print $arquivo; } } -- Ailton Zacarias F4 Computer ? Soluções em Tecnologia da Informação Tel: 55 +11 4062-0180 (Ailton) Cel: 55 +11 8405-8334 MSN: ailton em f4computer.com Skype: ailton.zacarias http://www.f4computer.com -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ailtonzsilva em gmail.com Thu Sep 9 08:41:33 2010 From: ailtonzsilva em gmail.com (Ailton Zacarias) Date: Thu, 9 Sep 2010 12:41:33 -0300 Subject: [Rio-pm] msg X Perl In-Reply-To: References: Message-ID: Ou melhor na pesquisa foi isso que achei... Email::Outlook::Message::AddressInfo Mas não entedi como faço para trabalhar como o conteudo do arquivo. Em 9 de setembro de 2010 12:31, Ailton Zacarias escreveu: > Boa tarde a todos ... > > Gostaria de saber pq não posso ler um arquivo de menssagem do Outlook deste > jeito? e o como tenho que pesquisar no cpan para este tipo de aplicação pois > procurei como Email::Outlook::Message mas não veio como eu estava pensando. > ;( > > > Abrs, > > Ailton > > #!c:/Perl/perl.exe -w > > use strict; > use warnings; > > my $Lista = 'Ailton.msg'; > > BKP($Lista); > > sub BKP{ > > open(my $file, q{<}, $_[0]); > foreach my $arquivo ( <$file> ) { > chomp($arquivo); > > print $arquivo; > > } > } > > -- > Ailton Zacarias > F4 Computer ? Soluções em Tecnologia da Informação > Tel: 55 +11 4062-0180 (Ailton) > Cel: 55 +11 8405-8334 > MSN: ailton em f4computer.com > Skype: ailton.zacarias > http://www.f4computer.com > -- Ailton Zacarias F4 Computer ? Soluções em Tecnologia da Informação Tel: 55 +11 4062-0180 (Ailton) Cel: 55 +11 8405-8334 MSN: ailton em f4computer.com Skype: ailton.zacarias http://www.f4computer.com -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From fernandocorrea em gmail.com Thu Sep 9 08:53:31 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Thu, 9 Sep 2010 12:53:31 -0300 Subject: [Rio-pm] Encontro Social - Setembro In-Reply-To: References: Message-ID: Eu voto no olimpiadas do chopp na praça saens pena! Em frente ao metro! On Sep 6, 2010 4:24 PM, "Samir Cury" wrote: Fala Perlssoal, Segunda quinta do mês está chegando aí, quem vai e onde preferem? Por mim podemos variar do mercadinho mesmo, tijucanos, alguma preferência? Ou qualquer bar em qualquer outro bairro? Abraços, Samir _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Thu Sep 9 08:56:51 2010 From: eu em samircury.eng.br (Samir Cury) Date: Thu, 9 Sep 2010 15:56:51 +0000 Subject: [Rio-pm] Encontro Social - Setembro In-Reply-To: References: Message-ID: Ae sumido! Bora la! Ate mais! 2010/9/9 Fernando Oliveira > Eu voto no olimpiadas do chopp na praça saens pena! Em frente ao metro! > > On Sep 6, 2010 4:24 PM, "Samir Cury" wrote: > > Fala Perlssoal, > > Segunda quinta do mês está chegando aí, quem vai e onde preferem? > > Por mim podemos variar do mercadinho mesmo, tijucanos, alguma preferência? > Ou qualquer bar em qualquer outro bairro? > > Abraços, > Samir > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From fernandocorrea em gmail.com Thu Sep 9 09:05:05 2010 From: fernandocorrea em gmail.com (Fernando Oliveira) Date: Thu, 9 Sep 2010 13:05:05 -0300 Subject: [Rio-pm] Encontro Social - Setembro In-Reply-To: References: Message-ID: Então ta combinado no olimpiadas! On Sep 9, 2010 12:56 PM, "Samir Cury" wrote: Ae sumido! Bora la! Ate mais! 2010/9/9 Fernando Oliveira > > Eu voto no olimpiadas do chopp na praça saens pena! Em frente ao metro! >> >> On Sep 6, 2010 4:... _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From eu em samircury.eng.br Thu Sep 9 10:22:00 2010 From: eu em samircury.eng.br (Samir Cury) Date: Thu, 9 Sep 2010 14:22:00 -0300 Subject: [Rio-pm] Encontro Social - Setembro In-Reply-To: References: Message-ID: Uma parada, lá vende chá? Vou ficar a base disso hoje =P 2010/9/9 Fernando Oliveira > Então ta combinado no olimpiadas! > > On Sep 9, 2010 12:56 PM, "Samir Cury" wrote: > > Ae sumido! Bora la! > > Ate mais! > > 2010/9/9 Fernando Oliveira > > > > > > Eu voto no olimpiadas do chopp na praça saens pena! Em frente ao metro! > >> > >> On Sep 6, 2010 4:... > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Thu Sep 9 11:39:05 2010 From: breno em rio.pm.org (breno) Date: Thu, 9 Sep 2010 15:39:05 -0300 Subject: [Rio-pm] Encontro Social - Setembro In-Reply-To: References: Message-ID: Acho que depende do tipo de chá que vc quer, Samir ;-) Nos vemos no Olimpiadas! 2010/9/9 Samir Cury : > Uma parada, lá vende chá? Vou ficar a base disso hoje =P > > 2010/9/9 Fernando Oliveira >> >> Então ta combinado no olimpiadas! >> >> On Sep 9, 2010 12:56 PM, "Samir Cury" wrote: >> >> Ae sumido! Bora la! >> >> Ate mais! >> >> 2010/9/9 Fernando Oliveira >> >> > >> > Eu voto no olimpiadas do chopp na praça saens pena! Em frente ao metro! >> >> >> >> On Sep 6, 2010 4:... >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From andre.ramoni em gmail.com Fri Sep 10 09:01:30 2010 From: andre.ramoni em gmail.com (Andre Ramoni) Date: Fri, 10 Sep 2010 13:01:30 -0300 Subject: [Rio-pm] Isaac Asimov Message-ID: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> Video muito interessante. http://www.youtube.com/watch?v=CI5NKP1y6Ng&feature=youtu.be --- Andre Ramoni From marciodesouzaferreira em gmail.com Fri Sep 10 09:21:00 2010 From: marciodesouzaferreira em gmail.com (Marcio Ferreira) Date: Fri, 10 Sep 2010 13:21:00 -0300 Subject: [Rio-pm] Isaac Asimov In-Reply-To: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> Message-ID: muito-interessante++ Marcio Ferreira 2010/9/10 Andre Ramoni > Video muito interessante. > http://www.youtube.com/watch?v=CI5NKP1y6Ng&feature=youtu.be > > --- > Andre Ramoni > > > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm at pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- next part -------------- An HTML attachment was scrubbed... URL: From nuba em fastmail.fm Fri Sep 10 09:41:49 2010 From: nuba em fastmail.fm (Nuba Princigalli) Date: Fri, 10 Sep 2010 13:41:49 -0300 Subject: [Rio-pm] Isaac Asimov In-Reply-To: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> Message-ID: <1284136909.2752.1394364181@webmail.messagingengine.com> Caros, On Fri, 10 Sep 2010 13:01 -0300, "Andre Ramoni" wrote: > Video muito interessante. > http://www.youtube.com/watch?v=CI5NKP1y6Ng&feature=youtu.be Apesar da barba de colonizador ingl?s do Asimov, esse vídeo é de 1988, quando as coisas já estavam bastante adiantadas. Em 1989 a gente já tinha um 386 em casa, por exemplo. A Apple já tinha se posicionado bem com Macintosh e o AppleII, e a popularização do PC já estava engatando. Eu fiquei mais impressionado com esse aqui, do Arthur C Clarke, de 1964: http://www.youtube.com/watch?v=KT_8-pjuctM Abraço, Nuba -- Nuba R. Princigalli nuba em pauleira.com http://pauleira.com @nprincigalli Discipline is not an end in itself, just a means to an end. - King Crimson From edencardim em gmail.com Fri Sep 10 11:27:45 2010 From: edencardim em gmail.com (Eden Cardim) Date: Fri, 10 Sep 2010 15:27:45 -0300 Subject: [Rio-pm] Isaac Asimov In-Reply-To: <1284136909.2752.1394364181@webmail.messagingengine.com> References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <1284136909.2752.1394364181@webmail.messagingengine.com> Message-ID: 2010/9/10 Nuba Princigalli : > Caros, > > On Fri, 10 Sep 2010 13:01 -0300, "Andre Ramoni" > wrote: >> Video muito interessante. >> http://www.youtube.com/watch?v=CI5NKP1y6Ng&feature=youtu.be > > Apesar da barba de colonizador ingl?s do Asimov, esse vídeo é de 1988, > quando as coisas já estavam bastante adiantadas. Em 1989 a gente já > tinha um 386 em casa, por exemplo. A Apple já tinha se posicionado bem > com Macintosh e o AppleII, e a popularização do PC já estava engatando. > > Eu fiquei mais impressionado com esse aqui, do Arthur C Clarke, de 1964: > http://www.youtube.com/watch?v=KT_8-pjuctM Olha, em 88, apesar de possível, não era bem assim "a gente tinha em casa", ter um 386, um modem e acesso a internet era para aplicações muito específicas em corporações e universidades, era mais ou menos como ter um trator na garagem hoje em dia. Muitos consideram que a popularização da internet começou com o "High Performance Computing and Communication Act", que só saiu em 91, junto com o primeiro web browser do Tim-Berners Lee e o Netscape em 94. Em 64 a situação era parecida, tava tendo guerra fria e corrida tecnológica, já existia comunicação orbital e Yuri Gagarin já tinha saído da atmosfera terrestre em 61, o primeiro esboço da ARPANET ficou pronto em 68, em 71 saiu o protocolo FTP e em 73 boa parte do tráfego na ARPANET era de e-mails. Ambas as previsões são de aplicação de tecnologia na sociedade, não da tecnologia em si. O próprio Clarke afirma no vídeo que "tudo isso já existe hoje em dia, só falta aplicar". --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From edencardim em gmail.com Fri Sep 10 12:09:10 2010 From: edencardim em gmail.com (Eden Cardim) Date: Fri, 10 Sep 2010 16:09:10 -0300 Subject: [Rio-pm] Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <1284136909.2752.1394364181@webmail.messagingengine.com> Message-ID: 2010/9/10 Eden Cardim : > Olha, em 88, apesar de possível, não era bem assim "a gente tinha em > casa", ter um 386, um modem e acesso a internet era para aplicações > muito específicas em corporações e universidades, era mais ou menos > como ter um trator na garagem hoje em dia. Opa, fiquei curioso pra saber a estatística mais exata de uso do 386 em 89, numa rápida pesquisa achei isso aqui: http://books.google.com.br/books?id=KDwEAAAAMBAJ&lpg=PA29&ots=yD9rnLfNs2&dq=80386%20sales&pg=PA29#v=onepage&q=80386%20sales&f=false http://www.wolframalpha.com/input/?i=world+population+1989 Em 1989, cerca de uma em cada 5240 pessoas compraram um 386. http://www.wolframalpha.com/input/?i=world+population+209 http://www.physorg.com/news178212434.html Em 2009, cerca de uma em cada 23 pessoas compraram um computador. --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From astec em centroin.com.br Fri Sep 10 12:21:09 2010 From: astec em centroin.com.br (astec) Date: Fri, 10 Sep 2010 16:21:09 -0300 Subject: [Rio-pm] Isaac Asimov References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> Message-ID: <02437E5B3F28467C958F4AE9E39FA7BA@orion> Esse kra é um monstro. Basta lembrar alguns livros dele: I Robot E pasmem: Big Brother, esse é o mais interessante, escrito na ´decada de trinta, contava a historia de uma cidadezinha (New York), onde todos os passos do cidadão era acompanhado por câmeras nas ruas. "Qualquer semelhança com os dias atuais, é mera coincidencia", Hê hê hê Ah! ia me esquecendo, ele só não previu no livro a bosta do BIG Brother na televisão. Ka ka ka ka ka ka....ka Julio Cezar wrote ----- Original Message ----- From: "Andre Ramoni" To: "Perl Mongers Rio de Janeiro" Sent: Friday, September 10, 2010 1:01 PM Subject: [Rio-pm] Isaac Asimov Video muito interessante. http://www.youtube.com/watch?v=CI5NKP1y6Ng&feature=youtu.be --- Andre Ramoni _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm From edencardim em gmail.com Fri Sep 10 12:24:23 2010 From: edencardim em gmail.com (Eden Cardim) Date: Fri, 10 Sep 2010 16:24:23 -0300 Subject: [Rio-pm] Isaac Asimov In-Reply-To: <02437E5B3F28467C958F4AE9E39FA7BA@orion> References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/10 astec : > Esse kra é um monstro. > > Basta lembrar alguns livros dele: > > I Robot > > E pasmem: Big Brother, esse é o mais interessante, escrito na ´decada de > trinta, contava a historia de uma cidadezinha  (New York), onde todos os > passos do cidadão era acompanhado por câmeras nas ruas. > > "Qualquer semelhança com os dias atuais, é mera coincidencia", Hê hê hê > > Ah! ia me esquecendo, ele só não previu no livro a bosta do BIG Brother na > televisão. O nome do programa na TV é por causa do livro dele. --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From diogo86 em gmail.com Fri Sep 10 12:45:50 2010 From: diogo86 em gmail.com (diogo86 em gmail.com) Date: Fri, 10 Sep 2010 16:45:50 -0300 Subject: [Rio-pm] Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: Achava que era por causa de 1984 do George Orwell. 2010/9/10 Eden Cardim : > 2010/9/10 astec : >> E pasmem: Big Brother, esse é o mais interessante, escrito na ´decada de >> trinta, contava a historia de uma cidadezinha  (New York), onde todos os >> passos do cidadão era acompanhado por câmeras nas ruas. >> >> "Qualquer semelhança com os dias atuais, é mera coincidencia", Hê hê hê >> >> Ah! ia me esquecendo, ele só não previu no livro a bosta do BIG Brother na >> televisão. > > O nome do programa na TV é por causa do livro dele. > From thiago em aware.com.br Sun Sep 12 18:29:59 2010 From: thiago em aware.com.br (Thiago Rondon) Date: Sun, 12 Sep 2010 22:29:59 -0300 Subject: [Rio-pm] =?iso-8859-1?q?ES_no_S=E1bado_-_18/Set/2010?= Message-ID: <4C8D7E97.1070800@aware.com.br> Pessoal, Estou ansioso para o encontro técnico neste próximo domingo! :-) Mas também para o /ES/ de sábado, sugestões de local ? Me enviem o endereço, pois vou sair do aeroporto e ir direto para lá, devo chegar no RIO por volta das 18:30. /me \o/ !! Abs! -Thiago Rondon From russoz em gmail.com Mon Sep 13 08:21:20 2010 From: russoz em gmail.com (Alexei Znamensky) Date: Mon, 13 Sep 2010 12:21:20 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/10 diogo86 em gmail.com > Achava que era por causa de 1984 do George Orwell. > Na verdade sim, o termo "Big Brother" foi por causa do 1984 do Orwell. Recomendo fortemente esse livro a todos. []s Russo > > > 2010/9/10 Eden Cardim : > > 2010/9/10 astec : > >> E pasmem: Big Brother, esse é o mais interessante, escrito na ´decada de > >> trinta, contava a historia de uma cidadezinha (New York), onde todos os > >> passos do cidadão era acompanhado por câmeras nas ruas. > >> > >> "Qualquer semelhança com os dias atuais, é mera coincidencia", Hê hê hê > >> > >> Ah! ia me esquecendo, ele só não previu no livro a bosta do BIG Brother > na > >> televisão. > > > > O nome do programa na TV é por causa do livro dele. > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] [ www.flickr.com/photos/alexeiz] «Only love / Can bring the rain / That makes you yearn to the sky» -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Mon Sep 13 09:56:23 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Mon, 13 Sep 2010 13:56:23 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: E o detalhe - off-topic do off-topic: Boa parte das pessoas não eram vigiadas em 1984. Eram uma minoria que poderia "causar problemas". O lance de modificar o idioma, duplipensar, etc, são muito mais amedrontadores do que todo mundo ser vigiado. Até pq surgem perguntas como "quem vigia os vigilantes"? 2010/9/13 Alexei Znamensky : > > 2010/9/10 diogo86 em gmail.com >> >> Achava que era por causa de 1984 do George Orwell. > > Na verdade sim, o termo "Big Brother" foi por causa do 1984 do Orwell. > Recomendo fortemente esse livro a todos. > []s > Russo > >> >> 2010/9/10 Eden Cardim : >> > 2010/9/10 astec : >> >> E pasmem: Big Brother, esse é o mais interessante, escrito na ´decada >> >> de >> >> trinta, contava a historia de uma cidadezinha  (New York), onde todos >> >> os >> >> passos do cidadão era acompanhado por câmeras nas ruas. >> >> >> >> "Qualquer semelhança com os dias atuais, é mera coincidencia", Hê hê hê >> >> >> >> Ah! ia me esquecendo, ele só não previu no livro a bosta do BIG Brother >> >> na >> >> televisão. >> > >> > O nome do programa na TV é por causa do livro dele. >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > -- > Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] > [www.flickr.com/photos/alexeiz] > «Only love / Can bring the rain / That makes you yearn to the sky» > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br From ole.ufg em gmail.com Mon Sep 13 10:14:20 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Mon, 13 Sep 2010 14:14:20 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: A natureza dos seres humanos que e perigoso. Por isso nao posso agreditar em auto-gestao. No inicio os caras sao os novos representantes do povo; com tempo a oligarquia se instala... alguem comenca ser mais livres que os outros. Ao meu ver, viu-se isso em todos os sistemas socialistas/marxistas que existiu ou existe ate hoje. (Lembre-se da guerrilha de araguaia, eles tmbm agreditavam em tomar o poder com violencia, assim eles eram melhores que os ditadores?) Por isso, democracia em certos aspectos e um saco (e tao deficil convencer o povo do 'certo'), porem ate ela precisa um watch-dog', a imprensa livre. Este ultimo, algo que faz muito falta aqui em Brasil, com sua constituicao baseado no corrupcao. Uma pena, que nenhum politico levanta esses assuntos numa epoca de eleicao... Por ironia, ate em os paises mais democraticos (como o meu: Dinamarca), tem-se esta sensacao: the big buuuh is watching you. La deficilmente se solta um peito sem o governo saber (porem o governo E vigiado pelo imprensa livre). Mas pense, 1984 (escrito se me lembro correto em 1948, fim da II guerra), um livro que mantenha-se tao atual: como dito por alguem aqui: vale a pena ler. Pois a falta de leitura e que empobrece o povo! E vale pra nos tmbm, nos movimentos de SL: Que e liberdade? De certo, liberalismo nao e. Software livre, pensamento livre, ciencia livre, sociedade livre. Vale a pena filosofar... Desculpa-me por esse bafafao... Ole 2010/9/13 Tiago Peczenyj > E o detalhe - off-topic do off-topic: > > Boa parte das pessoas não eram vigiadas em 1984. Eram uma minoria que > poderia "causar problemas". > > O lance de modificar o idioma, duplipensar, etc, são muito mais > amedrontadores do que todo mundo ser vigiado. Até pq surgem perguntas > como "quem vigia os vigilantes"? > > 2010/9/13 Alexei Znamensky : > > > > 2010/9/10 diogo86 em gmail.com > >> > >> Achava que era por causa de 1984 do George Orwell. > > > > Na verdade sim, o termo "Big Brother" foi por causa do 1984 do Orwell. > > Recomendo fortemente esse livro a todos. > > []s > > Russo > > > >> > >> 2010/9/10 Eden Cardim : > >> > 2010/9/10 astec : > >> >> E pasmem: Big Brother, esse é o mais interessante, escrito na ´decada > >> >> de > >> >> trinta, contava a historia de uma cidadezinha (New York), onde todos > >> >> os > >> >> passos do cidadão era acompanhado por câmeras nas ruas. > >> >> > >> >> "Qualquer semelhança com os dias atuais, é mera coincidencia", Hê hê > hê > >> >> > >> >> Ah! ia me esquecendo, ele só não previu no livro a bosta do BIG > Brother > >> >> na > >> >> televisão. > >> > > >> > O nome do programa na TV é por causa do livro dele. > >> > > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > > > -- > > Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] > > [www.flickr.com/photos/alexeiz] > > «Only love / Can bring the rain / That makes you yearn to the sky» > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > -- > Tiago B. Peczenyj > Linux User #405772 > > http://pacman.blog.br > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- ###################################################### Divide uma maçã - e cada um fica com meia Divide uma idéia - e cada um pode ficar com até mais do que uma ###################################################### Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Mon Sep 13 11:09:29 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Mon, 13 Sep 2010 15:09:29 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: Uma boa thread para citar a Teorema da impossibilidade de Arrow :) 2010/9/13 Ole Peter Smith : > A natureza dos seres humanos que e perigoso. Por isso nao posso agreditar em > auto-gestao. > > No inicio os caras sao os novos representantes do povo; com tempo a > oligarquia se instala... alguem comenca ser mais livres que os outros. Ao > meu ver, viu-se isso em todos os sistemas socialistas/marxistas que existiu > ou existe ate hoje. (Lembre-se da guerrilha de araguaia, eles tmbm > agreditavam em tomar o poder com violencia, assim eles eram melhores que os > ditadores?) > > Por isso, democracia em certos aspectos e um saco (e tao deficil convencer o > povo do 'certo'), porem ate ela precisa um watch-dog', a imprensa livre. > Este ultimo, algo que faz muito falta aqui em Brasil, com sua constituicao > baseado no corrupcao. Uma pena, que nenhum politico levanta esses assuntos > numa epoca de eleicao... > > Por ironia, ate em os paises mais democraticos (como o meu: Dinamarca), > tem-se esta sensacao: the big buuuh is watching you. La deficilmente se > solta um peito sem o governo saber (porem o governo E vigiado pelo imprensa > livre). > > Mas pense, 1984 (escrito se me lembro correto em 1948, fim da II guerra), um > livro que mantenha-se tao atual: como dito por alguem aqui: vale a pena ler. > Pois a falta de leitura e que empobrece o povo! > > E vale pra nos tmbm, nos movimentos de SL: Que e liberdade? De certo, > liberalismo nao e. Software livre, pensamento livre, ciencia livre, > sociedade livre. Vale a pena filosofar... > > Desculpa-me por esse bafafao... > > Ole > > 2010/9/13 Tiago Peczenyj >> >> E o detalhe - off-topic do off-topic: >> >> Boa parte das pessoas não eram vigiadas em 1984. Eram uma minoria que >> poderia "causar problemas". >> >> O lance de modificar o idioma, duplipensar, etc, são muito mais >> amedrontadores do que todo mundo ser vigiado. Até pq surgem perguntas >> como "quem vigia os vigilantes"? >> >> 2010/9/13 Alexei Znamensky : >> > >> > 2010/9/10 diogo86 em gmail.com >> >> >> >> Achava que era por causa de 1984 do George Orwell. >> > >> > Na verdade sim, o termo "Big Brother" foi por causa do 1984 do Orwell. >> > Recomendo fortemente esse livro a todos. >> > []s >> > Russo >> > >> >> >> >> 2010/9/10 Eden Cardim : >> >> > 2010/9/10 astec : >> >> >> E pasmem: Big Brother, esse é o mais interessante, escrito na >> >> >> ´decada >> >> >> de >> >> >> trinta, contava a historia de uma cidadezinha  (New York), onde >> >> >> todos >> >> >> os >> >> >> passos do cidadão era acompanhado por câmeras nas ruas. >> >> >> >> >> >> "Qualquer semelhança com os dias atuais, é mera coincidencia", Hê hê >> >> >> hê >> >> >> >> >> >> Ah! ia me esquecendo, ele só não previu no livro a bosta do BIG >> >> >> Brother >> >> >> na >> >> >> televisão. >> >> > >> >> > O nome do programa na TV é por causa do livro dele. >> >> > >> >> _______________________________________________ >> >> Rio-pm mailing list >> >> Rio-pm em pm.org >> >> http://mail.pm.org/mailman/listinfo/rio-pm >> > >> > >> > >> > -- >> > Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] >> > [www.flickr.com/photos/alexeiz] >> > «Only love / Can bring the rain / That makes you yearn to the sky» >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> >> >> >> -- >> Tiago B. Peczenyj >> Linux User #405772 >> >> http://pacman.blog.br >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > -- > ###################################################### >            Divide uma maçã - e cada um fica com meia > Divide uma idéia - e cada um pode ficar com até mais do que uma > ###################################################### >                   Ole Peter Smith, IME, UFG >           http://www.mat.ufg.br - ole at mat.ufg.br > ###################################################### >              Live sure is a Mystery to be Lived >                   Not a Problem to be Solved > ###################################################### > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br From listas em istf.com.br Mon Sep 13 11:36:46 2010 From: listas em istf.com.br (Marcos Machado) Date: Mon, 13 Sep 2010 15:36:46 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: Então, para ficarmos no mesmo autor, o Ole está descrevendo o "A revolução dos bichos" (Animal Farm), 1945. Leitura que deveria ser obrigatória nas escolas, ao invés daqueles romances estúpidos da coleção vaga-lume. []s, MM 2010/9/13 Tiago Peczenyj > Uma boa thread para citar a Teorema da impossibilidade de Arrow :) > > 2010/9/13 Ole Peter Smith : > > A natureza dos seres humanos que e perigoso. Por isso nao posso agreditar > em > > auto-gestao. > > > > No inicio os caras sao os novos representantes do povo; com tempo a > > oligarquia se instala... alguem comenca ser mais livres que os outros. Ao > > meu ver, viu-se isso em todos os sistemas socialistas/marxistas que > existiu > > ou existe ate hoje. (Lembre-se da guerrilha de araguaia, eles tmbm > > agreditavam em tomar o poder com violencia, assim eles eram melhores que > os > > ditadores?) > > > > Por isso, democracia em certos aspectos e um saco (e tao deficil > convencer o > > povo do 'certo'), porem ate ela precisa um watch-dog', a imprensa livre. > > Este ultimo, algo que faz muito falta aqui em Brasil, com sua > constituicao > > baseado no corrupcao. Uma pena, que nenhum politico levanta esses > assuntos > > numa epoca de eleicao... > > > > Por ironia, ate em os paises mais democraticos (como o meu: Dinamarca), > > tem-se esta sensacao: the big buuuh is watching you. La deficilmente se > > solta um peito sem o governo saber (porem o governo E vigiado pelo > imprensa > > livre). > > > > Mas pense, 1984 (escrito se me lembro correto em 1948, fim da II guerra), > um > > livro que mantenha-se tao atual: como dito por alguem aqui: vale a pena > ler. > > Pois a falta de leitura e que empobrece o povo! > > > > E vale pra nos tmbm, nos movimentos de SL: Que e liberdade? De certo, > > liberalismo nao e. Software livre, pensamento livre, ciencia livre, > > sociedade livre. Vale a pena filosofar... > > > > Desculpa-me por esse bafafao... > > > > Ole > > > > 2010/9/13 Tiago Peczenyj > >> > >> E o detalhe - off-topic do off-topic: > >> > >> Boa parte das pessoas não eram vigiadas em 1984. Eram uma minoria que > >> poderia "causar problemas". > >> > >> O lance de modificar o idioma, duplipensar, etc, são muito mais > >> amedrontadores do que todo mundo ser vigiado. Até pq surgem perguntas > >> como "quem vigia os vigilantes"? > >> > >> 2010/9/13 Alexei Znamensky : > >> > > >> > 2010/9/10 diogo86 em gmail.com > >> >> > >> >> Achava que era por causa de 1984 do George Orwell. > >> > > >> > Na verdade sim, o termo "Big Brother" foi por causa do 1984 do Orwell. > >> > Recomendo fortemente esse livro a todos. > >> > []s > >> > Russo > >> > > >> >> > >> >> 2010/9/10 Eden Cardim : > >> >> > 2010/9/10 astec : > >> >> >> E pasmem: Big Brother, esse é o mais interessante, escrito na > >> >> >> ´decada > >> >> >> de > >> >> >> trinta, contava a historia de uma cidadezinha (New York), onde > >> >> >> todos > >> >> >> os > >> >> >> passos do cidadão era acompanhado por câmeras nas ruas. > >> >> >> > >> >> >> "Qualquer semelhança com os dias atuais, é mera coincidencia", Hê > hê > >> >> >> hê > >> >> >> > >> >> >> Ah! ia me esquecendo, ele só não previu no livro a bosta do BIG > >> >> >> Brother > >> >> >> na > >> >> >> televisão. > >> >> > > >> >> > O nome do programa na TV é por causa do livro dele. > >> >> > > >> >> _______________________________________________ > >> >> Rio-pm mailing list > >> >> Rio-pm em pm.org > >> >> http://mail.pm.org/mailman/listinfo/rio-pm > >> > > >> > > >> > > >> > -- > >> > Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] > >> > [www.flickr.com/photos/alexeiz] > >> > «Only love / Can bring the rain / That makes you yearn to the sky» > >> > > >> > _______________________________________________ > >> > Rio-pm mailing list > >> > Rio-pm em pm.org > >> > http://mail.pm.org/mailman/listinfo/rio-pm > >> > > >> > >> > >> > >> -- > >> Tiago B. Peczenyj > >> Linux User #405772 > >> > >> http://pacman.blog.br > >> _______________________________________________ > >> Rio-pm mailing list > >> Rio-pm em pm.org > >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > > > -- > > ###################################################### > > Divide uma maçã - e cada um fica com meia > > Divide uma idéia - e cada um pode ficar com até mais do que uma > > ###################################################### > > Ole Peter Smith, IME, UFG > > http://www.mat.ufg.br - ole at mat.ufg.br > > ###################################################### > > Live sure is a Mystery to be Lived > > Not a Problem to be Solved > > ###################################################### > > > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > > > > -- > Tiago B. Peczenyj > Linux User #405772 > > http://pacman.blog.br > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Mon Sep 13 11:48:01 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Mon, 13 Sep 2010 15:48:01 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: Po, eu gostava da coleção Vaga-Lume. Spharion até hoje é o meu favorito. Mas com relação a livros para escolas, acho injusto que o Asimov, Bradbury e tantos outros fiquem de fora dos curriculos. Imagino o prazer de ler pela primeira vez contos como "O menino Feio" (Asimov) ou "A caminho do abismo de chicago" (bradbury) ou mesmo "Misseis Tripulados" do Vonnegut. Até mesmo Perl Best Practices do Damian Conway e algo do Knuth :) 2010/9/13 Marcos Machado : > Então, para ficarmos no mesmo autor, o Ole está descrevendo o "A revolução > dos bichos" (Animal Farm), 1945. > Leitura que deveria ser obrigatória nas escolas, ao invés daqueles romances > estúpidos da coleção vaga-lume. > []s, MM > > 2010/9/13 Tiago Peczenyj >> >> Uma boa thread para citar a Teorema da impossibilidade de Arrow :) >> >> 2010/9/13 Ole Peter Smith : >> > A natureza dos seres humanos que e perigoso. Por isso nao posso >> > agreditar em >> > auto-gestao. >> > >> > No inicio os caras sao os novos representantes do povo; com tempo a >> > oligarquia se instala... alguem comenca ser mais livres que os outros. >> > Ao >> > meu ver, viu-se isso em todos os sistemas socialistas/marxistas que >> > existiu >> > ou existe ate hoje. (Lembre-se da guerrilha de araguaia, eles tmbm >> > agreditavam em tomar o poder com violencia, assim eles eram melhores que >> > os >> > ditadores?) >> > >> > Por isso, democracia em certos aspectos e um saco (e tao deficil >> > convencer o >> > povo do 'certo'), porem ate ela precisa um watch-dog', a imprensa livre. >> > Este ultimo, algo que faz muito falta aqui em Brasil, com sua >> > constituicao >> > baseado no corrupcao. Uma pena, que nenhum politico levanta esses >> > assuntos >> > numa epoca de eleicao... >> > >> > Por ironia, ate em os paises mais democraticos (como o meu: Dinamarca), >> > tem-se esta sensacao: the big buuuh is watching you. La deficilmente se >> > solta um peito sem o governo saber (porem o governo E vigiado pelo >> > imprensa >> > livre). >> > >> > Mas pense, 1984 (escrito se me lembro correto em 1948, fim da II >> > guerra), um >> > livro que mantenha-se tao atual: como dito por alguem aqui: vale a pena >> > ler. >> > Pois a falta de leitura e que empobrece o povo! >> > >> > E vale pra nos tmbm, nos movimentos de SL: Que e liberdade? De certo, >> > liberalismo nao e. Software livre, pensamento livre, ciencia livre, >> > sociedade livre. Vale a pena filosofar... >> > >> > Desculpa-me por esse bafafao... >> > >> > Ole >> > >> > 2010/9/13 Tiago Peczenyj >> >> >> >> E o detalhe - off-topic do off-topic: >> >> >> >> Boa parte das pessoas não eram vigiadas em 1984. Eram uma minoria que >> >> poderia "causar problemas". >> >> >> >> O lance de modificar o idioma, duplipensar, etc, são muito mais >> >> amedrontadores do que todo mundo ser vigiado. Até pq surgem perguntas >> >> como "quem vigia os vigilantes"? >> >> >> >> 2010/9/13 Alexei Znamensky : >> >> > >> >> > 2010/9/10 diogo86 em gmail.com >> >> >> >> >> >> Achava que era por causa de 1984 do George Orwell. >> >> > >> >> > Na verdade sim, o termo "Big Brother" foi por causa do 1984 do >> >> > Orwell. >> >> > Recomendo fortemente esse livro a todos. >> >> > []s >> >> > Russo >> >> > >> >> >> >> >> >> 2010/9/10 Eden Cardim : >> >> >> > 2010/9/10 astec : >> >> >> >> E pasmem: Big Brother, esse é o mais interessante, escrito na >> >> >> >> ´decada >> >> >> >> de >> >> >> >> trinta, contava a historia de uma cidadezinha  (New York), onde >> >> >> >> todos >> >> >> >> os >> >> >> >> passos do cidadão era acompanhado por câmeras nas ruas. >> >> >> >> >> >> >> >> "Qualquer semelhança com os dias atuais, é mera coincidencia", Hê >> >> >> >> hê >> >> >> >> hê >> >> >> >> >> >> >> >> Ah! ia me esquecendo, ele só não previu no livro a bosta do BIG >> >> >> >> Brother >> >> >> >> na >> >> >> >> televisão. >> >> >> > >> >> >> > O nome do programa na TV é por causa do livro dele. >> >> >> > >> >> >> _______________________________________________ >> >> >> Rio-pm mailing list >> >> >> Rio-pm em pm.org >> >> >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > >> >> > >> >> > >> >> > -- >> >> > Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] >> >> > [www.flickr.com/photos/alexeiz] >> >> > «Only love / Can bring the rain / That makes you yearn to the sky» >> >> > >> >> > _______________________________________________ >> >> > Rio-pm mailing list >> >> > Rio-pm em pm.org >> >> > http://mail.pm.org/mailman/listinfo/rio-pm >> >> > >> >> >> >> >> >> >> >> -- >> >> Tiago B. Peczenyj >> >> Linux User #405772 >> >> >> >> http://pacman.blog.br >> >> _______________________________________________ >> >> Rio-pm mailing list >> >> Rio-pm em pm.org >> >> http://mail.pm.org/mailman/listinfo/rio-pm >> > >> > >> > >> > -- >> > ###################################################### >> >            Divide uma maçã - e cada um fica com meia >> > Divide uma idéia - e cada um pode ficar com até mais do que uma >> > ###################################################### >> >                   Ole Peter Smith, IME, UFG >> >           http://www.mat.ufg.br - ole at mat.ufg.br >> > ###################################################### >> >              Live sure is a Mystery to be Lived >> >                   Not a Problem to be Solved >> > ###################################################### >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> >> >> >> -- >> Tiago B. Peczenyj >> Linux User #405772 >> >> http://pacman.blog.br >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br From acid06 em gmail.com Mon Sep 13 12:08:14 2010 From: acid06 em gmail.com (Nilson Santos Figueiredo Jr.) Date: Mon, 13 Sep 2010 16:08:14 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/13 Marcos Machado : > Então, para ficarmos no mesmo autor, o Ole está descrevendo o "A revolução > dos bichos" (Animal Farm), 1945. > Leitura que deveria ser obrigatória nas escolas, ao invés daqueles romances > estúpidos da coleção vaga-lume. E arriscar que alguém realmente *aprenda* estes conceitos e como a liberdade individual deve ser valorizada? Que governo iria querer isso? -Nilson From ole.ufg em gmail.com Mon Sep 13 12:14:54 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Mon, 13 Sep 2010 16:14:54 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: Aaaaah, Marcos, ta certo, estava trocando os dois. Consequencia: preciso comprar os dois e ler de novo; don't you think? Ole 2010/9/13 Marcos Machado > Então, para ficarmos no mesmo autor, o Ole está descrevendo o "A revolução > dos bichos" (Animal Farm), 1945. > > Leitura que deveria ser obrigatória nas escolas, ao invés daqueles romances > estúpidos da coleção vaga-lume. > > []s, MM > > > 2010/9/13 Tiago Peczenyj > >> Uma boa thread para citar a Teorema da impossibilidade de Arrow :) >> >> 2010/9/13 Ole Peter Smith : >> > A natureza dos seres humanos que e perigoso. Por isso nao posso >> agreditar em >> > auto-gestao. >> > >> > No inicio os caras sao os novos representantes do povo; com tempo a >> > oligarquia se instala... alguem comenca ser mais livres que os outros. >> Ao >> > meu ver, viu-se isso em todos os sistemas socialistas/marxistas que >> existiu >> > ou existe ate hoje. (Lembre-se da guerrilha de araguaia, eles tmbm >> > agreditavam em tomar o poder com violencia, assim eles eram melhores que >> os >> > ditadores?) >> > >> > Por isso, democracia em certos aspectos e um saco (e tao deficil >> convencer o >> > povo do 'certo'), porem ate ela precisa um watch-dog', a imprensa livre. >> > Este ultimo, algo que faz muito falta aqui em Brasil, com sua >> constituicao >> > baseado no corrupcao. Uma pena, que nenhum politico levanta esses >> assuntos >> > numa epoca de eleicao... >> > >> > Por ironia, ate em os paises mais democraticos (como o meu: Dinamarca), >> > tem-se esta sensacao: the big buuuh is watching you. La deficilmente se >> > solta um peito sem o governo saber (porem o governo E vigiado pelo >> imprensa >> > livre). >> > >> > Mas pense, 1984 (escrito se me lembro correto em 1948, fim da II >> guerra), um >> > livro que mantenha-se tao atual: como dito por alguem aqui: vale a pena >> ler. >> > Pois a falta de leitura e que empobrece o povo! >> > >> > E vale pra nos tmbm, nos movimentos de SL: Que e liberdade? De certo, >> > liberalismo nao e. Software livre, pensamento livre, ciencia livre, >> > sociedade livre. Vale a pena filosofar... >> > >> > Desculpa-me por esse bafafao... >> > >> > Ole >> > >> > 2010/9/13 Tiago Peczenyj >> >> >> >> E o detalhe - off-topic do off-topic: >> >> >> >> Boa parte das pessoas não eram vigiadas em 1984. Eram uma minoria que >> >> poderia "causar problemas". >> >> >> >> O lance de modificar o idioma, duplipensar, etc, são muito mais >> >> amedrontadores do que todo mundo ser vigiado. Até pq surgem perguntas >> >> como "quem vigia os vigilantes"? >> >> >> >> 2010/9/13 Alexei Znamensky : >> >> > >> >> > 2010/9/10 diogo86 em gmail.com >> >> >> >> >> >> Achava que era por causa de 1984 do George Orwell. >> >> > >> >> > Na verdade sim, o termo "Big Brother" foi por causa do 1984 do >> Orwell. >> >> > Recomendo fortemente esse livro a todos. >> >> > []s >> >> > Russo >> >> > >> >> >> >> >> >> 2010/9/10 Eden Cardim : >> >> >> > 2010/9/10 astec : >> >> >> >> E pasmem: Big Brother, esse é o mais interessante, escrito na >> >> >> >> ´decada >> >> >> >> de >> >> >> >> trinta, contava a historia de uma cidadezinha (New York), onde >> >> >> >> todos >> >> >> >> os >> >> >> >> passos do cidadão era acompanhado por câmeras nas ruas. >> >> >> >> >> >> >> >> "Qualquer semelhança com os dias atuais, é mera coincidencia", Hê >> hê >> >> >> >> hê >> >> >> >> >> >> >> >> Ah! ia me esquecendo, ele só não previu no livro a bosta do BIG >> >> >> >> Brother >> >> >> >> na >> >> >> >> televisão. >> >> >> > >> >> >> > O nome do programa na TV é por causa do livro dele. >> >> >> > >> >> >> _______________________________________________ >> >> >> Rio-pm mailing list >> >> >> Rio-pm em pm.org >> >> >> http://mail.pm.org/mailman/listinfo/rio-pm >> >> > >> >> > >> >> > >> >> > -- >> >> > Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] >> >> > [www.flickr.com/photos/alexeiz] >> >> > «Only love / Can bring the rain / That makes you yearn to the sky» >> >> > >> >> > _______________________________________________ >> >> > Rio-pm mailing list >> >> > Rio-pm em pm.org >> >> > http://mail.pm.org/mailman/listinfo/rio-pm >> >> > >> >> >> >> >> >> >> >> -- >> >> Tiago B. Peczenyj >> >> Linux User #405772 >> >> >> >> http://pacman.blog.br >> >> _______________________________________________ >> >> Rio-pm mailing list >> >> Rio-pm em pm.org >> >> http://mail.pm.org/mailman/listinfo/rio-pm >> > >> > >> > >> > -- >> > ###################################################### >> > Divide uma maçã - e cada um fica com meia >> > Divide uma idéia - e cada um pode ficar com até mais do que uma >> > ###################################################### >> > Ole Peter Smith, IME, UFG >> > http://www.mat.ufg.br - ole at mat.ufg.br >> > ###################################################### >> > Live sure is a Mystery to be Lived >> > Not a Problem to be Solved >> > ###################################################### >> > >> > _______________________________________________ >> > Rio-pm mailing list >> > Rio-pm em pm.org >> > http://mail.pm.org/mailman/listinfo/rio-pm >> > >> >> >> >> -- >> Tiago B. Peczenyj >> Linux User #405772 >> >> http://pacman.blog.br >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- ###################################################### Divide uma maçã - e cada um fica com meia Divide uma idéia - e cada um pode ficar com até mais do que uma ###################################################### Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From andregarciacarneiro em gmail.com Mon Sep 13 12:16:27 2010 From: andregarciacarneiro em gmail.com (Andre Carneiro) Date: Mon, 13 Sep 2010 16:16:27 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: Já que o assunto é 'livro', eu recomendo também o 1989: O ano que mudou o mundo, de Michael Meyer. Pra quem é da mesma época e lembra da queda do muro de Berlim, fica a dica para ver os 'bastidores' e vários 'detalhezinhos' que a mídia não divulgou... Cheers! 2010/9/13 Alexei Znamensky > > 2010/9/10 diogo86 em gmail.com > >> Achava que era por causa de 1984 do George Orwell. >> > > Na verdade sim, o termo "Big Brother" foi por causa do 1984 do Orwell. > Recomendo fortemente esse livro a todos. > > []s > Russo > > >> >> >> 2010/9/10 Eden Cardim : >> > 2010/9/10 astec : >> >> E pasmem: Big Brother, esse é o mais interessante, escrito na ´decada >> de >> >> trinta, contava a historia de uma cidadezinha (New York), onde todos >> os >> >> passos do cidadão era acompanhado por câmeras nas ruas. >> >> >> >> "Qualquer semelhança com os dias atuais, é mera coincidencia", Hê hê hê >> >> >> >> Ah! ia me esquecendo, ele só não previu no livro a bosta do BIG Brother >> na >> >> televisão. >> > >> > O nome do programa na TV é por causa do livro dele. >> > >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm em pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm >> > > > > -- > Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] [ > www.flickr.com/photos/alexeiz] > «Only love / Can bring the rain / That makes you yearn to the sky» > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André Garcia Carneiro Analista/Desenvolvedor Perl (11)82907780 -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ole.ufg em gmail.com Mon Sep 13 12:20:18 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Mon, 13 Sep 2010 16:20:18 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/13 Nilson Santos Figueiredo Jr. > 2010/9/13 Marcos Machado : > > Então, para ficarmos no mesmo autor, o Ole está descrevendo o "A > revolução > > dos bichos" (Animal Farm), 1945. > > Leitura que deveria ser obrigatória nas escolas, ao invés daqueles > romances > > estúpidos da coleção vaga-lume. > Concorda plenamente!!!! > > E arriscar que alguém realmente *aprenda* estes conceitos e como a > liberdade individual deve ser valorizada? Que governo iria querer > isso? > O fe devia ser o ultimo que morre! E mais: os povos tem os governos que merecem!!! Nao podemos sempre jogar a culpa em eles. Prerequisito de liberdade e responsabilidade. Mais sera que as escolas querem alunos pensadores? As univiersidades querem? Pois, olha so os vestibulares. Acho que brasileiro (e outros povos?) deve ser campiao pelo menos em marca x em itens de conhecimentos precozidos... Ole > > -Nilson > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- ###################################################### Divide uma maçã - e cada um fica com meia Divide uma idéia - e cada um pode ficar com até mais do que uma ###################################################### Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From edencardim em gmail.com Mon Sep 13 13:44:22 2010 From: edencardim em gmail.com (Eden Cardim) Date: Mon, 13 Sep 2010 17:44:22 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/13 Nilson Santos Figueiredo Jr. : > 2010/9/13 Marcos Machado : >> Então, para ficarmos no mesmo autor, o Ole está descrevendo o "A revolução >> dos bichos" (Animal Farm), 1945. >> Leitura que deveria ser obrigatória nas escolas, ao invés daqueles romances >> estúpidos da coleção vaga-lume. > > E arriscar que alguém realmente *aprenda* estes conceitos e como a > liberdade individual deve ser valorizada? Que governo iria querer > isso? Um governo que queira legitimar a falta de assistência social sob o pretexto de preservar a liberdade individual. Isso leva a pensamentos como "Não estuda porque não quer", "É ladrão porque quer" e coisas como os loopholes no regime trabalhista nacional que permite a legitimação de trabalho escravo em várias instâncias (vide http://www.pactonacional.com.br/). Eu acho que Orwell é um bom contra-peso pra combater o pensamento fascista, mas tem que tomar cuidado com o outro lado, que é esquecer completamente de que a vida em sociedade requer sim que se façam concessões a nível individual. Então, pra puxar a brasa um pouco pro outro lado da sardinha, eu recomendaria além de "Animal Farm", "Ensaio Sobre a Cegueira" do José Saramago. --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From marciodesouzaferreira em gmail.com Mon Sep 13 14:52:39 2010 From: marciodesouzaferreira em gmail.com (Marcio Ferreira) Date: Mon, 13 Sep 2010 18:52:39 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: "O mal triunfa quando os bons não fazem nada" preciso confessar que quando eu estava no ensino médio tinha muita revolta com essas injustiças, mas esse sentimento esfriou. 6 anos depois isso está voltando por conta dessas eleições 2010. Mas esbarrou na pergunta: O QUE FAZER ? Tenho um filho de um ano e vejo que terei muito trabalho quando ele crescer. Att, Marcio Ferreira Em 13 de setembro de 2010 17:44, Eden Cardim escreveu: > 2010/9/13 Nilson Santos Figueiredo Jr. : > > 2010/9/13 Marcos Machado : > >> Então, para ficarmos no mesmo autor, o Ole está descrevendo o "A > revolução > >> dos bichos" (Animal Farm), 1945. > >> Leitura que deveria ser obrigatória nas escolas, ao invés daqueles > romances > >> estúpidos da coleção vaga-lume. > > > > E arriscar que alguém realmente *aprenda* estes conceitos e como a > > liberdade individual deve ser valorizada? Que governo iria querer > > isso? > > Um governo que queira legitimar a falta de assistência social sob o > pretexto de preservar a liberdade individual. Isso leva a pensamentos > como "Não estuda porque não quer", "É ladrão porque quer" e coisas > como os loopholes no regime trabalhista nacional que permite a > legitimação de trabalho escravo em várias instâncias (vide > http://www.pactonacional.com.br/). Eu acho que Orwell é um bom > contra-peso pra combater o pensamento fascista, mas tem que tomar > cuidado com o outro lado, que é esquecer completamente de que a vida > em sociedade requer sim que se façam concessões a nível individual. > Então, pra puxar a brasa um pouco pro outro lado da sardinha, eu > recomendaria além de "Animal Farm", "Ensaio Sobre a Cegueira" do José > Saramago. > > -- > Eden Cardim Need help with your Catalyst or DBIx::Class project? > Code Monkey http://www.shadowcat.co.uk/catalyst/ > Shadowcat Systems Ltd. Want a managed development or deployment platform? > http://blog.edencardim.com/ http://www.shadowcat.co.uk/servers/ > _______________________________________________ > Rio-pm mailing list > Rio-pm at pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- next part -------------- An HTML attachment was scrubbed... URL: From acid06 em gmail.com Mon Sep 13 15:37:59 2010 From: acid06 em gmail.com (Nilson Santos Figueiredo Jr.) Date: Mon, 13 Sep 2010 19:37:59 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/13 Eden Cardim : > Um governo que queira legitimar a falta de assistência social sob o > pretexto de preservar a liberdade individual. Isso leva a pensamentos > como "Não estuda porque não quer", "É ladrão porque quer" e coisas > como os loopholes no regime trabalhista nacional que permite a > legitimação de trabalho escravo em várias instâncias (vide > http://www.pactonacional.com.br/). Eu acho que Orwell é um bom > contra-peso pra combater o pensamento fascista, mas tem que tomar > cuidado com o outro lado, que é esquecer completamente de que a vida > em sociedade requer sim que se façam concessões a nível individual. Bom, tá muito off-topic e já tenho discutido demais no Twitter sobre esse assuntos então não vou render muito (ah, tá, até parece hehe). Mas as pessoas sempre têm escolhas. Conheço diversos casos de pessoas que vieram de famílias bem pobres e enquanto um irmão se dedicou aos estudos o outro foi para o mundo do crime. Ambos cresceram no mesmo ambiente. É óbvio que situações difíceis amplificam as tendências negativas das pessoas. Isso vale tanto para o adolescente favelado quanto pro adolescente rico filho de pais ausentes. A única diferença é que o pobre tem muito mais chance de ser punido por sua delinqüência do que o rico. Mas a solução não é deixar de punir o pobre - é punir o rico também. "Accountability" é o que falta no Brasil, em todas as classes sociais. Desde o marginal, até o político corrupto, passando pelo pai ausente e funcionários públicos displicentes. Infelizmente, ninguém quer descascar esse abacaxi. -Nilson From edencardim em gmail.com Mon Sep 13 19:45:53 2010 From: edencardim em gmail.com (Eden Cardim) Date: Mon, 13 Sep 2010 23:45:53 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/13 Nilson Santos Figueiredo Jr. : > Mas as pessoas sempre têm escolhas. Conheço diversos casos de pessoas > que vieram de famílias bem pobres e enquanto um irmão se dedicou aos > estudos o outro foi para o mundo do crime. Isso é uma enorme falácia e as pessoas infelizmente sempre caem nessa. É igual dizer que todo camelô tem chance ser milionário só porque o Sílvio Santos por acaso conseguiu chegar lá. Agora, levanta uma estatística de onde foram parar as pessoas criadas em famílias bem pobres vs. pessoas criadas em famílias privilegiadas. Digo "bem pobre" do tipo pai e mãe banguelo e analfabeto que assinam o contra-cheque com o polegar (quando tem) e cozinham no fogão a lenha, ou seja, cerca de 30% da população do país (que era mais ou menos a estatística de quando olhei pela última vez a uns 10 anos atrás). Quanto ao lance dos irmãos, as pessoas sempre fazem escolhas baseadas em questões circunstanciais, senão irmãos gêmeos fariam tudo igual. É bem natural que o irmão mais novo que vê o irmão mais velho se dando mal no mundo do crime vá tentar a alternativa oposta, assim como também é natural o irmão mais novo que vê o irmão vais velho fazendo jornada dupla para ganhar R$ 800,00 ao mês vá tentar a alternativa oposta. Ao meu ver, adultos sem saneamento básico, alimentação e educação são iguais a crianças, cuja legislação formalmente denomina de "incapaz" num pretexto completamente arbitrário que é a idade de 18 anos. Quer dizer que na meia-noite do aniversário de 18 anos, uma criança vira um "capaz" como a carroça da Cinderella? Precisa mesmo ler muito George Orwell pra acreditar nisso. --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From edencardim em gmail.com Mon Sep 13 20:16:36 2010 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 14 Sep 2010 00:16:36 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/13 Nilson Santos Figueiredo Jr. : > A única diferença é que o pobre tem muito mais chance de ser punido > por sua delinqüência do que o rico. Mas a solução não é deixar de > punir o pobre - é punir o rico também. A solução é fornecer as necessidades básicas das pessoas, tantos dos ricos quanto dos pobres, para que elas não precisem ser punidas, vide http://en.wikipedia.org/wiki/Maslow%27s_hierarchy_of_needs. Em termos econômicos, construir e manter uma prisão custa o mesmo ou mais do que construir e manter uma universidade e a população vai lotar qualquer uma das duas que forem construídas, a não ser que esteja sobrando espaço. --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From ole.ufg em gmail.com Mon Sep 13 20:30:47 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Tue, 14 Sep 2010 00:30:47 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: Marginais - criminosos ou nao - nao compensa pra ninguem. Brasil tem potencia como poucos paises neste mundo. Mas precia aprender da chance a todos. Pessoalmente ja levei alguns, nao por ser pobre, mas por insistir de andar de bermuda e xinela; por ex. foi mandado embora de uma faculdade (particular, eu era professor), cuja o slogan era: Ensinando a Vencer. Os alunos protestou, mas nem eu era apto a voltar mais. Depois os alunos me contou, que mandaram um professor de terno e cravata - que nao sabia borra nenhuma... O lado ironica da historia, e que este incidente, me deu uma fama na regiao... A discriminacao em Brasil, ao meu ver - e social. E amntenha-se atraves de falta de educacao e formacao de cidadania democratica. Eliminacao de ensino particular seria um grande passo de conscientizar o povo na hora de agir como cidadao e na hora de por seu voto. (Claro suponho, que a eliminacao do ensino particular teria com primeiro efeito melhoraria no ensino publico). Educacao e o camino - e mais: o dever do governo. Ae se cidadao quer continuar na marginalidade, e escolha dele - e sofreraria as consequencias. Ole 2010/9/14 Eden Cardim > 2010/9/13 Nilson Santos Figueiredo Jr. : > > A única diferença é que o pobre tem muito mais chance de ser punido > > por sua delinqüência do que o rico. Mas a solução não é deixar de > > punir o pobre - é punir o rico também. > > A solução é fornecer as necessidades básicas das pessoas, tantos dos > ricos quanto dos pobres, para que elas não precisem ser punidas, vide > http://en.wikipedia.org/wiki/Maslow%27s_hierarchy_of_needs. Em termos > econômicos, construir e manter uma prisão custa o mesmo ou mais do que > construir e manter uma universidade e a população vai lotar qualquer > uma das duas que forem construídas, a não ser que esteja sobrando > espaço. > > -- > Eden Cardim Need help with your Catalyst or DBIx::Class project? > Code Monkey http://www.shadowcat.co.uk/catalyst/ > Shadowcat Systems Ltd. Want a managed development or deployment platform? > http://blog.edencardim.com/ http://www.shadowcat.co.uk/servers/ > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- ###################################################### Divide uma maçã - e cada um fica com meia Divide uma idéia - e cada um pode ficar com até mais do que uma ###################################################### Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From marcus.jabber em gmail.com Tue Sep 14 04:22:00 2010 From: marcus.jabber em gmail.com (Marcus Duarte) Date: Tue, 14 Sep 2010 08:22:00 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> Message-ID: <201009140822.00333.marcus.jabber@gmail.com> On Tuesday 14 September 2010 00:30:47 Ole Peter Smith wrote: > Marginais - criminosos ou nao - nao compensa pra ninguem. Brasil tem > potencia como poucos paises neste mundo. Mas precia aprender da chance a > todos. > > Pessoalmente ja levei alguns, nao por ser pobre, mas por insistir de andar > de bermuda e xinela; por ex. foi mandado embora de uma faculdade > (particular, eu era professor), cuja o slogan era: Ensinando a Vencer. Os > alunos protestou, mas nem eu era apto a voltar mais. Depois os alunos me > contou, que mandaram um professor de terno e cravata - que nao sabia borra > nenhuma... > > O lado ironica da historia, e que este incidente, me deu uma fama na > regiao... > > A discriminacao em Brasil, ao meu ver - e social. E amntenha-se atraves de > falta de educacao e formacao de cidadania democratica. Eliminacao de ensino > particular seria um grande passo de conscientizar o povo na hora de agir > como cidadao e na hora de por seu voto. (Claro suponho, que a eliminacao do > ensino particular teria com primeiro efeito melhoraria no ensino publico). > > Educacao e o camino - e mais: o dever do governo. Ae se cidadao quer > continuar na marginalidade, e escolha dele - e sofreraria as consequencias. > > Ole > Você é brasileiro? Abs! From edencardim em gmail.com Tue Sep 14 07:08:51 2010 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 14 Sep 2010 11:08:51 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/14 Ole Peter Smith : > Pessoalmente ja levei alguns, nao por ser pobre, mas por insistir de andar > de bermuda e xinela; por ex. foi mandado embora de uma faculdade > (particular, eu era professor), cuja o slogan era: Ensinando a Vencer. Os > alunos protestou, mas nem eu era apto a voltar mais. Depois os alunos me > contou, que mandaram um professor de terno e cravata - que nao sabia borra > nenhuma... ole++ --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From breno em rio.pm.org Tue Sep 14 10:29:36 2010 From: breno em rio.pm.org (breno) Date: Tue, 14 Sep 2010 14:29:36 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: <201009140822.00333.marcus.jabber@gmail.com> References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <201009140822.00333.marcus.jabber@gmail.com> Message-ID: 2010/9/14 Marcus Duarte : > On Tuesday 14 September 2010 00:30:47 Ole Peter Smith wrote: >> Marginais - criminosos ou nao - nao compensa pra ninguem. Brasil tem >> potencia como poucos paises neste mundo. Mas precia aprender da chance a >> todos. >> >> Pessoalmente ja levei alguns, nao por ser pobre, mas por insistir de andar >> de bermuda e xinela; por ex. foi mandado embora de uma faculdade >> (particular, eu era professor), cuja o slogan era: Ensinando a Vencer. Os >> alunos protestou, mas nem eu era apto a voltar mais. Depois os alunos me >> contou, que mandaram um professor de terno e cravata - que nao sabia borra >> nenhuma... >> >> O lado ironica da historia, e que este incidente, me deu uma fama na >> regiao... >> >> A discriminacao em Brasil, ao meu ver - e social. E amntenha-se atraves de >> falta de educacao e formacao de cidadania democratica. Eliminacao de ensino >> particular seria um grande passo de conscientizar o povo na hora de agir >> como cidadao e na hora de por seu voto. (Claro suponho, que a eliminacao do >> ensino particular teria com primeiro efeito melhoraria no ensino publico). >> >> Educacao e o camino - e mais: o dever do governo. Ae se cidadao quer >> continuar na marginalidade, e escolha dele - e sofreraria as consequencias. >> >> Ole >> > > Você é brasileiro? > O Ole é dinamarquês. Mas as vezes parece mais brasileiro que muitos de nós :-) From russoz em gmail.com Tue Sep 14 10:56:30 2010 From: russoz em gmail.com (Alexei Znamensky) Date: Tue, 14 Sep 2010 14:56:30 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <201009140822.00333.marcus.jabber@gmail.com> Message-ID: 2010/9/14 breno > 2010/9/14 Marcus Duarte : > > On Tuesday 14 September 2010 00:30:47 Ole Peter Smith wrote: > >> Marginais - criminosos ou nao - nao compensa pra ninguem. Brasil tem > >> potencia como poucos paises neste mundo. Mas precia aprender da chance a > >> todos. > >> > >> Pessoalmente ja levei alguns, nao por ser pobre, mas por insistir de > andar > >> de bermuda e xinela; por ex. foi mandado embora de uma faculdade > >> (particular, eu era professor), cuja o slogan era: Ensinando a Vencer. > Os > >> alunos protestou, mas nem eu era apto a voltar mais. Depois os alunos me > >> contou, que mandaram um professor de terno e cravata - que nao sabia > borra > >> nenhuma... > ole++ > >> > >> O lado ironica da historia, e que este incidente, me deu uma fama na > >> regiao... > >> > >> A discriminacao em Brasil, ao meu ver - e social. E amntenha-se atraves > de > >> falta de educacao e formacao de cidadania democratica. Eliminacao de > ensino > >> particular seria um grande passo de conscientizar o povo na hora de agir > >> como cidadao e na hora de por seu voto. (Claro suponho, que a eliminacao > do > >> ensino particular teria com primeiro efeito melhoraria no ensino > publico). > >> > >> Educacao e o camino - e mais: o dever do governo. Ae se cidadao quer > >> continuar na marginalidade, e escolha dele - e sofreraria as > consequencias. > >> > >> Ole > >> > > > > Você é brasileiro? > > > > O Ole é dinamarquês. Mas as vezes parece mais brasileiro que muitos de nós > :-) > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] [ www.flickr.com/photos/alexeiz] «Only love / Can bring the rain / That makes you yearn to the sky» -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From acid06 em gmail.com Tue Sep 14 11:29:28 2010 From: acid06 em gmail.com (Nilson Santos Figueiredo Jr.) Date: Tue, 14 Sep 2010 15:29:28 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/13 Eden Cardim : > Isso é uma enorme falácia e as pessoas infelizmente sempre caem nessa. Eu realmente não sei comentar sobre pessoas não vivem em áreas urbanas (população rural, no meio do sertão, etc). O que eu posso dizer é que, com raras exceções, as pessoas que vivem em cidades do sudeste sempre podem fazer uma escolha e muitas delas escolhem pelo caminho da marginalidade. Então isso não é uma falácia. A vida pode ser difícil de diversas maneiras e uma pessoa rica sofre tantas pressões para cometer algum crime quanto uma pessoa pobre - a diferença é somente na natureza do crime. Ambas deveriam ser punidas. A maneira de combater a pobreza é ensinando o valor do trabalho e do esforço pessoal e não protegendo e sustentando os "incapazes". Ensine a pescar ao invés de dar o peixe. -Nilson From marciodesouzaferreira em gmail.com Tue Sep 14 11:47:30 2010 From: marciodesouzaferreira em gmail.com (Marcio Ferreira) Date: Tue, 14 Sep 2010 15:47:30 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: Existiu esse tipo de coisa em todas sociedades. O homem é seu próprio lobo. Claro que as experiências externas cooperam, mas o homem quando nasce já tem índole para o lado negro da força. O que segura é nossa consciência. Como você trata sua consciência(se ainda tem) é o que faz diferença. Marcio Ferreira Em 14 de setembro de 2010 15:29, Nilson Santos Figueiredo Jr. < acid06 at gmail.com> escreveu: > 2010/9/13 Eden Cardim : > > Isso é uma enorme falácia e as pessoas infelizmente sempre caem nessa. > > Eu realmente não sei comentar sobre pessoas não vivem em áreas urbanas > (população rural, no meio do sertão, etc). O que eu posso dizer é que, > com raras exceções, as pessoas que vivem em cidades do sudeste sempre > podem fazer uma escolha e muitas delas escolhem pelo caminho da > marginalidade. Então isso não é uma falácia. > > A vida pode ser difícil de diversas maneiras e uma pessoa rica sofre > tantas pressões para cometer algum crime quanto uma pessoa pobre - a > diferença é somente na natureza do crime. Ambas deveriam ser punidas. > > A maneira de combater a pobreza é ensinando o valor do trabalho e do > esforço pessoal e não protegendo e sustentando os "incapazes". Ensine > a pescar ao invés de dar o peixe. > > -Nilson > _______________________________________________ > Rio-pm mailing list > Rio-pm at pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- next part -------------- An HTML attachment was scrubbed... URL: From breno em rio.pm.org Tue Sep 14 11:53:13 2010 From: breno em rio.pm.org (breno) Date: Tue, 14 Sep 2010 15:53:13 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/14 Marcio Ferreira : > Existiu esse tipo de coisa em todas sociedades. > O homem é seu próprio lobo. > > Claro que as experiências externas cooperam, > mas o homem quando nasce já tem índole para o lado negro da força. > O que segura é nossa consciência. > Como você trata sua consciência(se ainda tem) é o que faz diferença. Depende da sua definição de certo e errado, do que é crime e do que não é, e do tipo de castigo aplicado. Isso está sempre mudando, com o tempo, com o pensamento dominante da era e com a opinião do lado vencedor. []s -b From marciodesouzaferreira em gmail.com Tue Sep 14 12:24:29 2010 From: marciodesouzaferreira em gmail.com (Marcio Ferreira) Date: Tue, 14 Sep 2010 16:24:29 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: O homem tem a natureza de dominar e faz o que for preciso pra isso. O homem é uma das coisas mais velhas que existem, sua natureza é a mesma a muito tempo. Marcio Ferreira Em 14 de setembro de 2010 15:53, breno escreveu: > 2010/9/14 Marcio Ferreira : > > Existiu esse tipo de coisa em todas sociedades. > > O homem é seu próprio lobo. > > > > Claro que as experiências externas cooperam, > > mas o homem quando nasce já tem índole para o lado negro da força. > > O que segura é nossa consciência. > > Como você trata sua consciência(se ainda tem) é o que faz diferença. > > Depende da sua definição de certo e errado, do que é crime e do que > não é, e do tipo de castigo aplicado. Isso está sempre mudando, com o > tempo, com o pensamento dominante da era e com a opinião do lado > vencedor. > > []s > > -b > _______________________________________________ > Rio-pm mailing list > Rio-pm at pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- next part -------------- An HTML attachment was scrubbed... URL: From edencardim em gmail.com Tue Sep 14 12:56:48 2010 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 14 Sep 2010 16:56:48 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/14 Nilson Santos Figueiredo Jr. : > 2010/9/13 Eden Cardim : >> Isso é uma enorme falácia e as pessoas infelizmente sempre caem nessa. > > Eu realmente não sei comentar sobre pessoas não vivem em áreas urbanas > (população rural, no meio do sertão, etc). O que eu posso dizer é que, > com raras exceções, as pessoas que vivem em cidades do sudeste sempre > podem fazer uma escolha e muitas delas escolhem pelo caminho da > marginalidade. Então isso não é uma falácia. Boa parte dos marginalizados nas áreas urbanas do sudeste são retirantes ou descendentes da população rural/serteneja. > A vida pode ser difícil de diversas maneiras e uma pessoa rica sofre > tantas pressões para cometer algum crime quanto uma pessoa pobre - a > diferença é somente na natureza do crime. Ambas deveriam ser punidas. Ambas deveriam ser educadas. > A maneira de combater a pobreza é ensinando o valor do trabalho e do > esforço pessoal e não protegendo e sustentando os "incapazes". Ensine > a pescar ao invés de dar o peixe. Isso, use a vara de pescar pra ensinar a pescar, não pra bater nas costas. --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From acid06 em gmail.com Tue Sep 14 12:59:14 2010 From: acid06 em gmail.com (Nilson Santos Figueiredo Jr.) Date: Tue, 14 Sep 2010 16:59:14 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: 2010/9/14 Eden Cardim : > Isso, use a vara de pescar pra ensinar a pescar, não pra bater nas costas. Acredite ou não, eu tomei cuidado pra não escrever "vara" porque pensei que você falaria algo assim. Não adiantou. ;-) -Nilson From marcus.jabber em gmail.com Tue Sep 14 11:21:23 2010 From: marcus.jabber em gmail.com (Marcus Duarte) Date: Tue, 14 Sep 2010 15:21:23 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <201009140822.00333.marcus.jabber@gmail.com> Message-ID: <201009141521.23368.marcus.jabber@gmail.com> On Tuesday 14 September 2010 14:29:36 breno wrote: > 2010/9/14 Marcus Duarte : > > On Tuesday 14 September 2010 00:30:47 Ole Peter Smith wrote: > >> Marginais - criminosos ou nao - nao compensa pra ninguem. Brasil tem > >> potencia como poucos paises neste mundo. Mas precia aprender da chance a > >> todos. > >> > >> Pessoalmente ja levei alguns, nao por ser pobre, mas por insistir de > >> andar de bermuda e xinela; por ex. foi mandado embora de uma faculdade > >> (particular, eu era professor), cuja o slogan era: Ensinando a Vencer. > >> Os alunos protestou, mas nem eu era apto a voltar mais. Depois os > >> alunos me contou, que mandaram um professor de terno e cravata - que > >> nao sabia borra nenhuma... > >> > >> O lado ironica da historia, e que este incidente, me deu uma fama na > >> regiao... > >> > >> A discriminacao em Brasil, ao meu ver - e social. E amntenha-se atraves > >> de falta de educacao e formacao de cidadania democratica. Eliminacao de > >> ensino particular seria um grande passo de conscientizar o povo na hora > >> de agir como cidadao e na hora de por seu voto. (Claro suponho, que a > >> eliminacao do ensino particular teria com primeiro efeito melhoraria no > >> ensino publico). > >> > >> Educacao e o camino - e mais: o dever do governo. Ae se cidadao quer > >> continuar na marginalidade, e escolha dele - e sofreraria as > >> consequencias. > >> > >> Ole > > > > Você é brasileiro? > > O Ole é dinamarquês. Mas as vezes parece mais brasileiro que muitos de nós > :-) _______________________________________________ Ah tá, perguntei porque achei estranho os erros de português. Ainda mais para quem está fazendo críticas a universidades. Mas neste caso, está perdoado. rs Abs! From eu em samircury.eng.br Wed Sep 15 07:57:37 2010 From: eu em samircury.eng.br (Samir Cury) Date: Wed, 15 Sep 2010 11:57:37 -0300 Subject: [Rio-pm] ET Domingo Message-ID: Fala pessoal, Ainda tem vagas abertas para o ET ? Posso divulgar alguma coisa no blog em construção que deve ser divulgado na quinta em : http://softwarelivre-rj.org/blog Assim preenchemos todas as vagas =) Abraços, Samir -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Wed Sep 15 08:03:57 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Wed, 15 Sep 2010 12:03:57 -0300 Subject: [Rio-pm] ET Domingo In-Reply-To: References: Message-ID: Senhores Quero aproveitar para avisar que é possivel que eu não vá, portanto podem usar a minha vaga. Estou com problemas familiares. Aproveitando: quem precisar de tratamento cardiaco no RJ procure o Hospital Pró-Cardiaco, a avó da minha esposa foi operada ontem e o pessoal é guerreiro, fazem milagres (até agora). Espero que ninguem precise, é claro. 2010/9/15 Samir Cury > Fala pessoal, > > Ainda tem vagas abertas para o ET ? > > Posso divulgar alguma coisa no blog em construção que deve ser divulgado na > quinta em : > > http://softwarelivre-rj.org/blog > > Assim preenchemos todas as vagas =) > > Abraços, > Samir > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Wed Sep 15 09:29:28 2010 From: breno em rio.pm.org (breno) Date: Wed, 15 Sep 2010 13:29:28 -0300 Subject: [Rio-pm] ET Domingo In-Reply-To: References: Message-ID: 2010/9/15 Samir Cury : > Fala pessoal, > > Ainda tem vagas abertas para o ET ? > > Posso divulgar alguma coisa no blog em construção que deve ser divulgado na > quinta em : > > http://softwarelivre-rj.org/blog > > Assim preenchemos todas as vagas =) > Tem mais vaga não Samir, mesmo devolvendo a do pac já estamos no overbooking :-) Nos vemos domingo! E sábado também, claro, pro social []s -b From rio-pm em nmoura.eti.br Thu Sep 16 08:37:05 2010 From: rio-pm em nmoura.eti.br (Nilton Moura) Date: Thu, 16 Sep 2010 12:37:05 -0300 Subject: [Rio-pm] ET Domingo In-Reply-To: References: Message-ID: Pessoal, Infelizmente não poderei comparecer no ET domingo. Fiquem à vontade para preencher a vaga que deixo. []'s Nilton Moura. Em 15 de setembro de 2010 13:29, breno escreveu: > 2010/9/15 Samir Cury : >> Fala pessoal, >> >> Ainda tem vagas abertas para o ET ? >> >> Posso divulgar alguma coisa no blog em construção que deve ser divulgado na >> quinta em : >> >> http://softwarelivre-rj.org/blog >> >> Assim preenchemos todas as vagas =) >> > > Tem mais vaga não Samir, mesmo devolvendo a do pac já estamos no overbooking :-) > > Nos vemos domingo! E sábado também, claro, pro social > > []s > > -b > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > From ole.ufg em gmail.com Thu Sep 16 13:18:56 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Thu, 16 Sep 2010 17:18:56 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <201009140822.00333.marcus.jabber@gmail.com> Message-ID: > > > O Ole é dinamarquês. Mas as vezes parece mais brasileiro que muitos de nós > :-) > _______________________________________________ > gggggggggggggggggggggggggggggggg Sempre defendo, que sou filho do mundo! Como um verdadeiro Viking! Ole -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ole.ufg em gmail.com Thu Sep 16 13:22:00 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Thu, 16 Sep 2010 17:22:00 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <02437E5B3F28467C958F4AE9E39FA7BA@orion> Message-ID: > > Ambas deveriam ser educadas. > > Mas me parece bem pior, robando quanto ja tem mais do que precisa - que quanto desesperadamente procura seu sustento e dos seus filhos. Porem prevalece o comentario numa mensagem anterior: ensine pescar! Ole -- ###################################################### Divide uma maçã - e cada um fica com meia Divide uma idéia - e cada um pode ficar com até mais do que uma ###################################################### Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From ole.ufg em gmail.com Thu Sep 16 13:22:53 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Thu, 16 Sep 2010 17:22:53 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: <201009141521.23368.marcus.jabber@gmail.com> References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <201009140822.00333.marcus.jabber@gmail.com> <201009141521.23368.marcus.jabber@gmail.com> Message-ID: > > Ah tá, perguntei porque achei estranho os erros de português. Ainda mais > para > quem está fazendo críticas a universidades. > Mas neste caso, está perdoado. rs Grato, prefiro zuletrar (ggg) errado que cala-me! Ole -- ###################################################### Divide uma maçã - e cada um fica com meia Divide uma idéia - e cada um pode ficar com até mais do que uma ###################################################### Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Thu Sep 16 19:58:42 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Thu, 16 Sep 2010 23:58:42 -0300 Subject: [Rio-pm] ET Domingo In-Reply-To: References: Message-ID: Idem. Estou de férias e nao vou poder comparecer. A Diana me ligou hoje achando que estava no RJ e perguntou se eu iria ao ET. Bem que gostaria mas fica para proxima. Abraços a todos. Em 16 de setembro de 2010 12:37, Nilton Moura escreveu: > Pessoal, > > Infelizmente não poderei comparecer no ET domingo. Fiquem à vontade > para preencher a vaga que deixo. > > []'s > Nilton Moura. > > Em 15 de setembro de 2010 13:29, breno escreveu: > > 2010/9/15 Samir Cury : > >> Fala pessoal, > >> > >> Ainda tem vagas abertas para o ET ? > >> > >> Posso divulgar alguma coisa no blog em construção que deve ser divulgado > na > >> quinta em : > >> > >> http://softwarelivre-rj.org/blog > >> > >> Assim preenchemos todas as vagas =) > >> > > > > Tem mais vaga não Samir, mesmo devolvendo a do pac já estamos no > overbooking :-) > > > > Nos vemos domingo! E sábado também, claro, pro social > > > > []s > > > > -b > > _______________________________________________ > > Rio-pm mailing list > > Rio-pm em pm.org > > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From marcus.jabber em gmail.com Fri Sep 17 10:55:54 2010 From: marcus.jabber em gmail.com (Marcus Duarte) Date: Fri, 17 Sep 2010 14:55:54 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <201009141521.23368.marcus.jabber@gmail.com> Message-ID: <201009171455.54872.marcus.jabber@gmail.com> On Thursday 16 September 2010 17:22:53 Ole Peter Smith wrote: > > Ah tá, perguntei porque achei estranho os erros de português. Ainda mais > > para > > quem está fazendo críticas a universidades. > > Mas neste caso, está perdoado. rs > > Grato, prefiro zuletrar (ggg) errado que cala-me! > > Ole hahaha. Boaa, gostei! Errando que se aprende. =) From ole.ufg em gmail.com Fri Sep 17 12:23:10 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Fri, 17 Sep 2010 16:23:10 -0300 Subject: [Rio-pm] [OFF] Re: Isaac Asimov In-Reply-To: <201009171455.54872.marcus.jabber@gmail.com> References: <3D8EC5AB-0F12-422B-9746-44293D48DC91@gmail.com> <201009141521.23368.marcus.jabber@gmail.com> <201009171455.54872.marcus.jabber@gmail.com> Message-ID: > > Errando que se aprende. =) > ___________________________ > Qr dizer que ainda tem esperanca??? Q bom! Ole -- ###################################################### Divide uma maçã - e cada um fica com meia Divide uma idéia - e cada um pode ficar com até mais do que uma ###################################################### Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Fri Sep 17 15:16:21 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Fri, 17 Sep 2010 19:16:21 -0300 Subject: [Rio-pm] Encontro Social - Setembro In-Reply-To: References: Message-ID: ta confirmado olimpiadas nesse sabado? q horas? 2010/9/9 Fernando Oliveira > Então ta combinado no olimpiadas! > > On Sep 9, 2010 12:56 PM, "Samir Cury" wrote: > > Ae sumido! Bora la! > > Ate mais! > > 2010/9/9 Fernando Oliveira > > > > > > Eu voto no olimpiadas do chopp na praça saens pena! Em frente ao metro! > >> > >> On Sep 6, 2010 4:... > > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From nuba em fastmail.fm Sat Sep 18 12:11:18 2010 From: nuba em fastmail.fm (Nuba Princigalli) Date: Sat, 18 Sep 2010 16:11:18 -0300 (BRT) Subject: [Rio-pm] Encontro Social (Hoje, Sabado 18/Set/2010) Message-ID: Caros, Postando a pedido do Garu, que esta em transito, e vai buscar o Thiago Rondon (maluco) no aeroporto daqui a pouco: A programação social hoje começa no Devassa do Largo do Machado aas 6:30pm. Como o lugar é uma espécie de hub, fica facil mais tarde sairmos de la para outro lugar, se for o caso. Ate la! Nuba From ricardo_filipo em yahoo.com.br Sat Sep 18 14:26:06 2010 From: ricardo_filipo em yahoo.com.br (Ricardo Filipo) Date: Sat, 18 Sep 2010 14:26:06 -0700 (PDT) Subject: [Rio-pm] Res: Encontro Social (Hoje, Sabado 18/Set/2010) In-Reply-To: References: Message-ID: <119953.32792.qm@web33004.mail.mud.yahoo.com> Adeus São Paulo! Espero chegar a tempo! Mas amanhã estarei no ET. Qual a hora do encontro na Rua Bambina? :) Filipo ----- Mensagem original ---- De: Nuba Princigalli Para: rio-pm em pm.org Enviadas: Sábado, 18 de Setembro de 2010 16:11:18 Assunto: [Rio-pm] Encontro Social (Hoje, Sabado 18/Set/2010) Caros, Postando a pedido do Garu, que esta em transito, e vai buscar o Thiago Rondon (maluco) no aeroporto daqui a pouco: A programação social hoje começa no Devassa do Largo do Machado aas 6:30pm. Como o lugar é uma espécie de hub, fica facil mais tarde sairmos de la para outro lugar, se for o caso. Ate la! Nuba From thiago em aware.com.br Sun Sep 19 08:12:23 2010 From: thiago em aware.com.br (Thiago Rondon) Date: Sun, 19 Sep 2010 12:12:23 -0300 Subject: [Rio-pm] =?iso-8859-1?q?ET_t=E9cnico_=22hoje=22?= Message-ID: <4C962857.4000808@aware.com.br> Pessoal, O garu me pediu para enviar um alerta para vocês, o encontro técnico começa daqui 1 hora, ou seja às 13:00. Mais informações em http://rio.pm.org/enc_tecnicos.pl Até lá! -Thiago Rondon From ricardo_filipo em yahoo.com.br Mon Sep 20 06:55:11 2010 From: ricardo_filipo em yahoo.com.br (Ricardo Filipo) Date: Mon, 20 Sep 2010 06:55:11 -0700 (PDT) Subject: [Rio-pm] =?iso-8859-1?q?Res=3A__ET_t=E9cnico_=22hoje=22?= In-Reply-To: <4C962857.4000808@aware.com.br> References: <4C962857.4000808@aware.com.br> Message-ID: <371873.97132.qm@web33002.mail.mud.yahoo.com> Obrigado, amigos! O ET foi excelente! Fiquei um pouco ocupado com os meus filhotes mas o que pude aproveitar valeu a presença! Estarei no Rio até dia 12. Vamos marcar um ESX? que tal 5a feira? Abração! Filipo ----- Mensagem original ---- De: Thiago Rondon Para: rio-pm em mail.pm.org Enviadas: Domingo, 19 de Setembro de 2010 12:12:23 Assunto: [Rio-pm] ET técnico "hoje" Pessoal, O garu me pediu para enviar um alerta para vocês, o encontro técnico começa daqui 1 hora, ou seja às 13:00. Mais informações em http://rio.pm.org/enc_tecnicos.pl Até lá! -Thiago Rondon _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm From ricardo_filipo em yahoo.com.br Mon Sep 20 06:55:11 2010 From: ricardo_filipo em yahoo.com.br (Ricardo Filipo) Date: Mon, 20 Sep 2010 06:55:11 -0700 (PDT) Subject: [Rio-pm] =?iso-8859-1?q?Res=3A__ET_t=E9cnico_=22hoje=22?= In-Reply-To: <4C962857.4000808@aware.com.br> References: <4C962857.4000808@aware.com.br> Message-ID: <371873.97132.qm@web33002.mail.mud.yahoo.com> Obrigado, amigos! O ET foi excelente! Fiquei um pouco ocupado com os meus filhotes mas o que pude aproveitar valeu a presença! Estarei no Rio até dia 12. Vamos marcar um ESX? que tal 5a feira? Abração! Filipo ----- Mensagem original ---- De: Thiago Rondon Para: rio-pm em mail.pm.org Enviadas: Domingo, 19 de Setembro de 2010 12:12:23 Assunto: [Rio-pm] ET técnico "hoje" Pessoal, O garu me pediu para enviar um alerta para vocês, o encontro técnico começa daqui 1 hora, ou seja às 13:00. Mais informações em http://rio.pm.org/enc_tecnicos.pl Até lá! -Thiago Rondon _______________________________________________ Rio-pm mailing list Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm From ole.ufg em gmail.com Sat Sep 18 16:16:52 2010 From: ole.ufg em gmail.com (Ole Peter Smith) Date: Sat, 18 Sep 2010 20:16:52 -0300 Subject: [Rio-pm] Fwd: Gandhi Message-ID: Gostei tanto desse ditado... ´Acredito na essencial unidade do homem, e portanto na unidade de tudo o que vive. Desse modo, se um homem progredir espiritualmente, o mundo inteiro progride com ele, e se um homem cai, o mundo inteiro cai em igual medida.? Mahatma Gandhi -- ###################################################### Divide uma maçã - e cada um fica com meia Divide uma idéia - e cada um pode ficar com até mais do que uma ###################################################### Ole Peter Smith, IME, UFG http://www.mat.ufg.br - ole at mat.ufg.br ###################################################### Live sure is a Mystery to be Lived Not a Problem to be Solved ###################################################### -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From andreoandre em gmail.com Mon Sep 20 12:21:03 2010 From: andreoandre em gmail.com (=?ISO-8859-1?Q?Andr=E9_Moura?=) Date: Mon, 20 Sep 2010 16:21:03 -0300 Subject: [Rio-pm] Fwd: Gandhi In-Reply-To: References: Message-ID: Boa citação.... Abraços 2010/9/18 Ole Peter Smith : > Gostei tanto desse ditado... > > > ´Acredito na essencial unidade do homem, e portanto na unidade de tudo > o que vive. Desse modo, se um homem progredir espiritualmente, o mundo > inteiro progride com ele, e se um homem cai, o mundo inteiro cai em > igual medida.? > > Mahatma Gandhi > > > -- > ###################################################### >            Divide uma maçã - e cada um fica com meia > Divide uma idéia - e cada um pode ficar com até mais do que uma > ###################################################### >                   Ole Peter Smith, IME, UFG >           http://www.mat.ufg.br - ole at mat.ufg.br > ###################################################### >              Live sure is a Mystery to be Lived >                   Not a Problem to be Solved > ###################################################### > > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- André O Moura http://andrem.wordpress.com From breno em rio.pm.org Tue Sep 21 01:55:21 2010 From: breno em rio.pm.org (breno) Date: Tue, 21 Sep 2010 05:55:21 -0300 Subject: [Rio-pm] =?iso-8859-1?q?Slides_e_fotos_do_Encontro_T=E9cnico_Rio-?= =?iso-8859-1?q?PM?= Message-ID: Oi pessoal! O Encontro Técnico dos Rio Perl Mongers, realizado esse domingo, foi um grande sucesso! Nessa edição, contamos com a participação mais que especial do nosso amigo Thiago Rondon, líder da São Paulo Perl Mongers, com uma palestra muito bacana sobre filas e a solução RabbitMQ. Outro participante ilustre foi o monge carioca extraditado em São Paulo Ricardo Filipo, no melhor regime "o bom filho a casa torna", que veio com a familia e apresentou o YAC, um conceito para CMS com implementação em Catalyst. Tivemos também uma introdução ao SDL e a criação de jogos em Perl. Mas quem roubou a cena do evento mesmo foi o Samir, que trouxe um mini-tanque de guerra feito com Arduino e movido a Perl! Quem não foi... perdeu :-) Mas, como prêmio de consolação, os slides das palestras e fotos do evento já estão disponíveis! http://rio.perl.org.br/enc_tecnicos.pl Nos vemos mês que vem no YAPC::Brasil em Fortaleza!! []s -b From shonorio em gmail.com Tue Sep 21 05:14:55 2010 From: shonorio em gmail.com (Solli Honorio) Date: Tue, 21 Sep 2010 09:14:55 -0300 Subject: [Rio-pm] =?iso-8859-1?q?artigo_sobre_t=E9cnicas_de_leitura/proces?= =?iso-8859-1?q?samento_de_arquivos_no_equin=F3cio?= Message-ID: Pessoal, Hoje foi publicado no equinócio ( http://sao-paulo.pm.org/equinocio/2010/set/21) o meu artigo sobre técnicas para abrir e ler arquivos. Tentei o justificar a necessidade de utilizar o PBP, explicar como funciona o slurp, exemplificar códigos com read/sysread e apresentar outra alternativa. Eu gostaria da crítica de vocês para corrigir os erros e melhorar o artigo. Abraços, Solli M. Honório -- "o animal satisfeito dorme". - Guimarães Rosa -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Tue Sep 21 15:58:22 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Tue, 21 Sep 2010 19:58:22 -0300 Subject: [Rio-pm] erro esquisitissimo com eval Message-ID: segue codigo exemplo... use English; ... $midia->{'erros'}= []; eval{ $bytes = $midia->qqcoisa(); }; if($EVAL_ERROR){ print "vou adicionar o $EVAL_ERROR aqui\n"; $erros+=1; My::Logger::log("err",$EVAL_ERROR,$id); push @{$midia->{'erros'}}, $EVAL_ERROR; next; # esta dentro de um foreach } Beleza, tudo parece bom, exceto que $EVAL_ERROR simplesmente DESAPARECE depois do log(xxx); Eu revisei e esta funcao nao tem como alterar os parametros recebidos. Existe algum problema ao ler multiplas vezes o erro de um eval??? Pode ser um problema de concorrencia entre multiplas threads (eu rodo isso dentro de um Test::Simple)? E é um problema deterministico. Eu tive q pegar o erro na primeira linha dentro do IF... para mim isso é mazica... :/ ' Ideias -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From edencardim em gmail.com Tue Sep 21 16:09:39 2010 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 21 Sep 2010 20:09:39 -0300 Subject: [Rio-pm] erro esquisitissimo com eval In-Reply-To: References: Message-ID: 2010/9/21 Tiago Peczenyj : > segue codigo exemplo... > use English; > ... > $midia->{'erros'}= []; > eval{ > $bytes = $midia->qqcoisa(); > }; > if($EVAL_ERROR){ > print "vou adicionar o $EVAL_ERROR aqui\n"; > $erros+=1; > My::Logger::log("err",$EVAL_ERROR,$id); > push @{$midia->{'erros'}}, $EVAL_ERROR; > next; # esta dentro de um foreach > } > > Beleza, tudo parece bom, exceto que $EVAL_ERROR  simplesmente DESAPARECE > depois do log(xxx); > Eu revisei e esta funcao nao tem como alterar os parametros recebidos. > Existe algum problema ao ler multiplas vezes o erro de um eval??? > Pode ser um problema de concorrencia entre multiplas threads (eu rodo isso > dentro de um Test::Simple)? E é um problema deterministico. > Eu tive q pegar o erro na primeira linha dentro do IF... para mim isso é > mazica... :/ E é uma mágica irritante. Em perldoc -f eval: "...If there was no error, $@ is guaranteed to be the empty string..." ou seja, a função log() provavelmente está rodando um eval bem-sucedido lá dentro, o que está colocando a string vazia em $EVAL_ERROR. Para contornar o problema, atribua o erro para outra variável logo após o eval original, e use essa variável invés da variável padrão de erro. --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From tiago.peczenyj em gmail.com Tue Sep 21 16:20:14 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Tue, 21 Sep 2010 20:20:14 -0300 Subject: [Rio-pm] erro esquisitissimo com eval In-Reply-To: References: Message-ID: eu poderia ter este problema com um eval() rodando em outra thread? nao sei se a infra de testes do Test::Simple cria algo de controle ou algo assim. 2010/9/21 Eden Cardim > 2010/9/21 Tiago Peczenyj : > > segue codigo exemplo... > > use English; > > ... > > $midia->{'erros'}= []; > > eval{ > > $bytes = $midia->qqcoisa(); > > }; > > if($EVAL_ERROR){ > > print "vou adicionar o $EVAL_ERROR aqui\n"; > > $erros+=1; > > My::Logger::log("err",$EVAL_ERROR,$id); > > push @{$midia->{'erros'}}, $EVAL_ERROR; > > next; # esta dentro de um foreach > > } > > > > Beleza, tudo parece bom, exceto que $EVAL_ERROR simplesmente DESAPARECE > > depois do log(xxx); > > Eu revisei e esta funcao nao tem como alterar os parametros recebidos. > > Existe algum problema ao ler multiplas vezes o erro de um eval??? > > Pode ser um problema de concorrencia entre multiplas threads (eu rodo > isso > > dentro de um Test::Simple)? E é um problema deterministico. > > Eu tive q pegar o erro na primeira linha dentro do IF... para mim isso é > > mazica... :/ > > E é uma mágica irritante. Em perldoc -f eval: "...If there was no > error, $@ is guaranteed to be the empty string..." > ou seja, a função log() provavelmente está rodando um eval > bem-sucedido lá dentro, o que está colocando a string vazia em > $EVAL_ERROR. Para contornar o problema, atribua o erro para outra > variável logo após o eval original, e use essa variável invés da > variável padrão de erro. > > -- > Eden Cardim Need help with your Catalyst or DBIx::Class project? > Code Monkey http://www.shadowcat.co.uk/catalyst/ > Shadowcat Systems Ltd. Want a managed development or deployment platform? > http://blog.edencardim.com/ http://www.shadowcat.co.uk/servers/ > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From tiago.peczenyj em gmail.com Tue Sep 21 16:25:28 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Tue, 21 Sep 2010 20:25:28 -0300 Subject: [Rio-pm] erro esquisitissimo com eval In-Reply-To: References: Message-ID: ah... o syslog faz isso, que eu uso por debaixo dos panos use Sys::Syslog; openlog 'expurgo',"pid,ndelay,nowait","local0"; eval { die 'ops';}; print $@; syslog "info",$@; print "\no syslog esta apagando essa coisa -> '" .$@ . "'\n"; Q puxa :/ 2010/9/21 Eden Cardim > 2010/9/21 Tiago Peczenyj : > > segue codigo exemplo... > > use English; > > ... > > $midia->{'erros'}= []; > > eval{ > > $bytes = $midia->qqcoisa(); > > }; > > if($EVAL_ERROR){ > > print "vou adicionar o $EVAL_ERROR aqui\n"; > > $erros+=1; > > My::Logger::log("err",$EVAL_ERROR,$id); > > push @{$midia->{'erros'}}, $EVAL_ERROR; > > next; # esta dentro de um foreach > > } > > > > Beleza, tudo parece bom, exceto que $EVAL_ERROR simplesmente DESAPARECE > > depois do log(xxx); > > Eu revisei e esta funcao nao tem como alterar os parametros recebidos. > > Existe algum problema ao ler multiplas vezes o erro de um eval??? > > Pode ser um problema de concorrencia entre multiplas threads (eu rodo > isso > > dentro de um Test::Simple)? E é um problema deterministico. > > Eu tive q pegar o erro na primeira linha dentro do IF... para mim isso é > > mazica... :/ > > E é uma mágica irritante. Em perldoc -f eval: "...If there was no > error, $@ is guaranteed to be the empty string..." > ou seja, a função log() provavelmente está rodando um eval > bem-sucedido lá dentro, o que está colocando a string vazia em > $EVAL_ERROR. Para contornar o problema, atribua o erro para outra > variável logo após o eval original, e use essa variável invés da > variável padrão de erro. > > -- > Eden Cardim Need help with your Catalyst or DBIx::Class project? > Code Monkey http://www.shadowcat.co.uk/catalyst/ > Shadowcat Systems Ltd. Want a managed development or deployment platform? > http://blog.edencardim.com/ http://www.shadowcat.co.uk/servers/ > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From edencardim em gmail.com Tue Sep 21 16:26:23 2010 From: edencardim em gmail.com (Eden Cardim) Date: Tue, 21 Sep 2010 20:26:23 -0300 Subject: [Rio-pm] erro esquisitissimo com eval In-Reply-To: References: Message-ID: 2010/9/21 Tiago Peczenyj : > eu poderia ter este problema com um eval() rodando em outra thread? > nao sei se a infra de testes do Test::Simple cria algo de controle ou algo > assim. O TAP::Harness tem a habilidade de rodar testes em paralelo, mas não, o eval não propaga para outras threads, isso seria uma bagunça. O seu problema é que tem um eval sendo invocado dentro do callstack da função log(). --    Eden Cardim       Need help with your Catalyst or DBIx::Class project?   Code Monkey                    http://www.shadowcat.co.uk/catalyst/  Shadowcat Systems Ltd.  Want a managed development or deployment platform? http://blog.edencardim.com/            http://www.shadowcat.co.uk/servers/ From tiago.peczenyj em gmail.com Tue Sep 21 19:16:12 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Tue, 21 Sep 2010 23:16:12 -0300 Subject: [Rio-pm] erro esquisitissimo com eval In-Reply-To: References: Message-ID: Bom, se capturar o $@ logo no começo resolve 100%, fico mais aliviado. 2010/9/21 Eden Cardim > 2010/9/21 Tiago Peczenyj : > > eu poderia ter este problema com um eval() rodando em outra thread? > > nao sei se a infra de testes do Test::Simple cria algo de controle ou > algo > > assim. > > O TAP::Harness tem a habilidade de rodar testes em paralelo, mas não, > o eval não propaga para outras threads, isso seria uma bagunça. O seu > problema é que tem um eval sendo invocado dentro do callstack da > função log(). > > -- > Eden Cardim Need help with your Catalyst or DBIx::Class project? > Code Monkey http://www.shadowcat.co.uk/catalyst/ > Shadowcat Systems Ltd. Want a managed development or deployment platform? > http://blog.edencardim.com/ http://www.shadowcat.co.uk/servers/ > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From breno em rio.pm.org Tue Sep 21 21:35:05 2010 From: breno em rio.pm.org (breno) Date: Wed, 22 Sep 2010 01:35:05 -0300 Subject: [Rio-pm] erro esquisitissimo com eval In-Reply-To: References: Message-ID: 2010/9/21 Tiago Peczenyj : > Bom, se capturar o $@ logo no começo resolve 100%, fico mais aliviado. > Resolve sim. Mas, pra dar um pouco mais de sanidade ao tratamento de exceções, eliminando esse e outros problemas de edge-cases do eval, recomendo fortemente o Try::Tiny. []s -b From tiago.peczenyj em gmail.com Wed Sep 22 06:15:02 2010 From: tiago.peczenyj em gmail.com (Tiago Peczenyj) Date: Wed, 22 Sep 2010 10:15:02 -0300 Subject: [Rio-pm] erro esquisitissimo com eval In-Reply-To: References: Message-ID: Puxa, este módulo é muito bom! E a implementação é muito legivel! On Wed, Sep 22, 2010 at 1:35 AM, breno wrote: > 2010/9/21 Tiago Peczenyj : > > Bom, se capturar o $@ logo no começo resolve 100%, fico mais aliviado. > > > > Resolve sim. > > Mas, pra dar um pouco mais de sanidade ao tratamento de exceções, > eliminando esse e outros problemas de edge-cases do eval, recomendo > fortemente o Try::Tiny. > > []s > > -b > _______________________________________________ > Rio-pm mailing list > Rio-pm em pm.org > http://mail.pm.org/mailman/listinfo/rio-pm > -- Tiago B. Peczenyj Linux User #405772 http://pacman.blog.br -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: From oscarbm em gmail.com Sun Sep 26 08:11:27 2010 From: oscarbm em gmail.com (Oscar Marques) Date: Sun, 26 Sep 2010 12:11:27 -0300 Subject: [Rio-pm] =?iso-8859-1?q?=5BOT=5D_Fwd=3A_Palestras_Semana_Acad=EAm?= =?iso-8859-1?q?ina_da_Computa=E7=E3o_na_UFF?= In-Reply-To: References: Message-ID: Ve ae galera. Bernardo, agita algo de arduino e android e perl. Se puder, me arruma uma vaga pra falar sobre Python ou Perl ou App Inventor etc... Abraços. ---------- Mensagem encaminhada ---------- De: Bernardo Fontes Data: 24 de setembro de 2010 09:52 Assunto: Palestras Semana Acadêmina da Computação na UFF Para: horaextra em googlegroups.com Pessoal, Do dia 8 ao dia 11 de Novembro nós teremos na UFF a Semana Acadêmica da Computação. Para quem não sabe, a Semana Acadèmica é um dos principais eventos da Universidade e ele conta com palestras, minicursos e workshops. Estou ajudando na organização do evento desse ano e estamos com a ideia de fazer um ultra evento de desenvolvimento na UFF (Dev In UFF?). Já conseguimos garantir dois dojos por dia de evento, um na parte da tarde e outro na parte da manhã. Agora, estamos vendo as palestras e gostaria de contar com a ajuda de vocês. Temos aqui nas comunidades do Rio de Janeiro várias pessoas que possuem apresentações sobre temas muito interessantes e acho que levar isso para o meio universitário é essencial para fomentarmos um mercado que tenha os nosso princípios. Nós estamos pensando em organizar o evento com palestras das áreas de *Desenvolvimento*, *Web*, *Games* e * Empreendedorismo* dispostas nos seguintes horários (todos os dias): 09h00 - 10h10 10h20 - 11h30 11h40 - 12h50 14h00 - 15h10 15h20 - 16h30 16h40 - 17h50 Vale dizer que os horários do dia 10/11 já estão fechados. Já temos alguns palestrantes definidos como o Álvaro Justen e o Diego Dukão, mas nós queremos mais. Eu, particularmente, nunca me interessei muito pela Semana Acadêmica na UFF porque era sempre algo como banbanbans de empresas como IBM, Accenture, Vale, Petrobrás e por aí, que iam para ficar falando sobre a empresa e como ganhar dinheiro. Nunca o foco foi em desenvolvimento e sobre como fazer software. Nós temos a chance de mudar isso nesse ano e *nós vamos mudar*. Precisamos mostrar o quão forte é essa nossa comunidade do Rio. Então, quem puder e quiser palestrar, diga o dia e o horário que for melhor para você e o tema que você quer apresentar que nós daremos o nosso jeito! Fico aí no aguardo! Abraços -- Bernardo Fontes http://www.bernardofontes.net falecomigo em bernardofontes.net Skype: bernardoxhc (21) 9629 1621 -- Você está recebendo esta mensagem porque se inscreveu no grupo "#Horaextra" dos Grupos do Google. Para postar neste grupo, envie um e-mail para horaextra em googlegroups.com. Para cancelar a inscrição nesse grupo, envie um e-mail para horaextra+unsubscribe em googlegroups.com . Para obter mais opções, visite esse grupo em http://groups.google.com/group/horaextra?hl=pt-BR. -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: