quarta-feira, abril 23, 2008

Padre Adelir de Carli: Candidato a um Darwin Award?

Antes de mais nada, gostaria de esclarecer que torço para o padre Adelir de Carli ser encontrado são e salvo. Mas, se o pior acontecer, ficarei pensando se não é o caso de nominá-lo para um Darwin Award.

Para quem não conhece, os Darwin Awards são desprestigiosos prêmios dados a "pessoas que contribuem para a evolução da espécie humana se retirando do pool de genes". Em português claro, são pessoas que de uma forma estúpida se matam ou destroem a sua capacidade reprodutiva.

Pelo que leio nos jornais, o padre parece ser uma boa pessoa. Sua principal motivação para a aventura que pode ter resultado na sua morte era nobre: chamar a atenção para o trabalho comunitário do qual ele faz parte (Pastoral Rodoviária).

Por outro lado, alguns fatos relatados me levam a suspeitar de seu bom senso:
  • Tentar quebrar um recorde de 19 horas voando com balões de festa cheio de gás hélio.
  • Fazer isto com um mínimo de equipamentos de segurança (por exemplo, depender de um celular para se comunicar com a terra) e sem uma equipe de apoio (pelo que li até agora).
  • Insistir em partir com condições climáticas desfavoráveis
Não se pode dizer que ele seja totalmente irresponsável: estava usando um roupa térmica, capacete e tinha um paraquedas. Segundo alguns relatos (mas não todos) ele estaria sentado em uma cadeira flutuante.

Fico portanto em dúvida se ele se encaixaria nos requisitos para o prêmio. E torço para que se safe desta, o que certamente o desqualifica.

Tirando Proveito de Pendrives

Os "pendrives" (mais precisamente USB Flash Drive) já exitem a bastante tempo e conseguiram desbancar os floppys como forma de transportar arquivos entre micros.

O meu primeiro pendrive foi um JumpDrive da Lexar Media, escolhido pelo fato de poder ser acoplado a um tocador de MP3 da mesma marca, comprado em 2004. Devido a restrições orçamentárias, comprei o modelo de 256MBytes (custou US$42 nos EUA).

Embora funcionasse perfeitamente, a sua 'baixa' capacidade me levava a usar com frequência CDs para mover arquivos entre o trabalho e casa. Além da fragilidade durante o transporte, os CDs R/W são bem lentos para gravar (e não aguentam muitos meses de serviço); CD-R é mais rápido mas o resultado são literalmente pilhas de acumulados ao longo dos anos.

Por este motivo, resolvi comprar um novo pendrive, com um pouco mais de capacidade. Acabei comprando um DataTraveler de 1GB da Kingston, que é um modelo "entry-level" (continuo com restrições orçamentárias). Custou R$32 na Kalunga (e provavelmente deve ser achado por bem menos por quem não tiver restrições morais em não pagar impostos). Até agora (cerca de uma semana) o DataTraveler não decepcionou nem surpreendeu.

Este post, entretanto, não visa falar de hardware mas sim de software. Motivado pelos comentários em um post no efetividade.net, resolvi começara a usar alguns utilitários para tirar maior proveito do pendrive.

TrueCrypt

Uma das preocupações de quem usa pendrive é a possibilidade de perdê-lo e as informações armazenadas cairem em mãos erradas. O TrueCrypt é uma forma simples de proteger os dados em um pendrive.

O TrueCrypt é um software bastante completo, com inúmeras opções e usos, no roteiro abaixo uso apenas um mínimo dos seus recursos. Recomendo fortemente ler a documentação que está no site.

