Posts de ‘Tiago Peczenyj’

[Tiago Peczenyj] Perl Moderno no III FSLDC neste sábado

Friday, June 3rd, 2011

Passei a utilizar o twitter (@pac_man) como ferramenta de comunicação e divulgação, assim este blog tem andado um pouco abandonado, fato que deve se encerrar agora.

O fato é que neste sábado (4 de junho) acontecerá o Terceiro Fórum de Software Livre de Duque de Caxias (link para o site aqui). Será um dia cheio de palestras sobre software livre, programação, mini cursos e até uma oficina de Arduino. O evento conta com palestrantes internacionais, destaque para Rasmus Lerdorf (criador do PHP) e John “Maddog” Hal (diretor executivo da Linux Internacional). A programação completa vc encontra aqui.

O fato é que vou ministrar uma palestra as 14 hs no auditório 3 sobre Perl Moderno. Apesar de trabalhar pouco com esta linguagem no meu trabalho sinto um prazer imenso em programar em Perl, em particular as versões mais recentes e com alguns módulos maravilhosos do CPAN que espero ter tempo para falar de todos. A palestra será inspirada no livro Modern Perl do chromatic , livro este que pode ser baixado em pdf gratuitamente.

Perl hoje ainda é sinônimo de código obscuro e complexo, o que é uma grande besteira. Qualquer linguagem pode produzir programas ilegíveis e de péssima manutenção e a origem disto é o programador (mas a linguagem pode ajudar, mas ai são outros quinhentos).

Perl é uma das linguagens de propósito geral mais antigas e estáveis ainda em atividade. A quantidade de documentação disponível e os quase 100.000 módulos disponíveis no CPAN fazem de Perl uma escolha interessante tanto para desenvolver soluções com qualidade.

A cultura Perl inclui uma cultura muito forte de documentação, testes e produção de módulos e bibliotecas de propósito geral. Não raro alguém resolve um problema e contribui com a comunidade sob forma de um módulo, por exemplo.

Uma boa forma de começar a usar Perl Moderno é utilizar uma versão recente (no mínimo a 5.10) e instalar o módulo Modern::Perl. Este módulo não faz nada além de ativar features novas além de habilitar os modos strict e warnings. Veja só, antes um “hello world” tinha uma uma cara assim:

use strict;
use warnings;
 
print "Ola mundo\n";

Agora é possivel fazer assim:

use Modern::Perl;
 
say "Ola mundo";

Seria o equivalente a

use strict;
use warnings;
use 5.010_000;
 
say "Ola mundo";

Porém com escrevendo menos. É facil perceber que surgiu uma nova função built-in chamada say que, simplesmente, imprime adicionando uma “nova linha” ao final.

Mas isto é só o começo. A excelente documentação da versão Perl 5.14 se encontra on-line aqui, em particular as mudanças entre versões estão listadas na pagina de histórico.

Além das novas features, vale a pena conhecer alguns módulos core:
http://sao-paulo.pm.org/artigo/2008/ModulosCore

E alguns módulos do CPAN:
http://sao-paulo.pm.org/artigo/2009/ModulosRecomendadosCPAN

Por fim, vale a pena mencionar dois caras muito uteis.

Moose – A postmodern object system for Perl 5
http://search.cpan.org/~flora/Moose-2.0007/

Com Moose a orientação a objetos em Perl 5 ficou excelente. Vale a pena olhar o Manual e o CookBook.

E o Mojolicious – divertido e simples framework web
http://sao-paulo.pm.org/artigo/2010/Mojolicious

Site oficial:
http://www.mojolicious.org/

Espero colocar os slides rapidamente aqui no Blog além de detalhar melhor algumas coisas. No nosso idioma é possível encontrar muito material nos sites dos Perl Mongers

http://sao-paulo.pm.org/
http://rio.pm.org/

Logo devo contar como foi o Workshop ocorrido em São Paulo com a ilustre presença de Larry Wall e em breve deverá sair a data do YAPC::Brasil (Yet Another Perl Conference) que acontecerá no Rio de Janeiro.

[Tiago Peczenyj] Perl Workshop 2011

Thursday, April 7th, 2011

Dia 7 de maio, em São Paulo, acontecerá a segunda edição do São Paulo Perl Workshop.

