8

Selecionando um item em um ComboBox II

Há um tempo atrás eu escrevi um artigo sobre como selecionar um item em um ComboBox no Flex baseado no label do combo. Naquela época, eu ainda estava aprendendo algumas coisas. Como eu já aprendi um pouco, resolvi fazer uma versão mais decente daquele exemplo.

Essa aplicação faz exatamente a mesma coisa: tem um combo com uma relação de frutas e um botão que, ao ser clicado, deverá selecionar no combo o item cujo label é “Uva”. Coisa simples.

Read More

Flagras e falhas pelo GoogleMaps (StreetView)

Quem usa o Google Maps já sabe que ele tem uma nova funcionalidade, disponível há algum tempo e somente em alguns lugares específicos (como nos EUA, por exemplo), chamada Stree View (Vista da rua). Usando este recurso, é possível ver uma imagem panorâmica do local, como se você estivesse na rua.

Até aí, nada de (tão) novo. Mas o divertido é que aparecem algumas falhas (algumas pessoas aparecerem sem cabeça ou com metade dela, por exemplo) e uns flagras (como um cidadão saindo de uma boate). O blog Mashable publicou um artigo mostrando os 15 melhores flagras e falhas que algumas pessoas encontraram no Google Maps. Vale a pena conferir.

Stéphane Grapelli – Exemplo de paixão pelo que faz

Stéphane Grapelli foi um grande violinista francês. Ele tocava um jazz fenomenal. Não é fácil tocar jazz no violino (eu aprendi a tirar umas notas no instrumento), pelo menos do jeito que ele fazia.

Lendo um artigo sobre ele na Wikipedia, encontrei a seguinte frase que ele disse:

“Improvisation, it is a mystery. You can write a book about it, but by the end no one still knows what it is. When I improvise and I’m in good form, I’m like somebody half sleeping. I even forget that there are people in front of me. Great improvisers are like priests, they are thinking only of their God.”

Stéphani Grapelli em 1991 (fonte: Wikipedia)Vou tentar traduzir:

“Improvisação, isto é um mistério. Você pode até escrever um livro sobre improvisação, mas no final das contas ninguém ainda saberá o que é isso. Quando eu improviso, eu me sinto bem, me sinto como alguém meio adormecido. Eu até esqueço que existem pessoas na minha frente. Ótimos improvisadores são como sacerdotes, eles permanecem pensando somente em Deus.”

Veja a que ponto chega o profissionalismo da pessoa: durante uma apresentação, cujo objetivo principal é mostrar para as pessoas o seu talento e ser reconhecido (e remunerado) por isso, ele esquece que as pessoas estão lá! Pura paixão pelo que faz. Paixão esta que faz a pessoa chegar a um nível de concentração admirável. Um exemplo a ser seguido.

1

“Não me diga que não pode …”

É característica típica do ser humano ficar reclamando de tudo e de todos e ter uma atitude passiva frente aos obstáculos. Mas algumas vezes encontramos pelo caminho exemplos de pessoas que, normalmente, seriam aqueles que teriam o direito de reclamar da vida … mas fazem exatamente o contrário!

Um exemplo disto é Tony Meléndez, um cantor e violonista que nasceu sem os braços, porque sua mãe tomou um certo medicamento quando estava gestante. E ele é completamente independente, e espalha pelo mundo a mensagem: “Não me digam que não podem … tem um mundo que só está esperando você dizer SIM.”

Veja o vídeo. É revigorante.

https://www.youtube.com/watch?v=dvFMBXNcXcU

Gerenciamento do tempo

Todo mundo que tem responsabilidades a serem cumpridas lidam com um mesmo problema – o gerenciamento do tempo. E nós, profissionais que trabalhamos com projetos de TI, não somos diferentes. Por vezes nos sentimos escravos da nossa rotina, e qualquer descuido com as tarefas pode ser fatal – o projeto atrasa, o custo dele aumenta, o cliente fica frustrado e por aí vai …

Uma coisa é certa: quando gerenciamos o nosso tempo, é praticamente impossível usar a desculpa de que não fizemos algo porque não tivemos tempo. Toda instância da classe SerHumano possui 24 horas disponíveis por dia. Aqueles que sempre conseguem ser mais produtivos não têm mais tempo do que os menos produtivos, eles têm exatamente o mesmo estoque disponível que os outros, eles simplesmente gerenciam melhor o tempo!

