Oracle finaliza compra da Sun

January 27th, 2010

ATUALIZAÇÂO:  01 de Fevereiro de 2010

Saiu um FAQ (perguntas mais frequentes feitas pela comunidade de desenvolvedores java).

Segue o link: http://www.oracle.com/technology/community/sun-oracle-community-continuity.html

Estou só aproveitando dessa noticia para tirar a poeira do blog :D

Na página da Oracle, tem um banner bem grande anunciando a finalização da compra da Sun:

http://www.oracle.com/us/sun/index.html

Os caras já começaram chutando o ‘pau da barraca’:

“This combination transforms the IT industry”.

Agora eles tem condições de prover desde o hardware até completas soluções de software (database, middleware, sistema operacional, etc.), cliente é o que não vai faltar.

Sobre o Java, só espero que ele evolua de forma mais rápida, pois o comitê responsável por isso, o JCP, é bastante conservador, e consequentemente lento.

Estou falando apenas como um desenvolvedor que trabalha com a linguagem java, na sua plataforma original, além de usar o oracle como banco de dados.

Espero também, que a Sun deixe alguma coisa boa, sim, porque, com essa ‘declaração’, a Sun parece que já era.

De qualquer forma, a plataforma Java é imbativel. Espero que a linguagem melhore cada vez mais, diante das várias tecnologias que existem.

Boa sorte, Java.

Noticia sobre Sun/Oracle

November 26th, 2009

Acompanhando as listas de discussão XPCE e JavaCE, vi uma noticia que foi encaminhada de outra lista, a RioJUG.

É sobre as mudanças que a Oracle vem fazendo e planejando, quanto a comunidade e profissionais da Sun.

Pelo que entendi, o CEO da Oracle, Larry Ellison é quem vai decidir o ritmo de demissões.

Enfim, peço que leiam direto dos posts das listas (riojug, xpce ou javace).

Aniversario 7 anos do CEJUG

September 9th, 2009

Desta vez o Ceará Java Users Group (CEJUG) me surpreendeu com este evento, que está realmente muito interessante.

Este é um grupo sobre tecnologia Java no estado do Ceará muito importante. Já contribuiu muito para a comunidade com discussões dos mais variados níveis, incluindo novos e experientes desenvolvedores, além, de ter organizado muitos eventos de maneira inovadora (café com tapioca).

Eu aprendi muito nessas discussões. Todos aprenderam.

Nomes conhecidos nacionalmente na comunidade de software, como Paulo Silveira, Bruno Pereira, Tarso Bessa e Rafael Ponte com certeza farão ótimas palestras. Todos os palestrantes, inclusive. Os temas estão muito em ‘moda’ e realmente precisam ser discutidos.

Imagino como sejam as complicações para organizar esses eventos, mas espero que o CEJUG não pare por aí. Que a força esteja com vocês jugers. :D

Convido a comunidade de software do Ceará para prestigiar esse grande evento.

Nos veremos por lá!

Sobre palestra de Gerenciamento de Memoria da JavaCE

August 28th, 2009

Simplesmente, estão de parabéns.

As palestras (gerenciamento de memória e ferramentas de diagnóstico de desempenho) foram muito boas. São assuntos muito detalhados e complexos.

O palestrante, Cláudio Miranda soube passar as idéias principais de forma concisa, sem perder a atenção dos participantes, Parabéns!

Na primeira palestra, tinha muita gente que não sabia sobre a ineficiência de se ter muitas instâncias da classe java.lang.String! Pois por serem objetos imutáveis, a cada concatenação, simplesmente um novo objeto é criado, isso claro, se este já não existir no pool de Strings. Vamos ler a documentação pessoal!

Acredito também, que a explicação sobre as regiões de memória Young, Old e Permanent foram muito válidas para os desenvolvedores lá presentes.

Na segunda palestra, foram comentadas as opções de configuração que a  plataforma Java permite.  Isso dá muito poder para ambientes que necessitam de robustez.

