Enquanto o Eclipse 2008 não vem

Continuando a minha saga à espera de uma distribuição ou instalação do Eclipse IDE simples e completa out-of-the-box, chego ao final do ano ainda decepcionado com este quesito no Eclipse. Enquanto isso, a instalação do NetBeans IDE 6.0 All Packs bundle dá um show de facilidade e recursos.

Tal situação motivou as reflexões do “Java Champion” alemão Adam Bien em seu blog, no artigo Thinking loud about Eclipse and Netbeans (em inglês), 2007-12-23.

Mas eu não desisto. Ao ver os primeiros recursos do novo suíte de plug-ins livres da Red Hat, JBoss Tools 2.0, me animei. Veja um exemplo da tela de edição de um JSP (clique na imagem para ampliar 1024×768):

[photopress:eclipse_europa_jbosstools.png,full,centered]

Há a perspectiva Web Development, diversas views especializadas (à esquerda por exemplo, veja as abas Web Projects e Seam Components atrás do Package Explorer). Ao centro, vê-se o poderoso RichFaces HTML/JSP/JSF Visual Editor, exibindo a visualização meio-a-meio Visual/Source, com o código-fonte HTML/JSP na parte de cima e a visualização gráfica da página em baixo. O editor permite ainda exibir apenas código (Source), apenas gráfico (Visual) e uma previsualização mais precisa da página resultante (Preview). À direita A paleta arrastar-e-soltar para o editor inclui componentes HTML, XHTML, JBoss Ajax4jsf, RichFaces e Seam, JSF, JSTL e Struts.

Como o JBoss Tools 2.0 requer o Eclipse 3.3.1 e o WTP 2.0.1, enquanto eu busquei montar minha instalação tudo-em-um Eclipse 3.3 Europa Java EE com JBoss Tools, também revisei amplamente meu artigo Monte seu Eclipse 3.3 (ou 3.2).

O artigo agora traz uma seção dedicada a plug-ins gratuitos de terceiros, com uma listagem agrupada por tópicos de aplicação. A relação dos mais de 40 plug-ins listados teve como base aqueles disponíveis nas distribuições EasyEclipse e Pulse, com algumas adições minhas, entre elas o próprio JBoss Tools.

Adicionei o Pulse — da empresa Genuitec, produtora do MyEclipse IDE — como mais uma opção de distribuição Eclipse gratuita independente. Agora são cinco: IBM, EasyEclipse, Lomboz, Tiny Eclipse, Pulse.

Ainda ficou de fora o Yoxos On-Demand — cujo mecanismo Eclipse Discovery deve ser base para o projeto Eclipse Packaging Project (EPP). Ainda não avaliei o Yoxos para a versão Eclipse 3.3 Europa. Também, se ainda continua o modelo do Yoxos Install Manager (YIM), cujas atualizações são gratuitas apenas nos três primeiros meses de uso (depois requer assinatura anual paga), não sei se o Yoxos On-Demand se enquadra realmente em uma distribuição gratuita.

Além do Pusle e do Yoxos On-Demand, outra novidade interessante em distribuições on-line é o Cloudsmith utilizado nas Virtual Distros do projeto Lomboz. O recurso é executado via Java Web Start.

Depois de muitos descobrimentos, testes, downloads e atualizações, acabo de montar minha instalação do Eclipse 3.3 e vou testar mais.

Ainda falta um bom editor UML com engenharia reversa gratuito no Eclipse, coisa que tanto o NetBeans 6.0 quanto o gratuito Oracle JDeveloper 11g oferecem nativamente. O AmaterasUML traz apenas diagramas de classe e de seqüência, sem engenharia reversa ou sincronização com código-fonte. A versão gratuita do Omondo EclipseUML também tem limitações de uso.

Não há dúvida que o mercado em volta do Eclipse é muito grande e sólido. Um indicador são empresas de peso como IBM/Ration, BEA, Borland/CodeGear, TIBCO e Nokia em volta da Fundação Eclipse. Ferramentas gratuitas como o TIBCO Business Studio e o projeto Eclipse Process Framework (EPF) são baseadas no Eclipse. Mas as soluções de IDE Java mais atraentes são todas produtos comerciais (destas e outras empresas) baseados no Eclipse.

