domingo, 31 de maio de 2009

Os Nerds estão em alta.

Escolha do mete a cara, no garagem do Faustão Domingo (31/05/2009).


Mais um ponto para os Nerds!

quarta-feira, 27 de maio de 2009

Rational Comes to you: Palestra IBM


Recebi este folder por email o qual informa que dia 17/06 haverá evento da iBM, Rational Coms to you, em salvador, no Othon.
Eu me inscrevi, quem vai???

Clique na figura para maiores informações.

Free VirtualBox Webinar: Live from JavaOne

Pessoal, acabei de receber esta mensagem por e-mail e, como eu tenho certeza de que nem todos receberam, decidi compartilhar com vocês. Por motivos preguiçosos eu não vou traduzir o texto:

June VirtualBox Live Show
Live from the JavaOne Show Floor

Dear,
There's always something new and exciting with VirtualBox software. So join us straight from
JavaOne for the next edition of the VirtualBox Live Show where you'll see and hear:

- News from the Show
- How VirtualBox is powering one of the largest virtual desktop deployments live at the show
- News from the VirtualBox labs
- Q & A

The event happens live before a worldwide web audience, and we'll
take questions throughout the session, so come along!

WHO: Andy Hall, VirtualBox Product Manager and the team

WHAT: VirtualBox Live Show

WHEN: June 3, 2009, 8:00 am PDT / 11:00 am EDT / 15:00 UTC/GMT
(The presentation will be approximately 45 minutes long, followed
by Q&A.)

WHERE: Simply access the web seminar from the comfort of your
own office.

WHY: If you need a fast, easy and flexible enterprise-class
virtualization solution, you won't want to miss this webinar on the
world's most popular open source virtualization software.

Register now for the free VirtualBox Live Webinar.
If you have any questions or feedback, please send a message to virtualboxinquiries@sun.com.
Thank you,
Sun Microsystems, Inc.

Nerds são bons de cama

Saiu ontem na coluna Sexpedia, no site da Época, a divulgação de 2 pesquisas que atestam que "rapazes que trabalham no setor de tecnologia são menos egoístas na cama" e que "os nerds são os mais preocupados em dar prazer à parceira na cama".
Já que esta notícia massageia o ego de 100% dos colaboradores do blog, eu não podia deixar de postá-la.

terça-feira, 26 de maio de 2009

Obtendo uma Collection Java com DWR

Bem, o post está bem específico mas eu li em alguns foruns essa dúvida e por isso vou postar assim específico mesmo. Ou seja, esse post é para quem está começando a usar DWR.
Primeiro eu crio o método na minha classe RemoteProxy:

@RemoteProxy
public class Funcoes {

@RemoteMethod
public Collection obterMinhaLista() {
Collection lista = new ArrayList();
return lista;
}
}


As propriedades que eu quero usar do Bean devem ser mapeadas com Annotation:

@DataTransferObject
public class MeuBean{

@RemoteProperty
private Integer id;

@RemoteProperty
private String descricao;

...
}


Agora é só usar essa chamada no javascript do JSP que você desejar:

mapear esses arquivos na sua classe html, na seção head:
/dwr/interface/Funcoes.js
/dwr/engine.js
/dwr/util.js

----------------------------

<script>
function mudarDisciplinas() {
Funcoes.obterMinhaLista( exibe);
}

function exibe(meusBeans){
//aqui agora é só usar o array como quiser, lembrando que
//cada objeto do array tem id e descricao. Exemplo: meusBeans[1].descricao

}
</script>


Ah, não esqueça de mapear as duas classes no web.xml:

<servlet>
<description>DWR controller servlet</description>
<servlet-name>DWR controller servlet</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<init-param>
<param-name>classes</param-name>
<param-value>
meuPacote.Funcoes,
meuPacote.MeuBean
</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>DWR controller servlet</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>

Para quem quiser saber mais sobre AJAX com DWR é só dar uma olhada no mini-curso que Mário ministrou na FIB.
Até apróxima e qualquer dúvida, já sabe, é só comentar.