O roteiro abaixo mostra como usar o TrueCrypt de forma simples (sob o Windows):
  • Baixe o Setup do site
  • Execute o setup, aceite o termo de licenciamento, selecione a opção Extract e escolha um diretório no pendrive.
  • Execute o TrueCrypt.exe do diretório onde você o extraiu e clique em 'Create Volume'.
  • Escolha 'Create a file container', 'Standard TrueCrypt Volume', selecione um diretório do pendrive (pode ser o raiz) e de um nome discreto ao arquivo ('dump', 'danificado', 'high score', etc). Aceite os defaults nas opções e escolha um tamanho apropriado para o seu volume criptografado (por exemplo 100M). Escolha com carinho uma senha, qualquer coisa com menos de 20 caracteres resulta em um Warning. Fique movendo o mouse em cima da tela seguinte por vário segundos, clique em Format, aguarde e clique em Exit. Pronto, você criou um volume criptografado!
  • Para colocar dados no volume, selecione o arquivo na tela inicial (clique em Select File), selecione uma unidade na lista no alto da tela, clique em Mount e forneça a senha. A partir daí basta copiar os arquivos para a unidade para eles serem salvos criptografados. Quando terminar, clique em Dismount.
  • Para acessar o volume criptografado em outra máquina, basta colocar o pendrive, executar o TrueCrypt.exe e montar o volume.
Repetindo, o TrueCrypt tem muito mais recursos. Estudo o manual e selecione os que forem mais apropriados para o seu uso.

PortableApps

O 'pulo do gato' no procedimento descrito acima é não precisar instalar o TrueCript no micro, basta ter os arquivos necessários em um diretório do pendrive. Se você gostou desta idéia, você vai gostar de PortableApps.

A idéia de PortableApps é fornecer versões de software livre que podem ser rodadas diretamente de uma unidade removível, não necessitando de instalação. Para facilitar ainda mais, existe o PortableApps Menu, que é uma expécie de Start Menu específico para estas aplicações.

Existem várias aplicações disponíveis, o roteiro abaixo é somente para dar um gostinho:
  • Baixe o instalador da Base Editon do PortableApps Suite
  • Execute o instalador e instale no diretório raiz do pendrive
  • Baxei algumas aplicações de http://portableapps.com/apps. Por exemplo, o Sudoku Portable.
  • Execute o instalador da aplicação, instalando no diretório PortableApps que foi criado na instalação da Base Edition
  • Execute StartPortableApps.exe, clique em Options e selecione Refresh App Icons
Por enquanto é isto. O meu próximo passo vai ser experimentar colocar um repositório do Mercurial no pendrive, seguindo as dicas do Caloni.

terça-feira, abril 15, 2008

Código de Barras - Código 128


A simbologia Code 128 procura corrigir as deficiências das simbologias vistas anteriormente, apresentando as seguintes características:


  • Capacidade de codificação de todo o conjunto ASCII (0x00 a 0x7F)
  • Possibilidade de codificação compacta de códigos numéricos
  • Checksum obrigatório, para maior confiabilidade
O Code 128 utiliza barras e espaços de tamanhos diversos (porém sempre múltiplos do módulo), organizados em 107 símbolos com largura de 11 módulos. O caracter correspondente a cada símbolo depende do conjunto de caracteres (subset) sendo usado. A marca de início do código indica o subset sendo utilizado inicialmente, símbolos especiais permitem alterar o subset no meio do código.

Existem 3 subsets, denominados A, B e C. O subset A permite codificar dígitos isolados, letras maiúsculas, caracteres especiais e os caracteres de controle. O subset B é semelhante ao A, porém os caracteres de controle são substituídos pelas letras minúsculas. No subset C, cada símbolo corresponde a um par de dígitos permitindo codificar números de forma compacta (como no intercalado 2de5).

Um código de barras Code 128 é composto por um Símbolo inicial (Start-A, Start-B ou Start-C), os símbolos correspondentes ao conteúdo, um símbolo com o checksum e o símbolo final (STOP) seguido de uma barra de largura dupla (poderíamos também considerar que o STOP possui largura 13 ao invés de 11).

As sequências de barra e espaços utilizadas pelo Code 128 são as seguintes (clique para ampliar):


onde '0' é um espaço e '1' é uma barra.

Um código composto de 'n' letras terá, portanto, a largura

11*(n+3)+2

11 = largura de um símbolo
3 = símbolos de início, checksum e fim
2 = barra dupla no vinal

