Servidores de Aplicação Java EE Livres

Hoje eu participei do evento Plataforma Java x Plataforma .Net (edição DF 2009) ministrando uma palestra no Tema 1. O tema de minha palestra foi o mesmo da ministrada no 6º FGSL. Eu escrevi este artigo como base para minha apresentação.

Dev In Rio 2009: eu fui!

O último evento em que estive presente foi o Dev In Rio, na segunda-feira passada (dia 14/Nov). Este post trata de minhas impressões sobre como foi o evento. O título dele é inspirado nos vários posts entitulados "Dev In Rio 2009: Eu vou!".

Então, vou começar pela conclusão: Guilherme Chapiewski e Henrique Bastos organizaram um bom evento! Com toda certeza, se eu tiver como ir nas próximas edições do mesmo, irei. Eu tive a chance de escutar boas frases dos palestrantes e conhecer algumas pessoas. Percebi que várias destas pessoas (assim como eu) já não acreditam mais que a linguagem Java seja a bala de prata para todos os problemas, mas sim, que a plataforma Java está cada vez mais forte com relação a característica de termos, hoje, mais de duzentas linguagens que podem rodar numa JVM, dentre as quais, as linguagens mais discutidas neste evento: PHP, Groovy, Python e Ruby. Na minha opinião, e na de pessoas que escutei durante o evento, o uso destas linguagens dentro de uma VM já é uma realidade. Além disto, a programação na plataforma Java pode se tornar até mesmo uma tarefa poliglota na qual o uso de cada linguagem, no seu devido lugar, pode oferecer até uma solução melhor do que o uso de uma única linguagem (especialmente, a linguagem Java). Também escutei mensagens interessantes sobre o Rails, sobre o Django, sobre métodos ágeis e no painel, última atividade "oficial" do evento, iniciado por Vinícius Manhães Teles e participado por diversos outros palestrantes e convidados numa "mesa redonda, sem mesa".

Sobre os palestrantes e as palestras em que estive presente, comento a seguir:

  • Gilherme Silveira e Niko Steppat, instrutores da Caelum. Eles falavam, quando cheguei ao evento, sobre otimização de performance numa JVM. Citaram parâmetros utilizados na VM HotSpot da Sun que podem influenciar na decisão da mesma de compilar ou não um código que está sendo bastante chamado. Também demonstraram um exemplo de código Ruby, rodando através do JRuby, sendo otimizado na HotSpot através da modificação de alguns parâmetros. A palestra foi interessante mas não me somou novidades em relação ao que já conheço e lido nesta área a algum tempo (desde que atuava no mercado com o Helder da Rocha, da Argo Navis). Atualmente, em cursos fechados que ofereço para alguns Clientes, cubro assuntos relativos a otimização ao falar sobre tuning de VMs e de servidores de aplicações. Na minha opinião, a melhor contribuição que a palestra da Caelum deixou para todos foi realmente a questão da plataforma Java ser hoje uma plataforma totalmente adequada a utilização de diversas linguagens citando seus casos na utilização do Ruby, Groovy, Scala, etc. Não poderia deixar de citar que Niko Steppat também nos divertiu com o termo "maguina vudual".
  • Fábio Akita, "evangelizador" de Ruby e de Rails que trabalha na LocaWeb. O Akita se destacou, no meu conceito, pela didática e clareza na transmissão de sua mensagem apesar de falar como uma metralhadora. O Rails, com toda a certeza, amplia as características do Ruby, através dos exemplos explicados e demonstrados pelo meta-apresentador do Akita (ele próprio, num vídeo) falando sobre meta-programação. Também foi muito divertida a metáfora "Cowboy x Profissional". A apresentação do Akita foi disponibilizada. Uma das coisas que me lembro sobre o Akita falar é como ele aproveita seu tempo, e que todo programador deveria ser burro (julgar-se assim) e buscar conhecimento constantemente. Eu, tenho lido sobre como gerir melhor o meu tempo e também procuro aproveitar meus minutos em deslocamentos (metrô, ônibus, vôos, ...) lendo, ouvindo e vendo coisas que possam me tornar melhor no que faço. Além disto, estou em constante busca por aperfeiçoamento até mesmo fora do trabalho. As palavras do Akita neste sentido devem ser bem lembradas e, por isto, eu as cito aqui.
  • Jacob Kaplan-Moss, um dos líderes do desenvolvimento do Django, fez uma boa introdução sobre este framework. Eu acredito que, atualmente, trabalhar com Django seja realmente uma das formas mais ágeis de se produzir aplicações para a Web. Se assim não fosse, empresas como Globo.com, Google, SERPRO, dentre outras tantas, realmente não estariam investindo tanto tempo assim em soluções que envolvem seu uso. Também achei interessante a apresentação do software Obameter e dele ter sido desenvolvido em Django. Cheguei até mesmo a comentar, ao final da apresentação e no twitter, que um software desta espécie seria interessante para nós brasileiros, que estaremos em um ano eleitoral no ano que vem. Depois desta apresentação, fui instruído por um participante e pelo GC de que já existem alguns softwares nesta linha. Gostaria de ter um comentário neste post sobre aonde estão tais softwares!
  • Jeff Patton trouxe uma apresentação interessante sobre Agile. Falou sobre a utilização de idéias ágeis, antes mesmo da confecção do software. Lembro-me de slides onde ele falou sobre a prototipação de telas utilizando caneta e papel mesmo e como isto é rápido para se conceber uma idéia inicial de como será uma navegação nas telas de um sistema. Também deu várias outras idéias interessantes relativas a desenvolvimento ágil, fora da questão da codificação.