Será um grande evento com as participações de Larry Wall (criador da linguagem Perl), Brian d Foy (autor de vários livros incluindo Mastering Perl ) e Brian Fitzpatrick (fundador da Danga, responsável por projetos como Memcached, MoguileFS entre outros). A lista completa de palestrantes do evento pode ser encontrada aqui.

Pessoalmente acho uma excelente oportunidade para conhecer o que está sendo feito atualmente com Perl bem como conhecer uma das melhores comunidades de desenvolvedores do Brasil. Enquanto alguns acham que perl é uma linguagem write-only em virtude da sua filosofia TIMTOWTDI (There’s more than one way to do it) porém hoje existem excelentes soluções para web (framework como Catalyst, Dancer, Mojolicious), metaprogramação (com Moose – que será assunto do Brian d Foy), mapeamento objeto-relacional (DBIx::Class) sem falar nos milhares de módulos no CPAN disponíveis.

Larry Wall apresentará o que de mais novo há no desenvolvimento do Perl6, linguagem que terá uma boa dose de orientação a objetos e funcional. Imperdível. Sem falar na apresentação sobre camlistore, um sistema de storage voltado para a web.

A programação do evento pode ser encontrada aqui.

Vale a pena comparecer!

[Tiago Peczenyj] Perl Workshop 2011

Thursday, April 7th, 2011

Dia 7 de maio, em São Paulo, acontecerá a segunda edição do São Paulo Perl Workshop.

Será um grande evento com as participações de Larry Wall (criador da linguagem Perl), Brian d Foy (autor de vários livros incluindo Mastering Perl ) e Brian Fitzpatrick (fundador da Danga, responsável por projetos como Memcached, MoguileFS entre outros). A lista completa de palestrantes do evento pode ser encontrada aqui.

Pessoalmente acho uma excelente oportunidade para conhecer o que está sendo feito atualmente com Perl bem como conhecer uma das melhores comunidades de desenvolvedores do Brasil. Enquanto alguns acham que perl é uma linguagem write-only em virtude da sua filosofia TIMTOWTDI (There’s more than one way to do it) porém hoje existem excelentes soluções para web (framework como Catalyst, Dancer, Mojolicious), metaprogramação (com Moose – que será assunto do Brian d Foy), mapeamento objeto-relacional (DBIx::Class) sem falar nos milhares de módulos no CPAN disponíveis.

Larry Wall apresentará o que de mais novo há no desenvolvimento do Perl6, linguagem que terá uma boa dose de orientação a objetos e funcional. Imperdível. Sem falar na apresentação sobre camlistore, um sistema de storage voltado para a web.

A programação do evento pode ser encontrada aqui.

Vale a pena comparecer!

[Tiago Peczenyj] Oportunidades globo.com

Monday, December 6th, 2010

Olá amigo desenvolvedor

Nós estamos com as seguintes vagas abertas aqui na area de Videos da globo.com:

http://gist.github.com/594208
http://gist.github.com/594210
http://gist.github.com/594214

Você vai notar que as vagas são bem parecidas, mas existem algumas diferenças bem fortes de uma para outra. A primeira é para o time que desenvolve “a cara” dos nossos produtos, o que o publico final vê. A segunda é o time que lida com sistemas que o publico final não vê, mas que são a base para o que o ele vê no final das contas. E a terceira é nosso time mais próximo de sysadmin-dev, por isso conhecimentos de redes e sistemas operacionais são um requisito (inclusive este é o meu time).

No caso, você seria entrevistado para a vaga que sentir mais identificação, mas não tem problema se você se interessar por outra no decorrer do processo. Para todas, como você deve ter percebido, nos preocupamos não apenas com o perfil técnico, mas também em saber como as pessoas são, o que querem e se suportam tomar um chopp conosco. :-)

Vale lembrar que as contratações são para regime CLT para trabalhar de forma presencial no Rio de Janeiro-RJ, na Barra da Tijuca. Contatos podem ser feitos por intermédio do email contido na descrição das vagas.

[Tiago Peczenyj] Oportunidades globo.com

Monday, December 6th, 2010

Olá amigo desenvolvedor

Nós estamos com as seguintes vagas abertas aqui na area de Videos da globo.com:

http://gist.github.com/594208
http://gist.github.com/594210
http://gist.github.com/594214

