segunda-feira, 22 de julho de 2013

Errou um sinal, a ponte caiu

A frase do título pode não fazer muito sentido para as pessoas em geral, mas gera arrepios nos alunos (ou ex-alunos) de engenharia. Para quem não conhece, vou fazer uma ilustração.

Imagine que você é um engenheiro civil experiente, responsável técnico de uma empreiteira contratada pela prefeitura de uma cidade para construir uma ponte. Você e sua equipe passam meses realizando cálculos e planejando a execução do processo de construção.

Durante o início das obras tudo ocorre bem, de acordo com o plano e as melhores práticas da engenharia aplicada por você. Acontece que, por um momento, você testemunha uma cena trágica: para colocar uma viga na posição prevista, o guindaste solta o produto de aço de algumas toneladas sobre as pilastras, que começam a ruir. Tudo desmorona a seus olhos.

Ainda bem que isso aconteceu antes das pessoas utilizarem a ponte, ninguém se feriu. Mas por que isso aconteceu? Você fez tudo correto, de acordo com o que estava no livro. Então eis que surge um analista e diz que o estagiário fez uma conta errada, trocou um sinal, e a partir daí todos os outros cálculos estavam errados... a ponte caiu.

Poderia uma ponte cair por causa de uma distração simples?

Essa é a história que os professores sempre contam. No meu caso foi na disciplina de Resistência dos Materiais. Mas não é apenas nessa disciplina (e no curso de eng. civil), onde o exemplo é literal, que a analogia funciona. Essa afirmação é usada como justificativa pelos professores mais tradicionalistas para corrigir "binariamente" (ou acertou completamente, ou errou completamente) os exercícios das provas dos pobres coitados dos alunos.

Assim surgem casos de provas em que o aluno fez duas folhas de almaço de contas e contas, mas por pequenos enganos errou todas as respostas finais. Corrigindo rígida e binariamente, o professor confere apenas as respostas finais, ignorando todo o raciocínio do aluno, e lhe dá nota 0.

É claro que são raros os casos de professores que cumprem esse roteiro à risca. No meu caso, que fiz engenharia entre os anos 2004 e 2009, a maior parte dos professores tinha um pouco disso. Aqueles que eram encarnações do estereótipo eram as lendas da faculdade...

--

Eu vou agora fazer alguns comentários sobre essa prática. Considerar que o aluno deve seguir o procedimento de forma precisa sem nenhum erro, mostra que o professor...
  • quer que os alunos sejam engenheiros-máquina, cuja função principal seja realizar rotinas de cálculo e projeto de forma minuciosa, como um computador.
  • considera que seu papel é o de treinador dos alunos, que devem aprender a realizar um procedimento se segui-lo sempre que necessário (e nada mais importa).
  • não se importa com o aprendizado "parcial" dos alunos, se importa apenas com o aprendizado sistemático do procedimento e com a obtenção do resultado final esperado. O aprendizado parcial de um procedimento poderia ser considerado, permitindo que o aluno revisasse seus resultados. E não é só o aprendizado de procedimentos que faz um engenheiro...
  • ignora o fato da informática ser hoje em dia um grande aliado dos engenheiros (e da população em geral), realizando os procedimentos exaustivos de maneira muito mais sistemática que as pessoas. Na verdade, o professor pode até pensar nisso, mas considera que mesmo assim os alunos devem saber executar os procedimentos tão bem quanto se não houvesse computadores.
  • desconsidera que o tempo de uma prova não é o mesmo tempo de um projeto. Em um projeto os cálculos e resultados podem ser revisados diversas vezes, e mesmo um engenheiro muito capaz pode se distrair e errar uma conta. Além disso, para mim, errar uma conta não quer dizer
    que o engenheiro é ruim, mas errar a interpretação de um resultado sim.
Conseguem pensar em algo mais?

--

Vamos tentar entender o que pode passar na cabeça dos professores ao fazer isso. Um engenheiro deve realizar todos os procedimentos de cálculo/projeto de forma tão sistemática e precisa que não pode errar nada. Se o aluno de engenharia comete qualquer erro no processo, ele é avaliado como se não soubesse nada.

