Dicas – Usando o modo de seleção em bloco no Eclipse

O Eclipse é definitivamente uma IDE fantástica. Apesar de ser oficialmente um desenvolvedor .NET, acabo fazendo alguma outra coisa em outra linguagem, e não existe IDE mais genérica para todos os “outros” tipos de linguagem. Do Java, passando pelo PHP, indo ao ColdFusion, o Eclipse tem plugins para quase todos os frameworks.

Pois bem, tirando os elogios, um recurso muito bacana que se encontra em editores de texto tradicionais hoje em dia é o modo de seleção em bloco.  Com ele, é possível fazer seleções verticais, por exemplo selecionar as colunas de 5 a 10 nas linhas 9 a 15. É extremamente útil quando se trabalha com linhas parecidas, como pode ser visto na figura abaixo:

O problema é que às vezes, esses modos ou atalhos estão escondidos demais para até admitirmos que eles existam. No caso do Eclipse, ele pode ser ativado com o atalho Alt+Shift+A. O mesmo atalho também desativa o modo.

Dica encontrada no blog: http://www.vasanth.in/2009/03/31/eclipse-tip-block-selection-mode/

Enjoy!

Tecnologia – O que é Computação Pervasiva

Internet das coisas

Como uma nova onda na área de TI, o termo Computação Pervasiva tem instigado a imaginação dos apaixonados por tecnologia no que tange as possibilidades que este conceito propõe. Quando se pensa em pervasividade, deve-se pensar em ubiqüidade, que seria estar em todo lugar, porém, sem ser percebido. Tecnologias que foram um dia um desafio tanto na questão de acesso a estas como no seu desenvolvimento, hoje fazem parte de nossas vidas sem que sequer tenhamos consciência clara de sua existência ou participação. Hoje, ligamos o carro sem nos preocuparmos com toda a obra da engenharia por trás das peças de plástico, metal e condutores elétricos que compõem todo o conjunto que no final das contas possibilita a fácil e cômoda locomoção dos cidadãos nas ruas e avenidas das cidades. O mesmo acontece quando ativamos um interruptor em nossas casas. O único resultado que se espera desta operação é que a luz acenda, sem se preocupar com toda a infra-estrutura elétrica por trás disso, incluindo equipamentos desde transformadores, redes elétricas que percorrem quilômetros de distância até as hidroelétricas que são a matriz de toda a energia.

Nesse contexto, a computação pervasiva vem ganhando sua forma conforme a evolução das técnicas de engenharia, hardware e software se integram para produzir um resultado amigável e quase imperceptível ao usuário final, que de fato é o conceito de pervasividade. O que era uma área dominada e acessível somente a especialistas no assunto, tem se tornado uma realidade cada vez mais presente no cotidiano de todas as pessoas. Novos aparelhos tem se tornado de uso comum por todas as pessoas e profissionais de todas as áreas e as novas gerações praticamente nascem com isso, fazendo destas novas formas de interagir com a computação algo tão trivial como ter que ir a escola todos os dias.

Há todo um processo de adaptação cultural por parte dos usuários em relação ao uso da computação, mas a idéia da computação pervasiva é fazer-se tão discreta e tão familiar, que a interação com esta beira a realidade da vida das pessoas, ao ponto de sua presença ser quase imperceptível. As pessoas falarão com os aparelhos eletrônicos como se eles pudessem ouvir e entender suas instruções, e eles entenderão e executarão as ordens a eles designadas. As casas serão tão inteligentes e integradas que saberão quando alguma parte estiver defeituosa e acionarão a manutenção ou alertas necessários. O ambiente e iluminação serão adaptados ao gosto do morador. A casa será capaz de perceber qual o humor do morador para saber qual música deve tocar. Ela saberá também quando e como deve tratar o sistema de iluminação, de forma a aproveitar ao máximo a iluminação natural. A casa saberá também se é necessário regar o jardim ou dar comida ao cachorro, gato, pássaro ou qualquer que seja o animal de estimação. Isso sem falar na questão de segurança, que será automatizada ao ponto de chamar os bombeiros sem que seja necessário o morador estar em casa. Caso esteja, sistemas de iluminação de emergência e saídas de emergência serão destacadas para facilitar seu acesso. Diante de um cenário como este nas nossas casas, é possível ter uma vaga idéia do que o mundo corporativo irá dispor, desde a área estratégica até o nível operacional. Isso sem falar na evolução dos aparelhos e dispositivos móveis. Todos eles serão capazes de fornecer algum tipo de informação ou interação. Inclusive nossas roupas!

O que promoverá tamanha façanha será a aplicação de computação onde esta puder alcançar. É claro que existe um grande desafio técnico a ser vencido para que cenários como os descritos anteriormente se tornem possíveis e viáveis. Porém, vislumbram-se as casas do futuro como algo não menos parecido com o descrito e, portanto, as empresas fornecedoras de bens de consumo estão se preparando para evoluir para aquilo que os conceitos da computação pervasiva pretendem a promover.

Gigantes do hardware, software e serviços tem lançado suas projeções do que seria a realidade das pessoas diante de um cenário com a aplicação total de computação pervasiva e vislumbrando, senão já adaptando seus produtos e serviços a uma realidade iminente. Algumas parecem ter a pretensão de influenciar profundamente no formato destas novas tecnologias. Vídeos e apresentações espalhados pela rede mostram o que está por vir.