sábado, 23 de maio de 2009

Esse Aqui Eu Recomendo: Virtual Box

Já era de se esperar que eu falaria do VirtualBox nesta seção do blog, mais cedo ou mais tarde, então decidi falar mais cedo por conta do post do nosso amigo Allan (Virtual Box 2.2 para Ubuntu 9.04 (Máquina Virtual)). Bem, não sei so vocês já utilizaram algum software de virtualização, mas caso alguém necessite usar um, com certeza eu recomendo o VirtualBox.
Um ponto muito forte que eu posso citar do VirtualBox é a Simplicidade e Usabilidade da Interface dele, é realmente muito simples e intuitiva. Aqui você encontra uma descrição mais detalhadas das prncipais funcionalidades dele.
O VirtualBox tem uma versão OpenSource (GPL) e uma versão de uso pessoal (PUEL), mas freeware do mesmo jeito. Como eu sempre falo em todos os posts da seção "Esse Aqui eu Recomendo", não sou eu quem fala que esse software é muito bom mesmo, mas são fatos, como o que o DesktopLinux publicou, informando que o VirtualBox é o terceiro mais utilzado para rodar aplicações para Windows no Linux. Veja aqui o gráfico.
Os possíveis usos da VirtualBox tendem ao infinito, mas só aqui no Blog já temos alguns relatos de uso desse software para atividades diversas: Rodar aplicações Windows através de um Linux, Mac ou Solaris, acessar o banco do brasil a partir de uma estação de trabalho 64 Bits, Criar máquinas virtuais com servidores (Web, SGBD, Proxy, Firewall e etc) para desenvolvimento/testes e muito mais....
Eu não vou colocar tutoriais sobre instalação/uso do VirtualBox porque além de serem poucos os existentes, não conseguem atingir o objetivo que nós achamos importantes em tutoriais desse tipo, mas não se preocupem, Allan Charles, o nosso VirtualBoy, está desenvolvendo uma série de posts para que eles se complementem como um tutorial desse software.
Até a próxima pessoal...

sexta-feira, 22 de maio de 2009

Virtual Box 2.2 para Ubuntu 9.04 (Máquina Virtual)

Olá pessoas, vocês já leram por aqui sobre como solucionar problemas usando máquina virtual. Hoje vamos falar sobre como instalar, no Ubuntu 9.04, essa maravilhosa ferramenta, a Virtual Box 2.2, que pode nos ajudar em várias situações. Então, mãos a obra, ou melhor, ao teclado.

Passo 1:

Habilitar no sources.list o repositório onde encontraremos o arquivo da virtualBox 2.2 para download. Isso pode ser feito ou pelo console ou pela interface gráfica, aqui faremos pela interface gráfica.

Clique em, Sistema → Administração → Gerenciador de Pacotes Synaptic. Na tela do gerenciador que se abriu, clique em, Configurações → Repositórios. Na tela de Canais de Sotfware que acabou de abrir navegue para a aba de Programas de Terceiros, clique no Botão Adicionar e coloque no campo Linha do APT o texto: deb http://download.virtualbox.org/virtualbox/debian jaunty non-free. Clique em Adicionar Canal e feche as janelas de Canais de Software e Gerenciador de Pacotes Synaptic.

Figura 1: Mostra a nova linha inserida após a atualização do sources.list

Passo 2:

Pegar a chave de autenticação para o repositório de onde vamos obter a Virtual Box. Desta vez faremos via console.

No seu console digite: wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -, pressione Enter e aguarde a máquina processar. Ao termino do processamento vá até a janela de Canais de Software, da mesma forma que fez no passo 1, e veja que na aba de autenticação terá a linha da chave para a Virtual Box, conforme mostra a figura 2 logo abaixo.

Figura 2: Mostra a chave de autenticação para a virtual box.


Atualizar os cabeçalhos de novos pacotes a serem instalados. Usaremos o console mais uma vez.

No seu console digite: sudo apt-get update, pressione Enter e aguarde a atualização.