Será que é isso mesmo? Eu gostaria muito de saber a opinião de vocês. Alguém aqui é professor e faz algo parecido? Poderia justificar?

Um dia um amigo meu me falou o discurso de um professor que realiza essa prática ainda hoje na faculdade. E eu achei bem interessante até.

Eu faço isso com vocês deliberadamente. E mais, eu sei que essa prova que vocês fazem não avalia realmente se vocês sabem ou não a minha matéria (os procedimentos relacionados a cálculo de estruturas). A minha prova avalia muito mais outras capacidades, mais indiretas, que são pelo meu ponto de vista essenciais para o engenheiro.

Uma prova difícil com procedimentos de cálculo longos e correção rígida avalia dos alunos de engenharia a concentração, a memória, a capacidade de ser sistemático e preciso, de trabalhar sob pressão, contra o tempo, de se virar sozinho e descobrir rapidamente como resolver corretamente um problema difícil, entre outras coisas. E é para isso que eu preparo vocês e porque o mercado de trabalho tanto valoriza vocês como profissionais.

Acho muito nobre esse discurso, de verdade. Esse é um professor que respeito e admiro, apesar de discordar dele em vários pontos. Para não me alongar muito vou explorar dois pontos:
  • Se você quer ensinar certas habilidades, pense na melhor maneira de fazê-lo. Por exemplo, se eu quero ensinar concentração, eu preciso pensar nas técnicas existentes para isso, e avaliar qual é a melhor que posso aplicar em minha disciplina. E eu tenho que mostrar isso para os alunos desde o começo, para que eles saibam que avaliarei isso, não cálculos e contas. Concordo que uma correção de prova rígida avalia concentração, mas não acredito que seja a melhor forma de fazê-lo.
  • Seja humano. O estilo de professores assim é muito próximo ao de militares, homens indisponíveis e antipáticos que não se importam com as outras pessoas. Simplesmente fazem o que devem fazer e pronto, a vida é dura. Para mim educação de qualidade não combina com esse tipo de postura. Alunos podem ser preparados de maneira muito melhor para o furioso mercado de trabalho se bem atendidos e bem orientados, não por serem calejados de levarem porrada.
E aí? Concorda comigo? Esse é um assunto bem complicado, e acho que está na alma do ensino de engenharia há bastante tempo.

De qualquer forma, se você concorda comigo, como podemos fazer para que isso deixe de existir em nossas faculdades? Tenho medo dos novos professores, doutores formados nos últimos 10-15 anos, tenham essa mesma mentalidade...

segunda-feira, 15 de julho de 2013

POO parte 1 - Começando a Planejar uma Disciplina

Estou planejando uma disciplina de Programação Orientada a Objetos (POO). Quero compartilhar aqui no blog esse processo e fazer algumas discussões.

Para quem não é da área de computação, Orientação a Objetos é um paradigma de programação, uma forma de organizar as ideias e o código de um software. Basicamente ela organiza tudo em objetos para construir programas, como tijolos para construir casas. Existem vários outros paradigmas de programação: estruturada, lógica, funcional, etc.

Objetos simulam bloquinhos de montar programas

Esse é o paradigma das linguagens de programação mais utilizadas, acredito que desde o final da década de 80. A primeira linguagem orientada a objetos é do final da década de 70. Os principais conceitos são objetos, classes, herança, métodos, polimorfismo, associação, etc. Como eu posso então preparar um curso para ensinar meus queridos alunos tudo isso?

Ah, muito simples! O melhor jeito é o mais direto: primeiro eu vou definir o que é orientação a objetos para os alunos, depois, em cada aula, vou apresentando os conceitos mais básicos e depois os mais complexos. Vou começar com classe e objeto. Depois vou falar de atributos e procedimentos, aí os alunos vão entender direito o que é uma classe. Depois de herança, e então de associação, que são as relações entre classes, e para entender isso eles precisam saber o que é uma classe. Por fim vou falar dos diferentes tipos de polimorfismo, pois para compreender isso bem precisam conhecer as relações entre classes. Pronto!

