segunda-feira, 21 de setembro de 2009

Dev In Rio 2009: eu fui!

Nenhum comentário:

O último evento em que estive presente foi o Dev In Rio, na segunda-feira passada (dia 14/Nov). Este post trata de minhas impressões sobre como foi o evento. O título dele é inspirado nos vários posts entitulados "Dev In Rio 2009: Eu vou!".

Então, vou começar pela conclusão: Guilherme Chapiewski e Henrique Bastos organizaram um bom evento! Com toda certeza, se eu tiver como ir nas próximas edições do mesmo, irei. Eu tive a chance de escutar boas frases dos palestrantes e conhecer algumas pessoas. Percebi que várias destas pessoas (assim como eu) já não acreditam mais que a linguagem Java seja a bala de prata para todos os problemas, mas sim, que a plataforma Java está cada vez mais forte com relação a característica de termos, hoje, mais de duzentas linguagens que podem rodar numa JVM, dentre as quais, as linguagens mais discutidas neste evento: PHP, Groovy, Python e Ruby. Na minha opinião, e na de pessoas que escutei durante o evento, o uso destas linguagens dentro de uma VM já é uma realidade. Além disto, a programação na plataforma Java pode se tornar até mesmo uma tarefa poliglota na qual o uso de cada linguagem, no seu devido lugar, pode oferecer até uma solução melhor do que o uso de uma única linguagem (especialmente, a linguagem Java). Também escutei mensagens interessantes sobre o Rails, sobre o Django, sobre métodos ágeis e no painel, última atividade "oficial" do evento, iniciado por Vinícius Manhães Teles e participado por diversos outros palestrantes e convidados numa "mesa redonda, sem mesa".

Sobre os palestrantes e as palestras em que estive presente, comento a seguir:

  • Gilherme Silveira e Niko Steppat, instrutores da Caelum. Eles falavam, quando cheguei ao evento, sobre otimização de performance numa JVM. Citaram parâmetros utilizados na VM HotSpot da Sun que podem influenciar na decisão da mesma de compilar ou não um código que está sendo bastante chamado. Também demonstraram um exemplo de código Ruby, rodando através do JRuby, sendo otimizado na HotSpot através da modificação de alguns parâmetros. A palestra foi interessante mas não me somou novidades em relação ao que já conheço e lido nesta área a algum tempo (desde que atuava no mercado com o Helder da Rocha, da Argo Navis). Atualmente, em cursos fechados que ofereço para alguns Clientes, cubro assuntos relativos a otimização ao falar sobre tuning de VMs e de servidores de aplicações. Na minha opinião, a melhor contribuição que a palestra da Caelum deixou para todos foi realmente a questão da plataforma Java ser hoje uma plataforma totalmente adequada a utilização de diversas linguagens citando seus casos na utilização do Ruby, Groovy, Scala, etc. Não poderia deixar de citar que Niko Steppat também nos divertiu com o termo "maguina vudual".
  • Fábio Akita, "evangelizador" de Ruby e de Rails que trabalha na LocaWeb. O Akita se destacou, no meu conceito, pela didática e clareza na transmissão de sua mensagem apesar de falar como uma metralhadora. O Rails, com toda a certeza, amplia as características do Ruby, através dos exemplos explicados e demonstrados pelo meta-apresentador do Akita (ele próprio, num vídeo) falando sobre meta-programação. Também foi muito divertida a metáfora "Cowboy x Profissional". A apresentação do Akita foi disponibilizada. Uma das coisas que me lembro sobre o Akita falar é como ele aproveita seu tempo, e que todo programador deveria ser burro (julgar-se assim) e buscar conhecimento constantemente. Eu, tenho lido sobre como gerir melhor o meu tempo e também procuro aproveitar meus minutos em deslocamentos (metrô, ônibus, vôos, ...) lendo, ouvindo e vendo coisas que possam me tornar melhor no que faço. Além disto, estou em constante busca por aperfeiçoamento até mesmo fora do trabalho. As palavras do Akita neste sentido devem ser bem lembradas e, por isto, eu as cito aqui.
  • Jacob Kaplan-Moss, um dos líderes do desenvolvimento do Django, fez uma boa introdução sobre este framework. Eu acredito que, atualmente, trabalhar com Django seja realmente uma das formas mais ágeis de se produzir aplicações para a Web. Se assim não fosse, empresas como Globo.com, Google, SERPRO, dentre outras tantas, realmente não estariam investindo tanto tempo assim em soluções que envolvem seu uso. Também achei interessante a apresentação do software Obameter e dele ter sido desenvolvido em Django. Cheguei até mesmo a comentar, ao final da apresentação e no twitter, que um software desta espécie seria interessante para nós brasileiros, que estaremos em um ano eleitoral no ano que vem. Depois desta apresentação, fui instruído por um participante e pelo GC de que já existem alguns softwares nesta linha. Gostaria de ter um comentário neste post sobre aonde estão tais softwares!
  • Jeff Patton trouxe uma apresentação interessante sobre Agile. Falou sobre a utilização de idéias ágeis, antes mesmo da confecção do software. Lembro-me de slides onde ele falou sobre a prototipação de telas utilizando caneta e papel mesmo e como isto é rápido para se conceber uma idéia inicial de como será uma navegação nas telas de um sistema. Também deu várias outras idéias interessantes relativas a desenvolvimento ágil, fora da questão da codificação.

