Padrão ISO/IEC 26300:2006 de ODF em português

Lendo o artigo ODF em 2008 (2007-12-14) no blog de Cezar Taurion, Gerente de Novas Tecnologias da IBM Brasil, fiquei sabendo que o padrão ISO/IEC 26300:2006 — que normatiza o OpenDocument Format (ODF) — foi recentemente traduzido para o português pela ABNT.

O trabalho foi liderado por Jomar Silva, Coordenador do GT2 da Comissão de Estudo CE-21:034.00 ABNT e Diretor da ODF Alliance no Brasil.

Tanto o documento do padrão ISO/IEC 26300:2006 original em inglês quanto a tradução para português estão livremente disponíveis para baixar:

OpenDocument Format (ODF) é o formato aberto de documentos de escritório (texto, planilha, apresentação), utilizado por pacotes de escritório software livre como OpenOffice.org e IBM Symphony, padronizado pela OASIS e que se tornou um padrão internacional ISO em 2006.

A leitura do artigo de Cezar Taurion é interessante. Recomendo também meus posts OOXML não aprovado como padrão ISO e Microsoft Office “Open” XML, que dão uma visão geral do debate entre ODF e a tentativa (frustrada até agora) da Microsoft em tornar o formato OOXML do Microsoft Office 2007 também um padrão ISO.

Fim de semana tech

Se você busca alguma inspiração em tecnologia de sistemas de informação durante o fim de semana, eis aqui dois artigos que recomendo.

Bruce Eckel, palestrante e autor do excelente livro “Thinking in Java”, escreveu o provocativo Java, Evolutionary Dead End (em inglês), 2008-01-03. O autor afirma que Java não deveria mudar muito mais, pois ele considera mais importe a linguagem buscar se manter estável (como C ou C++) do que do que evoluir incorporando recursos.

A tecnologia Java pode evoluir (plataformas, APIs) sem que a linguagem de programação Java mude tanto? São alternativas viáveis novas linguagens de programação como Groovy e Scala — sem falar das adaptações JRuby e Jython — que vão surgindo e podem rodar sobre JVM?

Veja também a discussão do artigo em TSS.


The 50 Most Popular Web Design Blog Posts, Resources & Cheat Sheets of 2007 (em inglês), por Eric Hebert, 2008-01-03, em Crestock.com Blog, faz um interessante tour por 2007 em uma coletânea de 50 artigos de destaque sobre temas de design gráfico e de interação: fundamentos e princípios, cor, gráficos e ícones, fotos, CSS, fonte e texto, layout e outros. Se o assunto interessa a você, vale a viagem.


Aproveito para dizer que atualizei o artigo Codificação de caractere e o Ubuntu pt_BR, de 2006-09-24, após refletir sobre o comentário do leitor ZeroA4 e o artigo Unicode de Rafael Benevides. Como resultado, adicionei um tópico final “Olhando à frente para internacionalização”.

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.

iReport no NetBeans 6

Ranieri Fernandes postou uma informação muito interessante no seu blog. Está sendo preparada uma nova edição do iReport — ótimo editor de visual de relatórios para o framework JasperReports — baseado na plataforma NetBeans 6.

O iReport for NetBeans estará oficialmente disponível em fevereiro de 2008, mas já estão disponíveis vídeos de demonstração e o download da versão beta do plugin iReport para NetBeans IDE 6.

iReport for NetBeans 6

Se visitar o blog do Ranieri, verá que hoje também ele falou do plugin para usar o Google Web Toolkit (GWT) no Netbeans 6.

Boas blogadas do dia

Joseph Ottinger anunciou no TheServerSide.COM o lançamento do Spring 2.5, com melhorias em anotações (dia 20), pela SpringSource. Fundada em 2004 como Interface21, a empresa de Rod Johnson, criador do Spring Framework, foi agora renomeada para SpringSource (InfoWorld Tech Watch, dia 19). Veja também Interface21 becomes SpringSource (dia 18), pelo próprio Rod Johnson.

Neal Gafter — engenheiro de software e Ph.D. em computação, atual evangelista Java do Google e antigo engenheiro sênior da Sun para implementação de recursos da linguagem Java 1.4 e 5.0, co-autor do ótimo livro “Java Puzzlers” (Addison Wesley, 2005) — escreveu novos recursos que devem entrar no Java 7: Closures Prototype Update and Extension Methods (dia 20). A postagem foi comentada por Marcos Silva Pereira no JavaFree e em seu blog (dia 22).