Achei interessante ver como o sistema operacional hospedeiro da JVM (unixlike, no caso) pode te ajudar, pois, pelo monitoramento da memória física, você tem melhores parâmetros para analisar a memória usada pela JVM.

Eu sempre tive curiosidade sobre a parte de Profiling de aplicações, e ver sobre como isso é complexo, me fez pensar sobre o conhecimento que o arquiteto/desenvolvedor/whatever deve ter.  Realmente, demanda muita dedicação. (estamos aqui pra isso :D )

Foram apresentadas muitas ferramentas para monitoramento da JVM (JConsole, VisualVM ). Aí vem a pergunta: qual a melhor? Acho que vai depender do cenário. O jConsole tem uma feature fantástica: Detect Deadlock! Achei essas duas as principais, mas foram citadas outras ferramentas.

E só mais uma coisa (essa é para você desenvolvedor): Como um programa consegue forçar a execução do garbagge collector?

Os participantes da palestra agora sabem.

O grupo JavaCE está de parabéns por estar envolvido em ocasiões como essas. Sempre tem certos assuntos que dão um plus para o desenvolvedor. E tudo que é  diferencial, deve ser apoiado.

Parabéns a todos os envolvidos e até a próxima.

Nasce nova lista sobre Java no Ceará - JAVACE

July 1st, 2009

É com muito orgulho que venho apresentar a JAVACE.

Após me cadastrar (é simples, pois está no Google Groups :D ), venho acompanhando por vários meios (lista, twitter) a criação dessa  lista sobre Java ‘puro’ no Ceará.

De acordo com o próprio grupo,  essa lista tem como motivação dar mais liberdade a seus membros, de ser uma lista autogerida, por membros que querem realmente discutir sobre a tecnologia Java (tanto linguagem como plataforma). O Java, sendo uma tecnologia mainstream no Ceará principalmente, tem muitos assuntos a serem discutidos e a JAVACE vem para possibilitar que essas discussões possam fluir sem impedimentos fúteis.

O que ocorre muito em listas sobre programação, é que a maioria dos membros tem receio de postar suas dúvidas, devido ao comportamento ditatorial de coordenadores ou até mesmo por parte de alguns membros que não conseguem aceitar comentários de forma democrática.

Acredito que na JAVACE será diferente.

Faço meus votos a JAVACE e convido a todos a participarem de uma lista que no mínimo já começou grande, pois muitos membros ali são experientes com essa tecnologia. Essa é uma ótima oportunidade para a comunidade promover a lista, pois a comunidade também será reconhecida.

No momento desse post,  a lista já possuia 103 membros ativos, o que indica que já podemos ter discussões de ótimo nível e de grande repercussão.

Escolhida Logo para o eXtreme Programming Ceara

June 18th, 2009

Depois de uma votação democrática (aqui e aqui) , a imagem que representará o grupo de discussao sobre eXtreme Programming (XP) do Ceará (XPCE) finalmente foi definida.

Logo XPCE

Logo XPCE

Agora, com a logo, o grupo pode divulgar melhor “sua marca” e com isso, identificar mais sua comunidade.

O XPCE que está ativo a poucos meses mas já tem uma considerável comunidade. Já houveram dois eventos aqui em Fortaleza-CE, com boa repercussão, além de possuir discussões com alto nível. Tudo isso claro, graças a sua comunidade.

Sou membro da lista, e percebi que ela vem sanar uma falta para o mercado cearence. Pois, antes não havia um ponto específico sobre XP ou mesmo sobre metodologias ágeis.

O interessante da lista, é que não somente participam desenvolvedores, como também, gerentes, analistas e empresários. Isso é importante pois ela dá uma visibilidade maior do nível do mercado cearense, e claro, de como esta a adoção das boas práticas de desenvolvimento de software.

O XPCE está apenas começando, mas já tem muita coisa a oferecer.

Metodologias ágeis estão apenas comecando por aqui. E a XPCE veio para ajudar a mudar isso.

Lista de aplicativos Windows Mobile para Pocket/SmartPhones - Parte 2

April 23rd, 2009

Olá.

