Archive for February, 2008

Android promete

Friday, February 29th, 2008

A aliança para desenvolvimento de uma plataforma de Handset aberta - Android - coordenada pelo Google promete. Neste vídeo podemos ver como o desenvolvimento desta nova framework anda a passos largos, suportando em sua versão para chips com processadores 3D tecnologias como OpenGL onde vemos uma demonstração do game DOOM, Touch Screen interagindo com os aplicativos google como girar o globo no google earth com um toque dos dedos, suporte a 3G, etc. Ele também suporta chips com processamento 2D, apresentando google maps, games 2D, etc

Diferente da filosofia do IPhone que tenta impedir download de software de terceiros não homologados pela mesma, o Android é uma plataforma aberta baseada em Linux, já possui mais de 30 empresas de grande porte afiliadas, e dispõe de U$ 10 milhoes em caixa para patrocinar desenvolvedores de aplicações interessantes para a plataforma. Para quem já estiver interessado nesta grana, basta entrar na home page do projeto, baixar o SDK da plataforma e colocar mãos a massa.

Fonte:

http://code.google.com/android/index.html

GrandCentral all-in-one phone

Monday, February 25th, 2008

Já pensou em ter um único número de telefone que respondesse por todos os seus outros phones, incluindo Skype, Gizmo??

Sim, é isso mesmo que você pensou! Quando ligarem na sua casa irá tocar nesse número, quando ligarem para o seu celular será atendido nesse número.

Você não só pode receber, mas como também fazer ligações usando qualquer número, você pode estar na rua e fazer uma ligação com o número da sua casa… muito interessante.

Infelizmente ainda não está disponível para o Brasil, mas você pode fazer uma reserva de número em: grandcentral.com

‘workaround’ para o Evolution - Atualizado

Monday, February 25th, 2008

Evolution é quase perfeito. Sim, quase perfeito. Eu digo isso porque nada mais irritante é você ver a seguinte mensagem aparecendo, ao abrir um e-mail ou uma folder:

“Lost connection to Evolution Exchange backend process ”

Para resolver isso, geralmente quando ‘killamos’ todos os processos do Evolution e abrindo-o novamente resolve. Entretanto, em raros casos o Evolution não funciona.

Procurando por soluções, achei uma bem interessante que ‘resolve’ o problema.

1- Abre o shell

2- Encerre todos os processos do evolution

$ evolution –force-shutdown
Shutting down evolution-data-server-1.12 (Evolution Calendar file and webcal backend / Evolution Addressbook file backend)
Shutting down evolution-alarm-notify (Evolution Calendar alarm notification service)

3- killa todos os processos do evolution (caso você ainda veja um processo rodando)

pgrep evolution | xargs kill -9

4- entre em .evolution/mail/exchange (ou seja, vc precisa estar no seu homedir)

5- Apague todos os arquivos locais do Exchange. Vamos apagar todos os ‘fetchs’ de e-mail do exchange. Não é um problema, porque são informações gravadas localmente apenas para ‘cache’.

$ rm -rf *

6- Repita o mesmo processo de apagar os arquivos também na pasta para .evolution/exchange

7- Abra o evolution.

Quando abrir o evolution, ele vai refazer os fetchs de e-mail. Pode levar um bom tempo até que ele termine isso. Para evitar que o ‘fetch’ demore, mova e-mails antigos para a pasta local. Isso é bom porque você vai ganhar espaço na sua mailbox também.

Uma dica legal enviada é fazer tudo isso num comando simples. Segue abaixo esse comando:

