Pages

Monday 21 December 2009

Java Developer convertido ao Mac Os

Essa eu vou escrever em português porque este post e direcionado ao pessoal no Brasil. No Brasil, a utilizacão do sistema operacional Mac OS e quase nula.

No mundo, Mac Os possui somente 7.46% do mercado. O líder ainda e o Windows XP com 57.57% e o Windows Vista aparece em segundo com 21.73% do mercado. Ja o nosso grandioso Linux, possui aproximadamente 2%.

Aqui na Austrália, praticamente todas as empresas de desenvolvimento usam Mac OS. Mas este privilegio não esta restrito somente a empresas de desenvolvimento mas também empresas em outras áreas. Usuários domésticos também apreciam este sistema operacional.

Perfil do usuário Mac: Quem gosta de coisa de qualidade e não liga para o valor que vai gastar para ter essa qualidade desejada - dinheiro nao e o problema.
A Apple abriu a primeira loja no Brasil no inicio de 2008 no bairro do Morumbi, em São Paulo

No meu primeiro dia de trabalho, eu perguntei meu chefe se eu tinha mesmo que usar Mac. Ele disse para eu usar por um més e se eu não gostasse ele me forneceria o sistema operacional que eu quisesse. As duas primeiras semanas foi só para me acostumar com as novas teclas.
Eu era uma pessoa infeliz e decepcionada usando rWindows, sofrendo com a falta de estabilidade e segurança deste sistema. No Linux, sofria com a falta de usabilidade nas primeiras versões do Linux para desktop.

Emfim fui apresentado ao Mac Os Snow Leopard! Simplesmente e o sistema que reúne a usabilidade do rWindows e a segurança e estabilidade do Linux!

Mac e sem duvida um caminho irreversível - Eu nunca mais trabalho em empresa que usa rWindows na minha vida. Ubuntu 9 e uma alternativa barata ao Mac e estaria feliz com ele. Já faco uso do Ubuntu há dois anos.

*** Uso Mac OS para desenvolvimento e não falta nenhuma ferramenta para Mac. Caso não exista versão para Mac, pode instalar o macPorts e através dele, instalar qualquer aplicativo Linux no Mac.

Fonte:
http://www.w3counter.com/globalstats.php

Friday 14 August 2009

java.lang.OutOfMemoryError: PermGen space, JBoss running JBoss Seam

Who has never faced to "java.lang.OutOfMemoryError: PermGen space" using JBoss Application Server and JBoss Seam Framework?

I have faced to this problem more frequently in production environment because the application has expanded considerably. I remember I had the same problem in Brazil when we were doing our final project of Post Graduate APGS at PUC University. When I got this job, the fist thing I did was change JVM settings to fix this problem in my workstation.

You are going to see in many sites and blogs people saying that increasing the PermSize will solve the problem. This way you just postpone this exception.

By default, the Collect Garbage cleans the Heap but does NOT clean the Permanent Generation.

The default value for PermSize is 64 MB which is not enough neither for development nor production environment. You definitely should not use the default configuration for professional applications involving JBoss Application Server and JBoss Seam Freamework.

The only way to really resolve this issue is enabling CG to clean the Permanent Generation space as well.

I haven't had this problem since I started using those configuration:

-Xms512m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=512m -XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000


I run JBoss in my computer inside Eclipse but if you run outside or for production environment you have to put those parameters on the file JBOSS_HOME/bin/run.conf .

#
# Specify options to pass to the Java VM.
#
if [ "x$JAVA_OPTS" = "x" ]; then
#JAVA_OPTS="-Xms1024m -Xmx1024m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"
JAVA_OPTS="-Xms1024m -Xmx1024m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -XX:PermSize=192m -XX:MaxPermSize=192m -XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled"
fi

I am sure you will never see PermGen space again!

cheers
Leonardo Pinho Correa
Java Analyst/Developer, soccer player and beer drinker

Sunday 26 July 2009

MySQL command Explain saved my life!

Today I have to thank Paulinho about everything I learned in my Post Graduate APGS (Analisys, Project and Management of Information System - Latu Sensu ). Paulinho is a database specialist and teaches DB subject at PUC-RJ (Pontífica Universidade Católica) in Rio de Janeiro.

I remember I didn 't give it a shit about that subject, used to joke about that and I didn 't believe in that f#&*$ng "explain" command at that time.

I have been involved in a project which uses MySql, JBoss Seam, JBoss Server, JAX-WS and RedHat Linux... Pretty cool stuff!!!

I had to run one query quite big with a couple of joins. I left running for 1 hour and didn 't finish.

This time I remembered Database classes with the teacher Paulinho and decided to "explain" that query.
You don't need to be a DBA to do it, just need to put the word "explain" in front of your query and run it!!! like this:

explain select * from employee inner join department on ...

The most important thing in your result is the column "Type" which tells you how bad is you query.

For the worse to the best ones, here are possibles values of "Type" (in Mysql):

All, index, range, Eq_ref, const, system

If you see "All" in any line of the "type" column means you have your ass in the line (tá fudido).

If you carefully analyze the result you can much improve your query. In my case I just created a few indexes and removed some calculated fields from the clause where.

The original query was running in one hour - The new query ran in less than one minute making inner join in tables with over 1 million lines each!!!

Now we are going to take a look at Ingres database... Let have a go and see it... write about that later...

Leonardo Correa
Java Analyst/Developer, soccer player and beer drinker

Monday 5 January 2009

Primeira Impressão – Adelaide, Perth e Melbourne.

Primeira Impressão – Adelaide, Perth e Melbourne.

Welcome to the First World Country!!!

Já tinha lido muito sobre a Austrália e após alguns dias percebi que aqui tem tudo que se espera do terceiro país mais desenvolvido do mundo (3ª colocado no IDH – Índice de Desenvolvimento Humano da ONU). Não é a toa que grande parte das pessoas que vem acabam permanecendo por tempo indeterminado. Índice de violência e de corrupção são baixos(quase nulo) e não existe o “Forô privilegiado” para políticos como no Brasil e os políticos são julgados como qualquer cidadão. Para resumir, Austrália é o “Brazil” que deu certo! O sistema aqui realmente funciona e vale a pena pagar seus impostos!!!

Vida na Austrália...

Logo de cara já vi a “Mão inglesa” - carros com volante no direito e os carros no lado esquerdo. O asfalto aqui é perfeito e as ruas são limpas. Praticamente todos os carros são com câmbio automático, inclusive os carros com 20 ou 30 anos de uso. Há uma grande diversidade de marcas mas as mais predominantes são: Toyota, Subaru, Honda, Suzuki, Ford, Audi e alguns VW...

Praticamente todas as pessoas são “classe média” pois o salário mínimo aqui é em torno de 2000 dólares(Quase 3000 reais). Esse é o salário que um australiano ganha para trabalhar como recepcionista, auxiliar de limpeza, vendedor etc... É um salário bem razoável e suficiente para a pessoa viver de maneira satisfatória, ter carro novo e talvez fazer uma viagem internacional por ano.

Aqui na Austrália, como em todos os países desenvolvidos, é normal fazer viagens internacionais. Quase todos conhecem no mínimo a Europa e ásia e alguns América do sul. As pessoas não acreditam que essa é minha primeira viagem internacional com 26 anos. Então eu tenho que explicar como é a vida em um país subdesenvolvido... Índice de violência é muito baixo. Já os acidentes de trânsito apresentam um número considerável e geralmente são decorrente de consumo de bebidas e drogas.

Crianças...

As crianças são bem educadas e sempre respeitam as pessoas. Não é necessário falar mais de uma vez para elas obedeçam. Para ter uma idéia, quando elas entram no carro, a primeira coisa que elas fazem e colocolar o cinto de segurança. Elas sempre separam o lixo reciclável do lixo normal e nunca jogam lixo no chão. Se não houver lixeira perto, elas quadram o lixo até que encontrem uma. As crianças aqui estudam em horário integral e praticam no mínimo três esportes de forma compulsória. Aqui não se estuda gramática de maneira absurda como no Brasil. Estuda-se somente o básico.

Animais...

Já tive meu primeiro contato com uma aranha “red-back”(Costas vermelha) de 4 centímetros e extremamente perigosa. Essa aranha pode matar uma pessoa caso ela não receba cuidados médicos dentro de 24 h. Essa aranha estava debaixo da mesa de madeira utilizada no almoço de natal. Ainda não vi nenhum canguru...

Praias...

As praias são limpas e a água é verde e outras são azul turquesa. É possível ver o fundo do mar como se fosse uma piscina – parece a praia de “Lost”. As garotas usam biquines gigantescos e os homens usam bermudas e camisas. Na austrália, há um alto índice de câncer de pele decorrente do sol. O sol é muito forte e parece não haver a proteção na camada de ozônio. Em Perth ou Adelaide eu não consigo ficar no sol por muito tempo. No segundo dia eu já tive que usar protetor solar, camisa e chapel.

Lindas praias porém cheias de tubarões aguardando ansiosamente para fazer um lanche. Saiu uma reportagem sobre um tubarão branco que foi filmado passeando pela praia de Perth a cerca de 300 metros da areia – eu estava nesta praia este dia!!!

Vinhos, comida...