Continuando com a lista de aplicativos para pockets/smartphones com Windows Mobile, temos o seguinte:

TCPMP - Player para quase tudo que você precisar

Esse é o melhor player free que existe para pocket. Com ele, dá para assistir varios formatos, como .avi, .flv, .3gp, mp4 além visualizar fotos e ouvir músicas. Seu foco são videos mesmo.
Esse programa é tão bom que fizeram uma versão comercial, o Core Player. Esta versão eu nunca testei, mas imagino que seja mais poderosa ainda.
O mais interessante, é que o TCPMP é bem leve, apesar de ser um player de video. Se comparado ao Windows Media Player, este último é uma carroça e não funciona como deveria (além de não suportar tantos formatos quanto o TCPMP).

Ah, já ia esquecendo, claro que da pra ver os videos em tela cheia. :D

TCPMP -lista de arquivos suportados

TCPMP -lista de arquivos suportados

Assistindo Anime em .avi no TCPMP

Assistindo Anime em .avi no TCPMP

Watching anime .AVI on TCPMP

Watching anime .AVI on TCPMP

Resco Screen Capture

Todas as imagens desse post e do anterior foram gravadas com esse programa. Ele captura de uma forma muita fácil e pratica toda a tela do pocket/smartphone.

Gostaria de citar uma observação sobre o TCPMP. Quando fui capturar as imagens do video executando, simplesmente não gravou! Inicialmente pensei que fosse uma limitação do Resco e então testei outros programas. Não obtive sucesso. Então, fui investigar sobre o TCPMP. E encontrei algo interessante. Se você tentar capturar com o modo de video 2700G o resco não vai funcionar. A solução então, é mudar para o modo Raw FrameBuffer. Nas opções do TCPMP dá pra fazer isso facilmente. Isso prova as ótimas capacidades do TCPMP. E até do Resco.

Softick Card Export II - use seu pocket como um pendrive

Isso mesmo. Na maioria das vezes, é bem melhor transferir e gerênciar os arquivos do pocket, como se ele fosse um pendrive, pois o Active Sync (programa padrão da Microsoft para gerenciamento de arquivos) é muito lento, pois ele lê o arquivo (e verifica se precisa de conversão para formatos do pocket) para somente depois envia-lo ao dispositivo.

CardExport - seu pocket como pendrive

CardExport - seu pocket como pendrive

SBP Menu - Melhore a interface do seu Windows Mobile

Ele cria menus mais amigáveis para os programas, para configurações,gerenciamento de temas,organizadores, etc…
Particularmente, eu sempre uso as cores do gerenciador de temas dele, pois, esses temas não vem por padrão.

SBP Menu com categorias de aplicativos(na parte de baixo) e programas mais usados (na parte de cima)

SBP Menu com categorias de aplicativos(na parte de baixo) e programas mais usados (na parte de cima)

SBP Menu - Relógio e Emails

SBP Menu - Relógio e Emails

Resco Keyboard - Teclado Otimizado
Da linha de programas da Resco, esse teclado vem pra acabar com a concorrência.
Ele é bem completo e muito bem feito, pois aproveita muito bem o pouco espaço da tela do pocket.
Ele possui varias opções de teclado… Recomendo de verdade.

Resco Keyboard - teclado em ação

Resco Keyboard - teclado em ação

Resco Keyboard - tipos de teclado numérico

Resco Keyboard - tipos de teclado numérico

Morph Gear - Emula tudo - Transforme seu pocket num SuperNintendo, MegaDrive, MasterSystem, Nintendinho, Game Boy e Game Boy Advance…
É isso mesmo. Com esse programinha você literalmente “mata o verme”. Este é um dos aplicativos que mais admiro, não só por ser fãn de jogos, mas porque se mostra muito bem feito. Ele aproveita muito bem o processador do dispositivo.  São “vários programas em um”. Muito prático.

Morph Gear - emulando Sonic The Hedgehog do MegaDrive

Morph Gear - emulando Sonic The Hedgehog do MegaDrive

Morph Gear - emulando Super Street Fighterdo SuperNintendo