No intervalo entre a palestra do Jacob e do Jeff, eu conheci o Lucas Bastos. Ele se apresentou para mim, falando que também é corredor, e eu fiquei empolgado por ter conhecido alguém neste evento que também compartilha comigo o gosto por corridas. Não deu tempo de conversarmos muito sobre o evento em si já que nosso foco foi completamente alterado para o assunto corridas ;-)! Ele me disse que também compartilhavamos uma amizade em comum: Cláudio Miranda que irá correr na minha equipe (eucorro.net), no Super 40 em Brasília, no próximo domingo (27/Nov). Vinícios Teles fez uma entrevista com o Luca Bastos. Assista!

Também tive o prazer de apertar a mão do Maurício Samy Silva (Maujor) e de lhe dizer que sou um grande admirador de seu trabalho. Quando crescer, quero ser igual a ele! :-D Falo isto, no que diz respeito a sua capacidade de atuar no que gosta, escrevendo livros e ainda tendo uma energia fora do comum para participar de eventos e fazer amigos!

Bem, estas foram minhas impressões sobre o Dev In Rio 2009. E reforçando a conclusão (dada no início :-): FOI LEGAL MESMO! Neste post do GC, há links para fotos e vídeos do evento.

Agora não falo mais do Dev In Rio mas de outros eventos:

  • Mesmo já tendo ocorrido a quase um mês em Brasília, no período de 26 a 28 de agosto, num próximo post eu pretendo também comentar sobre o que achei do Consegi.
  • Estarei em Goiânia, dia 03/Out no 6º FGSL, e em Brasília (dia 24/Out), no Plataforma Java x Plataforma .Net. Em ambos os eventos tratarei do mesmo assunto: Servidores de Aplicações Java, Livres.

Como eu uso o Twitter, parte 2

Quero complementar meu post anterior que, como este, também é básico e "para pessoas comuns" falando sobre o Twitter. Preciso passar algumas informações a mais sobre a forma como tenho trabalhado com ele e sobre algumas ferramentas que começei a utilizar para melhorar, ainda mais, minha forma de interagir com o Twitter, depois de ter escrito o post anterior.

Em primeiro lugar, quero destacar uma ferramenta que conheci, por acaso, durante minha participação no evento Dev In Rio. Um dos participantes sentou-se a minha frente e, num determinado momento, eu não pude deixar de notar que ele estava utilizando em seu notebook uma ferramenta diferente, das que eu utilizava naquele instante, para twittar. Ele estava executando o TweetDeck, num Ubuntu, a mesma distro Linux que eu utilizava em meu note, naquele momento.