Passo 4:

Instalar a Virtual Box. Agora que ninguém lembra mais do mouse, volte ao seu console e digite: sudo apt-get install virtualbox-2.2, pressione Enter e aguarde a máquina terminar o processamento.

Ao termino do processamento, e se tudo ocorreu bem, sua Virtual Box já estará disponível no Menu Aplicativos → Sistema.

Para não enfrentar problemas de permissão para montar unidades de CD/DVD, pendrives etc., basta colocar o comando gksu na frente do lançador da máquina virtual, conforme mostra a figura a baixo. Faça isso antes de qualquer nova máquina virtual.

Figura 3: Mostra as propriedades do lançador da máquina virtual.

Por fim, uma ilustração da Virtual Box instalada aqui na minha máquina.

Figura 4: Virtual Box rodando com dois S.O. Instalados.

Bem, espero ter ajudado. Agora vou ali beber uma coca-cola e breve falaremos sobre dicas para melhorar a usabilidade da Virtual Box, um forte abraço a todos.

Lógica Básica

Galera, pra dar início as minhas postagens aqui no blog, proponho um simples desafio como distração. A proposta é criar uma "class LogicaBasica" que implemente uma solução para informar o resultado de uma subtração entre "x" e "y" sendo que só é permitido utilizar o operador de adição para os cálculos.

Certificação JAVA: Sobrecarga de construtores


Bom pessoal, hoje vamos começar aqui no blog uma série de posts com dicas para certificação Java SCJP, Certificação com o JLiVe. Como estou começando a estudar para conseguir esta certificação, estes posts vão servir tanto para mim quanto para quem tem o mesmo objetivo.

Vamos então:

Sobre construtores, considere o código abaixo.

1.   public class Teste
2. {
3. public Teste(String str){
4. System.out.println ("Teste(String) executado");
5. }
6. public Teste(Object obj){
7. System.out.println ("Teste(Object) executado");
8. }
9. public Teste(){
10. System.out.println ("Construtor sem argumentos executado");
11. }
12. public static void main(String[] args) {
13. Teste teste = new Teste(null);
14. }
15. }
Qual a opção correta?
  1. chama o construtor public Teste(String str)
  2. chama o construtor public Teste(Object obj)
  3. chama o construtor public Teste()
  4. Código não compila, nenhum construtor adequado definido.
A resposta correta é a número 1. Tanto o construtor que recebe Object e o que recebe uma String são considerados pelo compilador como elegíveis. O null apesar de ser nada... ele está sendo passado como parâmetro, é uma referencia vazia, por tanto o construtor sem parâmetro não é chamado.
Entre o String e o Object o compilador escolhe o mais especifico. Mais o que string tem a ver com null? O null é nada, nada pode ser string ou object (?)... O string é escolhido pois sempre que vc passar uma string você vai poder fazer cast pra object, mas nem todo object vai poder ser uma string.

Dúvidas???
Falei bobagem???

Então entre em contato... através de comentário


abraços.

quinta-feira, 21 de maio de 2009

Skype para Ubuntu 64bits (Linux)


Já foi postado aqui no blog por Diego (leia aqui) um macetinho pra fazer o skype funcionar na arquitetura 64bits. Contudo, navegando pelo skype comunity, achei um link para o skype na na arquitetura 64bits aparentemente sem armengues.

confiram: http://www.skype.com/go/getskype-linux-ubuntu-amd64


OBS.: Ainda não testei a versão informada acima, pois, aqui no trabalho, minha máquina é de 32bits.

Deixem seus comentários a respeito

quarta-feira, 20 de maio de 2009

1 Ano de Blog!

Como não poderia deixar de ser, estou aqui para lembrar a todos do primeiro aniversário do JaLiVE (Java Linux e Vatapá Experts). Tudo começou dia 11/05/2008 com o post Ubuntu + Active Directory: Um guia simples e definitivo, ainda éramos eu e Mário apenas no blog, mas mesmo assim fizemos um trabalho legal. De lá pra cá o blog só fez crescer e mais pessoas fizeram e fazem parte dessa história. Atualmente o quadro de colaboradores do blog é:
  • Allan Charlles
  • Diego Barreto
  • Ian Laborda
  • Mário Jorge
  • Murilo Caetano
