terça-feira, 31 de janeiro de 2012

Continuo aqui. E extremamente feliz em estar vivo!


Tudo começou com uma "torção" no joelho, há 16 dias - um domingo. Parecia algo mais sério, pois já havia torcido o joelho antes e a dor desta vez foi algo bem maior - comparável ao evento de quebra de tornozelo que tive. Gelo e anti-inflamatório. Agendei uma consulta com um ortopedista renomado em cirurgias do joelho pois desta vez acreditei que teria que opera-lo. A consulta ficou somente para a segunda-feira da próxima semana.

Durante estes oito dias caminhei com muletas e minha panturrilha estava bastante inchada, e dolorida. A sensação de dor parecia com uma cãimbra bem forte; motivo pelo qual tomei muita água de coco e comi várias bananas. A dor passou e com isso concluí erroneamente que tratava-se de cãimbras mesmo.

Já na segunda-feira da semana seguinte, fui ao ortopedista. Tirei um raio-x e nada de fratura. Como o joelho estava bastante dolorido, tive que fazer uma ressonância magnética. Citei as dores e o inchaço na panturrilha ao ortopedista, que prontamente respondeu que não era normal e que talvez devesse ir consultar-me com um angiologista (especialidade que trata do sistema vascular).

Realizei o exame de ressonância magnética, e como o laudo ficaria pronto na quarta-feira, decidi que o esperaria para então decidir o que fazer. Com o laudo na mão, agendei o retorno no ortopedista, que ficou somente para a terça-feira da semana seguinte. Não houve tempo.

No dia seguinte acordei com a panturrilha e o tornozelo bastante inchados. Tentei trabalhar (sentado), mas as dores tornaram-se insuportáveis. Chamei minha esposa, que vendo a situação, imediatamente tomou a atitude de levar-me à emergência do pronto-socorro. Antes disso resolvemos ligar para o ortopedista para tentar obter alguma orientação. Infelizmente ele estava indisponível, em cirurgia. Minha esposa explicou a situação à secretária, que ficou de dar um retorno. Nem cinco minutos depois, o ortopedista já ligava de volta.

Ao explicar minha situação, o ortopedista solicitou que eu fosse com urgência a um angiologista. Como não conhecia nenhum, solicitei uma indicação. Ele me indicou uma clínica com vários angiologistas, e pediu para que eu demandasse uma consulta com urgência, e que informasse que seria a pedido dele. Fui prontamente atendido e percorremos o centro de Maringá numa quinta-feira chuvosa ao meio-dia (o que obviamente demorou mais do que gostaríamos) rumo à clínica.

Chegando na clínica o angiologista me atendeu rapidamente e num exame clínico explicou que talvez não fosse uma trombose (a situação temida), mas mesmo assim solicitou um ecodoppler (ultrassom) de emergência.

Mais uma jornada rumo à outra clínica. Fui rapidamente atendido para o exame. Inicio o exame e o médico radiologista em silêncio e de cara fechada. Finalizado o procedimento, pergunto se havia algo de estranho. É quando ouço a resposta: "Você está com uma trombose grave, vai levar este exame para o seu angiologista agora pois ele vai lhe internar no hospital com urgência."

Estranhei a confirmação da trombose, pois sempre imaginei como doença de mulheres idosas, obesas, diabéticas etc. Enquanto minha esposa levava o exame ao angiologista e eu aguardava dentro do carro, pude procurar no Google através do meu iPhone sobre "trombose venosa profunda". Foi aí que percebi a minha situação: "Ih, f*d*u".

Não sei quantas veias tem-se na perna, mas eu estava com quatro veias (das grandes, suponho) com trombos (coágulos) impedindo a passagem de sangue. Estava tudo coagulado da virilha até o tornozelo. Ou seja, situação gravíssima com risco de morte iminente. Pelo que o Google me alertou, a complicação era a possibilidade de uma embolia pulmonar a qualquer momento. Esta situação costuma ser fatal.

Durante a rápida viagem da clínica até o hospital, minha esposa tentou "distrair-me" falando das sequelas que eu teria na perna graças à trombose. Mas eu já sabia do risco que estava correndo. E pensei (ironicamente): "Que bom, se eu sobreviver, minha perna vai ficar uma b*s*a". Contudo, um problema de cada vez. Primeiro resolvi pensar em viver pra contar a estória; o resto fica pra depois.

Chegando no Hospital Paraná, havia uma lista de internação. Você sabe que o seu caso é grave quando você "fura" a fila e é internado antes de todo mundo. Maravilha...