Outro indicador é a popularidade de uso do Eclipse ainda alta entre desenvolvedores, provavelmente graças à gama de recursos de produtividade do editor, como suas notórias ferramentas de refatoração (em inglês, refactoring). Hoje em grande parte os recursos que deram fama ao Eclipse já estão presentes nos demais IDEs. No lançamento do NetBeans 6.0, por exemplo, seu novo editor teve nas ferramentas de refactoring, geração de código e code completion grande destaque.

Mas aos poucos, alguns integradores vão mudando de escolha. A JasperSoft, desenvolvedora dos projetos de software livre JasperReports — framework de geração de relatórios — e respectivo editor iReport havia criado um plug-in do iReport 1.2.6 para Eclipse. Agora, para a nova versão 2.0, está preparando uma extensão do iReport para NetBeans 6. E também aos poucos se vão os desenvolvedores.

Conclusão: No momento, considero que o Eclipse continua sendo a melhor plataforma open source para IDEs, mas o NetBeans é o melhor IDE software livre como produto final.

Vamos ver se 2008 trará facilidade para instalação de um pacote Eclipse IDE mais “pronto para usar”. Ou então mostrará que alternativas como o software livre NetBeans IDE ou o JDeveloper oferecido gratuitamente pela Oracle vão ganhar ainda mais força.

Seja um ótimo profissional de TI e Feliz Ano Novo

Termino o ano como um mensagem positiva àqueles que querem ter sucesso na carreira de tecnologia da informação (TI) e sistemas de informação.

A área profissional de TI ainda é um mercado rico em oportunidades, no Brasil e no mundo. Há falta de profissionais em Sistemas de Informação no Brasil. Porém, as oportunidades estão sobrando para os melhores, não para os medianos nem os medíocres.
A falta de pessoal qualificado no país faz multinacionais levarem centros de P&D para Índia e China, segundo Unicamp/USP/Unesp.

Desenvolva sua habilidades técnicas e pessoais. Invista no seu aperfeiçoamento constante, inclusive no domínio da língua inglesa — e se já tiver, considere também o espanhol. Esteja atento às exigências para profissionais em TI.

Mantenha-se atualizado quanto às tecnologias, tendências e ao mercado. Se você é mineiro, por exemplo, leia sobre o panorama das empresas de TI em Minas Gerais traçado pela Fumsoft/Softex. Ou talvez você almeje experiências fora do Brasil. Informação de graça na Internet não falta; bons livros, cursos e revistas também não.

Busque ser um profissional “em forma de Pi”, com conhecimento horizontal (superficial) generalista amplo, mas aprofundado verticalmente em mais de uma especialidade diferente, de preferência uma na área de TI e outra fora dela. O conhecimento multi-disciplinar, como aquele profissional que domina tecnologia da informação e conhece bem uma área de aplicação — legislação/direito, ou gestão/administração, ou finanças/economia, ou comércio/negócios, ou saúde/medicina, ou … — vale ouro!

Se já tiver uma experiência razoável na área técnica, desenvolva também habilidades gerenciais para atingir patameres de salários melhores. As nove áreas de conhecimento do PMI para Gerenciamento de Projetos são uma boa referência. Exerça a liderança e a gestão com pessoas, preocupe-se com resultados, objetivos, custos, prazos do seu cliente e/ou da sua empresa. Assuma e gerencie riscos.

Abrace e gerencie as mudanças e o novo. Trate a mudança como a regra, não como transtorno ou dificuldade.

Existe Futuro na carreira em Tecnologia de Informação. Se você é ou quer ser um ótimo profissional nessa área, invista em você e Feliz 2008!

Créditos: A maioria dos artigos citados neste texto foram dos ótimos blogs Mundo IT, por Yuri Gitahy de Oliveira; Tecnologia da Informação – Desenvolvimento e Educação, pelo prof. Cid R. Andrade; e GR Tips, por Luís Cláudio de S. Alberto.

ColorZilla não funcionando em Linux

Tenho muitas Extensões para o navegador Firefox instaladas, quase todas da lista neste link, tanto em Windows quanto em Linux Ubuntu.

Mas há vários dias — não sei dizer exatamente quando ou como começou — meu Firefox 2 em Linux (Ubuntu) estava com comportamentos estranhos em relação a extensões.

Toda vez que alguma extensão era atualizada, o Firefox não reiniciava normalmente. Iniciando pelo console, via-se que a tentativa de execução em seguida resultava em “Segmentation fault (Core dumped)”. Mais uma ou duas tentativas de execução do Firefox e aí sim ele abria.

