[ciência aberta]Ideia de Projeto - aprendizagem em programação para novatos

Raniere Silva ra092767 em ime.unicamp.br
Domingo Setembro 28 11:38:03 UTC 2014


> Um fator com grande influência nesta aprendizagem é a motivação.

Isso não é apenas para programação.

> A idéia é criar um grupo de pesquisa colaborativo sobre este tema, assim a
> minha e outras pesquisas contribuiriam. Vejo que o pessoal está trabalhando
> com grupos de investigação em contextos e isso pode ser interessante.

Um dos pontos que eu tinha reclamado com o Gabriel e a Flavia é que eu não vejo
o pessoal que pesquisa isso realizar hackatons/workshops/oficinas voltado ao
ensino de programação com regularidade (digamos dois hackatons por mês) e sem
isso vocês não possuem dados estatísticos para investigar o aprendizado.

Não sou advogado mas eu acredite que seja mais fácil você conseguir dados
promovendo hackatons do que em uma "sala limpa" na universidade. Digo, na
universidade você precisaria da aprovação de um conselho de ética e para
hackatons acredito que isso não seria necessário.

> Comecei com Ruby, pois entendo ela como uma linguagem puramente orientada a
> objetos, de fácil aprendizado, principalmente no primeiro encontro, uma vez
> que um "hello world" envolve muito menos conceitos (e linhas e caracteres
> de código) do que java ou c, por exemplo
> 
> A principal dificuldade que notei no pessoal foi a falta do domínio do
> inglês (mesmo termos como get e put não correspondiam a nada no vocabulário
> da maior parte).

O uso do inglês não ajuda. Mas até falantes nativos do inglês não são ajudados
pela forma como as linguagens de programação. Ver o trabalho de Andreas Stefik
publicado em 2011, "An Empirical Comparison of the Accuracy Rates of Novices
using the Quorum, Perl, and Randomo Programming Languages".

> Com isso, acabei chegando no Scratch. Além da vantagem de ser visual (e
> divertido), tem a vantagem do idioma.  A experiência dos alunos foi
> completamente difernete com essa ferramenta.  Conseguiram fazer várias
> animações e até joguinho, entendendo a idéia de atores e scripts.

Eu, Gabriel e Flavia utilizamos o Scratch em um "experimento" no segundo
semestre e eu não gostei muito. Minha principal reclamação é que os "atores" são
independentes um dos outros e isso só cria mais problemas do que ajuda pois você
"precisa" ensiná-los programação paralela que é algo que nem formandos em
computação dominam completamente.

Para os que nunca utilizaram Scratch mas possuem um conhecimento básico em
alguma linguagem de programação, se eu tivesse duas esferas nas posições (0,0) e
(10,0) respectivamente e deseja-se criar uma animação mostrando elas se
aproximarem, em Python você faria

    while esferas_nao_se_tocam():
        atualiza_posicao_esfera(A)
        atualiza_posicao_esfera(B)

e em Scratch você faria para a esfera A:

    while esferas_nao_se_tocam():
        atualiza_posicao()

e para a esfera B:

    while esferas_nao_se_tocam():
        atualiza_posicao()

O fato de você possuir duas threads (que é o nome técnico) me parece muito mais
complicado do que a versão serial.

> O problema do Scratch é que não é software livre e é basedo no Adobe Air
> (Flash).

Esse é outro detalhe que me incomoda muito.

> Tem uma outra iniciativa, da Mozilla, que parece ser interessante:
> https://webmaker.org/

Foi com base nessa iniciativa e no https://apps.webmaker.org/ que eu tinha
sugerido utilizar Javascript no experimento no qual ajudei.

Raniere
-------------- Próxima Parte ----------
Um anexo não-texto foi limpo...
Nome: signature.asc
Tipo: application/pgp-signature
Tamanho: 819 bytes
Descrição: Digital signature
URL: <http://lists.okfn.org/pipermail/cienciaaberta/attachments/20140928/ffd91ebf/attachment-0003.sig>


Mais detalhes sobre a lista de discussão cienciaaberta