O que eu acabei de fazer? Eu planejei uma disciplina considerando EXCLUSIVAMENTE o conteúdo. Além disso, considerei o conteúdo HIERARQUICAMENTE. Veja por aí cursos e livros de orientação a objetos. Compare a organização e o método de apresentação do conteúdo com o que eu acabei de apresentar. Minha hipótese é que a maioria deles usa exatamente esse método que, em minha concepção, é ruim.

Por que isso é ruim? Eu enfatizei as duas palavras que vão embasar meu argumento. Primeiro, o método não considera os muitos outros fatores que influenciam os processos de ensinar e aprender: o currículo (objetivos para os alunos, para a disciplina, competências e habilidades...), o aluno (idade, formação passada, acesso a recursos, intenções, interesses, tempo disponível, capacidades...), o contexto (instituição, infraestrutura, comunidade...) para listar alguns. Uma analogia simples é projetar um veículo sem considerar alguns fatores como atrito ou desgaste. Essa é uma falha muito grave.

Um pouco menos grave, em segundo lugar, o conteúdo é organizado hierarquicamente. Ou seja, se baseia exclusivamente em pré-requisitos supostos que os alunos precisam "saber" para aprender cada item. Existem várias outras formas de organizar o conteúdo, seja em linha, seja em rede, seja todo de uma vez em uma aula, etc. Para escolher bem a forma de organizar o conteúdo o professor deve ter em mente todos aqueles fatores citados acima. Nada pode ser definido assim sem ter um porquê.

Apesar dessas falhas graves, muita gente continua ensinando e "aprendendo" assim. Isso torna a eficiência dos cursos muito baixa. Você tem ideia de por que tudo continua igual? Por que você acha que as coisas não mudam?

Instituições de ensino, professores e alunos continuam quebrando a cara usando modelos de aula falhos e ultrapassados. (sem perceber?)
--

Como eu estou fazendo? O exemplo que quero dar ainda está imcompleto. Estou em uma fase com poucas informações, sei a quantidade de alunos, sei mais ou menos seu tempo livro, seus recursos, mas não muito mais do que isso. Por isso esse planejamento é ainda bem preliminar. Além disso, estou colocando os meus valores nos objetivos pedagógicos acima dos valores da instituição, exatamente por não conhecê-los bem.

De acordo com um artigo anterior daqui do blog, quando vamos planejar uma disciplina ou uma aula, devemos começar pelos objetivos pedagógicos. É sobre isso que vou falar no restante do texto.

Eu enxergo a orientação a objetos como um poderoso mecanismo de organização do pensamento, modelagem e soluções de problemas. Acredito ser por causa disso o sucesso de sua utilização na indústria de software. Além disso, valorizo mais a competência de entender e poder utilizar a orientação a objetos no dia-a-dia do que o conhecimento de tecnologias e linguagens de programação específicas. Outra característica importante para mim é que devemos ser independentes de tecnologias específicas, assim o aluno deveria ser introduzido a várias linguagens disponíveis e atuais.

Essas são considerações que eu faço, meus valores, minhas crenças com relação à disciplina. Esse é um dos fatores importantes na hora de definir os objetivos de um curso. Um outro fator são os valores e crenças com relação ao processo de ensinar.

Por exemplo, eu acredito que é muito mais importante para o aluno praticar com a mão na massa do que receber informações. Acredito que o aluno aprende muito mais se faz atividades relacionadas a assuntos que tem interesse. Por fim, acho que o professor deve ensinar o aluno a se virar sozinho e conseguir resolver problemas, se emancipar.

Dessa forma, eu consigo esboçar um objetivo pedagógico explícito para uma disciplina de POO: os alunos devem saber o que é orientação a objetos (OO), saber modelar situações e problemas usando OO, saber o suficiente das linguagens OO para explorar a Internet em busca de aprofundamento.