Também observei que algumas extensões instaladas estavam inoperantes (exemplos: Update Notifier, Download Statusbar).

Supus que alguma extensão problemática era a raiz do problema. Parti então para o trabalho mais chato, porém preciso. Primeiro, apaguei toda as configurações pessoais do Firefox em meu diretório home (rm -rf ~/.mozilla/). Depois, segui repetidamente estes passos: instalar uma extensão de cada vez; sair do Firefox; e, em seguida, iniciar o programa novamente pela linha de comando (firefox), para o caso de alguma mensagem de erro ser exibida na console.

Após um longo e tedioso trabalho, finalmente quando instalei a extensão ColorZilla — uma ferramenta para identificar cores (RGB) em qualquer parte da tela/página no Firefox — a tentativa de reiniciar o Firefox em seguida gerou o famigerado Segmentation fault (Core dumped).

Esta é a minha configuração onde observei o erro:

Não sei dizer se o erro ocorre com outras combinações de versões, mas tenha cuidado ao utilizar o ColorZilla em Linux, principalmente se você está com um cenário de problema similar ao meu.

Nota: Já no meu Windows, o ColorZilla está funcionando normal.

Eis algumas referências a respeito que encontrei na Internet:

Arquitetura de software, NetBeans, AJAX, padrões web

Eis uma coletânea de artigos interessantes relacionados a Arquitetura de Software, NetBeans, AJAX e padrões web, que visitei nos últimos dias e recomendo.

Arquitetura de software

Immutable Design Pattern, por Faisal Feroz, Paquistão, 2007-12-21. Comenta o Immutable, um dos muitos padrões de desenho/projeto, uma disciplina essencial da arquitetura de software.

Mais um bom tutorial no IBM developerWorks: Write REST services — Create REST services with Java technology and the Atom Publishing Protocol, por J. Jeffrey Hanson, CTO, Max International, 2007-10-30, atualizado em 2007-12-20. Como já citei em outros artigos, é necessário registrar-se gratuitamente no portal IBM developerWorks para acesso ao tutorial. A propósito, a IBM foi considerada a melhor empresa mundial em Pesquisa & Desenvolvimento, pela R&D Magazine.

Arquitetura Orientada a Serviços (SOA) tem sido tema constante nos blogs de alguns colegas “feras” em arquitetura de software, como destaco a seguir. Você sabe o que é SOA?, 2007-12-18; e outros artigos de Ricardo Ferreira sobre SOA e BPM. Papéis no Ciclo de Desenvolvimento SOA, 2007-12-01; duas apresentações em PDF que já citei; e outros artigos de Marco Aurélio Mendes sobre Arquitetura/SOA e BPM. Para se aprofundar no tema, recomendo os cursos de Ambientes Integrados (SOA, BPM, ESB, EAI) na Archware, Belo Horizonte, MG.

NetBeans IDE 6.0

Matthew Schmidt anunciou NetBeans 6: Matisse Updates, 2007-12-14, uma nova apresentação com demonstração e áudio (Flash), por Roman Strobl do Time NetBeans, demonstrando o novo construtor de interfaces gráficas de usuário (GUI) Swing Matisse do NetBeans IDE 6 e seu suporte a JSR-295 (bean binding).

Roman Strobl também divulgou em seu blog First version of NetBeans Scala plug-in available, 2007-12-21. Caoyuan Deng, o criador do ErlyBird, IDE para Erlang baseado no NetBeans, fala sobre sua nova iniciativa, Primeiro suporte experimental a Scala em NetBeans, 2007-12-21.

NetBeans 6.0 Cheat Sheet, por Jason, 2007-12-11. Resumo de atalhos de teclado do NetBeans IDE 6 para desenvolvimento Ruby on Rails, em PC Linux/Windows e Mac OS X, disponível para download em formatos PDF e ODT (OpenDocument).

Tim Boudreau citou em seu blog NetBeans Editor Demo video, 2007-12-21, um vídeo em YouTube que alguém gravou de sua apresentação em Florianópolis, SC, sobre os recursos do editor do NetBeans IDE 6.0.

Ajax e padrões web

Criando uma lista na sessão com DWR – Parte 3, por Handerson Brito Frota – WEB2.0, 2007-12-21, mostra que tipos de métodos criar no FacadeAjaxSession explicado na Parte 2, 2007-12-16. A Parte 1 desta série de artigos havia apresentado conceitos iniciais sobre uso de Sessão com o popular framework AJAX DWR. Veja mais sobre bibliotecas e frameworks Ajax e JavaScript em meu artigo Ajax em Java – coletânea de referências.