Já um código com 'n' dígitos (n par) terá a largura 11*(n/2+3)+2 = 5,5*n + 35, o que é mais compacto que os 7*n+16 módulos do intercalado 2 de 5 sem checksum para n maior que 12. Além do checksum, o Code128 é mais seguro que o intercalado por ter marcas de início e fim.

O checksum é calculado somando-se o código do símbolo inicial aos códigos dos símbolos do conteúdo com peso 1, 2, 3, ... (da esquerda para a direita) e pegando-se o resto da divisão do total por 103.

Por exemplo, vamos considerar a codificação de DQSoft:

(104 + 1*36 + 2*49 + 3*51 + 4*79 + 5*70 + 6*84) mod 103 = 16

Quando um símbolo FNC1 é colocado logo depois do start, o conteúdo do código deve seguir uma estrutura definida. É o chamado GS1-128 (antigamente conhecido como UCC/EAN-128), que veremos no próximo post da série.

segunda-feira, abril 14, 2008

Lei 11644/08 Limita a Exigência de Experiência nas Contratações

Cortesia do vagas.com.br, recebi a notícia da assinatura pelo Presidente Lula da Lei 11.644/08, cuja integra está abaixo:

LEI Nº 11.644, DE 10 DE MARÇO DE 2008

Acrescenta art. 442-A à Consolidação das Leis do Trabalho - CLT, aprovada pelo Decreto-Lei no 5.452, de 1o de maio de 1943, impedindo a exigência de comprovação de experiência prévia por tempo superior a 6 (seis) meses.

O PRESIDENTE DA REPÚBLICA
Faço saber que o Congresso Nacional decreta e eu sanciono a seguinte Lei:
Art. 1º A Consolidação das Leis do Trabalho - CLT, aprovada pelo Decreto-Lei no 5.452, de 1º de maio de 1943, passa a vigorar acrescida do seguinte art. 442-A:

"Art. 442-A. Para fins de contratação, o empregador não exigirá do candidato a emprego comprovação de experiência prévia por tempo superior a 6 (seis) meses no mesmo tipo de atividade."

Art. 2º Esta Lei entra em vigor na data de sua publicação.

Brasília, 10 de março de 2008; 187º da Independência e 120º da República.
LUIZ INÁCIO LULA DA SILVA
Tarso Genro
José Antônio Dias Toffoli

O objetivo declarado da lei é facilitar o acesso dos jovens ao mercado de trabalho. Na minha leitura de engenheiro, a lei proibe a exigência de COMPROVAÇÃO, porém todas as repercuções (positivas e negativas) que encontrei consideram que está poibida a exigência de EXPERIÊNCIA.

Como tem sido prache com este tipo de legislação, os sindicatos e centrais estão elogiando e as empresas criticando. Minha posição pessoal é que esta é uma lei equivocada e coloco aqui minhas considerações.

VETERANOS E NOVATOS NAS EMPRESAS

Em primeiro lugar, eu acredito em equipes com diversidade de experiência. Acho igualmente inviáveis equipes compostas apenas por "sumidades" ou por "novatos". Seguindo a tradição presidencial de analogias futebolísticas, eu diria que os times bem sucedidos são normalmente aqueles que mesclam craques com os apenas esforçados e veteranos com promessas e revelações. Em uma empresa, é comum termos pessoas mais experientes orientando e formando os menos experientes.

As equipes das empresas são dinâmicas (felizmente não tanto como os planteis dos times de futebol). Um componente fundamental para o sucesso de uma empresa (e para um time) é saber contratar as pessoas certas, para manter o perfil da equipe ou para alterá-lo para se adequar a mudanças na área de atuação. Existem momentos em que se deve contratar pessoas com menos experiência e investir no seu treinamento. Em outros é necessário contratar alguém que possa produzir imediatamente, com pouca supervisão.

Além disso, é obvio que as remunerações de profissionais experientes e novatos são diferentes.