Só de bater o olho na tela do colega, percebi algumas coisas interessantes na ferramenta: ela mostra várias colunas e, dentro destas, os tweets. Percebi a existência de três colunas principais: "All Friends", "Mentions" e, como estavamos no evento seguindo a tag #devinrio, havia uma coluna que mostrava os tweets marcados com esta tag. Ferramentas com o TwitterGadget e o TwitterFox, citadas em meu post anterior, utilizam abas (ou "orelhas") ao invés de colunas. Desta forma, você não consegue ter uma visão tão completa como a apresentada pelo TweetDeck. Não tive dúvidas! Instalei imediatamente esta ferramenta em meu Ubuntu. A instalação foi tão simples que eu não sei detalhes sobre como ela foi realizada. Não utilizei o aptitude ou o apt-get, os gerenciadores de pacotes do Ubuntu. Simplesmente, cliquei no botão instalar, através da página aberta pelo Firefox no site do TweetDeck. O resto foi acontecendo de uma maneira quase "mágica". Terminada a instalação em minha máquina, e após fazer o login na aplicação com minha conta do twitter, notei algumas coisas a mais: quando clico em uma tag (#algumacoisa) ele abre automaticamente uma coluna, com todos os tweets que contém aquela tag. Além disto, a ferramenta: encurta URLs automaticamente utilizando o bit.ly e a sua conta neste serviço (mas também se integra a outros serviços como o TinyURL, entre outros); ao clicar no perfil de uma pessoa, abre todos os tweets e o seu profile em uma tela pop-up; ao clicar numa foto postada via TwittPic, TweetPhoto ou yfrog ele também abre um pop-up com a foto, etc. Enfim, o TweetDeck é realmente uma ferramenta para twitteiros profissionais, ou amadores, que buscam facilidades na experiência com o Twitter ;-).

O TweetDeck tem me possibitado estar ANTENADO em diversos assuntos de meu interesse, ao mesmo tempo. "As colunas" realmente são ótimas para isto. O que noto, com o uso desta ferramenta, é que o meu uso do Google para pesquisas sobre as coisas que realmente me importam, tem diminuído. Este comportamento é esperado já que, se formos fazer uma comparação, o Google é um filtro computadorizado para os assuntos que você deseja e o Twitter, é um filtro HUMANO! Seguindo as pessoas certas, você consegue obter as informações que lhe importam, sem a necessidade de pesquisar nada no Google. Daí, surgem previsões como a do post Twitter destined to replace Google Search.

Das diversas coisas que eu tenho aprendido no uso do Twitter, eu diria que uma das mais importantes talvez seja a questão de valorizar (e repassar) as informações que recebo, de quem eu sigo ou não, mas que acho importantes. O mecanismo do retweet (RT) é importantíssimo! Leiam o post The art of ReTweeting in Twitter pois ele trata bem melhor deste assunto do que o que eu poderia escrever aqui. O TweetDeck faz o RT ser simples, fácil e rápido: 1 clicar de botão!

A revista Info deste mês traz dicas sobre mais algumas dezenas de ferramentas que se integram ou facilitam o uso do Twitter. Eu comprei o meu exemplar pois realmente não pude resistir a vontade de aprender mais sobre o ele, suas ferramentas e sobre como utilizá-lo em meu trabalho. O interessante nesta edição são as histórias de como as pessoas estão utilizando o Twitter para conseguir um emprego ou fazer marketing de algum produto ou serviço que oferecem. As dicas de como utilizar o twitter nesta edição também são legais.

Por fim, tenho somente uma última recomendação A REPETIR, pois já a fiz em meu primeiro post: SEJAM RELEVANTES! Unam isto a CORDIALIDADE, sejam EMPATICOS e AUTENTICOS. Leiam "O Fator Gente Boa", de Tim Sanders, para entender um pouco mais sobre estes assuntos. Fazendo isto, vocês estarão ajudando as pessoas e atraindo ainda mais seguidores! As pessoas, ao lhe seguirem, esperam que você possa lhes informar alguma coisa interessante para suas vidas.

Como eu uso o Twitter

Este é um post básico sobre o Twitter e sobre como eu venho utilizando-o, seguindo algumas convenções e estabelecendo algumas regras pessoais que desejo compartilhar. Se você já utiliza ou acompanha o que eu venho escrevendo no Twitter, este post talvez não lhe trará grandes novidades. Mas, se você é novato nesta ferramenta, espero poder lhe trazer algumas informações úteis. Eu senti necessidade de escrever este post para poder explicar a amigos, como eu venho trabalhando com esta ferramenta, que muitos julgam apenas ser mais um modismo.

Em primeiro lugar, quando entrei no Twitter, eu coloquei minha foto. Tudo bem que alguém não queira fazer o mesmo e que queira utilizar um avatar em seu lugar. Mas, manter a gravura padrão do twitter dá a impressão de que você simplesmente não está nem aí para ele e que simplesmente entrou para criar sua conta e nunca mais voltou.

Eu gosto de utilizar o Twitter mais para repassar informações úteis do que para falar sobre mim. Isto inclui a divulgação de, até mesmo, meus próprios posts neste blog. Mesmo assim, a pergunta que o Twitter nos faz antes de enviarmos um post "What are you doing" sugere que repassemos alguma informação mais particular e, muitas vezes, eu faço isto. Mas, prefiro realmente ser mais relevante para as pessoas do que falar sobre o que estou fazendo. Indiretamente, esta informação pode ser inferida.