Carol McDonald divulgou os Slides e exemplos da sua apresentação de Dojo 1.0, 2007-12-21, disponíveis para baixar em Sun Tech Days Code. Dojo Toolkit é uma biblioteca Ajax muito popular.

Prototype e Scriptaculous compactados, por Jota, 2007-12-21, divulga que John-David Dalton gerou versões bastante compactadas das duas populares bibliotecas JavaScript/Ajax, disponível para baixar em prototype-core, Google Groups. Segundo Jota, o trabalho de Dalton reduziu o tamanho ocupado pela biblioteca Prototype 1.6.0 de 122 para 20,4KB, e Script.aculo.us 1.8.0 de 124 para 19,7KB.

Outra dicas interessantes de Jota são Gifs, animações para o efeito loading em Ajax, 2007-12-20, e Dicas por Yahoo como criar aplicações Ajax com alto desempenho, 2007-12-22: Slides (Flash, em SlideShare), Vídeo e PPT (em YUI Blog) da apresentação “High Performance Ajax Applications”, por Julien Lecomte, autor do YUI Compressor e do YUI Browser History Manager.

Andres Almiray, engenheiro de software da Oracle, anunciou o Lançamento da biblioteca Json-lib 2.2 (2007-12-20) e destaca Json-lib examples (2007-12-21), uma nova página do projeto listando diversos exemplos rápidos (snippets) de situações de uso da biblioteca. Json-lib é uma biblioteca Java para transformar beans, mapas e XML para JSON e de volta para beans e DynaBeans. Json-lib é baseada no trabalho de Douglas Crockford em JSON in Java. JSON (JavaScript Object Notation) é um formato leve para intercâmbio de dados. Embora baseado em JavaScript (ECMA-262 3ª Ed.), JSON é independente de linguagem.

Henrique C. Pereira, designer de interfaces, comentou em seu site pessoal Revolução Etc: IE8 passa no teste do Acid2, 2007-12-20. O feito foi divulgado em Internet Explorer 8 and Acid2: A Milestone, por Dean Hachamovitch, Gerente Geral do Internet Explorer, Microsoft, 2007-12-19, em IEBlog. Ainda é sobre um build interno de desenvolvimento do IE8 e há controvérsia sobre o resultado. Mas a notícia parece tentar reaquecer a guerra de browsers, exatamente quando a Fundação Mozilla acaba de liberar o Beta 2 do novo Firefox 3, em 18 de dezembro. O Firefox 3 passa no teste Acid2 desde o Beta 1 (2007-11-20). Nos últimos dois anos, o bem-sucedido Firefox vem sendo cada vez mais usado, atualmente dominando 1/4 a 1/3 de um segmento que já teve perto de 95% de domínio do IE (~ 2004).

Acid2 é um teste criado pelo Web Standards Project para avaliar o suporte dos navegadores Internet a padrões web. A página testa quão próximo do ideal um navegador Internet exibe de uma carinha “smiley” criada com diversos recursos de layout/posicionamento de acordo com padrões de HTML, CSS, PNG e Data URLs. Veja também Acid2 na Wikipedia.

Cezar Taurion, Gerente de Novas Tecnologias da IBM Brasil, faz reflexões e previsões sobre Web 2.0 em 2008, 2007-12-19, em seu blog.

Fecho o tema de padrões web com a divulgação do Lançamento do Livro do Maujor, por Maurício Samy Silva (Maujor), “O dinossauro das CSS”, 2007-11-18. O livro é: Construindo Sites com CSS e (X)HTML — Sites controlados por folhas de estilo em cascata.

GlassFish v2 Update Release 1

Três meses após o lançamento do GlassFish v2, dia 19 saiu o GlassFish v2 Update Release 1 (UR1), que incorpora perto de 200 bugfixes de alta prioridade e melhorias. A atualização deste servidor de aplicações Java — que é implementação de referência da especificação Java EE 5 — também está disponível com a marca Sun Java System Application Server (SJSAS versão 9.1_01) e integrado ao kit de desenvolvimento Java EE SDK (Update 4).