Com essa sentença eu não estou considerando muitas coisas, como a posição da disciplina no currículo, o curso de graduação, a situação da instituição, etc. Por isso ainda é um objetivo pedagógico bem genérico. Ao longo dos próximos artigos poderemos refiná-lo.

Você gostaria que eu considerasse algo específico? Alguma situação que enfrenta ou enfrentou? Como você faria o objetivo de uma disciplina de POO?

O próximo passo é a definição das avaliações e então das atividades. Que avaliações você tem em mente quando lê esse objetivo pedagógico? E que atividades, que aulas imagina realizar para alcançar esses objetivos?

Até o próximo artigo!

segunda-feira, 8 de julho de 2013

Liberte seu espírito Hacker!

Você já fez um projeto em que você gostou de trabalhar? Um projeto em que era legal pesquisar soluções para os problemas, e mais legal ainda quando uma das soluções escolhidas dava certo? Pode ter sido em alguma disciplina da faculdade, alguma atividade extracurricular, ou mesmo fora do ensino superior... Acho difícil ter alguém que nunca gostou de nenhum projeto que tenha feito enquanto estudava.

Existe um movimento hoje em dia que descreve essa sensação, de ansiedade positiva para resolver um problema e concluir um projeto, de “espírito hacker”. Assim, são considerados hackers as pessoas que gostam de resolver problemas fuçando possíveis soluções, muitas vezes mirabolantes e extremamente técnicas. Essa conotação vem substituir aquela pejorativa que classificava como hacker o pirata de computador, a pessoa que atrapalhava a vida dos outros por má fé usando a tecnologia. O hacker bonzinho pode ser uma das consequências mais positivas do avanço e da massificação tecnológica.

Um Hacker estereotipado no sentido negativo atuando

Estou muito empolgado com o movimento hacker. Fui ao FISL na semana passada e fiz contato com bastantes pessoas legais. Existem hackers com foco em software, outros em hardware, e outros em máquinas e dispositivos fora da computação. Esses são links para vídeos com palestras muito interessantes, recomendo muito assistir, os projetos apresentados dão exemplos de motivação e trabalho feliz. Mesmo que você não tenha curiosidade pela área, é importante para as pessoas em geral conhecer o estilo de vida dos hackers.

Um resultado de tudo isso são os hackerspaces (ou espaços hacker). Eles são locais físicos em que pessoas/hackers interessadas em um assunto se encontram para fazer seus projetos, aprender, ajudar os amigos ou simplesmente se divertir com o pessoal. Uma outra palestra, dessa vez especificamente sobre os hackerspaces pode ser vista aqui. Eu até fiz uma oficina de montar circuito com esse palestrante. Foi bem divertido. Há vários hackerspaces no Brasil, como o Garoa Hacker Clube em São Paulo, o Laboratório Hacker de Campinas, o Tarrafa em Florianópolis e o Matehackers em Porto Alegre?

Um típico hackerspace

Mas por que estou falando disso no blog sobre ensino de engenharia? Não sei se você percebeu, mas os hackers são pessoas que estão de bem com a vida enquanto estudam e fazem projetos. Há muita gente, educadores, professores, acadêmicos, ativistas em geral, que defende a utilização da filosofia de vida hacker nos cursos e universidades. Liberar o espírito hacker nos alunos para que eles gostem de estudar e aprender. Não seria bom se a faculdade permitisse que você fizesse projetos de seu interesse e realizando esses projetos você aprenderia o conteúdo que eles são obrigados a te passar? Seria outro mundo.

Peça para um amigo que gosta de música em um curso de engenharia elétrica fazer circuitos de processamento de som, amplificadores, pedais de guitarra, baterias elétricas. Ele vai adorar! Será que isso não pode ser usado para aprender os conteúdos das disciplinas clássicas de engenharia? Só esse exemplo que dei abrange todos os cálculos, álgebra linear, física 3, circuitos, eletrônica analógica e digital, sistemas lineares, processamento de sinais, se eu não esqueci algum. Seria um hacker feliz aprendendo engenharia.

E você? Enquanto aluno já usou (ou usa) seu espírito hacker? Acha que seria melhor aprender assim?