Portanto, em condições normais, veteranos e novatos não concorrem às mesmas vagas, tanto do ponto de vista das empresas como dos candidatos (pelo menos no lado dos veteranos, já que existem alguns recém formados que já se consideram - com ou sem razão - melhores que profissionais com muito mais experiência).

COMO OBTER EXPERIÊNCIA SE 'TODAS' AS VAGAS EXIGEM EXPERIÊNCIA?

Esta é uma pergunta ouvida com frequência.

Se realmente todas as vagas exigem experiência, isto indica uma situação em que um grupo restrito de profissionais experientes se alternam nas vagas e provavelmente este grupo supera a demanda do mercado. Se existissem vagas sobrando e profissionais faltando, os salários subiriam até o ponto em que as empresas investiriam na formação de novos profissionais, migrando as vagas não atendidas para vagas para pessoas com menos experiência (um resultado direto da lei da oferta e procura, ainda não emendada com sucesso por nenhum governo). Nesta situação a melhor opção para o profissional sem experiência é migrar para um campo onde exista demanda alta e falta de pessoas capacitadas.

Nos outros casos, o profissional sem experiência precisa procurar melhor as vagas. É mais comum as empresas darem destaque à procura por profissionais especializados (que são mais difíceis de encontrar). Às vezes para obter experiência é preciso ser menos seletivo nas ofertas. Como disse o Romário, não dá para ir chegando e querer sentar logo na janelinha.

QUAL SERÁ O RESULTADO PRÁTICO DA LEI?

Desconfio que boa parte das empresas vai desconhecer ou ignorar a lei. É pouco provavél que exista um esforço contínuo do governo em verificar o seu cumprimento, e a multa (segundo informações colhidas na internet) é de um salário mínimo (dobra na re-incidência) o que pode ser irrelevante frente aos demais custos de contratação.

Empresas grandes provavelmente serão mais cuidadosas no enunciado dos anúncios. Com isto um número maior de currículos de pessoas sem experiência serão recebidos e, na maioria dos casos, sumariamente descartados. Cria-se assim uma falsa expectativa para os sem experiência.

Suponhamos, entretanto, que a lei "funcione". Isto é, que as empresas contratem mais pessoas inexperientes (que vamos admitir serem jovens). Estas contratações serão para vagas anteriormente destinadas a pessoas experientes. Estaríamos, portanto, trocando o problema do jovem que não encontra trabalho pelo dos profissionais experientes que não encontram mais espaço no mercado. De tabela, as empresas provavelmente ofereciam salário menores (afinal os profissionais inexperientes exigirão treinamento e supervisão); os profissionais experientes terão que reduzir suas pretenções salariais para serem competitivos. O resultado é uma queda na massa salarial e um desperdício dos profissionais experientes.

ONDE ESTÁ O ERRO? O QUE SERIA MELHOR FAZER?

O erro está em tentar curar a febre mudando a forma de medir a temperatura. Se existe a falta de vagas para os profissionais menos experientes é porque:
  • Existem mais profissionais que vagas. É preciso aumentar a quantidade de vagas (e não tentar mudar o perfil das pessoas contratadas). Isto se faz crescendo a economia e incentivando as empresas.
  • As pessoas não saem das escolas com a formação adequada. Isto torna os recém formados mais caros, pois precisam ser re-treinados pelas empresas. A saída é melhorar o nível das escolas, deixar os currículos mais compatíveis com as exigências do mercado de trabalho e incentivar uma maior integração entre empresas e escolas*.
Sei que muita gente não vai concordar com estas opiniões. Deixe a sua nos comentários!

* Estranhamento, integração "empresa escola" é um palavrão para muitas pessoas. No livro "The HP Way" David Packard conta como no início dos anos 50 a universidade de Stanford separou uma área de seu terreno para ser alugado para laboratórios de pesquisa, escritório e até mesmo fábricas de empresas de alta tecnologia. O programa foi um sucesso e duplicado por outras universidades americanas. Aqui no Brasil experiências equivalentes ainda são vistas com muitas suspeitas.