Eu procuro evitar palavras de baixo escalão no Twitter. Entendo que a característica de um microblog com seus 140 caracteres seja, muitas vezes, emotiva e superficial. Mas, mesmo em minha vida fora da Internet, eu tento não falar palavrões perto de estranhos. Imagine o seguinte: você está em um local público e quer expressar sua raiva por algo. Se você se descontrola e grita alto um palavrão bem feio, que impressão você espera passar? Você deveria esperar que os leitores de teu Twitter tivessem a mesma impressão.

No Twitter assim como em minha vida, eu procuro evitar críticas a qualquer pessoa ou grupo utilizando artigos indefinidos. Quando eu tenho alguma crítica a fazer sobre algo, pessoa ou empresa, eu as cito nominalmente. Também não vejo sentido em ficar postando ou repassando comentários como, por exemplo, sobre o desconhecimento de uma pessoa (ou grupo) sobre algo que eu julgo que ela deveria saber. Acho isto no mínimo "pouco elegante" por parte da pessoa que escreveu tal post, ou que o repassou. Seria bem mais construtivo guardar tal informação para si e ajudar tal pessoa (ou grupo). Informações deste tipo simplesmente não agregam nada a vida de ninguém. Pelo contrário, só demonstram que a pessoa que as produz é indelicada ou esta tentando ser engraçada, inutilmente.

Eu procuro usar tags (Ex.: #maratonadecuritiba) em meus microposts. Isto facilita a busca por determinadas palavras pois, para isto, basta clicar na tag que você verá quem está também está falando sobre aquele assunto. O Twitter possibilita que você recupere um feed a partir de uma determinada tag e, com isto, você possa incorporar as frases que contém aquela tag em teu blog, como eu faço na lateral direita do meu blog para corredores utilizando a tag #eucorronet.

Eu uso o RT para valorizar e repassar os bons posts (ou informações) que outras pessoas escrevem. Este recurso, para quem está iniciando o uso do Twitter, é utilizado para que você possa repassar alguma frase escrita por alguém, citando-a como a autora. Por exemplo, a frase "RT @yaraachoa 74 dias para a Maratona de Curitiba! Preparação física e psicológica. #eucorronet" informa que eu estou repassando uma frase da Yara Achôa, jornalista e maratonista que escreve para várias revistas, sobre corridas. Note que as frases que eu escrevo no Twitter são "linkáveis". Eu posso também, agregar alguma informação a frase dela, como fiz ao escrever a tag #eucorronet. Sendo assim, esta informação também irá aparecer nos blogs em que eu tiver agregado o meu twitter.

Eu procuro responder as citações que me são feitas. Quando alguém escreve um post em seu Twitter contendo na frase a palavra @paulojeronimo, esta informação fica visível para mim, na página do Twitter (ou nos plugins que utilizo para trabalhar com ele) e eu costumo respondê-la.

Eu costumo seguir no Twitter as pessoas que eu conheço pessoalmente e as que eu não conheço, mas que fornecem informações relevantes para mim. Também sigo empresas ou grupos que sejam igualmente de meu interesse. Eu, assim como qualquer usuário que possui um perfil púbico no Twitter enfreto um problema, que são os malditos spammers que utilizam robôs para me seguir. Mas, realmente não há muitas soluções para este problema e, a que eu mais utilizo mesmo, é clicar no botão block no Twitter do danado ;-).

Eu também utilizo algumas das muitas ferramentas que integram o twitter a diversas outras coisas. Neste blog, utilizo o TwitThis para que você possa twittar que está lendo ou que leu este post. Também utilizo o bit.ly para encurtar uma URL grande e para ter uma noção de quantos cliques eu tive nesta URL. Uso o TwitterFox (como plugin para o Firefox) e o TwitterGadget (que integro a minha página do iGoogle). O TweetFeed também já me foi útil para gerar automaticamente um post no Twitter, toda vez que eu postava alguma informação neste blog. Além de tudo isto, uma ferramenta que irei passar a usar em breve, assim que anunciar um novo site que estou criando, é o Tweetray.

Bem, acho que já escrevi o bastante... Este post é apenas uma introdução que fala do meu modo de uso do Twitter. Para aprender ainda mais, leia os diversos posts que compartilho através do Google Reader onde, em vários deles, o assunto é o Twitter.