$ evolution –force-shutdown && rm -rf ~/.evolution/mail/exchange/*

Aliás, quem quiser um script para isso, segue o meu “fix_evolution.sh”

#!/bin/sh
cd $HOME
evolution –force-shutdown
echo “fixing evolution problem”
rm -rf .evolution/mail/exchange
rm -rf .evolution/exchange
echo “All done! You may start Evolution again”

Mais uma vitória ao mundo open source com ‘gol’ marcado pela Microsoft!

Thursday, February 21st, 2008

Quem trabalha com informática, sabe que existem duas grandes fronteiras quanto a licenciamento, desenvolvimento e uso de software: O Software Proprietário e o Software Livre. Acho que dispenso em explicar o que é cada conceito. Como estamos num processo de usar tecnologias abertas e gratuitas, sabemos quão importante ter a liberdade de criar e recriar algo, para que possamos moldar um produto final da forma como desejamos. Coisa que, com produtos proprietários, nos deixa a desejar em alguns pontos.

É natural que critiquemos a Microsoft. Afinal, é a maior empresa de software do mundo, com diversos segmentos nos quais ela ou ela é líder ou então está quase líder. Isso é perfeitamente natural, mas nós defensores de software livre nos decepcionamos quando a Microsoft quer impor tecnologias e não deixar nós escolhermos a forma como aplicar.

Por exemplo, antigamente a Microsoft criava padrões que só ela entendia e só com os produtos delas é que era possível criar algo que só funcionava em seus produtos. Exemplo: DirectX. O SDK do DirectX, até aonde entendo, só pode ser desenvolvida em cima do Visual Studio e apenas usada no Windows, não tendo suporte algum a outros sistemas operacionais. Diferente de, por exemplo ao SDL, que é similar ao DirectX, mas está disponível a dezenas de sistemas operacionais.

No início do século 21, a Microsoft adotou outra postura, com o crescimento do mercado de software livre: ela passou criar padrões certificados e mostrava como interconectar aos seus produtos, mas já criava métodos que só eles poderiam mexer a 100%. Exemplo disso seria o OpenXML, do pacote Office. O OpenXML foi uma tentativa da Microsoft de padronizar a criação de documentos, planilhas e apresentações; deixando livre a escolha do usuário se queria manipular este documento no Microsoft Office ou através do Open Office. A principal falha da Microsoft, em não ter conseguidos homologar este padrão, é ter criado diretivas que tornavam este padrão fechado, com o emprego de tags como “Parágrafo formatado como no Word 97 formatava”.

Agora, você se pergunta: “Ok, muito legal em ter me contado esses assuntos passados, mas qual a novidade”? Bem, eis a novidade: Hoje,  A Microsoft estará liberando API’s para que desenvolvedores e usuários de software livre possam criar interfaces de conexões ao seus produtos. E a melhor das notícias: Ela não mais processará quem realizar tais operações, como o caça às bruxas que ela fez ao dizer que Linux inflige patentes da Microsoft, sem revelar quais.

Pessoalmente eu vejo a notícia de maneira positiva. Afinal, não sou contra a Microsoft de criar e vender produtos. Afinal, cada um pratica a forma como faz seus programas e como deve ser seu licenciamento. Eu acredito que o produto é que não deva criar restrições à seus usuários. Por exemplo, uma corporação que use rede Microsoft de interconexão de desktops e servidores não poder usar o serviço Samba para conectar a um ‘file server’ e pegar aquele documento de Office e não poder editá-lo usando OpenOffice porque a Microsoft dizia que isso era uma violação dos produtos por ela oferecidos. Tornar essa prática licenciada e, principalmente, documentada e aberta ao público, trará benefícios mútuos a todos. Poderemos escolher qual a forma que desejamos utilizar nossos computadores e como podemos interagir com os programas para manipular algum arquivo.

Hoje é um dia histórico. Para tornar as coisas ainda mais interessantes, só faltava o Windows ser gratuito. :)

BBC migra para Linux sua produção de TV

Thursday, February 21st, 2008

Devido a lentidão da gravação em fitas, a BBC resolveu migrar todo processo de geração do conteúdo que era gravado nestas fitas.

Para tal migrou para Linux, codificando seus arquivos digitais de vídeo usando ffmpeg e gravando os dados num NAS ou drive USB.

O time da BBC configurou 2 sistemas Intel dual quad-core com 4GB de RAM e 4TB de disco com sistema de arquivos XFS rodando OpenSUSE Linux.

O sistema de arquivos XFS foi o que obteve melhor performance na gravação de vídeo de alto bit-rate para o disco e inclusive um desenvolvedor open source foi contratado para desenvolver um codec DVCPRO50 para o ffmpeg que resultou em um melhor decoder do que muitos decoders baseados em hardware, de acordo com o pesquisador Stuart Cunningham, da BBC, durante palestra na linux.conf.au <http://linux.conf.au>.

PARC (Palo Alto Research Center, Inc.)

Wednesday, February 20th, 2008

Para quem não sabe o que é a PARC, segue um pequeno texto do site:

“PARC (Palo Alto Research Center, Inc.) works closely with varied enterprises and new ventures to discover breakthrough business and technology concepts that solve real needs, and transform how enterprises deliver value to customers. PARC takes an agile, multidisciplinary approach to open innovation – by bringing together physical, computer, biological, and social scientists who have the vision, expertise, and instinct to convert groundbreaking scientific findings into industrial-strength prototypes.

Incorporated in 2002 as an independent research business, PARC is celebrated for such innovations as laser printing, distributed computing and Ethernet, the graphical user interface (GUI), object-oriented programming, and ubiquitous computing. PARC is a wholly owned subsidiary of Xerox Corporation.”

Bom o motivo deste post é na verdade compartilhar o acervo da PARC de palestras, não deixa de dar uma olhada aqui

Por enquanto apenas assisti uma chamada By the Numbers: How I built a Web 2.0, User-Generated Content, Citizen Journalism, Long-Tail, Social Media Site for $12,107.09que é muito interessante. Pelo título das demais me pareceu bastante interessante o arquivo como um todo também.

[JBossWorld 2008] - JBoss 5

Wednesday, February 20th, 2008

Apesar do JBossWorld ter acabado, vou falar de mais um assunto ligado ao que rolou por lá. Assisti uma session intitulada “Introduction to JBoss Application Server 5.0” apresentada pelo Dimitris Andreadis e achei valeria apena eu falar um pouco do que vi nela, sobre as novidades do JBoss 5.

O Dimitris começou a session contando um pouco sobre a história dos realeases do JBoss lá por volta de 2001/02 (começei a trabalhar com JBoss no ano de 2003). Atualmente o JBoss 5 está na versão beta 4 e segundo o apresentador eles não tem mais intenção de lançar mais muito beta, talvez mais um apenas e só. O objetivo da JBoss é lançar um application server certificado com o Java EE5. Vou listar algumas novidades/melhorias mencionadas na session, lembrando é claro, que todas as features do JBoss 5 não se resumem a que vou listar aqui.

Vamos lá…

  1. Melhorias no mecanismo de clustering, que teve a sua arquitetura revista para melhor utilização dos recursos do servidor (memória por exemplo). O JBossClustering irá permitir definir a granularidade do que irá ser replicado e o que podemos chamar de BuddyReplication, que resumidamente consiste de que cada nó do cluster tenha um par com quem irá replicar os dados, evitando que uma informação seja replicado para todos os nós do cluster e consequentemente diminuindo o tráfego na rede. Aqui vale uma observação, acredio que essa feature possa ser utilizada no JBoss 4.0.x ou 4.2.x, bastando atualiazar o JGroups e o JbossCache.
  2. Melhorias no serviço de mensagens (JBoss Messaging v. 1.4.1) que passará a usar a implementação do JMS 1.1, de performance melhor, permitindo cluster das filas (queues) e tópicos (topics) e redistribuições inteligentes de mensagens.
  3. Failover transparente (essa eu quero ver funcionar mesmo! :) )
  4. JBoss Web 2.1.0 como container web, que nada mais é do que um tomcat 6 turbinado, o pessoal da JBoss costumar dizer “Tomcat on stereoids“. Eles pegaram a api APR da apache e portaram para o tomcat, criando o JBoss Web com uma performance superior ao Tomcat.
  5. Houveram mudanças na arquitetura de deploy.
  6. API de configuração. Essa é a uma feature nova e segundo eu entendi ela irá facilitar a replicação de configurações do JBoss

Bem isso foi tudo que anotei e que me lembro da session. :)

Ahh! outra coisa que falaram é que eles não pretendem mais lançar mais nenhuma versão da família do JBoss 4.0.x (a versão 4.0.5 é a última) e que a família 4.2.x é uma versão intermediária entre as versões do JBoss 4.0.x e o JBoss 5 que está para ser lançado.

Esse link aqui também tem umas informações adicionais: http://www.theserverside.com/news/thread.tss?thread_id=43175

[JBossWorld 2008] - HandsOn JON

Friday, February 15th, 2008

Hoje de manhã assisti um hands on alucinante sobre o JON, também conhecido como JBoss Operation Network. No hands on foi uma prática sobre os procedimetos básicos para a instalação e operação do JON. Recebemos um DVD com os arquivos a serem instalados durante o laboratório.

Já havia falado do JON, porém não sabia muito bem o que ele podia fazer e se ele realmente iria agregar algum valor na área de Produção. Vamos lá, com o JON podemos…

  • Inventário
  • Automatically discover
  • Cria grupos lógicos de JBoss instalados para facilitar a administração. Ex.: um grupo para o aplicativo A, outro grupo para o aplicativo B e por aí vai
  • Monitoração (Utilizacao de CPU, FileSystem, utilizacao da rede, metricas especificas para o Jboss AS, tomcat, hibernate, apache, postresql)
  • Operação (Start/stop/restart e etc)
  • Configuration (cria/atualiza servicos, i.e, datasources)
  • Deploy de application archives
  • Aplica patchs quando necessário
  • Fica claro na lista que o JON é uma ferramenta de monitoração e adminstração de Jboss, facilitando e muito a vida de quem precisa lida com o JBoss no dia a dia. Além disso, ele pode ser utilizado para relatórios, plano de capacidade/ocupação, uma vez que os dados coletados pelo JON são guardados num banco de dados (Oracle, Mysql ou Postgresql), havendo portanto um histórico. Basicamente o JON é composto de 2 componentes: o jon server que deve ser instalado em um servidor central qualquer e os agentes que ficam espalhados pelo parque de servidores que rodam JBoss. Como já mencionei antes, só é necessário um agente, mesmo que tivemos mais de uma instância de JBoss instalado. Outra feature interessante, é o que o JON permite a geração de alertas baseadas em thresholds pre-definidos, enviado a notificação por email.

    Ele também pode exportar traps SNMP para serem coletados por algum outro serviço, o que em tese permitiria uma integração com o cacti apesar de no fim das contas termos 2 ferramentas para fazer a mesma coisa.

    Vamos ao HandsOn!!!

    Para instalar o JON precisamos instalar o JON (óbvio!!), o agente do JON, ter o jdk 5 (que eu felizmente já tinha no meu macbook) e um banco de dados. No laboratório acabamos usando o postgresql. O postgresql acabou fazendo com que que eu perdesse um pouco tempo, pois tive que instalá-lo (felizmente o macports me ajudou aí :) ) e configurá-lo. Tive que chamar um dos monitores para dar uma mão, pois eu nao tenho muita experiência com ele e tive que criar um usuário e database para o jon usar na munheca.

    Os passos feitos estão na foto acima. Por fim, foi preciso carregar a liçenca fornecida, a qual é válida por 1 mês. Ahhh sim! O JON não é free, e apesar de ser pago, me parece que vale o investimento.

    Instalando agente

    Na versão 2.0, que ainda é beta, mas que será liberada ainda este ano, não é preciso passar o parâmetro de start. No fim, basta acessar o endereço no qual foi instalado para entrar no JON novamente. Infelizmente, fui nao pude avançar muito no laboratório pois havia perdido um certo tempo no início e quando eu ia começar a brincar com o JON instalado o tempo acabaou! :(

    Minha opinião é que o JON é uma ferramenta que iria agregar muito valor na administração e operação dos Jboss, principalemente quando se fala de dezenas de instâncias rodando. :)

    Pidgin Toaster

    Friday, February 15th, 2008

    Bacana, todo mundo com linux, todo mundo vendo e-mails, usando internet, usando pidgin… Mas a falta que faz para alguns ter aquele popup dizendo que alguém entrou ou saiu… é chato né?

    Bem, o fato é que ninguém sabe porque o Pidgin não tem isso… mas não se afliga! Para instalar é super-simples:

    No shell, escreva:

    $ sudo apt-get install pidgin-guifications

    Após atualizar os pacotes, entre no pidgin, botão direito em cima do ícone dele no Tray e selecione “Plugins”. Procure pelo plugin “guifications”, ative-o e configure à vontade.

    [JBoss World 2008] - um pouco de virtualização

    Thursday, February 14th, 2008

    Assisti uma session intitulada “Using Jboss RedHat and Virtualization Technologies with SOA” apresentada pelo Issac Christiffersen e o Dan Santillo, ambos da Booz Allen. Esperava uma palestra mais técnica sobre virtualização, mas no entanto ela foi caracterizada mais por uma apresentação de conceitos e explicando razões do que por que optar pela virtualização. Uma coisa é certa, um dos principais motivos a favor da virtuazalição é limitação de espaço físico, cada vez mais evidente com a comoditização de hardware e o alto custo com energia para o sistema de refrigeração, afinal 60% da energia gasta em um DataCenter vai para esses dois caras. Além disso, a virtualização permite aproveitar melhor recursos do hardware. É comum vermos alguns servidores em DataCenters com a cpu 100% idle a maior parte do tempo. Esse mesmo servidor, poderia estar sendo melhor aproveitado para outros sistemas e aplicações. Um DataCenter com 100 servidores, poderia ter 20 ou 30 servidores, cada um com 3 máquinas virtuais. Imagine a economia de espaço e energia que isso iria trazer!?! Além é claro, de ser muito mais fácil para administrar 20 servidores do que 100. Quando se houve falar em virtualização, muitos pensam logo no vmware, talvez por muito estarem acostumados a instalá-los nas suas próprias máquinas para instalar um Windows no Linux ou vice-versa, no entanto, um outro player no mercado é o Xen, que além de ser open source, parece ser bem robusto.

    Distingue-se do VMware por rodar mais próximo do hardware (por vezes, a máquina virtual pode compartilhar o mesmo kernel do sistema base). Ele permite que se rode vários sistemas operacionais em um mesmo hardware ao mesmo tempo. Fonte: Wikipedia

    De SOA não vi nada na apresentação. :)

    Cada vez mais, sente-se a necessidade de se implantar virtualização para valer na Globo.com, principalmente nos ambientes de QA’s que são os que estão mais sobrecarregados no momento com o excesso de aplicativos instalados ou instâncias de weblogic. Em produção, a virtualização iria diminuir o número de servidores físicos no DC, juntamente com o consumo de energia, o ganha uma preocupação maior ainda, se formos considerar alguns picos de energia que andamos tendo por lá… :)

    Virtualização já!!! :D