No intervalo entre a palestra do Jacob e do Jeff, eu conheci o Lucas Bastos. Ele se apresentou para mim, falando que também é corredor, e eu fiquei empolgado por ter conhecido alguém neste evento que também compartilha comigo o gosto por corridas. Não deu tempo de conversarmos muito sobre o evento em si já que nosso foco foi completamente alterado para o assunto corridas ;-)! Ele me disse que também compartilhavamos uma amizade em comum: Cláudio Miranda que irá correr na minha equipe (eucorro.net), no Super 40 em Brasília, no próximo domingo (27/Nov). Vinícios Teles fez uma entrevista com o Luca Bastos. Assista!

Também tive o prazer de apertar a mão do Maurício Samy Silva (Maujor) e de lhe dizer que sou um grande admirador de seu trabalho. Quando crescer, quero ser igual a ele! :-D Falo isto, no que diz respeito a sua capacidade de atuar no que gosta, escrevendo livros e ainda tendo uma energia fora do comum para participar de eventos e fazer amigos!

Bem, estas foram minhas impressões sobre o Dev In Rio 2009. E reforçando a conclusão (dada no início :-): FOI LEGAL MESMO! Neste post do GC, há links para fotos e vídeos do evento.

Agora não falo mais do Dev In Rio mas de outros eventos:

  • Mesmo já tendo ocorrido a quase um mês em Brasília, no período de 26 a 28 de agosto, num próximo post eu pretendo também comentar sobre o que achei do Consegi.
  • Estarei em Goiânia, dia 03/Out no 6º FGSL, e em Brasília (dia 24/Out), no Plataforma Java x Plataforma .Net. Em ambos os eventos tratarei do mesmo assunto: Servidores de Aplicações Java, Livres.

quinta-feira, 17 de setembro de 2009

Como eu uso o Twitter, parte 2

Nenhum comentário:

Quero complementar meu post anterior que, como este, também é básico e "para pessoas comuns" falando sobre o Twitter. Preciso passar algumas informações a mais sobre a forma como tenho trabalhado com ele e sobre algumas ferramentas que começei a utilizar para melhorar, ainda mais, minha forma de interagir com o Twitter, depois de ter escrito o post anterior.

Em primeiro lugar, quero destacar uma ferramenta que conheci, por acaso, durante minha participação no evento Dev In Rio. Um dos participantes sentou-se a minha frente e, num determinado momento, eu não pude deixar de notar que ele estava utilizando em seu notebook uma ferramenta diferente, das que eu utilizava naquele instante, para twittar. Ele estava executando o TweetDeck, num Ubuntu, a mesma distro Linux que eu utilizava em meu note, naquele momento.

