segunda-feira, 15 de fevereiro de 2010

Livro: SICP - Estrutura e Interpretação de Programas de Computador

Este é o primeiro de uma série de posts cujo objetivo é apresentar, em português, a solução da maioria dos exercícios do livro Structure and Interpretation of Computer Programs (carinhosamente chamado de SICP), de autoria de Harold Abelson e Gerald Jay Sussman. Além de resolver os exercícios, quando pertinente farei comentários sobre algumas seções do livro. Antes que eu me esqueça, o texto do livro está disponível, em sua integridade, gratuitamente. Veja a página na editora MIT Press ou mesmo a página do curso 6.001 do MIT. Mesmo que o livro esteja disponível gratuitamente, recomendo que comprem em papel, nem que seja apenas para prestigiar o trabalho magistral de Abelson e Sussman.


No passado, eu já li o livro e resolvi os exercícios dos dois primeiros capítulos. Além disso, assisti às aulas disponíveis em http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/.


Dessa vez, resolvi resolver tudo (revisar minhas soluções antigas e postar as novas), e publicar minhas soluções para o livro inteiro. Estou fazendo isso por um conjunto de motivos:

1) Auto-edificação: resolver os dois primeiros capítulos me tornou um programador melhor (e mais produtivo, também). Ler o livro, então, nem se fala... Tenho certeza que os exercícios dos três últimos capítulos são igualmente ilustrativos. Os exercícios completam o livro. Eles são muito bem escolhidos, de modo que vale a pena resolvê-los. Não são fáceis, é verdade, mas cada um te faz aprender uma coisa nova... Não desperdiçam o seu tempo. Resumindo: estou resolvendo os exercícios em interesse próprio, para melhorar como profissional e porque sei que o investimento de tempo compensa.

2) Disciplina: a publicação das soluções exige mais disciplina e cuidado na hora de elaborá-las... além disso, me motiva a continuar: como estou comprometido a publicar, e antes de publicar tenho que fazer, vou acabar fazendo. Na improvável situação de esse blog ter leitores, espero que eles me cobrem e me mantenham na linha.

3) Propagar a palavra: O SICP é praticamente desconhecido no Brasil. Isso é uma pena, pois o livro é uma jóia. Arrisco dizer que, se todo mundo lesse o SICP primeiro, ficaria muito mais fácil ler todos os outros livros, já que o SICP é uma síntese de toda a Computação. Espero que, através desses posts, mais gente venha a conhecê-lo, e quem sabe resolver os exercícios também. Se convencer pelo menos uma pessoa a ler o livro e fazer os exercícios, considero minha missão cumprida.

No próximo post, vou fazer um resumão do livro e, no terceiro post, começo a mostrar as soluções. Fique ligado.

4 comentários:

  1. Missão cumprida, então. Já comecei a me aventurar pelo material do 6.001. Valeu!

    ResponderExcluir
  2. Bom saber!!! Estou ocupado esses dias e tenho atrasado os posts, mas agora que tem alguém vendo, vou arranjar um tempo e postar pelo menos uns 5 a 10 exercícios por semana. Bom SICP pra você, Rodrigo.

    ResponderExcluir
  3. Eu também comecei e digo vamos, irei evangelizar a obra também! o/

    ResponderExcluir
  4. Começarei a estudar análise e desenvolvimento de sistemas no próximo mês, pretendo ler este livro e após conferir suas soluções.

    ResponderExcluir