A Austrália tem uma grande tradição em vinhos. É hábito beber vinho aqui. Em alguns dias acho que já bebi mais vinho do que minha vida inteira. Não se come feijão aqui e o almoço geralmente é sanduíche e a grande refeição é à noite. Pizza aqui é realmente saborosa e não é necessário catchup. Finalmente conheci o verdadeiro catchup, que aqui é chamado de molho de tomate. Não é essa porcaria que tem no BR.

Em Melbourne, existem restaurantes tailandeses, vietnamitas, indianos, japoneses, chineses, brasileiros, italianos e de quase todos os países... Melbourne hoje é uma das cidades mais internacionais do mundo. Você vê facilmente nas ruas pessoas de vários países e cada um vestido de uma forma diferente! Neste ponto parece uma Lapa gigante onde cada um faz a sua moda! O pessoal gostou da minha calça xadrez.

Esportes...

Aqui o pessoal gosta de Tênis, Cricket, Rugby e Aussie Rules. O pessoal está começando a se acostumar com o futebol.

Brasil no ponto de vista dos australianos...

O pessoal aqui não conhece somente Pelé e Carnaval... O pessoal lê bastante Paulo Coelho! Eles conhecem o Cássio que joga no Adelaide FC e Romário que também teve uma passagem rápida por este clube. Eles gostam muito do filme Cidade de Deus e do seriado Cidade dos Homens. Eu vou apresenta-los o Tropa de Elite em breve!!!

Todos conhecem a capoeira, carnaval, mulheres, Kaká, Ronaldo, Ronaldinho, Copacabana, bossa nova e samba.

O caso dos travestis do Ronaldo saiu nos jornais aqui também!

Leis, Bebidas...

Aqui ainda não se conhece nenhum caso de suborno para policiais e eles são todos confiáveis. As leis são extremamente rigorosas aqui. É permitido beber e dirigir dentro de um limite. Para estar apto a dirigir, é aconselhável na primeira hora duas bebidas e depois, uma bebida a cada hora. Os pubs geralmente disponibilizam garrafas de água para facilitar a vida de quem está bebendo.

As cervejas são extremamente saborosas. Existem as cervejas leves(light) e as secas ou fortes(“Pale Ale”, “Dry” ou “Extra dry”). As leves são iguais a skol, antártica e as fortes parecem as cerveja belga ou alemã. Eu bebo bastante cervejas do tipo “pale ale”. Depois de dois copos de 500ml já to ficando meio torto porque ainda to me acostumando com esse tipo de cerveja.

Os australianos(e australianas) bebem muito!!! Mas muito mesmo!!!

Eu estava bebendo em um pub, então comecei a conversar com uns caras. Tinha um que já estava bem doidão. Então a garçonete disse para ele:

“Essa é a sua última cerveja! Bebe essa garrafa de água!”

Eu disse para o cara que a garçonete estava afim dele mas depois eu descobri que aqui existe um negócio chamado “Responsibility Alchoholic Services”. A garçonete não pode servir bebidas para quem já está ficando bêbado e ela pode ser responsabilizada pelos atos cometidos por essa pessoa bêbada!

Eu quase morri de rir quando a soube disso! Eu já estava quase no meu limite também.

Nights e Mulheres...

Na Austrália em geral existem mais homens do que mulheres. Nas boates que fui, constatei que aproximadamente 55 a 60% eram homens e 40 a 45% eram mulheres. O fato positivo é que as mulheres são bem bonitas e o problema é que os caras também são “boa pinta”...

Então para quem quer se dar bem aqui, vai ter que ralar muito... É aquela velha história né... Eu sempre cobrei muito das pessoas o “diferencial”....

Percebi que aqui também não seria muito difícil desde de que você faça a diferença!!! Ou seja, depende da disposição ou capacidade de cada um!

Várias vezes que fui ao bar pegar cervejas e drinks, alguma garota disse: “Hi!” ou “Cheers”... Percebi que as coisas devem ficar mais fáceis no decorrer da noite ou quando a bebida começa a fazer efeito...

Drogas...

O consumo de drogas é alto porém nenhuma droga é permitida por lei. A maconha é droga quase padrão aqui. Eles consomem a maconha do tipo “Hidropônica”. A droga da elite aqui é a cocaína. A grama da cocaína custa cerca de 300 dólares! Coisa absurda! A droga mais consumida aqui é o ecstase. A droga suja aqui é a heroína.


Essa foi minha primeira impressão sobre a Austrália após 15 dias de observação e muita conversa com as pessoas. Austrália também tem alguns problemas mas nada que se compara aos problemas dos países de terceiro mundo.

Leonardo Pinho Correa
Java Analyst/Developer, soccer player and beer drinker