Valores padrão em dicionários

Recentemente observei que um problema recorrente em python, principalmente para iniciantes na linguagem, é mapear valores de uma lista para outros valores específicos. Um exemplo deste tipo de problema é: dado uma lista de objetos, separá-los de acordo com seu tipo.

Para resolver este problema podemos criar um dicionário onde ...

more ...

Elixir e a web

Elixir é uma linguagem de programação funcional criada pelo brasileiro José Valim, autmagicamente rápida e com vários açúcares sintáticos que roda em cima da VM do Erlang. Tinha ouvido falar bastante de programação funcional mas não sabia direito o que era. Fui procurar e achei esta definição: Programação funcional é ...

more ...

Medindo tempo de execução

No último post falei um pouco sobre como usar cache para melhorar o desempenho do fibonacci recursivo. Os gráficos que gerei foram feitos usando Gnuplot.

Como queria uma quantidade significativa de dados para estes gráficos, não tinha como gerá-los manualmente. Precisava automatizar.

Já havia usado a ferramenta time, uma utilidade ...

more ...

Acelerando Fibonacci com cache

Programação Dinâmica

No campo de teoria da computação é comum ouvir o termo Programação Dinâmica. Pessoalmente achei bastante difícil entender este conceito. Todos os lugares que procurava via exemplos usando matrizes, o que deixava o código bastante confuso. Finalmente, depois de algumas semanas, entendi do que se tratava.

Programação dinâmica ...

more ...

Construindo um range de floats

Há algumas semanas tive que implementar alguns algoritmos de inteligência artificial para um trabalho da faculdade. Acabei fazendo alguns códigos que talvez sejam úteis para outras pessoas, então decidi compartilhá-los.

Obs: Todos os códigos deste artigo foram testados em Python 3.4.

Um range de float's

Uma das (sub ...

more ...


Trabalhando colaborativamente com Git e GitHub

Alguns posts atrás falei um pouco sobre Git e GitHub mostrando alguns conceitos básicos e um fluxo de trabalho para projetos simples e, geralmente, individuais.

Neste post pretendo apresentar um fluxo de trabalho mais voltado para projetos envolvendo várias pessoas.

Branches

Antes de falar sobre este tópico é importante falar ...

more ...