Morph Gear - emulando Super Street Fighterdo SuperNintendo

Resco Photo Viewer - Visualizador Profissional de Fotos

Não, eu não tenho contratos com a Resco, mas não vai ser por isso que vou deixar de lado seus programas maravilhosos.
O Resco Photo Viewer é um deles. Dá para editar fotos, zoom e ver todas as fotos em modo de apresentação.
Se você pensa que tudo isso já deveria vir por padrão no Windows Mobile, está enganado, pois não vem.

. falta foto do photoviewer

Download YouTube Videos - busque e baixe videos do youtube e assista off-line!

Sim, com o Youtube mobile downloader, podemos pesquisar e baixar videos, no formato .flv (flash player) e assisti-los sem estar conectado ao próprio site (usando o TCPMP).
O interessante é justamente o formato que é baixado, o próprio .flv que é bem leve e ocupa pouco espaço. Segue bem a filosofia mobile.

YouTube Downloader - videos off-line

YouTube Downloader - videos off-line

YouTube Downloader - tela sobre o aplicativo

YouTube Downloader - tela sobre o aplicativo

Desenvolvimento JBoss Seam no Tomcat Passo-A-Passo

April 12th, 2009

JBoss Seam (http://www.seamframework.org), é uma poderosa plataforma open source de desenvolvimento web  para construção de aplicações ricas de internet, em Java.

Esse post foca no desenvolvimento com Seam, utilizando o container web Tomcat, sem utilização de EJB, mas utilizando Seam com POJO e JPA+Hibernate como provedor de persistência. Ele foca na configuração do Seam no Tomcat.

Não vou explicar os conceitos implementados pelo Seam (como conversação e segurança, por exemplo),  usados nessa aplicação. Isso fica para um outro post. ;)

Na documentação do Seam existem todos os passos de configuração para utilização do Seam no Tomcat e em outros servidores.

Antes de tudo, baixe o Seam. Vou usar o release 2.1.1.GA. Vou considerar que o Seam, após ser descompactado em alguma pasta, está em $SEAM_HOME.

Pasta onde o seam foi descopactado

Pasta onde o seam foi descopactado

Vou usar um exemplo que já vem com o Seam. É uma aplicação de Reservas de Hotel (BookingHotel), que faz consultas em hotéis para se hospedar, faz reserva de quartos, e o cadastro de usuário (no caso, o hóspede solicitante da reserva). Essa aplicação exige um usuário logado.

Sendo bem direto, vou mostrar os passos e depois comentá-los.
De acordo com a documentação:

•    Instale Tomcat 5.5 ou Tomcat 6
•    Copie a lib do banco de dados embutido que vem com o download do Seam que está em $SEAM_HOME/lib/hsqldb.jar para $TOMCAT_HOME/common/lib (no Tomcat 5.5) e
$TOMCAT_HOME/lib (no Tomcat 6)
•    Entre na pasta $SEAM_HOME/examples/jpa pelo console e execute:
Para  Tomcat 5.5
# ant tomcat55
Para  Tomcat6
# ant tomcat6

Pasta de exemplo com JPA do Seam

Pasta de exemplo com JPA do Seam

executando o build do ANT no console

executando o build do ANT no console

•    Copie o .war gerado que deverá estar na pasta $SEAM_HOME/examples/jpa/dist-tomcat6/jboss-seam-jpa.war para a pasta $TOMCAT_HOME/webapps

Aplicação gerada para deploy no Tomcat

Aplicação gerada para deploy no Tomcat

•    Inicie o tomcat
•    Acesse a aplicação em http://localhost:8080/jboss-seam-jpa/

Nesse momento, a aplicação já deve estar funcionando. Com o arquivo .war, fica fácil de importá-lo para o Eclipse/MyEclipse. Essa explicação também fica para outro post. ;)