Mal entrei no quarto e já iniciou a rotina (durante os próximos seis dias) de medicações. Comprimidos, injeções na veia, exames de sangue e heparina sódica (uma injeção extremamente dolorida) ao redor do umbigo. Eu não tinha muita restrições quanto às injeções, mas essa injeção ao redor do umbigo mudou minha opinião...

A boa notícia é que de um dia para o outro, graças à medicação, minha perna desinchou bastante. Quando dei entrada no hospital minha panturrilha estava da largura da coxa, e meu tornozelo estava da largura da panturrilha. Meus dedos estavam todos "unidos". Para critério de comparação: eu costumo calçar um Croc's bem larguinho para ficar confortável. Deve ter pelo menos 2cm de sobra. Meu pé estava tão inchado que não entrava no Croc's.

A medicação leva de 4 a 5 dias para fazer o efeito. Durante este período meu risco de morte continuava alto, mas diminuía à medida em que o tempo passava. Meu médico mesmo relatou: você teve muita sorte. "A sorte te protegeu até agora". Eu provavelmente acredito que foi outra coisa. Mas não deixa de ser muita "sorte" o fato de não ter morrido.

No 5.o dia de internação, quando já esperava ter alta, acordei meio "indisposto". Talvez culpa das bolachinhas amanteigadas que a namorada do meu irmão trouxe para me "alegrar". Mea culpa. Eu adoro doces, e depois de quase uma semana de abstinência eu acabei comendo praticamente a caixa inteira sozinho durante a noite. Relatei minha indisposição à enfermeira, o que bastou para ligarem o "alerta vermelho". Oxigênio e em menos de 5 minutos o médico já estava do meu lado fazendo perguntas e a enfermeira colhendo exames. Alarme falso. O exame mostrou que provavelmente era só uma indisposição estomacal. Nada de embolia.

Fiquei sob "vigilância" dos médicos e enfermeiros durante todos estes dias. Mas sou muito agraciado por poder estar vivo ainda para poder relatar esta estória. Hoje, terça-feira, tive alta. Meu risco de morte já deve estar próximo de somente 1%. Estou bastante cansado, continuo tendo que tomar comprimidos e a injeção dolorida, tenho que usar uma meia cinta-liga de alta compressão, minha perna ainda dói e não posso ficar de pé ou andando por aí. Mas estou extremamente feliz! Um grande agradecimento a todos os amigos que ficaram preocupados. Já deixo também o alerta: se sentirem dores na panturrilha sem muita explicação e um certo inchaço, corram para o angiologista antes que seja tarde! Pra mim, quase foi tarde demais.

sexta-feira, 20 de janeiro de 2012

Vídeo do Agile Tour 2011: Tirando o código a limpo



Obrigado ao Juliano Ribeiro pela gravação, codificação e disponibilização no YouTube!

Realmente acho que tenho que melhorar bastante como palestrante, mas tenham certeza de que a minha intenção sempre é a melhor possível.

quinta-feira, 19 de janeiro de 2012

Como assinar uma applet ou jar


Muitas vezes precisamos assinar o jar de uma applet para que o Security Manager da JVM permita a execução de determinadas ações fora da sandbox. Não é nada difícil, mas pra quem precisa de uma "receita de bolo", apresento duas opções: utilizando a linha de comando ou através do maven.

Através da linha de comando:

Através do maven, gere primeiro a sua keystore com o 1.o comando do gist acima no raiz do seu projeto. Depois pode executar o package normalmente:

sexta-feira, 13 de janeiro de 2012

Nossa maltratada e querida Língua Portuguesa


Gostaria de refletir um pouco sobre um "sofrimento" que me atormenta todos os dias. Sou uma pessoa da área tecnológica, e o aprendizado que tive da nossa língua pátria, o português, resume-se ao conteúdo acumulado até o ensino médio. Creio que isto me coloca no mesmo patamar que boa parte das pessoas.

O meu "tormento" é causado pela enorme (e infelizmente exponencialmente crescente) quantidade de material escrito de forma impressionantemente errada. Isto me faz pensar se o problema está em mim, que primo pela forma correta e "sofro" quando vejo essa infinidade de erros de grafia e concordância; ou se o problema está nos "outros" que tiveram o mesmo nível de educação que eu, e escrevem muito mal. Notem que quando digo "tiveram o mesmo nível de educação que eu" (que não é muito, como já apresentei) já excluo a parcela das pessoas com menor nível de instrução, já que não é razoável cobrar de alguém algo que não lhe foi ensinado.