segunda-feira, 1 de julho de 2013

Três Idiotas

Assisti um filme muito interessante sobre ensino de engenharia, chamado Três Idiotas. este artigo vai funcionar meio que como uma resenha do filme e como a visão dele sobre o ensino de engenharia pode nos ajudar.
Três estudantes de engenharia fazendo besteiras.

O filme conta a história de dois amigos que se conheceram na faculdade à procura do terceiro, enquanto lembram de momentos marcantes em suas vidas durante a graduação em engenharia. Ele é indiano, então tem 2 horas e 40 minutos de duração, alterna algumas músicas com cenas de dramaticidade extrema. Eu estou começando a assistir filmes indianos agora, e estou me acostumando ao "gosto" deles de fazer filmes, apesar de preferir o jeito ocidental mesmo.

Eu recomendo o filme por tratar de um tema muito interessante e também por servir de introdução a essa estética indiana de cinema. No final, lembra um pouco o filme Sociedade dos Poetas Mortos.

Dos três personagens principais temos um gênio que vai bem nas provas sem estudar, que ama a engenharia e questiona vários valores do ensino de engenharia naquela faculdade tradicional, um rapaz de classe média que queria ser fotógrafo mas o pai obrigou a fazer engenharia porque "dá mais dinheiro", e um de família mais pobre e encara a engenharia como meio de sair dessa situação.

Outros personagens importantes são o diretor da escola, um professor já idoso que representa todo o tradicionalismo que você pode imaginar, e outro aluno, rival ao grupo protagonista, que vê a engenharia como forma de subir no mundo e fazer parte da elite da sociedade. Todos os personagens são bem lineares e estereotipados, o filme é superficial emocionalmente. Mas é possível fazermos algumas analogias com o que acontece em universidades públicas brasileiras.

Trote ao entrar na universidade...

Apenas os melhores sobrevivem. Essa é a atmosfera da universidade retratada no filme. Nela os alunos devem estudar muito para conseguirem passar nas provas e "merecer" ter o diploma da instituição. Os professores são durões e não dão chances aos alunos de falar ou pensar. Superiores quase no sentido militar, são donos absoluto do conhecimento e fonte de sabedoria para os pobres estudantes.

Esses, por sua vez, devem se virar sozinhos para estudar e decorar todas as informações passadas pelos professores em suas aulas-palestras e reproduzí-las nas provas. Aliás, é isso que se espera de um bom engenheiro. Não necessariamente o que você estuda é o que você deve aprender ou o que você vai usar na vida pós-faculdade. O filme mostra inclusive uma cena de suicídio de aluno que não conseguiu ir bem nas provas. Isso é pouco comum no Brasil, mas em outros países, principalmente na Ásia, chega a ser corriqueiro.

Alguma semelhança com o que você vive ou viveu? Eu me senti no filme,
de tão parecido com o que vivi.

O personagem principal, gênio da tecnologia, desafia o status quo, mostrando novos paradigmas de como encarar o ensino de engenharia. Ele valoriza a paixão por estudar, por explorar e experimentar, que todo aluno e professor deveria ter. Ele serve de exemplo para engajamento em atividades e projetos práticos. Ele questiona a validade das notas, o poder comparativo e preciso das provas (coisas que nossos professores assumem como sagrados).

Em uma situação, ele é colocado forçadamente como professor, substituindo um que palestrava em uma sala calada. Sua aula-exemplo foi colocar duas palavras desconhecidas na lousa e dar 30 segundos para os alunos encontrarem o significado. Essa é uma estratégia de colocar desafios interessantes aos alunos, que acordaram subitamente e caçavam em seus computadores e livros aqueles termos. Interesse que vi em poucas situações em minha vida acadêmica.

Esse filme mostra que a revolução na educação é tão urgente que até comédias pastelão refletem o assunto. Espero que ele inspire muitas pessoas na direção de enfrentar os valores tradicionais do ensino de engenharia e que tenhamos cada vez mais professores felizes por ensinar e alunos felizes por estudar e poder praticar a engenharia que amam para melhorar a vida de todos.