Era dezembro de 2004, quando fui para a primeira aula de lógica de programação no ITECI. Um pouco atrasado chego ao local e, sem sequer me ser questionado o nome, sou colocado em uma sala por uma das atendentes do local. A aula já havia iniciado e tinham muitas pessoas na sala. O instrutor exibe um slide com a seguinte frase: "A caneta está na gaveta, para pegar a caneta preciso abrir a gaveta". Claro! É óbvio que para pegar uma caneta que está dentro da gaveta eu preciso antes abrir a gaveta.
Olhei para os lados me questionando: "Será que alguém daqui não sabe abrir uma gaveta e tirar a caneta?". Estaria eu em uma sala para pessoas, digamos assim, "especiais". Todos pareciam normais a minha volta (apesar de serem da área de TI).
Chega o intervalo, resolvo perguntar ao instrutor se eu estava, realmente, na sala de lógica de programação. Para minha surpresa... Estava! Começamos a ver outros procedimentos simples do cotidiano e eu ainda a me perguntar se valeria a pena um curso daquele. Era claro que eu sabia tirar caneta de gaveta, abrir geladeira, fazer uma ligação de orelhão para um amigo.
Chega a hora de fazermos fluxogramas...
"Faça uma ligação para um amigo pelo orelhão", era o que dizia o exercício para fazermos em um fluxograma. Isso eu sei... Pega cartão... Liga pra o amigo... se não atender, liga de novo... atendeu, falou, "tchau"! Entrego o fluxograma feliz da vida. Acabei antes de todo mundo... [ÊÊÊÊ!!!]
O instrutor pergunta: "Se eu não tiver cartão?". Volto... Nem sento na cadeira e coloco um outro bloquinho daqueles que representa uma condição... setinha pra lá... setinha pra cá... Pronto! Está aqui meu fluxograma "completão"! E ele pergunta: "E se o orelhão estiver quebrado?".
Para resumir a história, passei a noite inteira fazendo um fluxograma que não cabia em várias folhas juntas de papel paltado. E no final acabei percebendo que tirar uma caneta da gaveta não é um procedimento tão simples. Precisamos dizer para a máquina o que ela vai fazer em cada situação. Somos nós quem damos a inteligência que ela possui.
Eu possuia uma visão leiga de que para fazer um software era apenas questão de desenhar uma tela e dizer "Alakazam!" para que tudo estivesse resolvido. Vi que não é tão fácil como muitos imaginam. Já mais a frente no curso, depois de passar duas semanas virando noites e reunindo-se na casa dos colegas de grupo, apresento o projeto (feito em Java com Swing, todo na mão, tinha até DesktopPane no meio, que tirei nota máxima) para minha mãe e ela fala: "Tu passou duas semanas dormindo mal pra fazer essa coisa?". Mas quer saber? Valeu, muito, a pena.
Cenários a se pensar para construir? Existem muitos... Para quebrar... Mais ainda!
Para deixar claro... Não consegui fazer a ligação de orelhão sem que o intrutor quebrasse em algum lugar, que sorrindo me disse: "Está bom por este, vamos para um próximo exercício!".