Nós esperamos que o blog cresça cada vez mais e possa trazer mais conteúdo para todos, incluindo nos mesmos... :)
Vida eterna ao JaLiVE!

MacOs Hospedeiro e Windows Virtual

Eu precisei instalar o Windows numa máquina virtual (VirtualBox) a partir de um MacBook (MacOs X). A máquina virtual estava beleza, a não ser pelo detalhe do teclado, pois o teclado do MacBook é diferente do teclado que o Windows esperava (por exemplo o teclado do MacBook não tem a tecla delete, tem apenas o backspace).
Tentando encontrar um software que resolvesse o meu problema eu encontrei o KeyTweak. Ele é um software free que consegue remapear teclas do teclado a fim de deixá-lo mais adequado à sua necessidade.

Apostila Fj21 da Caelum

Ontem resolvi acessar o site da Caelum, observei que a apostila gratuita que eles distribuem do curso de java web (FJ21), havia sido atualizada em fevereiro de 2009. Quando comecei a estudar java web essa apostila me ajudou muito e quando comecei a estagiar na área - em 2008 - meu treinamento foi praticamente baseado na apostila. Observei que a apostila está bem interessante. Uma das coisas que me chamou atenção de cara foi na seção "11.1 - Propriedades de páginas JSP" da apostila. Nesta seção eles destacam as novas propriedades permitidas pela API do JSP que são:

- Desativar Scriptlets nas páginas jsp.
<scripting-invalid>true</scripting-invalid>
Ao conversar com um colega de trabalho sobre esta possibilidade ele comentou "que bom, assim acaba com a macarronada nos jsp". Macarronada é o termo que algumas pessoas utilizam para qualificar essa prática de incluir programação nas páginas JSP. Quando pensamos numa macarronada temos aquela visão de tudo misturado, enrolado um no outro sem saber onde começa um ou termina o outro. Se você pensar em um sistema que utiliza código na pagina JSP para fazer conexão com um banco de dados é mais ou menos a mesma coisa... o lugar que vc devia utilizar apenas para apresentação, vc colocar código, fica um tanto quanto dificil de um outro programador dê manutenção no seu código.

- Desativar Expression Language
<el-ignored>false</el-ignored> //O padrão é que venha habilitado para desabilitar set true
Não sei em que situação isso seria útil, eu por exemplo utilizo bastante expression Language. Talvez alguns frameworks permitam que utilizem outras formas.

- Determinar a codificação dos arquivos de maneira genérica
<page-encoding>UTF-8</page-encoding>
Imagine toda vez que você criar uma pagina jsp ter que definir a codificação da mesma. Isso é meio chato, essa solução eu achei bastante prática.

- Incluir arquivos estaticamente antes e depois de seus JSPs:
<include-prelude>/antes.jspf</include-prelude>
<include-coda>/depois.jspf</include-coda>

Os velhos includes topo e rodapé. Aquela mesma história... ter que ficar incluindo em todas as páginas. Mais praticidade pra sua vida novamente ;)

Então, para configurar essas opções basta incluir a listagem abaixo no seu arquivo web.xml


<jsp-config>
<jsp-property-group>
<display-name> todos os jsps</display-name>
<description> configuracoes de todos os jsps</description>
<url-pattern> *.jsp</url-pattern>
<scripting-invalid> true</scripting-invalid>
<el-ignored> false</el-ignored>
<page-encoding> UTF-8</page-encoding>
<include-prelude> /antes.jspf</include-prelude>
<include-coda> /depois.jspf</include-coda>
</jsp-property-group>
</jsp-config>

Observem que eu destaquei a parte <url-pattern> pra chamar a atenção que além de permitir que você faça essa configuração para todos os arquivos .jsp, você também pode configurar para um arquivo específico.