Só de bater o olho na tela do colega, percebi algumas coisas interessantes na ferramenta: ela mostra várias colunas e, dentro destas, os tweets. Percebi a existência de três colunas principais: "All Friends", "Mentions" e, como estavamos no evento seguindo a tag #devinrio, havia uma coluna que mostrava os tweets marcados com esta tag. Ferramentas com o TwitterGadget e o TwitterFox, citadas em meu post anterior, utilizam abas (ou "orelhas") ao invés de colunas. Desta forma, você não consegue ter uma visão tão completa como a apresentada pelo TweetDeck. Não tive dúvidas! Instalei imediatamente esta ferramenta em meu Ubuntu. A instalação foi tão simples que eu não sei detalhes sobre como ela foi realizada. Não utilizei o aptitude ou o apt-get, os gerenciadores de pacotes do Ubuntu. Simplesmente, cliquei no botão instalar, através da página aberta pelo Firefox no site do TweetDeck. O resto foi acontecendo de uma maneira quase "mágica". Terminada a instalação em minha máquina, e após fazer o login na aplicação com minha conta do twitter, notei algumas coisas a mais: quando clico em uma tag (#algumacoisa) ele abre automaticamente uma coluna, com todos os tweets que contém aquela tag. Além disto, a ferramenta: encurta URLs automaticamente utilizando o bit.ly e a sua conta neste serviço (mas também se integra a outros serviços como o TinyURL, entre outros); ao clicar no perfil de uma pessoa, abre todos os tweets e o seu profile em uma tela pop-up; ao clicar numa foto postada via TwittPic, TweetPhoto ou yfrog ele também abre um pop-up com a foto, etc. Enfim, o TweetDeck é realmente uma ferramenta para twitteiros profissionais, ou amadores, que buscam facilidades na experiência com o Twitter ;-).

O TweetDeck tem me possibitado estar ANTENADO em diversos assuntos de meu interesse, ao mesmo tempo. "As colunas" realmente são ótimas para isto. O que noto, com o uso desta ferramenta, é que o meu uso do Google para pesquisas sobre as coisas que realmente me importam, tem diminuído. Este comportamento é esperado já que, se formos fazer uma comparação, o Google é um filtro computadorizado para os assuntos que você deseja e o Twitter, é um filtro HUMANO! Seguindo as pessoas certas, você consegue obter as informações que lhe importam, sem a necessidade de pesquisar nada no Google. Daí, surgem previsões como a do post Twitter destined to replace Google Search.

Das diversas coisas que eu tenho aprendido no uso do Twitter, eu diria que uma das mais importantes talvez seja a questão de valorizar (e repassar) as informações que recebo, de quem eu sigo ou não, mas que acho importantes. O mecanismo do retweet (RT) é importantíssimo! Leiam o post The art of ReTweeting in Twitter pois ele trata bem melhor deste assunto do que o que eu poderia escrever aqui. O TweetDeck faz o RT ser simples, fácil e rápido: 1 clicar de botão!

A revista Info deste mês traz dicas sobre mais algumas dezenas de ferramentas que se integram ou facilitam o uso do Twitter. Eu comprei o meu exemplar pois realmente não pude resistir a vontade de aprender mais sobre o ele, suas ferramentas e sobre como utilizá-lo em meu trabalho. O interessante nesta edição são as histórias de como as pessoas estão utilizando o Twitter para conseguir um emprego ou fazer marketing de algum produto ou serviço que oferecem. As dicas de como utilizar o twitter nesta edição também são legais.

Por fim, tenho somente uma última recomendação A REPETIR, pois já a fiz em meu primeiro post: SEJAM RELEVANTES! Unam isto a CORDIALIDADE, sejam EMPATICOS e AUTENTICOS. Leiam "O Fator Gente Boa", de Tim Sanders, para entender um pouco mais sobre estes assuntos. Fazendo isto, vocês estarão ajudando as pessoas e atraindo ainda mais seguidores! As pessoas, ao lhe seguirem, esperam que você possa lhes informar alguma coisa interessante para suas vidas.

quinta-feira, 10 de setembro de 2009

Como eu uso o Twitter

Nenhum comentário:

Este é um post básico sobre o Twitter e sobre como eu venho utilizando-o, seguindo algumas convenções e estabelecendo algumas regras pessoais que desejo compartilhar. Se você já utiliza ou acompanha o que eu venho escrevendo no Twitter, este post talvez não lhe trará grandes novidades. Mas, se você é novato nesta ferramenta, espero poder lhe trazer algumas informações úteis. Eu senti necessidade de escrever este post para poder explicar a amigos, como eu venho trabalhando com esta ferramenta, que muitos julgam apenas ser mais um modismo.

Em primeiro lugar, quando entrei no Twitter, eu coloquei minha foto. Tudo bem que alguém não queira fazer o mesmo e que queira utilizar um avatar em seu lugar. Mas, manter a gravura padrão do twitter dá a impressão de que você simplesmente não está nem aí para ele e que simplesmente entrou para criar sua conta e nunca mais voltou.