Agora, como prometido, explicando os passos, após instalar o Tomcat:
•     A aplicação de exemplo BookingHotel usa um banco de dados livre, o HSQLDB. As entidades dessa aplicação já criam as tabelas necessárias. Não é necessário se preocupar com configurações do banco. Leia esse artigo sobre ele.
•    No passo 3, o building do exemplo é feito como Ant. O Apache ANT é uma ferramenta de automação de builds bem conhecida. Mais informações nesse artigo.
•    Esse comando do ant chama o arquivo build-tomcat55.xml ou build-tomcat6.xml dependendo do comando. Perceba que, na pasta da aplicação existem outros arquivos de build, como o build-glassfish, o build-jboss, o build-websphere61. Ou seja, presumimos que para usar o seam em outros servidores, os passos devem ser semelhantes. A documentação que vem com o download do Seam explica tudo isso no arquivo $SEAM_HOME/examples/jpa/readme.txt
•    Os demais passos são simplesmente o deploy (copiar o .war) para a pasta webapps do Tomcat, iniciá-lo e acessar o endereço.

Perceba que o Tomcat não necessita de nenhuma configuração a mais. Digo isso, pois já vi muita coisa complicada sobre rodar o seam no tomcat.

Espero que esse tutorial sirva como base para projetos baseados em Seam com POJO+JPA+Hibernate.

Compartilhe suas idéias.

Lista de aplicativos Windows Mobile para Pocket/SmartPhones

March 30th, 2009

Olá.

Para começar, sou “mobile-maniaco”. Dito isto, está justificado o post. :D

Eu sei que existem por ai, Google a fora,  muitos sites com listas de aplicativos para Windows Mobile (programa este usado por Pockets e SmartPhones).

Pois bem, como eu sei que no mundo mobile, a indicação de aplicativos é muito bem vinda (pois eu mesmo já precisei muito disto), vou deixar aqui minha lista de aplicativos essênciais (do dia a dia), ou no mínimo interessantes.

Quando falo em pocket, é pensando no meu caso :) , pois tenho um (Dell Axim X51v). Mas sei também que ultimamente os smartphones (celular+pocket) tem ganhado força, principalmente os da HTC.

Você pode até perguntar: mas e qual a diferença?

Bem, ai vai depender da utilidade de cada um, pois os 2 tipos tem seus prós/contras, como, por exemplo, conexão wifi x conexão 3G, tela maior x teclado maior e por ai vai… São assuntos para outro post, quem sabe.

E antes que você pergunte, não, eu não sou vendedor desses aplicativos. Todos eles, ou são free, ou possuem versões trial. Mas não desanime. Para tudo há um jeito…

Resco Explorer (O principal)
É o windows explorer do pocket. Com ele você:

  • descompacta arquivos (.zip, .rar)
  • acessa arquivos de pastas compartilhadas numa rede (o File Explorer do Windows Mobile nem sonha em fazer isso)
  • usa uma interface grafica bem melhor
resco explorer no pocket

resco explorer no pocket

Opera browser
Se você quer navegar decentemente, este é o programa.

  • Ele abre muitos sites grandes, como o G1.
  • Dá pra acessar até o internet bank de algums bancos (como do Itau). No caso do Banco do Brasil, que usa applet, não dá certo.
  • Dá pra acessar sites de download (como rapidshare, megaupload). Seu gerenciador de download é bom (já baixei filmes de 400mb tranquilamente).
site do G1 sem zoom

site do G1 sem zoom

site do G1 com zoom

site do G1 com zoom

Lingvosoft Dicionario Ingles/Portugues - veja a escrita e pronuncia das palavras

Esse dicionário é uma mão na roda. Ele te diz até a pronuncia correta da palavra, tanto em inglês como em português.

dicionário lingvosoft Português-Inglês

dicionário lingvosoft Português-Inglês

VTap - veja o youtube no seu pocket

Ele é um player para videos do youtube. Sua principal vantagem é a facilidade de busca dos videos. A medida que a palavra de busca é digitada, ele já mostra a e agrupa vários videos. Ele mostra informações detalhadas sobre o video. Em combinação com o Youtube mobile downloader (que falarei em outro post), fica perfeito: um faz a busca otimizada e o outro baixa para o dispositivo.
Pelo que sei, existem smartphones que ja vem com esse programas. Não foi o meu caso…