Já abro aqui uma exceção e digo que considero normal o "internetiquês" utilizado em rápidas conversas e interações. O que me preocupa não são os "vcs", "t+" e "tbm"; mas sim o restante das palavras.

É um consenso que consideramos o nível de educação decrescente nos últimos anos. Mas vejo também pessoas mais velhas escrevendo errado (muitos professores, inclusive). A minha dúvida é: o aprendizado do português tem decaído nos últimos anos? Ou é a Internet que permite que esse enorme contingente de incultos se expresse de modo errado? Pois é possível que as pessoas escrevam realmente mal (desde sempre), mas como antes não era possível elas massificarem esta ignorância, simplesmente não se percebia.

A expressão "nem escrever direito sabe, imagine o resto" tem validade? Escrever errado invalida o argumento de alguém? É necessário escrever corretamente? Ou a forma correta da nossa língua virou item de museu?

Vale uma reflexão? Espero que sim...

terça-feira, 3 de janeiro de 2012

A hora e vez do NOSQL (Not Only SQL): Persistência Poliglota

A primeira vez que me deparei com o termo NoSQL imaginei que ele se referia a "No SQL": nada de SQL, uma ruptura com o nosso modo relacional de pensar em persistência. Como todo conceito revolucionário, causa muita resistência na maioria das pessoas por trazê-las fora da "zona de conforto".

Uma releitura necessária sobre o assunto me trouxe o acrônimo NOSQL como "Not Only SQL": não somente SQL. Esta sim, uma definição muito mais palatável e apropriada sobre o assunto. O "Not Only" pressupõe a convivência (pacífica, espero) entre tecnologias consolidadas e a inovação. Chamo de inovação, mas vale enfatizar que estas soluções já encontram-se num nível bastante avançado de maturidade.

NOSQL não é a solução para todos os problemas. Mas trouxe à luz da discussão uma máxima da computação que é "utilizar a ferramenta correta para o problema correto". Não consegui rastrear o autor original, mas esta citação é uma de minhas favoritas:
"A good algorithm is like a sharp knife - it does exactly what it is supposed to do with a minimum amount of applied effort. Using the wrong algorithm to solve a problem is trying to cut a steak with a screwdriver: you may eventually get a digestible result, but you will expend considerable more effort than necessary, and the result is unlikely to be aesthetically pleasing."
Ou numa tradução literal:
"Um bom algoritmo é como uma faca afiada - faz exatamente o que deve ser feito com uma quantidade mínima de esforço. Utilizar o algoritmo errado para resolver um problema é como tentar cortar um bife com uma chave de fenda: você eventualmente pode conseguir um resultado digerível, mas vai gastar muito mais esforço do que o necessário, e o resultado não será esteticamente agradável".
Como todo conceito "novo" muita coisa vai mudar antes de se consolidar, mas baseado na minha experiência no assunto, o que eu posso recomendar é:
  • Se os seus dados são homogêneos, com poucos relacionamentos entre entidades e numa grande quantidade: use um banco de dados. O modelo relacional foi feito pra isso.
  • Se os seus dados possuem muita variação entre um e outro (o que num banco de dados implicaria em muitas colunas vazias ou em muitos relacionamentos com outras tabelas): use uma base de documentos como o MongoDB.
  • Se os seus dados possuem muitos relacionamentos com outras entidades (com possível necessidade de geolocalização): use uma base de grafos como o Neo4j.
  • Se os seus dados são do tipo chave-valor (key-value) e você precisa computar grandes quantidades (voláteis) desses dados com alto desempenho: use uma base de dados chave-valor em memória como o Redis.
  • Se os seus dados são do tipo chave-valor (key-value) e você precisa persisti-los: use uma base de dados chave-valor persistente como o Riak.
Farei uma menção honrosa para as situações em que você precisa de uma base de dados confiável, de altíssimo desempenho e transacional: use o Prevayler ou o Disruptor para prevalência de objetos.

Vale ressaltar que a persistência poliglota pressupõe a coexistência destas diferentes bases de dados na mesma aplicação. Avalie e considere a utilização de mais de uma base de dados se for adequada ao seu problema. Mas não caia na tentação de "vou usar o XXX porque é bacana". É o mesmo pecado de se utilizar um Design Pattern só porque ele é "bonito". Tem que resolver um problema.

Todo essa excitação ao redor do NOSQL também está relacionada, claro, ao conceito de BigData. Todas estas bases de dados alternativas foram construídas com a premissa de tratar imensos volumes de dados que bancos de dados relacionais não estão preparados para lidar.

Avaliem todas estas novas alternativas e estejam preparados para, no problema certo, utilizarem a base de dados certa. Boa sorte!