Destaques da versão:

  • Suporte ao sistema operacional AIX versões 5.2 and 5.3 (32 bit JVM) para Cluster e Developer Profiles, sem balanceamento de carga.
  • Suporte a JVM 64 bits JVM para sistema operacional Suse Linux 64-bit.
  • Suporte a sticky session para balanceamento de carga em cluster usando Apache com mod_jk, recurso muito pedido pela comunidade.
  • Implementação de bugfixes e melhorias identificados como “must have”, além de correção de bugs críticos relacionados ao NetBeans.
  • Atualizações para OpenESB – Enterprise Service Bus.
  • Administradores notarão a necessidade da opção -Xmx256m, informações claras sobre Patches e mais exposição para o GlassFish Update Center.

Concomitante com o GlassFish v2ur1, Kohsuke Kawaguchi destaca a nova versão da implementação de referência do framework JAXB RI 2.1.6, usada nos lançamentos Metro 1.1 e JAX-WS 2.1.3. Veja Java Architecture for XML Binding readme.

Anúncios:

Boas blogadas do dia

Blogadas de artigos, notícias e dicas.

Leonardo Fernandes recomenda o artigo do Software Security Institute (SANS) sobre Conhecimentos de segurança que todo desenvolvedor Java/JEE deveria ter. Assino embaixo.

Tratamento e validação de entradas de usuário; tratamento de exceções e erros; controle de acesso e autorização. Três elementos fundamentais e que ainda põe por terra a robustez e segurança de muitas páginas e sites web por aí.

Recomendo também meu artigo Eficiência e segurança com SQL parametrizado, que fala especificamente do tratamento de entradas de usuário no repasse a instruções SQL.


Bruno Borges dá a dica dos Slides do Wicket. A apresentação de 108 slides Wicket in Action, por Martinj Dashorst — co-autor do livro “Wicket in Action” e um dos comitters do projeto Wicket — está disponível em SlideShare (formato Flash).

Dashorst traz uma visão prática e concisa dos recursos desse framework web Java que se inspira no conceito de programação de interface Swing e na objetividade e na simplicidade, para a criação de páginas web dinâmicas. Wicket é um framework web para no segmento dos “desafiantes”, entre as muitas opções existentes, mas já tem uma comunidade de adeptos fervorosa.


O artigo Sun to discontinue developer tools in favor of NetBeans, por Paul Krill, 2007-12-11, InfoWorld, registra a concretização do que já era previsível. A Sun já havia mostrado que havia “desistido” das suas ferramentas de desenvolvimento Java comerciais quando doou maciço código fonte destas para o projeto NetBeans, que começou a incorporar os recursos doados na versão 5.5.

Agora, a Sun encarna o slogan do recém-lançado NetBeans 6: “O único IDE que você precisa.” Os produtos comerciais Sun Java Studio Creator and Java Studio Enterprise 8.1 serão descontinuados de vez, em favor do foco exclusivo no software livre NetBeans IDE.

Falando em NetBeans: Um atalho muito útil – NetBeans 6.0, por Dyego Souza do Carmo, 2007-12-18.


Por falar em IDEs — ou para mudar a perspectiva — sugiro também o artigo Life outside the IDE: Coding in a parallel toolset has its perks — freedom, for one, por Nathan Hamblen, 2007-12-18, JavaWorld.com.


Comparing the Google Collections Library with the Apache Commons Collections, por Narayanan A.R., 2007-12-07, DevX, mostra que assim como o famoso pacote de componentes Apache Commons Collections, a recém lançada Google Collections Library também complementa o Java Collections Framework, além de oferecer algumas melhorias únicas que você pode preferir.

Você pode permanecer no Portal DevX para ler também Small Steps Lead to Big Improvements in Java Code Quality, por Steven Hale, 2007-12-14. O autor sugere que, ao invés de definir objetivos arbitrários para obter código Java de melhor qualidade, você pode usar uma estratégia de melhoria iterativa que produza resultados visíveis e mensuráveis.


Para fechar, dois lançamentos de software Java da fundação Apache.

James Strachan divulgou em TheServerSide.COM o lançamento do Apache ActiveMQ 5.0, 2007-12-13, cheio de novidades.

A lista de anúncios da Apache divulgou no dia 15 que o Ivy 2.0.0-beta1 foi lançado. É um software para gerenciar (registrar, rastrear, resolver e reportar) dependências (prerequisitos) em projetos de software. É parte integrante do projeto Ant e bastante integrado ao Maven 2.

Artigos e tópicos interessantes para desenvolvedores