O indiano Amit Kumar Saha entrevistou James Branam, gerente do projeto NetBeans Community Docs, com perguntas e respostas sobre o programa: The NetBeans Community Docs Program Wants You! (dia 21). Em seu blog, James já havia apresentado Amit como coordenador de contribuições do programa.

Tim Boudreau — evangelista NetBeans e co-autor de “NetBeans, the Definitive Guide” (O’Reilly, 2002), americano radicado em Praga, na República Tcheca — comentou sobre seu NetBeans South American Tour (dia 24) no Brasil, com fotos de Natal a Florianópolis. Retrocendendo no blog, você encontra mais anotações e fotos do tour NetBeans pela América Latina, em companhia de Bruno Souza, o JavaMan.

Thiago Arrais escreveu “Testes não são para testar” (dia 22) e outros artigos interessantes refletindo sobre conceitos de test-driven development.

Está saindo em novembro pela editora O’Reilly Media o livro Design Accessible Web Sites, 36 Keys to Creating Content for All Audiences and Platforms, por Jeremy Sydik. Mas lembre-se: Acessibilidade não é só na web!

Em Ajax programming with the Java Scripting API (dia 20), o autor Jeff Friesen fala sobre essa API da JSR 223 com trechos do capítulo 9 de seu novo livro Beginning Java SE 6 Platform, From Novice to Professional (APress, 2007). No mesmo dia, também em JavaWord, saiu o artigo correlato Scripting on the Java platform — Using Groovy, Jython, and JRuby for Java development, por Gregor Roth.

A nota do IDG Now! Leitor eletrônico de livros Kindle da Amazon se esgota em quatro dias (dia 23) fala do mais recente lançamento de Jeff Bezos, criador da Amazon. Leia também Amazon Reading Device Doesn’t Need Computer (dia 20), por Saul Hansell, no New York Times. Jeff Bezos é um inovador nato, um dos precursores do futuro (Mario Persona, 2005) no mundo tech. A matéria Aluga-se a Amazon (dia 15), na revista Exame, fala de outras inovações de Bezos.

Nota no TG Daily (dia 21) diz que a fatia de mercado da pesquisa Google é de quase 60% nos EUA. Os dados são da comScore, empresa especializada em medição Internet. O release de imprensa comScore Releases October U.S. Search Engine Rankings (dia 21) mostra que em outubro o Google foi o único dos líderes que cresceu (1,5%), atingindo 58,5%, o equivalente a 6,6 bilhões de buscas. Yahoo (22,9%) e sites Microsoft (9,7%), segundo e terceiro colocados, cairam 0,8 e 0,6 pontos porcentuais respectivamente. Seguem-se Ask Network (4,7%) e Time Warner Network (4,2%). Não encontrei dados recentes para o Brasil, mas em 2005, medições da Nielsen//NetRatings em 11 países apontavam Portal MSN e Google como líderes de audiência no país. No ranking Brasil do Alexa Web Search, liderado pelo Orkut, Google Brasil aparece em 2º, Windows Live 3º, Yahoo 6º e Google.com 7º.

Destaco duas notícia do InfoWord Tech Watch no dia 15. SOA spec goes to OASIS committee diz que OASIS formou um comitê técnico para evoluir a especificação Service Data Objects (SDO), que visa simplificar a forma com que aplicações SOA tratam dados. A iniciativa tem a colaboração de Adobe, BEA Systems, IBM, Progress Software, SAP, e Xcalia. A outra nota, Microsoft Foundation Classes update planned, diz que o time de C++ da Microsoft está trabalhando em uma “significante” atualização da MFC, provendo a desenvolvedores o look-n-feel de Microsoft Office 2007, Internet Explorer 7 e Visual Studio 2008.