Pensando nisso, me lembrei de uma apostila que usei quando estava no curso técnico (fiz Técnico em Administração), que falava exatamente sobre isso. E para ilustrar a situação, no rodapé da apostila tinha um relógio daqueles animados que têm pernas, braços e um sorriso bem grande, que aparecia diversas vezes. Da primeira vez, ele estava sorrindo e carregando um pequeno “Sim” nas costas. Na segunda vez, o “Sim” era maior. E o “Sim” ia crescendo até o momento que literalmente esmagava o relógio.

Moral da história: saber dizer não é um dos fatores principais para se gerenciar o tempo. Aquele novo cliente que vem com um projeto enorme, que você sabe que vai ocupar o “pouco” espaço que está livre na tua agenda, pode ser que seja melhor você dizer um belo “Não” pra ele do que assumir mais uma responsabilidade. Tudo vai depender da forma como você gerencia o seu tempo.

Ao invés de ficar aqui confabulando sobre como gerenciar melhor o tempo, preferi linkar um post do Bruno Russo, que fez um curso específico de gerenciamento do tempo, e pode falar sobre o assunto melhor que eu :).

Saber a hora certa de dizer um “não” pode ser mais importante do que dominar qualquer linguagem ou framework, pode acreditar!

Ouça músicas online gratuitamente (ou não)

Quem participa de fóruns e listas de discussão sabe que sempre descobrimos umas coisas legais (principalmente nos “off-topics” 🙂 ). Hoje eu conheci, através da FlexDev, um site onde você pode ouvir músicas gratuitamente.

Até aí, nenhuma novidade. Mas o que me chamou a atenção foi a forma como você escolhe as músicas que vai ouvir: é como uma rádio, onde você não escolhe exatamente quais músicas vai ouvir, mas você escolhe pelo humor da música, ou pelo andamento, através de um plano cartesiano, onde você clica em uma posição indicando a relação “calma”/”energética” X “sombria”/”positiva”. Depois de clicar no plano indicando o tipo de música que quer ouvir, o site cria uma espécie de grafo (de um caminho só, mas não deixa de ser um grafo!) mostrando a seqüência de músicas que serão executadas, todas seguindo o critério que você definiu. Ah, e também é possível filtrar por estilo e por época da música. Um sistema muito bem feito.Read More

Visões de um projeto

Para tirar (mais uma vez) as teias de aranha do blog, estou postando mais uma inutilidade (mais uma vez). É uma espécie de sátira que mostra, de forma lúdica, como um projeto de desenvolvimento de software é visto por cada um dos envolvidos. Qualquer semelhança entre essa sátira e a realidade é mera coincidência …

Prometo que vou exercitar um pouco mais a minha disciplina para não deixar os aracnídeos tomarem conta do blog novamente … 😉

9

Recuperando dados de HD formatado

Alguns dias atrás, precisei recuperar os dados de um HD que foi formatado por acidente. O que aconteceu foi o seguinte: orientei um amigo meu por telefone a colocar o CD do Windows no drive e dar um boot através dele, para usar as ferramentas de recuperação e corrigir um problema que impedia o sistema de carregar normalmente. Acontece que o CD que ele tinha era aqueles CDs de reinstalação do sistema que acompanham esses computadores que compramos em lojas – o dele é da Semp Toshiba.

A questão é que sai mais barato pra essas empresas montar um CD que já apaga tudo o que tem no micro e reconfigura tudo sem a necessidade de o usuário leigo ligar para o suporte da empresa, do que ir passo a passo, confirmando se o usuário deseja realmente excluir a partição, e depois confirma de novo, e de novo e por aí vai. O usuário leigo preferiria ligar para o suporte da empresa, gerando assim um “custo” pra ela.

Foi isso o que aconteceu. O utilitário formatou o disco e nem pediu permissão. Acho que não preciso comentar que não existia um backup dos dados, preciso?

Depois de algumas buscas na grande rede encontrei um programa excelente para recuperação de dados: GetDataBack, da Runtime. Através de um wizard de três passos ele recupera os dados do HD formatado. Custa US$ 79, o que pode significar praticamente nada, perto da importância dos dados a serem recuperados. A vantagem é que você pode baixar uma versão de demonstração, que mostra todos os dados que você pode recuperar. Se você ver que o programa vai realmente conseguir recuperar os dados que você precisa, aí você pode pagar pelo programa e ter seus dados de volta. Se você ver que ele não vai conseguir recuperar os dados, não precisa pagar nada, a não ser que você tenha dinheiro sobrando e queira ajudar organizações estrangeiras. 😉

