Escrevendo um livro (parte 2)

Apoie o projeto para obter uma cópia do livro!

Este é o segundo texto sobre como escrevi o meu livro Programação de Computadores (ISBN 978–85–906129–2–6), para que os apoiadores do Catarse e as pessoas que acompanham atualizações do livro (seja pela lista ou pela página no Facebook) saibam um pouco mais sobre como o livro foi criado.

Ao invés de um único texto longo, resolvi dividir o conteúdo em textos menores que serão publicados aos poucos.

Parte 1 | Parte 2 (você está aqui) | Parte 3 | Parte 4 | Parte 5


Motivações e versão 0.0.1

Quando comecei a dar aulas nos cursos de Jogos Digitais e Análise e Desenvolvimento de Sistemas da Unicsul, minhas primeiras disciplinas não eram específicas de lógica de programação ou de algoritmos. Porém, quase todas eram práticas em laboratório, com programação.

Tirava muitas dúvidas ou explicava soluções que estavam mais relacionadas com lógica e conceitos básicos de programação do que com as tecnologias/linguagens, além de encontrar e mostrar muitos erros resultantes de sintaxe errada e digitação incorreta de nomes de variáveis ou funções. Na verdade, isso acontece até hoje (e acho que não vai deixar de acontecer).

“E se a gente executar o código passo-a-passo no papel, funciona? Olha só, parece que aqui deveria ter um OR ao invés de um AND… Lembra da tabela-verdade?”

“Você está tentando acessar o último elemento desse vetor, mas usando o índice 10. Nessa linguagem o primeiro elemento tem índice zero, então o último elemento deve ser índice 9, não 10.”

“Para resolver esse problema, você precisa saber se o objeto A está à esquerda do objeto B. Podemos comparar a posição x dos objetos pra resolver isso, não? Daí as instruções que você já tem são executadas dentro de uma estrutura de decisão.”

Além disso, toda vez que alguma linguagem de programação era introduzida, explicava a sintaxe para declarar variáveis, os operadores, decisões, loops… e fazia uma revisão de como usar cada estrutura.

Com isso, criei resumos sobre o que considero ser os conceitos fundamentais de programação (excluindo a parte de números binários, conversão de bases e manipulação de bits).

Depois de alguns anos, comecei a ministrar a disciplina de Programação de Computadores no curso de Jogos Digitais. A bibliografia já listava livros tradicionais sobre o assunto e também uma de Game Maker, que era a ferramenta adotada na disciplina (com o sistema drag-and-drop). Além de usar a bibliografia, acabava criando exemplos diferentes para as aulas e explicava alguns assuntos mais específicos de jogos que não eram abordados nos livros de lógica de programação.

Depois que o GameMaker: Studio (GMS) foi lançado e adotado na disciplina, achei que seria bom atualizar os exemplos e a referência bibliográfica. Porém, ainda não existia um livro sobre a nova versão da ferramenta. Assim, fui aos poucos criando novos materiais para as aulas, aproveitando também para fazer a transição da introdução de programação usando o sistema drag-and-drop para o uso de scripts (apesar do drag-and-drop ser mais amigável para quem está começando, notei que os alunos tinham mais dificuldades quando depois iam usar alguma linguagem de programação não-visual).

Vários alunos me deram feedback positivo sobre o material (talvez gerando um problema que agora alguns sempre esperam esse tipo de conteúdo em todas as disciplinas…) e um ou outro reclamou pois preferia vídeo-tutorial. Alguns pediram para eu criar mais conteúdo, alguns agradeceram porque tiveram que faltar nas aulas mas tinham o material para estudar depois. Percebi que diversos alunos estavam estudando com os resumos e apostilas, sendo que raramente vejo alunos com os livros da bibliografia.

Esse feedback me fez pensar em escrever livros novamente. Como mencionei na parte 1, tinha escrito 2/3 de um livro sobre técnicas e algoritmos para jogos 2D e 3D que foi engavetado, mas cujo conteúdo acabei usando nas minhas aulas. Durante todo esse tempo, sempre achei bom que estava usando o conteúdo do livro engavetado, mas que era uma pena que estava restrito somente aos alunos do curso. Com o feedback positivo e um material mais recente, pensei: “Por quê não? Acho que posso escrever outro livro, começando com esse assunto.”

E cá estou, buscando financiar a etapa final do livro!

PS: Na verdade, acho que a ideia de escrever livros nunca morreu em mim, pois ainda quero publicar o livro 2D/3D. Hint: será que rola um segundo Catarse ano que vem? :).


No próximo texto: ferramentas e serviços.

Texto anterior: o início.

Livro Programação de Computadores

Ficou interessado no livro? Conheça o projeto no Catarse e ajude a torná-lo real! Compartilhe com seus amigos e familiares, quem sabe alguém não esteja procurando por um livro desses?

Apoie o projeto para obter uma cópia do livro!

Gostou? Não gostou? Gostaria de acrescentar algo? Deixe seu comentário!