quarta-feira, janeiro 30, 2008

Looking for many words at once

I use Vim daily and my admiration for it always is renewed. It has so may features that I doubt any one can use 100% of its capacity.

One of the Vim's features I like too much is its ability to search different words at once in text.

When we want to find a word we enter in command mode and we type:

/word <ENTER>

- But what if we want to find two or more words ? Do we need to do separate searches?

No! We do just one search in command mode with each word separated by escaped pipes (\|) :

/word1\|word2\|word3 <ENTER>

Figure 1 shows a search for four words. Notice that spaces are considered as part of the word we are looking for.


Figure 2 shows the result of the search.


I hope this tip will be as useful for you as it is for me.

quinta-feira, janeiro 24, 2008

Livros que eu já li

Aqui estão alguns dos livros que eu já li (técnicos ou não).



terça-feira, janeiro 22, 2008

Procurando várias palavras ao mesmo tempo

Uso o Vim todos os dias e minha admiração por ele sempre se renova. Ele é tão cheio de recursos que duvido que exista alguém que consiga utilizar 100% das suas capacidades.

Um dos recursos que o Vim possui que mais me agrada é a sua capacidade de procurar por várias palavras diferentes ao mesmo tempo no texto.

Normalmente, quando queremos procurar uma palavra, entramos no modo de comando e digitamos:

/palavra <ENTER>

- Mas e quando queremos procurar duas ou mais palavras? Vamos ter que fazer as buscas separadamente?

Não! Nós efetuamos a busca, no modo de comando, com as palavras separadas pelo pipe escapado (\|) :

/palavra1\|palavra2\|palavra3 <ENTER>

A figura 1 abaixo ilustra o comando de busca para quatro palavras. Observe que os espaços são considerados como parte da palavra que se procura.


A figura 2 mostra o resultado da busca.


Espero que esta dica seja tão útil para ti quanto é para mim.

terça-feira, janeiro 15, 2008

Entendendo o Mercurial (2)

Fiz as correções na tradução do artigo Understanding Mercurial. A versão traduzida encontra-se aqui.

Aproveito para agradecer ao meu amigo Wanderley pelas correções e sugestões.

segunda-feira, janeiro 14, 2008

Entendendo o Mercurial

Hoje eu praticamente terminei a tradução do artigo Understanding Mercurial para o português. Falta eu fazer uma revisão e corrigir uns pequenos erros (que não atrapalham em nada o entendimento do assunto).

A tradução está no wiki do Mercurial. Podes visitá-la clicando aqui.

sábado, janeiro 12, 2008

Controle de Versões: Tão importante quanto o compilador!

Se tu desenvolves software, independente de qual seja a linguagem, então deves fazer o controle das modificações de algum modo.

Quando estava iniciando na programação, o controle que eu fazia era bem primitivo. Se eu tivesse apenas um arquivo, após finalizar as alterações, eu salvava uma cópia do mesmo com o seguinte formato: <nome>.<extensão><anomêsdia_horaminuto>.

Por exemplo, se eu tivesse um arquivo chamado meu arquivo.c e tivesse finalizado uma alteração do arquivo no dia 10/01/2008 às 18:30h, a cópia do mesmo teria o nome arquivo.c_20081001_1830.

Se por acaso fossem vários arquivos correlacionados, ao invés de copiar os arquivos em si, eu aplicava este método à pasta.

Por exemplo, se eu tivesse uma pasta chamada meuprograma e dentro desta pasta eu tivesse os arquivos meu_fonte.c, meu_fonte.h e LEIAME.TXT, após concluir as alterações nestes arquivos,supondo que elas tivessem ocorrido no dia 11/01/2008 às 09:30h, seria gerada uma cópia da pasta chamada meuprograma_20080111_0930.

Com o passar do tempo este tipo de controle torna-se ineficiente.

- Por quê? Porque eu não conseguia saber, por exemplo, que modificações foram feitas em que versão das cópias. Se eu tivesse um trabalho compartilhado com um ou mais colegas, tornava-se difícil dividir as tarefas e depois unir os trabalhos.

Procurando uma solução para estes problemas, encontrei o CVS. Durante anos ele foi uma ferramenta indispensável no meu trabalho. O CVS não evolui como deveria e, com o tempo, foi substituído com muitas vantagens pelo Subversion.

O Subversion, bem como o CVS e outros programas de controle de versão, possuem um repositório centralizado. Isto tem inumeras vantagens.

Um dia desses, meu amigo Wanderley me falou de um sistema de controle de versões (SCM) com repositório distribuído.

- Repositório distribuído? - Perguntei espantado. - Isso deve ser uma m...

Após ouvir atentamente (mesmo achando que seria perda de tempo), mudei de idéia e resolvi experimentar este programa. Afinal, o Wanderley é um programador muito experiente e não iria dar seu aval para uma solução meia-boca.

O Mercurial (este é o seu nome) é um sistema de controle de versões muito leve e ocupa pouco espaço disco.

Em SCMs com repositório centralizado, todos os arquivos ficam em um único local (servidor), sendo que os desenvolvedores baixam uma cópia dos mesmos para o seu diretório de trabalho. Certamente isto não é novidade para ti.

O Mercurial, por usar repositório distribuído, não possui um servidor central. Cada desenvolvedor tem ao mesmo tempo o repositório e o diretório de trabalho.

- Não parece nem seguro, nem prático. E qual a vantagem disso?