Eu gosto de utilizar o Twitter mais para repassar informações úteis do que para falar sobre mim. Isto inclui a divulgação de, até mesmo, meus próprios posts neste blog. Mesmo assim, a pergunta que o Twitter nos faz antes de enviarmos um post "What are you doing" sugere que repassemos alguma informação mais particular e, muitas vezes, eu faço isto. Mas, prefiro realmente ser mais relevante para as pessoas do que falar sobre o que estou fazendo. Indiretamente, esta informação pode ser inferida.

Eu procuro evitar palavras de baixo escalão no Twitter. Entendo que a característica de um microblog com seus 140 caracteres seja, muitas vezes, emotiva e superficial. Mas, mesmo em minha vida fora da Internet, eu tento não falar palavrões perto de estranhos. Imagine o seguinte: você está em um local público e quer expressar sua raiva por algo. Se você se descontrola e grita alto um palavrão bem feio, que impressão você espera passar? Você deveria esperar que os leitores de teu Twitter tivessem a mesma impressão.

No Twitter assim como em minha vida, eu procuro evitar críticas a qualquer pessoa ou grupo utilizando artigos indefinidos. Quando eu tenho alguma crítica a fazer sobre algo, pessoa ou empresa, eu as cito nominalmente. Também não vejo sentido em ficar postando ou repassando comentários como, por exemplo, sobre o desconhecimento de uma pessoa (ou grupo) sobre algo que eu julgo que ela deveria saber. Acho isto no mínimo "pouco elegante" por parte da pessoa que escreveu tal post, ou que o repassou. Seria bem mais construtivo guardar tal informação para si e ajudar tal pessoa (ou grupo). Informações deste tipo simplesmente não agregam nada a vida de ninguém. Pelo contrário, só demonstram que a pessoa que as produz é indelicada ou esta tentando ser engraçada, inutilmente.

Eu procuro usar tags (Ex.: #maratonadecuritiba) em meus microposts. Isto facilita a busca por determinadas palavras pois, para isto, basta clicar na tag que você verá quem está também está falando sobre aquele assunto. O Twitter possibilita que você recupere um feed a partir de uma determinada tag e, com isto, você possa incorporar as frases que contém aquela tag em teu blog, como eu faço na lateral direita do meu blog para corredores utilizando a tag #eucorronet.

Eu uso o RT para valorizar e repassar os bons posts (ou informações) que outras pessoas escrevem. Este recurso, para quem está iniciando o uso do Twitter, é utilizado para que você possa repassar alguma frase escrita por alguém, citando-a como a autora. Por exemplo, a frase "RT @yaraachoa 74 dias para a Maratona de Curitiba! Preparação física e psicológica. #eucorronet" informa que eu estou repassando uma frase da Yara Achôa, jornalista e maratonista que escreve para várias revistas, sobre corridas. Note que as frases que eu escrevo no Twitter são "linkáveis". Eu posso também, agregar alguma informação a frase dela, como fiz ao escrever a tag #eucorronet. Sendo assim, esta informação também irá aparecer nos blogs em que eu tiver agregado o meu twitter.

Eu procuro responder as citações que me são feitas. Quando alguém escreve um post em seu Twitter contendo na frase a palavra @paulojeronimo, esta informação fica visível para mim, na página do Twitter (ou nos plugins que utilizo para trabalhar com ele) e eu costumo respondê-la.

Eu costumo seguir no Twitter as pessoas que eu conheço pessoalmente e as que eu não conheço, mas que fornecem informações relevantes para mim. Também sigo empresas ou grupos que sejam igualmente de meu interesse. Eu, assim como qualquer usuário que possui um perfil púbico no Twitter enfreto um problema, que são os malditos spammers que utilizam robôs para me seguir. Mas, realmente não há muitas soluções para este problema e, a que eu mais utilizo mesmo, é clicar no botão block no Twitter do danado ;-).