Bastante interessante, não acham?

Por agora é só.

Abraços.

FONTE: www.caelum.com.br, curso FJ21

terça-feira, 19 de maio de 2009

Banco do Brasil e Linux 64 Bits

A solução de segurança do Banco do Brasil (Cadastramento de Computadores), que permite que correntistas utilizem serviços de suas contas através da internet, não possibilita que você cadastre o seu computador se o mesmo estiver rodando um S.O. Linux 64 Bits.
Pelo telefone eu não consegui muitos esclarecimentos do que ocorre, mas fui informado que este problema ainda não tem previsão de ser corrigido. A partir de uma máquina rodando Windows 64 Bits ou Mac Os 64 Bits a solução do BB funciona corretamente, o caso é só com o Linux 64 Bits mesmo.
Para quem tem esse problemas, como eu, o que eu recomendo é a instalação do VirtualBox para poder rodar uma máquina virtual com uma versão 32 Bits do Linux e poder usufruir desse conforto.

Dica de linux para iniciantes

A dica é o comando apropos. Esse comando pode te salvar em algum tipo de situação emergencial, principalmente quando você não puder contar com a internet...
Basta digitar no terminal apropos texto_desejado que ele exibe uma lista de comandos existentes e suas descrições, todos os comandos estão relacionados com o texto digitado. Veja o exemplo abaixo:

apropos update
/etc/updatedb.conf (5) [updatedb.conf] - a configuration file for updatedb(8)
catman (8) - create or update the pre-formatted manual pages
chgpasswd (8) - update group passwords in batch mode
chpasswd (8) - update passwords in batch mode
cups-genppdupdate (8) - update CUPS+Gutenprint PPD files
dellBiosUpdate (1) - SMBIOS management/utility program
gtk-update-icon-cache (1) - Icon theme caching utility
install-info (8) - create or update entry in Info dir file
iptables-apply (8) - a safer way to update iptables remotely
libgraphviz4-config-update (1) - maintain libgraphviz's configuration file
mandb (8) - create or update the manual page index caches
newusers (8) - update and create new users in batch
nsupdate (1) - Dynamic DNS update utility
pam-auth-update (8) - manage PAM configuration using packaged profiles
ucf (1) - Update Configuration File: preserve user changes in co...
ucfr (1) - Update Configuration File Registry: associate packages...
unix_update (8) - Helper binary that updates the password of a given user
update-alternatives (8) - maintain symbolic links determining default commands
update-app-install (8) - Cache the data for gnome-app-install

...

Nesse caso eu digitei update como o texto de referência e ele exibiu uma lista de comando relacionados com update e a descrição de cada comando. Para saber como usar cada comando pode-se utilizar o comando man:

man update-app-install

sábado, 16 de maio de 2009

Esse Aqui Eu Recomendo: Audacity


Numa tentativa de ampliar os temas abordados aqui no blog, eu estou lançando agora a seção "Esse Aqui Eu Recomendo". Essa nova seção será destinada a falar sobre softwares opensources que são usados porque são bons e não só porque são livres...
Para abrir com chave de ouro essa seção eu trago o Audacity. Esse é sem dúvida o melhor programa opensource para gravação de áudio multipista.
Isso quem diz não sou eu, o Audacity ganhou o prêmio de melhor editor de áudio do site BestCovery.
Sem querer me promover, mas já promovendo, eu uso o audacity para gravações caseiras de algumas músicas e posso garantir que além de tudo ele é um software bem intuitivo. Baixe aqui um arquivo mp3 de teste com o audacity que eu fiz a pouco tempo atraz. Todas as pistas foram gravadas direto no Audacity e eu usei a captura de áudio padrão do meu notebook.
Além de tudo isso que eu já falei sobre o danado, ele ainda é, como todo software opensource que se preza, multiplataforma e eu já utilizei ele no Windows, Linux (Ubuntu) e Mac OS.