No portal IBM developerWorks, está sendo publicado um tutorial em três partes sobre desenvolvimento para web com o Eclipse Europa, usando Java, PHP e Ruby; por Michael Galpin, Desenvolvedor do eBay.

A terceira parte, sobre Ruby, deve sair breve saiu dia 18. Para acessar o conteúdo do tutorial, é necessário registrar-se gratuitamente no portal IBM developerWorks.


Outro artigo muito interessante, para quem está considerando suas opções de infra-estrutura para aplicações Java EE na web. JBoss, Geronimo, or Tomcat? — Três servidores de aplicação Java open source comparados, por Jonathan Campbell, JavaWorld.com, 2007-12-11. Só faltou cobrir também GlassFish.


O recente artigo An easy way to make your code more testable, no blog Programblings, me levou a outro artigo excelente.

We don’t write tests. There just isn’t time for luxuries, por James Golick, um desenvolvedor de softwre em Montreal, 2007-08-28. Golick, com argumentos objetivos passo a passo, contesta a afirmação que muito se houve de desenvolvedores ou times de software: “Não escrevemos testes ou fazemos cobertura de testes porque não temos tempo.” ou “Escrever testes toma tempo demais.”

Todo desenvolvedor precisa testar seu código, de alguma forma. A diferença é que alguns escrevem testes automatizados, enquanto outros usam humanos (normalmente, o próprio desenvolvedor) para verificar o comportamento correto. Então, o argumento “testar-nos-atrasa” reside na premissa que verificação manual é mais rápida que escrever testes automatizados.

Assim começa o raciocínio que se desenvolve ao longo do inteligente artigo. Leia e veja se você também concorda que a prática de testes automatizados pode ser bem produtiva.

Se práticas de desenvolvimento de software interessam a você, então sugiro ler também os artigos Pair Programming vs. Code Reviews, por Jeff Atwood, 2007-11-18; e Pair Programming vs. Code Reviews – It’s a no Brainer, por Mark Levison (Ottawa, Canadá), 2007-12-14. Eles confrontam programação em pares e revisão de código.


Conforme anúncio no Javalobby, acabou de ser lançada em dezembro a nova certificação Sun Certified Programmer for the Java Platform, Standard Edition 6 (CX-310-065) da Sun.

SCJP é a certificação de programação na linguagem Java, a mais fundamental no caminho de Certificações Sun para a Tecnologia Java. É também uma certificação bem reconhecida no mercado de trabalho. A nova versão do SCJP atualiza o programa da para cobrir Java SE 6.0.

Para saber mais:


Entrando na programação de páginas web, vale a pena ler The Problem With innerHTML, por Julien Lecomte, 2007-12-12.

E do HTML para o CSS. A escala graduada de 1 a 6 para Rate Your CSS Skill Level: Final Version & Poll montada pelo portal CSS-Tricks oferece critérios para você avaliar em que nível está sua habilidade com CSS. Minha auto-avaliação foi de 4. Para atingir 6, você tem que estar em estado graça ou ser membro da especificação no W3C. 😀


Da programação para os utilitários nerd. Hoje descobri algo interessante para quem às vezes lida com a linha de comando no Windows. Windows PowerShell. Esta janela de console melhorada virá no Windows Server 2008, mas qualquer usuário de Windows original (com a devida validação WGA) pode baixar gratuitamente da Microsoft.

Download Windows PowerShell 1.0PowerShell 1.0 para Windows XP Português do Brasil (KB926140).

Documentação: Windows PowerShell Documentation Pack (para baixar, em inglês e outros idiomas).

Já para quem conhece e sente falta dos comandos do Linux ao usar a linha de comando do Windows, recomendo meu velho conhecido GnuWin32, projeto em SourceForge que porta pacotes de utilitários GNU/Posix para Windows nativo (usando MinGW). O projeto disponibiliza centenas de pacotes binários, em arquivos ZIP para baixar.

Recomendo obter a ferramenta GetGnuWin32, que traz um script que baixa/atualiza todos os pacotes mais recentes do GnuWin32, e outro que descompacta todos os pacotes em uma pasta gnuwin32. Depois é só copiar/mover essa pasta para onde achar mais adequado (por exemplo, C:\ ou C:\Arquivos de programas\) e adicionar gnuwin32\bin ao PATH. Feito isso, grep, find, sed, tar, diff e mais quase mil outros comandos estarão disponíveis na linha de comando do Windows (inclusive na PowerShell).