Os desafios técnicos em baixo nível vão desde e evolução dos meios de comunicação e qualidade na transmissão dos dados, falando especificamente da evolução das redes sem fio (Bluetooth, WiFi, WiMax, etc) até outros não tão triviais como sensores de todo o tipo de interação humana, desde movimentos e gestos até de temperatura e alterações de humor. Muitos desses aparelhos existem e estão em testes, mais especificamente em laboratórios, área médica, atletismo e outras específicas. Porém, já é possível visualizar a aplicação de tais aparelhos no cotidiano das pessoas. Conforme sua evolução e barateamento avançam, mais perto fica sua aplicação e acesso a usuários finais.

O progresso e a evolução rápida da tecnologia já se mostraram um fato determinante e praticamente irrefreável, assim como (e fruto de) a evolução humana. A busca por novas soluções e melhoramento das tecnologias existentes nos levará naturalmente para um futuro em que a computação se tornará completamente pervasiva, assim como aconteceu com a mecânica e a eletrônica.

No caso da computação pervasiva, não é preciso fazer a famosa pergunta “você está pronto para a computação pervasiva?”, já que, quando ela chegar, nós sequer notaremos sua presença.

O futuro

O termo já deixou de ser uma novidade no meio. Cada vez mais trabalhos e pesquisas sérias tem surgido para dar forma e novos pontos de vista sobre este conceito. Às vezes, é mencionada através de outros nomes como Computação Ubíqua. Algumas vertentes tem surgido sobre o mesmo conceito, mas com outros nomes. O mais recente é Internet das Coisas, que nada mais é do que uma implementação que promove a pervasividade da computação.

Com certeza muitos “entendimentos” ainda surgirão. Vamos esperar para ver como o mercado consumidor o absorverá.

Implementações

Para ter uma idéia do que pode se esperar de computação pervasiva, pelo menos na minha visão, seria algo parecido com o que este vídeo propõem. Economizarei texto por a apresentação fala por si.

Referências

http://www.slideshare.net/mauropin/mobilidade-e-computacao-pervasiva#

http://www.gta.ufrj.br/~rezende/cursos/eel879/trabalhos/smarthouses/introd.html

Agradecimentos

Fica aqui meu especial agradecimento ao professor Miguel Molina, que me apresentou e motivou o assunto, que agora tanto me interessa e frita boa parte de meus neurônios.
😉

Excel – A função NÃO()

Creio ser simples começar com a aplicação do Help do próprio Microsoft Excel:

A função NÃO no Excel inverte o valor do argumento. Use NÃO quando quiser ter certeza de que um valor não é igual a outro valor determinado.

Sintaxe

NÃO(lógico)

Lógico é um valor ou expressão que pode ser avaliado como VERDADEIRO ou FALSO.

Comentários

Se lógico for FALSO, NÃO retornará VERDADEIRO; se lógico for VERDADEIRO, NÃO retornará FALSO.

Exemplo

A B
1 Fórmula Descrição (resultado)
2 =NÃO(FALSO) Reverte FALSO (VERDADEIRO)
3 =NÃO(1+1=2) Reverte uma equação que é avaliada como VERDADEIRO (FALSO)

Aplicação na prática

A aplicação prática da função NÃO é apenas facilitar a leitura de uma determinada função ou código que se escreve.

Por exemplo, supondo que crie em uma célula, B1, o seguinte:

=A1<HOJE()

Que significa que está fórmula está avaliando se o conteúdo da célula A1 é menor a HOJE(), que retorna o dia de hoje. O retorno será o valor lógico VERDADEIRO ou FALSO. Supondo que déssemos a célula B1 o nome ESTA_VENCIDO, o que é um recurso do EXCEL, seria possível escrever uma fórmula desta forma:

=SE(NÃO(ESTA_VENCIDO);FACA_ISSO;FACA_AQUILO)

Ao invés de:

=SE(ESTA_VENCIDO=FALSO;FACA_ISSO;FACA_AQUILO)

Concorda que fica mais fácil de ler? Assim, já deve ser possível imaginar o que pode ser feito, ou pelo menos simplificado. Um moderno e engenhoso cálculo financeiro poderia ser abrigado em uma célula que retorna um valor lógico, permitindo em outros lugares da planilha simplesmente fazer-lhe referência de forma simples, por exemplo:

=SE(FUNCIONARIO_PODE_TIRAR_FERIAS;FACA_ISSO;FACA_AQUILO)

Onde FUNCIONARIO_PODE_TIRAR_FERIAS seria o nome de uma célula que conteria um cálculo que avaliasse a condição descrita.

Com isso em mãos, a imaginação e criatividade de cada um é o limite para o uso desta função.

Bom proveito!

Dicas – Vai uma recomendação do Twitter?

O pessoal do Google Labs (e de outros tantos Labs) não param de lançar novidades. A última e muito bacana é o Google Follow Finder. Ele analisa sua lista de seguidores e que você segue para sugerir outros “twitters” que você pode se interessar.

O algoritmo utilizado analisa os interesses “sociais” de todos os seguidores e seguidos para criar a lista. O resultado é bem condizente, pelo menos quando testei com meu usuário no twitter. Segue uma prévia do resultado:

É possível acessar o Follow Finder pelo seguinte link:

http://followfinder.googlelabs.com/

Bom proveito!