Antes de encontrar o GetDataBack eu também tentei o R-Studio, mas não funcionou pro meu caso – ele só mostrou os arquivos que o programa de instalação do Windows já tinha copiado no momento do incidente, e não os dados que haviam sido perdidos.

Em tempo: recuperei quase 10GB de dados com sucesso e evitei de deixar um amigo chateado. 🙂

Essa vida moderna …

Como não estou com tempo para postar algo aproveitável (leia-se técnico, instrutivo) no blog, permitam-me aproveitar uns minutos de folga para relatar minha satisfação com essa vida dita “moderna”…

Por motivos alheios à minha vontade, eu seria obrigado a ficar com o carro parado em frente do hospital onde minha esposa trabalha, aguardando sua saída por um tempo incerto – de duas a quatro horas. Uma rua escura, semi-deserta … não estava muito a fim … resolvi ir para um shopping que tem próximo do hospital – apesar de não querer gastar míseros R$ 4,00 por pouco mais de uma hora de estacionamento. Relutei até que não resisti mais, fui.

Entrando no estacionamento do shopping, vi que eles tinham um serviço de lava-rápido – o que veio a calhar, pois meu carro estava quase em estado de putrefação, de tanta sujeira, e eu sem tempo pra levar num lava-rápido. Sou do tipo que não curte – leia-se “odeia” – ficar perdendo muito tempo – leia-se “minutos” – em filas, especialmente em bancos ou lava-rápidos… esse serviço cai como uma luva: eles lavam o teu carro enquanto você faz compras.

Excelente, deixei o carro pra lavar e desci pelo elevador até o piso da livraria Siciliano – a única loja deste shopping que serve para algo pra mim. Qual não foi minha surpresa quando entrei no elevador e vi um anúncio que dizia que aqui tem acesso a rede wireless – oba!, estou em casa.

Entrei na loja, abri o notebook e conectei na rede wi-fi através da Vex – ainda bem que meu plano de banda larga me dá uma franquia de 2hs/mês, na faixa. Eu nunca tinha usado tal serviço, afinal de contas quando vou ao shopping – assim como todos os outros seres do sexo masculino -, já sei o que quero, entro compro e vou embora. Mas gostei. Bom quando somos obrigados a ficar em um lugar desses.

Conectei rapidamente, resolvi um problema no site de um cliente, chequei os e-mails da empresa, iniciei um novo projeto que estava esperando por um “tempo livre”, dei uma estudada rápida em um curso (EAD) que estou fazendo e – acreditem – atualizei o meu blog!

Enfim, uma noite excelente para quem não gosta de perder tempo – e teria que ficar um bom tempo na rua, à mercê da violência urbana de São Paulo, no frio, e o pior: sem acesso à internet.

Acho que meu carro ficou pronto. Preciso ir.

3

Instalando o Rails 2 no Debian

Para instalar o Rails no Debian, não poderia ser mais fácil:

apt-get install ruby
apt-get install rails

Pois é, fazendo isso ele já instala o ruby, o rails e tudo mais que for necessário … daí é só sair usando … por causa do princípio da coesão 🙂 não mostrarei aqui como é esse “sair usando” … isso é assunto para um outro post …

Atualmente, os comandos acima instalarão o rails 1.8, o que provavelmente não é o desejado (enquanto escrevo este post, a versão atual é a 2.1.0). Para atualizar o rails para a última versão disponível, execute:

gem install rails -y

Pode ser que você se depare com uma mensagem de erro assim ao executar o comando acima: “Uninitialized constant Gem::GemRunner (NameError)”. Para resolver este problema, altere o arquivo /usr/bin/gem e adicione o seguinte (depois de “require ‘rubygems'”): require ‘rubygems/gem_runner’.

Pronto, agora você pode começar a usar sua última versão do Rails.

Bom divertimento! 😉

Edit @ 05jun08

Você também precisará instalar outros pacotes, além dos citados acima:

apt-get install libopenssl-ruby1.8
apt-get install ruby1.8-dev
apt-get install libmysqlclient15-dev