pesquisando videos do Youtube no VTap

pesquisando videos do Youtube no VTap

preparando para assistir video no VTap

preparando para assistir video no VTap

TinyTwiiter - twittando de onde você estiver

Que o Twitter.com é uma febre, todo mundo já sabe. Ninguém quer deixar de “twittar” algo legal que esteja fazendo ou vendo. Com o pocket não seria diferente.
Esse programinha é bem fácil e intuitivo de usar. Bem bacana mesmo.

twitter no pocket

twitter no pocket

XPDF - Leitor de PDF - leia pdfs com tranquilidade

É um dos melhores leitores de pdf que já encontrei (pelo menos free).
Ele tem várias opções de zoom. De qualquer forma, às vezes acho a letra muito pequena, mas dá para ler.
Claro, não dá para ver uma pagina toda na tela, até pelo tamanho reduzido, mas mesmo assim recomendo.
Se alguém tiver um “melhor”, por favor avise :D

pdf do seam in action no XPDF

pdf no XPDF sem zoom

Magic Button - É a sua barra de tarefas do Windows

O Windows Mobile não vem com uma barra de tarefas decente. O Windows tem o “Switcher Bar”, que com alguns cliques, você consegue alternar entre os aplicativos que estão sendo executados. Porém, o Magic Button é bem mais intuitivo.

switcher bar: já vem no windows mobile

switcher bar: já vem no windows mobile

Magic Button - barra de tarefas com icones

Magic Button - barra de tarefas (perceba os icones, amarelo e core na parte superior da tela)

O MB deixa os aplicativos numa barra (essa em cima), justamente como ocorre na barra de tarefas do Windows XP, por exemplo.

Bem, essa foi a primeira lista.

Espero que sirva de referência para alguém que precise. Justamente por saber que existem uma infinidade de aplicações para windows mobile, a divulgação dos aplicativos mais legais é importante.

Depois posto uma segunda lista.

Qualquer sugestão de outros programas,  é só mandar um e-mail.

Até.

Agile é Cultura não um Processo

March 17th, 2009

O post anterior reforça a idéia de que as metodologias ágeis não podem ser impostas, como processos, mas acho que devem ser pensadas e assimiladas, para facilitar e inclusive humanizar a forma como as coisas são feitas (digo, o software).

Este outro artigo, fala sobre isso.

Segue um trecho:

Jeff Patton sugere que Agile é realmente uma cultura que gera processos e não apenas um processo e que deve afetar diretamente o nosso modo de ensinar aos outros a adotar Agile. Ele introduz esta idéia em uma conversa:

Sentado com meu amigo Jonathan no almoço na semana passada, nós falávamos sobre mudanças no processo que ele sentiu ser forçado a fazer. Ele adicionou mais times e os times foram crescendo. As coisas precisavam mudar. Jonathan estava, justificadamente, preocupado com o fato que todos os novos processos que sendo adicionados desmoronariam na comunicação fluente e trabalho em equipe, que ele tinha trabalhado tanto para promover. “Como voce mantém essas coisas em seu processo?” Ele perguntou. Depois de conversarmos um pouco nós decidimos que estas coisas não são realmente pontos de processo – ao invés disso elas são parte da cultura da empresa. Estas eram as coisas que ele e os outros em sua empresa valorizavam.

De vez em quando me sinto particularmente sábio. Isso é momentâneo e algumas vezes eu recebo um “falso positivo” – idéias estúpidas que soam como sábias. Mas eu disse isso e pareceu sensato o suficiente para Jonathan.

Cultura é processo. Identifique sua cultura e a promova.

Jeff sugeriu que a cultura atualmente gera o processo:

a cultura não dita um processo preciso, os valores culturais suportados pelas estruturas de ensino embutido nas culturas e estruturas de base tais como as normas e tudo mais, conduzem a um processo comumente entendido.

Confira na integra:

Agile é Cultura não um Processo

Definitivamente acho este um assunto muito vasto (metodologias ágeis), e que deve ser muito bem discutido.

Abraços.