Eu também utilizo algumas das muitas ferramentas que integram o twitter a diversas outras coisas. Neste blog, utilizo o TwitThis para que você possa twittar que está lendo ou que leu este post. Também utilizo o bit.ly para encurtar uma URL grande e para ter uma noção de quantos cliques eu tive nesta URL. Uso o TwitterFox (como plugin para o Firefox) e o TwitterGadget (que integro a minha página do iGoogle). O TweetFeed também já me foi útil para gerar automaticamente um post no Twitter, toda vez que eu postava alguma informação neste blog. Além de tudo isto, uma ferramenta que irei passar a usar em breve, assim que anunciar um novo site que estou criando, é o Tweetray.

Bem, acho que já escrevi o bastante... Este post é apenas uma introdução que fala do meu modo de uso do Twitter. Para aprender ainda mais, leia os diversos posts que compartilho através do Google Reader onde, em vários deles, o assunto é o Twitter.

quarta-feira, 9 de setembro de 2009

quinta-feira, 3 de setembro de 2009

Seam Caching - Parte I

Nenhum comentário:

Uma aplicação Seam suporta o uso de cache em várias camadas. Neste primeiro artigo da série Seam Caching, irei tratar especificamene do cache de entidades em EJB 3.0. Nos próximos, falarei sobre o cache de resultados de consultas e por fim, sobre o cache de fragmentos de páginas. Todos eles trarão exemplos práticos e executáveis para que você possa baixar e testar em sua própria máquina.

Se estamos falando de uma aplicação Seam que trabalha com EJB 3.0, podemos fazer uso do cache de entidades. No caso de aplicações EJB 3.0 dentro do JBoss, o Hibernate é utilizado como implementação JPA e este possui suporte para um cache de segundo nível. A configuração utilizada para a implementação EJB 3.0 utiliza o JBoss Cache para implementar o mecanismo de cache. Este cache é ajustado no arquivo $JBOSS_HOME/server/all/deploy/ejb3-entity-cache-service.xml que contem uma série de configurações explicadas detalhadamente na documentação do JBoss Cache.

Com o cache habilitado, cada vez que é persistida uma entidade num banco de dados através do entity manager, a entidade será inserida no cache. Cada vez que a entidade for atualizada e suas mudanças forem persistidas através do entity manager, a entidade será atualizada no cache. E por fim, se você remover a entidade do banco, através do entity manager, a entidade será removida do cache.

O JBoss Cache permite que você especifique timeouts para as entidades no cache. Entidades não acessadas dentro de um certo período de tempo são removidas do cache para liberar memória. Além de tudo isto, o JBoss Cache suporta clustering. Se você está dentro de um cluster, e o cache é atualizado, mudanças em entradas de um nó serão replicadas para as entradas correspondentes nos outros nós do cluster.

Continue a leitura...

quarta-feira, 2 de setembro de 2009

Redimencionamento de disco virtual no VirtualBox

Nenhum comentário:

Eu precisei de mais espaço na máquina virtual (VM) que utilizo para rodar o Ubuntu no desktop Windows de um de meus contratantes, através do VirtualBox (entenda porque eu o utilizo nestes casos). Ela tinha 4.5 GB de disco e eu queria expandí-la para 6 GB. Apesar da existência do comando VBoxManage clonehd, não existe uma opção que possa ser utilizada para redimencionar um disco existente. Sendo assim, a alternativa que tomei para solucionar este problema foi criar um novo disco virtual (com os 6 GB) e copiar todo o conteúdo do disco existente para este novo. Eu resolvi este problema através dos procedimentos abaixo:

  1. Criei o novo disco e chamei-o de temp.vdi. Inclui este disco como "Primário Slave", na VM que eu queria configurar:

  2. Baixei um ISO do GParted LiveCD que é pequeno e que me atenderia bem nas nas tarefas de redimensionamento de HD que eu precisaria, rodando os comandos fdisk e dd e gparted. Eu também poderia utilizar outros LiveCDs alternativos como o SystemRescueCD ou o Ubuntu. Configurei a VM para dar boot a partir deste ISO e então, iniciei a VM. Abri um terminal e, como root, executei o comando fdisk -l para determinar as partições. Copiei a partição existente para a nova através do comando dd if=/dev/hda of=/dev/hdb, levando em consideração a informação obtida como resultado comando fdisk -l. Fui fazer algo mais importante pois este processo iria demorar bastante;

  3. Após a finalização do dd, desliguei a VM. Antes de religá-la, tornei o disco temp.vdi "Primário Master", removendo o disco anterior da configuração. Religuei a VM novamente dando boot, novamente, pelo LiveCD. Acionei o gparted para redimensionar a partição existente ao tamanho máximo do novo disco:

  4. Desliguei a VM após redimensionar a partição e dei boot novamente, desta vez pelo HD ao invés de pelo LiveCD. Abri um shell no Ubuntu, e notei que ele ainda não havia reconhecido os 6GB. Faltava só um resize2fs /dev/sda1 para completar esta tarefa:

  5. Pronto... Agora estava com espaço que precisava!