É seguro. O projeto já está bem estável e a cada release vários bugs são corrigidos .

É prático, pois por meio de comandos simples de exportação e importação podemos sincronizar nosso repositório com o repositório de outros desenvolvedores.

Além disso, o Mercurial possui várias extensões / contribuições da comunidade que ampliam e facilitam seu uso. Por exemplo, sua integração com o Bugzilla.

A vantagem de se utilizar o repositório distribuido verifica-se quando tu tens arquivos ou projetos que desenvolves na tua casa, no trabalho, nos computadores da faculdade, etc e não tens como instalar o Subversion, por exemplo, para controlar a versão dos mesmos (ou não tens acesso à rede).

Usando o Mercurial, podes manter o controle de versões onde for necessário, sem problemas. Não é preciso nem do acesso à rede. É só executares uma exportação / importação das modificações e pronto.

Isso sem abrir mão de controle de versões, habilidade de efetuar os diffs, ver logs, uso de tags, entre outras coisas que já nos acostumamos com o Subversion.

Já estou utilizando o Mercurial em 3 projetos (faz menos de um mês que comecei a usá-lo) e estou completamente satisfeito.

Estou pensando em traduzir para o Português os tutorias que se encontram no site oficial como uma forma de ajudar a ampliar o seu número de usuários.

Se tu usas o Subversion, o CVS ou outro sistema de versões, experimente o Mercurial. Com toda a certeza vais gostar muito de trabalhar com ele.

E se tu ainda não usas nenhum sistema destes, já passou da hora de começares. Vá no site do Mercurial e comece a utilizá-lo. Com o tutorial fornecido, em menos de 20 minutos já estarás dominando o programa.

Tu não vais te arrepender.

sábado, janeiro 05, 2008

Mecatrônica Fácil ameaçada por piratas

Ontem, recebi um e-mail da editora Saber Eletrônica. A editora informava que devido aos altos custos de produção de uma revista, dos impostos e à pirataria, eles não estão conseguindo manter a revista Mecatrônica Fácil.

- Pirataria?

Isso mesmo. Pirataria. Estão disponibilizando o conteúdo da revista na internet. Por causa desse tipo de gente (lixo é o termo mais apropriado), os esforços para que tenhamos uma elevação na qualidade técnica dos nossos estudantes e profissionais fica comprometida.
Resultado: a versão impressa da revista será cancelada. A editora vai disponibilizar o conteúdo apenas em mídia digital para os assinantes, via portal web que está em desenvolvimento, como uma tentativa de manter a revista viva.

Eu não sei se isso realmente vai dar resultados. Muita gente não gosta de ler no computador (por exemplo, eu).

Se o número de assinantes aumentasse de modo substancial, acredito que eles manteriam a versão impressa da revista.

Se tu és um aficcionado por Eletrônica e Mecatrônica e ainda não és assinante da Mecatrônica Fácil, entre em contato com a editora e faça a tua assinatura.

sexta-feira, janeiro 04, 2008

Pense bem onde investir seu dinheiro

Eu recentemente comecei a investir no mercado de ações. Como não gosto de perder dinheiro, antes de, efetivamente, botar meu dinheiro no fogo, fiz minha lição de casa: comprei livros e pesquisei sites e blogs sobre o assunto.

Sou leigo no que se refere ao mercado financeiro. Assim, comprei os livros que apareciam nos blogs que tratam de finanças (por sinal, todos excelentes).

Quando compro um livro sobre um assunto que desconheço e a obra se propõe a ensinar o básico, espero que o autor segure na mão do leitor, ou seja, que ele explique as coisas do modo mais fácil do mundo, entrando nos mínimos detalhes, por mais idiotas ou diretos que possam parecer.

- Por quê?

Quando nós conhecemos um assunto algumas coisas podem parecer óbvias, mas para um leigo não. Além disso, espero que o material tenha uma qualidade mínima que me permita ver claramente onde o autor quer chegar (especialmente quando se trata de gráficos ou códigos).

É responsabilidade do autor chamar a atenção do leitor para todos os detalhes que ele poderia deixar passar despercebidos.

Resolvi falar sobre um livro em especial neste meu post por considerar que ele não cumpre o seu papel.

O livro Aprenda a Investir com Sucesso em Ações, dos autores Gil Ari Deschatre e Arnaldo Majer. Editora Ciência Moderna.

Fiquei extremamente decepcionado com este livro. Abaixo seguem os motivos:
  • a qualidade é ruim. Os gráficos apresentados têm péssima qualidade.

  • o livro é abrangente ao falar da análise técnica, demonstrando vários métodos que podem ser utilizados nas análises. Entretanto, no meu entender, de modo muito superficial.

  • o autor passa uma boa parte do livro repetindo a importância de se utilizar programas de computador para facilitar as análise.
    Certo. Todos sabemos disso. Não é necessário ficar falando sobre isso o tempo inteiro. O espaço gasto com essa repetição exagerada poderia ter sido melhor empregado com um maior aprofundamento nos assuntos apresentados.
Não duvido da capacitação técnica dos autores, mas a didática deles é péssima.

Ao invés de comprar este livro, recomendo que tu estudes o material dos links abaixo:


Além disso, é fundamental que tu leias, diariamente, os blogs de finanças. Abaixo estão alguns que eu acompanho:

    Estes blogs, além da elevada qualidade, apresentam muita didática nos seus artigos.