Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
122 lines (92 sloc) 4.76 KB

Livro Aprendendo Django no Planeta Terra

A primeira versão deste livro foi escrito por Marinho Brandão no segundo semestre de 2008, após reler um conteúdo anterior e perceber que ele era muito ruim para ir a público. Juntando isso a uma longa viagem de ônibus entre o Rio de Janeiro e Goiânia, na volta da PythonBrasil e às histórias que o autor contava para a filha dormir, mais um personagem imaginário da infância e muita influência de Fernando Sabino e Douglas Adams, surgiu Alatazan e sua turma, numa aventura para compreender a Web, o Universo e tudo o mais.

O livro foi lançado capítulo por capítulo, um a cada dia útil até ter todo seu conteúdo publicado na web, no site aprendendodjango.com e posteriormente entrou em processo de revisão e edição para então ser publicado em 2 volumos, sem os apêndices.

Linhas guia do livro

A didática deste livro se baseia em teorias da conspiração de famosos autores katarenses, especialistas em pedagogia, psico-pedagogia, programação neuro-linguística, tarô, búzios, amarração para o amor, etc. e segue as seguintes linhas:

  • Uma estória absurda e sem nenhum senso de lógica: a de Alatazan;
  • Um foco de trabalho absurdamente conhecido: construir um Blog e Contas Pessoais, sobre o Windows;
  • Os capítulos com foco delimitado em resolver um problema central, mas recheado de conteúdo conceitual fortemente relacionado ao foco central;
  • Os capítulos iniciam com uma episódio da estória de Alatazan, que ilustra vagamente o conteúdo central e dá o tom do que será trabalhando no capítulo;
  • Os capítulos terminam com o fim do episódio de Alatazan, resumindo o aprendizado daquele dia;
  • A didática começa com um problema e força um erro, assim o usuário vê o que provavelmente verá se as coisas derem errado, o conteúdo segue explicando e resolvendo o problema, à medida que força mais erros até atingir o objetivo inicial.

Os especialistas das técnicas acima todos morreram num acidente nuclear aos pés das montanhas feitas de neon. Em Katara, obviamente.

Moral da história

  • Coisas absurdas e sem lógica despertam o raciocínio e facilitam a memória (a secretária de formas padrão que está na empresa hà 15 anos, virou parte da paisagem, mas você notou a baranga que ela estava atendendo esta manhã);
  • Trabalhar sobre algo que você conhece bem as regras de negócio te libera os neurônios para se preocupar com o framework;
  • Conceitos são mais importantes que ferramentas (eles ficam pra sempre, ou pelo menos ficam por mais tempo);
  • Metáforas facilitam a compreensão (ainda mais as lisérgicas);
  • Resumos finais reforçam a memorização;
  • Programadores ganham para resolver problemas e corrigir erros, e a contornar alguns de fabricação de indivíduos.

Versão do Django

O livro foi escrito para atender ao Django 1.1, portanto, para portar para Django 1.4 e posteriores, tenha em mente que as mudanças principais foram:

Versão 1.2

  • Multiplas databases
  • Multiplos caches
  • Novas settings
  • Nova localização (L10N)
  • Novos decorators
  • Nginx, Gunicorn e cia.
  • CSRF obrigatório por default
  • Novo sistema de mensagens
  • E-mail backends
  • Novos recursos para o {% if %}
  • Aplicação de Gis
  • jQuery no Admin
  • Natural keys

Versão 1.3

  • Novas settings
  • Generic views em classes
  • Static files
  • Logging
  • Supote a delete cascading
  • Template response

Versão 1.4

Assista à palestrad o Alex Gaynor sobre isso

  • Select for update
  • Talvez algo sobre HTML5 no Admin
  • FormWizard refatorado
  • Proteção contra ClickJacking
  • Bulk inserts

Observação: as listas acima foram feitas de cabeça, por favor procure as release notes de cada versão para certificar e corrigir eventuais enganos.

Ideias futuras

O autor tem alguns docs com ideias novas de historias para dar continuidade num eventual terceiro volume, com novos capítulos sobre assuntos mais avançados ou não explorados nestes 30 capítulos.

Também há a intenção de utilizar a mesma didática e personagens para ensinar outras ferramentas, como Rails, Node.JS, Python, etc.

Como contribuir

A forma mais eficaz de contribuir é:

  • Faça um fork no GitHub
  • Crie um branch descrevendo o que vai fazer (algo curto e objetivo)
  • Faça seus ajustes, commit e push
  • Envie um Pull Request ao autor do fork central

Contribuidores

  • Autoria: Marinho Brandão
  • Ilustrações: João Mazzia
  • Testes e sugestões: Miltinho Brandão
  • Revisão: Mychell Rodrigues
  • Inspiração: Letícia, Tarsila e Linus
  • Lanche: Bohemia long neck

Licença

A edição 1 foi lançada sob Creative Commons com bloqueio para derivados e exploração comercial sem a autorização do autor. Isso permanecerá ainda por algum tempo para garantir a qualidade deste, mas há a possibilidade de permitir derivadas no futuro.