Por falar em Linux, uma última nota. O IDG Now! noticiou que as Urnas usarão Linux em eleições de 2008.

O TSE autorizou a substituição dos sistemas operacionais VirtuOS e Windows CE para o sistema aberto Linux, adaptado pelo próprio órgão, em todas as 430 mil urnas eletrônicas usadas nas eleições de 2008, que escolherão prefeitos. Segundo o Tribunal, o objetivo é conferir mais transparência e confiabilidade à urna e ao processo eleitoral.

Artigo Eclipse 3.3 atualizado

Com o lançamento do JBoss Developer Studio como produto comercial, meu artigo Monte seu Eclipse 3.3 ou 3.2 foi atualizado para refletir essa situação.

Quem quiser uma instalação gratuita simples e completa do Eclipse, especialmente com um bom leque de ferramentas para Java EE, vai ter que :

  • continuar juntando manualmente dezenas de plug-ins; ou
  • experimentar o novo serviço Pulse da Genuitec; ou
  • esperar novas distribuições atualizadas, como a independente EasyEclipse (que ainda não atualizou boa parte dos plug-ins para Eclipse 3.3) ou o próximo lançamento anual da fundação Eclipse.

Veja também o artigo How to Manage Your Eclipse Add-Ons Painlessly (em inglês), por Chris Grok, 2007-12-13.

Enquanto isso, o atraente NetBeans IDE 6 vai ganhando mais adeptos, com suas facilidades e recursos prontos out-of-the-box.

Ubuntu 7.10 Gutsy Gibbon

Em início de setembro eu havia substituído meu antigo Ubuntu 6.06 LTS (Long Term Support) pelo Ubuntu 7.04, lançado em abril 2007.

Como o Live CD de boot do 7.04 “Feisty Fawn” não me dera opção de atualizar a versão anterior já instalada, na época eu fiz uma instalação do zero, recriando a partição Linux.

Agora resolvi atualizar para a versão mais recente Ubuntu 7.10 — codinome Gutsy Gibbon — lançada em outubro. Desta vez, optei pelo procedimento de atualização on-line (ver Gutsy Upgrades), que é tão simples quanto um-dois-trêeeeeees, desde que você tenha uma boa conexão Internet banda larga:

  1. Acionar a opção do menu Sistema > Administração > Gerenciador de Atualizações.
  2. Assim que o gerenciador buscar atualizações e exibir a mensagem “Nova versão release 7.10 disponível”, clicar no botão “Atualizar”.
  3. Seguir as instruções do assistente que vai preparar a atualização, baixar e instalar todos os pacotes necessários e, ao final, reiniciar o sistema.

O processo de download e instalação é demorado. Afinal, você estará baixando praticamente um CD via Internet e instalando tudo. Comigo, demorou um pouco mais de duas horas.

Durante toda essa instalação, o assistente apenas me solicitou intervenção para confirmar substituição do arquivo /etc/bash.bashrc. A janela de confirmação tinha opção para mostrar um diff entre o conteúdo atual e o novo proposto do arquivo, o que facilitou bastante (o bom hábito que tenho de adicionar uma linha de comentário com nome, data e breve descrição em toda alteração que faço em um arquivo de script ajudou mais ainda).

Também confirmou, já no fim das instalações, a remoção de alguns poucos pacotes que não eram mais suportados na nova versão. Consenti.

Após a reinicialização do sistema — necessária ao final da atualização — e o login, foi exibido um erro do gerenciador de sessões Gnome (não anotei a mensagem). Apenas fechei a janela de diálogo e segui em frente, mas vi que os componentes da interface gráfica ficaram com uma aparência “grosseira” (sem acabamentos como cantos arredondados, degradê ou profundidade). Também notei que os ícones da área de trabalho não foram exibidos.

Quem já conhece as instalações do Ubuntu/Debian, sabe que a atualização de kernel do Linux não remove o pacote anterior, por medida de segurança, o que deve ser feito manualmente depois. Por isso, abri o Gerenciador de Pacotes Synaptic (menu Sistema > Administração) e removi o pacote do kernel anterior 2.6.20 do Linux, já que o Ubuntu 7.10 instalou o kernel versão 2.6.22.

Em seguida, vi que na área de notificação do Gnome (canto superior direito, perto do relógio) um ícone me recomendava ativar o driver proprietário da minha placa de vídeo Nvidia, para melhor desempenho. Marquei a ativação na janela e o Ubuntu automaticamente acionou o download e instalação do pacote próprio, recomendando ao final Reiniciar o Ubuntu. Comandei novo boot.