Referências:

terça-feira, 1 de setembro de 2009

Sobre a certificação JBCAA

Nenhum comentário:

A Red Hat anunciou hoje (primeiro dia do JBoss World) a certificação JBoss Certified Application Administrator (JBCAA). Ela poderá ser obtida globalmente, segundo o anúncio, a partir do dia 1 de outubro.

Sob o meu ponto de vista, se o conteúdo exigido na prova for o apresentando no treinamento JB336, a certificação passará a cobrar então, aspectos relativos a implantação de aplicações em produção que trabalham, por exemplo, com o jBPM, o JBoss Rules e o SOA-P. Além disto, deverá cobrir assuntos relacionados ao slimming do JBoss EAP, a identificação e o entendimento de potenciais problemas e as melhores práticas para a solução destes, a monitoração de problemas de performance através do JON, a determinação das necessidades apropriadas para alta disponibilidade, escalabilidade e tolerância a falhas, a implantação de aplicações em clusters e a configuração do mod_jk para o balanceamento de carga. Também deverá ser cobrado um entendimento sobre o uso de SOA e de produtos JBoss para este mundo: JBoss Enterprise Portal Platform (EPP), JBoss Service Oriented Architecture Platform (SOA-P) e JBoss Enterprise Service Bus (ESB).

O anúncio informa que é recomendável que a pessoa tenha feito o treinamento JB336 para se preparar para a prova. Para mim, não está claro ainda, se isto é mesmo apenas recomendável ou, se é obrigatório, como era antes. Quando obtive minhas certificações em JBoss, a política da Red Hat podava que elas pudessem ser obtidas por profissionais capazes de empenhar seu tempo num estudo próprio e que não tivessem grana para a participação num treinamento tão caro ($2.498 por pessoa). Pagar por um treinamento para obter o direito a testar seus conhecimentos sob determinados assuntos não é, na minha opinião, uma boa política. Mesmo acreditando que a maioria das certificações não comprovam grande experiência e que elas apenas indicam que a pessoa estudou previamente determinados assuntos, a obtenção de certificações como as da Sun e/ou IBM, por exemplo, demonstram o respeito destas empresas pela classe dos profissionais autodidatas e por aqueles que não desejam (ou possam) fazer os "treinamentos oficiais", por qualquer motivo que seja. Certificações como, por exemplo, as promovidas pelo LPI sempre foram, ao meu ver, muito mais democráticas do que as da Red Hat pois nunca exigiram que você fizesse um curso, neste ou naquele lugar, antes de testar seus conhecimentos.

Mesmo já possuindo duas certificações em JBoss (Certified JBoss Administrator e Certified JBoss Developer), eu pretendo fazer esta prova e gostaria, sinceramente, que esta nova certificação tivesse um enfoque mais prático, real, e que avaliasse muito melhor a experiência das pessoas no cotidiano da administração do JBoss AS e das aplicações implantadas nele. Caso contrário, ela será apenas mais uma a entrar para o ramo do "negócio das certificações" que funciona mais ou menos assim: a Red Hat, cujo negócio é vender subscrições de seus produtos, faz parcerias com empresas que ela certifica. Algumas destas empresas "certificadas" fazem lobby para que editais e licitações para serviços no governo começem a exigir que os serviços tenham que ser realizados apenas por "profissionais certificados". E, este tipo de negócio é simplesmente nocivo pois, muitas vezes, é tomado erroneamente pelo contratante, como um fator determinante para a escolha do prestador de serviço. Lembrando que profissionais certificados não são, necessariamente, os que detem maior experiência prática, este tipo de exigência em editais deveria ter seu peso mas não poderia, de forma alguma, ser conclusivo e, deveria ser apenas somado a vivência prática do profissional em situações reais. Felizmente, contratações de serviços em empresas não públicas avaliam muito bem esta última questão e vários órgãos do governo já estão atentos a este fato.