Postagens

Mostrando postagens de abril 27, 2008

Python, uma linguagem alto nível e muito bacana!

Bem, tenho que compartilhar com todos a minha empolgação com a linguagem de programação Python . É uma linguagem interpretada bem alto nível (ainda mais para alguém como eu que está muito acostumado com C e Assembly) e pode ser utilizada para fazer programas rapidamente. Eu particularmente achei bem legal para fazer simulações e programas científicos nos quais o que se quer é avaliar a funcionalidade de algoritmos, sem ter que se preocupar com o máximo de desempenho computacional (nesses casos C costuma ser bem melhor). Além de ter um tutorial no site do Python, ainda tem um livro gratuito online que pode ajudar bastante: Dive into Python .

Procurando uma alternativa para algum software comercial?

Um site que vale muito a pena visitar é o Open Source as Alternative. Neste site estão reunidas informações sobre diversos softwares que poderiam substituir softwares comerciais, tudo separado por categorias e bem detalhado. Além disso, a abordagem do site me pareceu bem honesta, uma vez que em geral os softwares possuem uma descrição precisa, independente de pertencerem à categoria de software comercial ou software livre. Dessa forma, não achei o site muito enviesado na direção do software livre (o que infelizmente muitas vezes acontece, talvez por otimismo exacerbado).

Livro clássico sobre robótica

Para quem procura um livro básico sobre robótica, principalmente tópicos relacionados à navegação, com técnicas relativamente simples de serem implementadas aí vai a dica: Where am I? As técnicas apresentadas não representam o estado da arte em robótica, uma vez que o livro foi publicado em 1996. No entanto, o livro representa um bom ponto de partida. E melhor, o livro pode ser baixado gratuitamente.

Documentação de código com o Doxygen

Uma coisa que eu tenho observado ao longo do tempo em que venho trabalhando, tanto em hardware quanto em software, é que em geral o nível de documentação é bem precário. Talvez seja o fato de que os prazos sempre são bem apertados e os desenvolvedores preferem se preocupar em fazer o produto funcionar acima de qualquer coisa. O problema é que depois de algum tempo quando alguém retomar o trabalho para fazer manutenções ou extensões vai ter sérias dificuldades para levar o trabalho adiante. Tanto engenheiros quanto o pessoal de informática não costumam documentar adequadamente seus produtos, mas quando se trata de software parece que os engenheiros são mais relapsos que os cientistas da computação. Talvez porque na formação básica de engenharia não existam disciplinas relacionadas à engenharia de software ou à metodologias de desenvolvimento. Além disso, como no mundo da engenharia às vezes o nível de programação é um pouco mais embaixo (e.g. microcontroladores), então os engenheiros ac