Finalmente, foi anunciada correção das falhas no tratamento de endereços Internet (URI) no Microsoft Windows (CAIS, dia 15) que afetavam a maioria dos programas que usam a API do Windows para acionar endereços Internet. A falha foi descoberta em julho, mas o alerta público da Microsoft (943521) só veio em 10 de outubro. Daí até a divulgada solução, conforme Boletim MS07-061 (dia 13) e Artigo técnico 943460, mais um mês se passou. Nesse tempo todo, a maioria das aplicações, como Firefox, Adobe Reader e muitos outros já haviam tomado suas próprias precauções para evitar o erro, conforme citei em A falha de URI com XP/2003+IE7 se espalha (dia 5). A Microsoft só identificou formas de explorar essa vulnerabilidade em sistemas com Internet Explorer 7 instalado, mas a falha existia na biblioteca Shell32.dll, usada por toda aplicação que interage com o Windows.

Para finalizar, mais alguns anúncios de software.

Apache Continuum 1.1 final foi lançado (dia 23). Continuum é um servidor de integração contínua para construção e teste de projetos baseados em Java, com suporte a Maven 1 e 2, Ant e scripts Shell; software livre sob licença Apache.

XWiki project releases 4 new versions (dia 21), por Vincent Massol em TSS.com. XWiki é um wiki escrito em Java, software livre de código aberto distribuído sob licença LGPL. Os quatro lançamentos anunciados foram XWiki Enterprise 1.1.2 (estável) e 1.2 Milestone 2 (em desenvolvimento); XWiki Enterprise Manager 1.0 Milestone 2; e XWiki Eclipse Integration 1.0.

OpenForum Wiki 2.0 (dia 19), por Nik Cross em JavaLobby. OpenForum Wiki é uma plataforma de colaboração em estilo wiki, que traz integrado servidor web e autenticação de usuário.

JPen: Java Pen Tablet Access Library Released (dia 19), por Nicolas Carranza em JavaLobby. JPen é uma interface Java para mesas digitalizadoras (pen tablets). Roda em Java 6 sobre Linux (XInput) e Windows (wintab) e é software livre lançado sob licença LGPL.

Boas blogadas do dia

Artigos diversos que me interessaram na blogosfera hoje, com temas profissionais e/ou na área de tecnologia:

Você conhece mesmo o Google?, por Aguinelo Pedroso, 2007-09-04. Veja também FGG – Estude você também, 2007-08-08, citado no artigo.

Sua diretoria gerencia você. Mas você gerencia a sua diretoria?, por Augusto Campos, 2007-09-05. Cita também outro artigo interessante seu, Criando apresentações efetivas – e mantendo a platéia acordada, 2006-07-13.

Slides da Apresentação sobre Desenvolvimento WEB, por Marcelo de Melo Madeira, 2007-09-05.

Palestra sobre qualidade no desenvolvimento de software, por Diego Tremper, mas a palestra é de autoria de Daniel Wildt, Just Java 2006.

Blogday 2007, boas indicações de blogs por Thiago Arrais, 2007-09-04.

Linguagem Ruby em alta no Brasil, aponta estudo Evans Data, citação do interessante artigo da ComputerWorld Brasil, enviada por Carlos Brando, 2007-09-03. Mesmo tema em Mais desenvolvedores e empresas usando Ruby em 2008, por e-Genial (RoadHouse, Fernando Meyer, Charleno Pires), 2007-09-03.

Seleção de mais de 200 sites de Torrent, por Anderson, 2007-09-03.

Certificação não combina com desenvolvimento ágil, por José Oliveira, 2007-09-03.

Modelo de Maturidade para SOA, comentário e indicação de artigo por Leo Borges, 2007-09-03.

Migrando suavemente de PHP para Java, por Marcos Peron, 2007-09-02.

Cuidado com o .htaccess, por Rodrigo Urubatan, 2007-09-05.

Gravando screencast em Linux

O Rodrigo Urubatan publicou hoje o artigo “Gravando ScreenCasts no Linux(Ubuntu/Kubuntu)! E rodando em qualquer PC ou disponibilizando via web”, com um passo a passo simples e direto para se gravar sessões de uso da tela, o chamado screencast, no Linux.

O guia dá como exemplo o Ubuntu (que por sinal é excelente e o que eu uso), mas as ferramentas servem para outras distribuições Linux.