Após este segundo boot, não ocorreu mais o erro do Gnome e a interface gráfica voltou ao normal, com a aparência bem acabada novamente e os devidos ícones/arquivos de volta à minha área de trabalho.

Tudo parecia 100%, até que tentei abrir o navegador Firefox. Pelo ícone da interface gráfica, o programa não abria. Então, resolvi executar firefox pela janela de terminal, para ver se o console exibia algum erro. Exibiu:

Segmentation fault. Core dumped.

Bem, agora era só pesquisar no Google para ver se alguém já tinha passado por isso e… mas que Google se eu não tinha Firefox? 😉

Experimentei então o básico. Primeiro, removi e instalei novamente os pacotes do Firefox, embora já estivesse atualizado com a versão 2.0.0.11 mais recente. (Prática comum de informática que chamo de “descer do carro e subir de novo”.) Não funcionou.

Apostei então na configurações pessoais anteriormente existentes. Excluí todo o diretório ~/.mozilla/ e… bingo! O Firefox abriu.

Reinstalei os pacotes ubufox e ubuntu-docs (que por sua vez requer yelp e gnome-user-guide), e a página local de documentação do Ubuntu voltou a ser a home-page do Firefox. Em seguida, reinstalei todas as extensões que uso.

Pronto. Superado o problema com o Firefox, a atualização para o Ubuntu 7.10 Gutsy Gibbon foi bem sucedida. Todo o meu ambiente anterior (incluindo arquivos pessoais e configurações) do 7.04 foi preservado.

Navegando na internet novamente, vi que outros tiveram problemas parecidos com Firefox no Ubuntu, embora não tenha encontrado ninguém que solucionou o problema como fiz, removendo as configurações pessoais do navegador.

De novidade positiva, por enquanto só notei que o novo Ubuntu 7.10 reconheceu meu adaptador Bluetooth, pois vi um novo ícone Gerenciador Bluetooth na área de notificação. Isso faz jus à fama de ótima compatibilidade de hardware do Ubuntu, um dos vários motivos que o torna uma das distribuições Linux mais amigáveis para uso pessoal (seja em desktop ou laptop/notebook).

JBoss Tools 2 e Developer Studio

Aconteceu o segundo dos três lançamentos que eu esperava. Depois do NetBeans IDE 6.0 dia 3, agora foi a vez do JBoss Developer Studio — originalmente levava a marca RedHat, em vez de JBoss — IDE Java baseado no Eclipse Europa 3.3 e que há vários dias estava em Release Candidate.

Desta vez porém, em minha doce inocência, tive certa decepção. O novo JBoss Developer Studio foi lançado como um produto pago, com a licença custando $99 dólares.

Contudo, o principal pacote de ferramentas integradas no Developer Studio, JBoss Tools 2.0, está disponível como software livre. O JBoss Tools, superconjunto sucessor do antigo JBoss IDE, engloba:

  • RichFaces VE: editor visual web contribuído pela Exadel, com suporte para HTML e páginas JSF (com JSP e Facelets) e a bibliotecas de componentes como JBoss RichFaces.
  • Seam Tools : suporte a seam-gen, integração com RichFaces VE, code completion, refactoring e outros recursos voltados para JBoss Seam.
  • Hibernate Tools: suporte a arquivos de mapeamento, anotações JPA (inclusive engenharia reversa), code completion, assistentes de projeto, refactoring, execução interativa de HQL/JPA-QL/Criteria execution e outros recursos para Hibernate. É a fusão do Hibernate Tools com Exadel ORM.
  • JBoss AS Tools: facilidades para iniciar, parar e depurar servidores de aplicação JBoss AS 4+ de dentro do Eclipse. Também inclui recursos para empacotamento e distribuição (deployment) eficiente de projetos Eclipse.
  • Drools IDE: edição de arquivo de regras, Rete View, inspeção/depuração de memória em uso.
  • JBPM Tools: edição e deployment de workflow (fluxograma) JBPM.
  • JBossWS Tools: inspeção, chamada, desenvolvimento e teste functional/carga/compliance de web services sobre HTTP. Ferramental base provido por soapUI com adição de suporte/recursos específicos para JBossWS.

JBossTools Downloads disponíveis para baixar como plug-ins do Eclipse.