Você vai notar que as vagas são bem parecidas, mas existem algumas diferenças bem fortes de uma para outra. A primeira é para o time que desenvolve “a cara” dos nossos produtos, o que o publico final vê. A segunda é o time que lida com sistemas que o publico final não vê, mas que são a base para o que o ele vê no final das contas. E a terceira é nosso time mais próximo de sysadmin-dev, por isso conhecimentos de redes e sistemas operacionais são um requisito (inclusive este é o meu time).

No caso, você seria entrevistado para a vaga que sentir mais identificação, mas não tem problema se você se interessar por outra no decorrer do processo. Para todas, como você deve ter percebido, nos preocupamos não apenas com o perfil técnico, mas também em saber como as pessoas são, o que querem e se suportam tomar um chopp conosco. :-)

Vale lembrar que as contratações são para regime CLT para trabalhar de forma presencial no Rio de Janeiro-RJ, na Barra da Tijuca. Contatos podem ser feitos por intermédio do email contido na descrição das vagas.

[Tiago Peczenyj] Vote no BeerCheck.in no RailsRumble

Thursday, October 21st, 2010

Ola
Vc conhece o BeerCheck.in http://beercheck.in/ ?
É um site desenvolvido em 48 horas por amigos meus para a competição Rails Rumble.
Ele é muito simples: vc loga com a sua conta do twitter e ganha uma “estante” onde vc pode colocar as suas cervejas favoritas. Para que os outros vejam a sua estante basta acessar o seu perfil.
Se vc curtiu, vote no Beer Check.in no site do Rails Rumble.

http://railsrumble.com

A votação vai ate o dia 23. Acho que realmente vale a pena votar pois se em dois dias ficou maneiro, depois da competição muitas outras melhorias podem ser adicionadas! Sem falar que existem outras aplicações divertidas no railsrumble para vc votar, algumas feitas por Brasileiros.
o meu

http://beercheck.in/pac_man

[Tiago Peczenyj] Vote no BeerCheck.in no RailsRumble

Thursday, October 21st, 2010

Ola
Vc conhece o BeerCheck.in http://beercheck.in/ ?
É um site desenvolvido em 48 horas por amigos meus para a competição Rails Rumble.
Ele é muito simples: vc loga com a sua conta do twitter e ganha uma “estante” onde vc pode colocar as suas cervejas favoritas. Para que os outros vejam a sua estante basta acessar o seu perfil.
Se vc curtiu, vote no Beer Check.in no site do Rails Rumble.

http://railsrumble.com

A votação vai ate o dia 23. Acho que realmente vale a pena votar pois se em dois dias ficou maneiro, depois da competição muitas outras melhorias podem ser adicionadas! Sem falar que existem outras aplicações divertidas no railsrumble para vc votar, algumas feitas por Brasileiros.
o meu

http://beercheck.in/pac_man

[Tiago Peczenyj] Testando o wordpress 3.0

Wednesday, July 14th, 2010

Este blog volta a ativa, com muitas novidades, aguarde :)

[Tiago Peczenyj] Testando o wordpress 3.0

Wednesday, July 14th, 2010

Este blog volta a ativa, com muitas novidades, aguarde :)

[Tiago Peczenyj] Como saber se uma musica parou de tocar em html 5

Thursday, April 29th, 2010

Anteriormente vimos como descobrir que uma musica parou de tocar em ActionScript 3. Hoje em dia temos uma quantidade interessante de browsers que suportam alguma coisa de html 5 (safari, chrome, firefox…), portanto nada mais justo que analisar também esta solução.

Vejamos como tocar o nosso jazz.mp3

<audio id="mp3" src="jazz.mp3" type="audio/mpeg" controls/>

Apenas esta tag vai gerar um pequeno player com controles customizados pelo browser. E como saber que a musica parou? Basta escutar pelo evento ended

var mp3 = document.getElementById('mp3');
 
mp3.addEventListener('ended', function(){
	alert("fim");
});

Para customizar os controles basta omitir o atributo controls na tag audio e usar os métodos play e pause, por exemplo.

Um bom exemplo pode ser encontrado aqui:
http://ajaxian.com/archives/html5-media-support-video-and-audio-tags-and-scriptability

E documentação sobre html 5 vc encontra aqui:
http://www.w3schools.com/html5/html5_reference.asp

A tag video segue a mesma idéia, mas será assunto para um próximo post.