O kit de ferramentas — todas software livre, claro — utilizadas é:

  • recordMyDesktop, principal programa, é o gravador de sessão de uso do desktop, para GNU/linux, capaz de capturar e codificar em vídeo o que acontece na tela. Utilitário de linha de comando (escrito em C) e front-ends gráficos (escritos em Python), com opções de toolkits gráficos pyGtk (gtk-recordMyDesktop) e pyQt4 (qt-recordMyDesktop). Também pode gravar áudio via ALSA, OSS ou JACK.
  • Formato de compressão de vídeo Theora Ogg gerado pelo recordMyDesktop.
  • MEncoder, codificador de vídeo incluso com o MPlayer, capaz de converter o formato de vídeo OGG para AVI mais comum.
  • FFmpeg, conversor de aúdio e vídeo, permite converter o vídeo AVI para formato Flash Video (FLV), para ser facilmente disponibilizado pela internet.
  • JW FLV PLAYER, script Flash Player criado por Jeroen Wijering, que pode ser usado como exibidor do vídeo.

O passo-a-passo de Urubatan começa desde o download e instalação dos pacotes necessários (no caso do Ubuntu, com apt-get ou outro gerenciador de pacotes Debian). Confira no artigo citado!

Java domina no Brasil e outras notas

Pesquisa realizada pela MBI – Mayer & Bunge Informática, em colaboração com a Assespro SP e o Instituto de Tecnologia de Software (ITS), traçou um panorama das 50 maiores representantes do setor de software no Brasil. Sobre linguagens de programação utilizadas, predomina o uso de Java em quase metade das empresas, observando-se também um crescimento de linguagens Microsoft citadas.

Java 46%
 
Visual Basic 36%
 
Delphi 32%
 
C ou C++ 20%
 
Clipper 10%
 
Cobol 6%
 
PHP 4%
 

Banco de dados Oracle × Microsoft no Brasil, quesito também avaliado na pesquisa:

Oracle 10g 54%
 
Oracle 9i ou menos 68%
 
SQL Server 2000 62%
 
SQL Server 7 ou – 52%
 

Fontes: IT Web, por Ligia Sanchez; e Quase 50 % das empresas Brasileiras usam Java, por Ednei Manica.

Mudando de pesquisa, mas ainda nas estatísticas… Gnome é líder no desktop Linux:

Fontes: Linux Desktop; e Nação Livre.

Curtas

Alexandre Simundi antecipa que está preparando uma série de aritigos Hibernate – da teoria à prática (2007-08-26) para breve.

Brunno Silva fala sobre Imutabilidade (2007-08-26), prática incentivada por Joshua Bloch em seu livro Effective Java.

Comentário Seja honesto, de verdade (2007-08-24) de Caio Cesar critica o plágio de texto em blogs e na Internet.

Edgar Silva fala sobre SOA em dois tópicos: Otimo post sobre SOA de Ricardo Ferreira (2007-08-25) cita o artigo Usando o SOMA e o JBoss ESB; e SOA Facts (2007-08-24) é uma crítica humorada estilo “Chuck Noris facts”.

Vitor Fernando Pamplona Deu pau no T.I. (2007-08-24) resume fatos da situação de TI nas empresas, com base na reportagem da Você S.A. (edição 110) por Gabriel Penna.

O mercado de TI é foco do comentário de Ednei Manica à matéria Existe futuro para aqueles que buscam uma carreira em TI? (2007-08-20), por Sergio Rubinato Filho, vice-presidente do itSMF Brasil e diretor de Servicos do itSMF International, na ComputerWorld Brasil.

Advanced “You think you know (JavaScript) but you have no idea” (2007-08-24) por Rafael Mueller, Quero ser Ágil, fala das apresentações em vídeo sobre JavaScript por Douglas Corckford.

Fechando de onde começamos: Java. Rodrigo Urubatan cita um artigo em C# 3.0 é uma linguagem dinâmica! e o Java correndo atrás da máquina! será mesmo? (2007-08-24) para lembrar que Java é muitíssimo mais que uma linguagem, é plataforma (na verdade, é uma tecnologia com várias plataforma: desktop, corporativa, móvel…). Para quem quer usar linguagem dinâmica em plataforma Java, pode usar Groovy, que compila em bytecode e serve até para fazer testes unitários de código Java de modo facilitado (artigo em inglês por Andrew Glover, Vanward Technologies, 2004-11-09, em IBM developerWorks).