Filtrando um intervalo de texto em uma frase

O problema: dada uma frase você precisa filtrar as ocorrências de caracteres numéricos dentro de um intervalo (ex.: da segunda palavra até a décima). Usando o awk isso pode ser feito da seguinte maneira:


for (i = 2; i < ; 10; i++) {
if ( $i ~ /[[:digit:]]/) {
$i = "(ignored)"
}
}

Obs.: é bem provável que existam maneiras mais práticas de fazer isso, mas funcionou pra mim 🙂

Frase do ano

“… The problem is, there is only ONE ranking system that we all actually understand, and we should be using that ranking system for virtually every situation in which we need to compare human beings at some skill set (and one human can be better than another human at it).

That system, of course, is the Dungeons and Dragons level system … ” – Steve Yegge

Retirada de: http://steve.yegge.googlepages.com/software-fable

A revolução do Xml: tecnologias para o futuro da Web (parte II)

Como eu tinha dito no post anterior, existem várias bibliotecas para manipulação de XML em C e C++. Algumas são bastante completas, outras valorizam a simplicidade. A escolha vai depender dos seus requisitos, então, na esperança de facilitar o seu trabalho, aqui vai uma pequena lista com bibliotecas XML para C e/ou C++ e algumas (poucas) características de cada uma delas.

Continue reading “A revolução do Xml: tecnologias para o futuro da Web (parte II)”

Um post de raiva e horror

Usando este humilde espaço eu gostaria de declarar meu ódio por:

  • Notação hungára
  • Funções/métodos com mais de 50 linhas
  • Código sem documentação
  • Métodos de indentação absurdos
  • Código com estruturas de repetição/seleção sem definição de inicio e fim de blocos de código. Por exemplo:
    [code]if (condicao) codigo();[/code]
    ao invés de:
    [code]if (condicao) {
    codigo();
    }[/code]
  • Código díficil de ler sem uma razão específica
  • autoconf, automake, autoheader, etc. Embora, felizmente, já não precise mais usa-los com frequência.

A revolução do Xml: tecnologias para o futuro da Web

A eXtensible Markup Language – XML, tem tido um importante papel no desenvolvimento da Web e no aumento da interoperabilidade entre sistemas nos dias de hoje, embora não seja a solução para todos os problemas de interoperabilidade.

Na internet é possível encontrar diversos artigos e tutoriais sobre XML e suas tecnologias relacionadas (DTDs, Schemas, etc). Um dos meus preferidos, é o The XML Revolution: Technologies For the Future Web e, ainda que não tenha sido atualizado desde 2003, é uma excelente fonte de informações.

Por fim é importante ressaltar que existem várias bibliotecas com suporte a XML para C e C++. Mais sobre o assunto nos próximos posts da série, aonde irei analisar as características de algumas bibliotecas.

Testando a distribuição na spec de um RPM

Eventualmente é preciso testar, no arquivo de spec de um RPM, qual a distribuição na qual está sendo gerado o rpm, desta maneira tornando possível modificar, por exemplo, as dependências de um pacote de acordo com a distribuição. A solução não é das mais limpas, uma vez que é preciso criar uma macro para cada distribuição, mas funciona para os casos mais simples.

A solução que encontrei foi a seguinte:

Continue reading “Testando a distribuição na spec de um RPM”