Nesta página você encontra uma referência completa das funcionalidades do Audacity.
Este post não é um tutorial, mas isso não impediu que eu reunisse alguns tutoriais interessantes do audacity para vocês:
-> Tutorial da página do Estúdio Livre.
-> Conjunto de links com vídeos sobre o audacity da página Cifras.

Isso é tudo por hora pessoal, espero que gostem da nova seção do blog e conto com a colaboração de vocês para saber o que estão achando e sugestões de softwares que vocês recomendam...

sexta-feira, 15 de maio de 2009

Eclipse Demo camp

Chamada para o Eclipse DemoCamp.

If you would like to organize a DemoCamp, you choose the place, set the time, organize the venue (maybe a local pub, a company office or a university) and provide a screen and projector, and the Eclipse Foundation will cover the cost of food and beverage up to $500 USD (to a maximum of $20 per person attending). We also encourage organizers to find outside corporate sponsorship in addition to Eclipse funding. For any Eclipse member company that sponsors $250 or more, their logo will be posted on the DemoCamp’s wiki page and they will be acknowledged at the DemoCamp itself.


E-mail para mais informações ou para registrar o DemoCamp:
democamps@eclipse.org

Site:
http://www.eclipse.org/community/democamp/organizedemocamp.php

--
Basicamente, eles encorajam os interessados a organizar o evento Eclipse demo Camp. Voce se responsabiliza pelo local, projetor e tela e eles cobrem os custos de alimentação e bebida de até 500 dólares (máximo de 20 dólares por pessoa).

O pessoal do java bahia parece estar se mobilizando para organizar algo.

Vamos aguardar.

quinta-feira, 14 de maio de 2009

III ENSL - Encontro Nordestino de Software Livre & IV Festival Software Livre da Bahia

Banner Web III ENSL e IV Festival SL

Apresentar o modelo do software livre como uma forma viável e sustentável de acesso às novas tecnologias da informação, que possibilita o desenvolvimento econômico e social de uma região, é um dos objetivos do III ENSL - Encontro Nordestino de Software Livre e IV Festival Software Livre da Bahia. Promovido pelo Projeto Software Livre Bahia - PSL/Ba em conjunto com a Colivre - Cooperativa de Tecnologias Livres, este grande evento regional será realizado nos dias 29 e 30 de maio de 2009, no campus da Universidade Estadual da Bahia (UNEB), em Salvador.

Ao longo desses dois dias de programação, o evento abrirá espaço para que Profissionais, técnicos e usuários promovam discussões e reflexões sobre o papel econômico, tecnológico, cultural e educacional do software livre por meio de palestras, oficinas, mesas-redondas e sessões técnicas; além de divulgar algumas das ferramentas livres de uso internacional e casos de sucesso no Nordeste, como em todo o Brasil.

A previsão da organização é que mais de 800 pessoas entre usuários, membros dos projetos de software livre, empresários, gestores públicos, professores, estudantes e pesquisadores estejam presentes nesta quarta edição do evento na Bahia. Maiores informações no site do evento www.festival.softwarelivre.org ou no email festival2009@softwarelivre.org

quarta-feira, 13 de maio de 2009

Netbeans Refer-a-Frind Promotion!

Participei da promoção indicando o NetBeans 6.5 para alguns amigos via e-mail (Essa promoção ocorreu a algum tempo) . Para minha surpresa ao chegar em casa hoje vi que chegou pelo correio um pen drive de 2GB do NetBeans.

O conteúdo do pen é:
A instalação do NetBeans
A instalação do OpenOffice
E muita documentação...

sexta-feira, 1 de maio de 2009


O resultado da enquete sobre a compra da Sun pela Oracle:
0% O Java vai perder espaço.
14% Continua na mesma.
85% O Java vai ganhar espaço.

A grande maioria esta confiante e acredita que essa fusão vai trazer benefícios a plataforma Java.

Java na Formula 1


Para quem gosta de formula 1, o site oficial disponibiliza um applet que permite acompanhar em "tempo real" os treinos e as corridas.

Da para acompanhar toda a situação da prova. Tempos por trecho.

O melhor que para isso basta se cadastrar.