• Nenhum resultado encontrado

TÍTULO: INTRODUÇÃO A PROGRAMAÇÃO A PARTIR DE CONHECIMENTOS SOBRE MÚSICA João Pessoa Abril / 2019 LUCAS BLATT Universidade Federal da Paraíba Centro de Informática Programa de Pós-Graduação em Computação, Comunicação e Artes

N/A
N/A
Protected

Academic year: 2021

Share "TÍTULO: INTRODUÇÃO A PROGRAMAÇÃO A PARTIR DE CONHECIMENTOS SOBRE MÚSICA João Pessoa Abril / 2019 LUCAS BLATT Universidade Federal da Paraíba Centro de Informática Programa de Pós-Graduação em Computação, Comunicação e Artes"

Copied!
171
0
0

Texto

(1)

Programa de Pós-Graduação em Computação, Comunicação e Artes

LUCAS BLATT

TÍTULO:

INTRODUÇÃO A PROGRAMAÇÃO A PARTIR DE CONHECIMENTOS SOBRE MÚSICA

João Pessoa

Abril / 2019

(2)

Título: Introdução a programação a partir de conhecimentos sobre música

Disseração apresentada ao Programa de Pós- Graduação em Computação, Comunicação e Artes (PPGCCA) da Universidade Federal da Paraíba, como requisito parcial para a obtenção do título de Mestre em Computação, Comunicação e Artes, na linha de pesquisa Arte Computacional.

Orientador: Prof. Dr. Alexandre Magno e Silva Ferreira

João Pessoa

Abril / 2019

(3)
(4)

INTRODUÇÃO A PROGRAMAÇÃO A PARTIR DE CONHECIMENTOS SOBRE MÚSICA

Dissertação apresentada ao Programa de Pós-Graduação em Computação, Comunicação e Artes da Universidade Federal da Paraíba, como requisito parcial para a obtenção do título de Mestre em Computação, Comunicação e Artes, na linha de pesquisa Arte Computacional.

A banca considera o presente Trabalho Final: APROVADO Data: 29 / ABRIL / 2019.

__________________________________________________

Prof. Dr. Alexandre Magno e Silva Ferreira (Orientador – PPGCCA/UFPB)

__________________________________________________

Prof. Dr. Cleisson de Castro Melo (membro externo - instituição).

__________________________________________________

Prof. Dr. Carlos Eduardo Coelho Freire Batista (PPGCCA/UFPB)

__________________________________________________

Prof. Dr Fábio Henrique Ribeiro (membro externo - programa)

APROVADO

29 ABRIL 2019

(5)

Dedico este trabalho a minha família,

Tamires e Yasmin, pelos momentos

de ausência e pelo incentivo

para essa pesquisa.

(6)

Obrigado por me permitir errar, aprender e crescer, por Sua eterna compreensão e tolerância, por Seu infinito amor, pela Sua voz “invisível” que não me permitiu desistir e principalmente por ter me dado uma família tão especial, enfim, obrigado por tudo.

Ao Prof. Alexandre, pela orientação, competência, profissionalismo e dedicação tão importantes. Tantas vezes que nos reunimos e, embora em algumas eu chegasse desestimulado, bastavam alguns minutos de conversa e umas poucas palavras de incentivo e lá estava eu, com o mesmo ânimo do primeiro dia de aula. Obrigado por acreditar em mim e pelos tantos elogios e incentivos. Tenho certeza que não chegaria neste ponto sem o seu apoio. Você foi e está sendo muito mais que orientador: para mim será sempre mestre e amigo.

Aos membros da banca examinadora, Prof. Fábio, Prof. Carlos e Prof. Cleisson, que tão gentilmente aceitaram participar e colaborar com esta dissertação.

À minha família, por apoiarem e compreenderem o meu isolamento em inúmeras tardes de domingo.

À minha mãe e ao meu pai deixo um agradecimento especial, por todas as lições de amor, companheirismo, amizade, caridade, dedicação, abnegação, compreensão e perdão que vocês me dão a cada novo dia. Sinto-me orgulhoso e privilegiado por ter pais tão especiais.

À minha amada esposa Tamires, por todo amor, carinho, compreensão e apoio em tantos momentos difíceis desta caminhada. Obrigado por permanecer ao meu lado, mesmo sem os carinhos rotineiros, sem a atenção devida e depois de tantos momentos de lazer perdidos. Obrigado pelo presente de cada dia, pelo seu sorriso e por saber me fazer feliz.

À minha princesa Yasmin, por todo amor incondicional que você sempre me deu. A sua existência é o reflexo mais perfeito da existência de Deus.

Por fim, a todos aqueles que contribuíram, direta ou indiretamente, para a realização

desta dissertação, o meu sincero agradecimento.

(7)

musical bem como para criar e manipular sons. Sua precisão, possibilidades de novos timbres e potencial para automação fantástica fazem dele uma plataforma atraente para experimentar e fazer música, mas apenas na medida em que podemos realmente dizer a um computador o que fazer e como fazê-lo. Para isso precisamos aprender como programar um computador. Com isso, o objetivo deste trabalho é introduzir práticas com o software livre Frescobaldi como ferramenta de apoio ao ensino de linguagem de programação para músicos através de uma metodologia baseada na Teoria da Aprendizagem Significativa, que leve em consideração o conhecimento prévio de música que possa ser relacionado com computação. Desta forma, buscou-se um referencial sobre o ensino de programação e a aprendizagem significativa, seguido da relação da música com a tecnologia. A partir da pesquisa ação, elaborou-se uma proposta de ensino que foi implementada com um grupo de estudantes de música, coletando- se as informações necessárias para verificar a validade da proposta, que tem como objetivo ensinar programação para músicos.

Palavras-chave: Programação de Computadores, Aprendizagem Significativa, Música,

Frescobaldi

(8)

The computer has been considered an extremely attractive tool for musical education as well as for creating and manipulating sounds. Its accuracy, possibilities for new timbres and the potential for automation make it an attractive platform for experimentation in music making.

But to a certain extent, we need to know to instruct it to perform and how to do it. Based on this, we need to learn how to program a computer. In the courses of programming languages, the difficulty that many students face while learning such subject, mostly because to master this skill as a whole, a great deal of abstraction and conceptual knowledge is necessary. The activities in the classroom and on the notebook or even on the desktop become uninteresting because they do not allow the student to visualize in the real world its output. In this way, a reference was made on programming teaching and meaningful learning, followed by the relationship between music and technology. From the action research, a teaching proposal was developed that was implemented with a group of music students, gathering the necessary information to verify the validity of the proposal, which aims to teach programming for musicians.

Keywords: Computer Programming, Significant Learning, Music, Frescobaldi

(9)

Figura 1 - Representação do ciclo básico de investigação-ação ... 44

Figura 2 - Relações entre pesquisa, ação, aprendizagem e avaliação ... 45

Figura 3 - Os passos de um projeto de Pesquisa-ação ... 48

Figura 4 - Cartaz de 1968 da IBM ... 53

Figura 5 - Código de uma música criada com o MAX ... 55

Figura 6 - Código desenvolvido com o Pd. ... 55

Figura 7 - Código com as referências similares a música ... 57

Figura 8 - Editor de texto do LilyPond ... 60

Figura 9 - Interface de LilyPond... 61

Figura 10 - PDF gerado como saída gerada pelo LilyPond ... 61

Figura 11 - Interface gráfica do Frescobaldi ... 62

Figura 12 - Quick Insert com assistente de notas e articulações ... 64

Figura 13 - Assistente MIDI ... 63

Figura 14 - Coloração de sintaxe e informações de debugging ... 64

(10)

Quadro 2 - Síntese das principais dificuldades inerentes aos professores mencionadas na literatura ... 27

Quadro 3 - Ferramentas de apoio ao ensino de programação encontradas no mapeamento... 31

Quadro 4 - Vetor ou array com variáveis ... 58

Quadro 5 - Plano de curso ... 67

Quadro 6 - Plano da 1ª aula ... 68

Quadro 7 - Plano da 2ª aula ... 69

Quadro 8 - Plano da 3ª aula ... 70

Quadro 9 - Plano da 4ª aula ... 70

Quadro 10 - Plano da 5ª aula ... 71

Quadro 11 - Plano da 6ª aula ... 72

Quadro 12 - Plano da 7ª aula ... 73

Quadro 13 - Plano da 8ª aula ... 74

Quadro 14 - Plano da 9ª aula ... 75

Quadro 15 - Plano da 10ª aula ... 76

Quadro 16 - Plano da 11ª aula ... 77

Quadro 17 - Plano da 12ª aula ... 78

Quadro 18 -Plano da 13ª aula ... 79

Quadro 19 - Plano da 14ª aula ... 80

Quadro 20 - Plano da 15ª aula ... 82

Quadro 21 - Execução da ementa ... 84

Quadro 22 - Conteúdos utilizados nas atividades ... 85

Quadro 23 - Marcos de avaliação de desempenho ... 86

Quadro 24 – Desempenho no primeiro marco avaliativo ... 87

Quadro 25 - Desempenho no segundo marco avaliativo ... 88

(11)

Quadro 28 - Desempenho no quinto marco avaliativo ... 89

(12)

Gráfico 2 - Metodologias utilizadas para o ensino de programação ... 32

Gráfico 3 - Campo de desenvolvimento das pesquisas sobre o ensino de programação... 34

(13)

1.1 Problema de Pesquisa ... 17

1.2 Objetivos ... 18

1.3 Justificativa ... 18

1.4 Estrutura do trabalho ... 19

2 REFERENCIAL TEÓRICO ... 20

2.1 A programação de computadores e o processo de ensino/aprendizagem ... 20

2.1.1 O que é programação de computadores ... 20

2.1.2 O ensino de programação no Brasil ... 22

2.1.3 O ensino de programação e suas dificuldades ... 25

2.1.4 Ferramentas de apoio ao ensino de programação ... 27

2.2 Histórico da tecnologia musical ... 35

2.3 Teoria da aprendizagem significativa ... 39

3 METODOLOGIA ... 43

3.1 Delineamento geral da pesquisa ... 43

3.2 Lugar e público alvo da pesquisa ... 46

3.4.1 Coleta e análise de dados ... 49

4 PROPOSTA ... 52

4.1 A música e programação de computadores ... 52

4.1.1 Relação entre conteúdo de música e programação de computadores ... 56

4.2 Lilypond / Frescobaldi ... 59

5 DESCRIÇÃO E ANÁLISE DE RESULTADOS ... 83

5.1 Resultados ... 84

(14)

5.3.1 Recomendações para Estudos Futuros ... 96 REFERÊNCIAS ... 98 APÊNDICE ... 111

(15)

1 INTRODUÇÃO

O computador tem sido considerado por pesquisadores, músicos e educadores, uma ferramenta extremamente atraente para criar e manipular sons, ferramenta de apoio metodológico na educação musical, além de meio indispensável na produção e distribuição da música. Sua precisão, possibilidades para o desenvolvimento de novos timbres e potencial para automação sonora fazem dele uma plataforma atraente para experimentar e fazer música.

Esse processo só é possível quando podemos dizer a um computador o que e como fazer. Para que o computador possa realizar as atividades solicitadas por um usuário, são desenvolvidos programas com finalidades específicas para uma determinada função. Desta forma, um programa é uma sequência de instruções para um computador e uma linguagem de programação é uma coleção de regras sintáticas e semânticas para especificar essas instruções e, eventualmente, fornecer a tradução de programas escritos por humanos às instruções correspondentes que computadores executam.

Na história da computação, muitos foram os projetos para instruir computadores, entre elas estão as linguagens de programação. Ao contrário da maioria das outras classes de interfaces homem-computador, as linguagens de programação não executam diretamente nenhuma tarefa específica (como processamento de texto ou edição de vídeo), mas nos permitem criar softwares que podem executar praticamente qualquer função personalizada. A linguagem de programação atua como um mediador entre a intenção humana e as instruções correspondentes que fazem sentido para um computador. Os programas existem em muitos níveis, desde o código assembler (extremamente baixo nível) até linguagens de script de alto nível que frequentemente incorporam estruturas mais legíveis, como aquelas que se assemelham a linguagens faladas ou representação gráfica de objetos familiares. Portanto, o computador enquanto máquina, com seus componentes (hardware) é uma ferramenta genérica que pode ser configurado ou programado (software) para demandas e atividades específicas.

Desta forma, com o advento da tecnologia e aplicabilidade nas mais diversas áreas do

conhecimento, o ensino da programação de computadores é um tema estudado e discutido

amplamente devido as diversas formas de se abordar o aspecto da aprendizagem nesta área. A

importância do ensino da programação para novos estudantes dessa área não está somente no

(16)

conteúdo abordado, mas também na capacidade de transpor alguns conceitos conhecidos de outras áreas para uma linguagem de programação (SALGADO, 2013).

É possível observar que o processo de ensino/aprendizagem de programação tem gerado desistência, abandono de cursos, grandes índices de reprovação, cenários esse, complexo para estudantes e professores. A literatura aponta diversos fatores para essas ocorrências, como falta de competências na resolução de problemas, poucas habilidades matemáticas, baixo nível de abstração, dificuldades de interpretação do problema e compreensão de texto por parte dos estudantes. Diversas são as maneiras ou estratégias que podem ser adotadas no ensino de programação em cursos superiores nas mais diversas áreas, sendo que cada vez mais, professores buscam maneiras motivadoras para transmitir para os alunos os conceitos que envolvem as técnicas de programação.

Segundo Greening (2000), a estratégia pedagógica mais comum de ensino de programação se constitui em aulas teóricas que são complementadas por laboratórios onde os alunos reproduzem as aulas, através de uma linguagem de programação. Embora esta seja uma estratégia importante dentro do processo de ensino da programação ela não deve ser isolada, pois pode acabar por gerar um processo de reprodução daquilo que foi transmitido em sala de aula em detrimento com a real construção do conhecimento.

Ainda segundo Greening (2000), as principais dificuldades encontradas durante o processo de aprendizagem são reflexos de diversos problemas como lógica de programação e a não familiaridade com um determinado paradigma. É fundamental haver, durante o processo de aplicação dos conceitos, um maior foco na solução do problema levando em consideração a vivência e os conhecimentos trazidos previamente pelos estudantes. Segundo Zaina (2005), as diretrizes que regem o ensino da programação interligadas com as necessidades de formação profissional tornam claro que a interdisciplinaridade entre diferentes conteúdos que compõem o eixo do ensino de programação, são de maneira geral, uma forma de mostrar ao aluno como diversos conteúdos de disciplinas diferentes podem ser integrados para a solução de um problema.

Desta forma, considerando o panorama sobre dificuldades e propostas para superar

essas barreiras apontadas pela literatura, propõe-se um trabalho que tem aderência a pesquisas

sobre processos metodológicos e estratégias de ensino. Além disso, buscou-se um alicerce na

(17)

Teoria de Aprendizagem Significativa elaborada por David Ausubel, propondo uma abordagem significativa na apresentação dos conteúdos de programação aos estudantes.

Na Teoria da Aprendizagem Significativa considera-se que o fator mais importante para que a aprendizagem ocorra, é verificar aquilo que o estudante já sabe ou conhece, para que estes conhecimentos prévios sirvam como ponto de ancoragem para os novos conhecimentos a serem adquiridos. Ao considerarmos que para músicos iniciantes em computação, a programação de computadores é um assunto completamente novo, a ausência de conhecimentos prévios que possam ser relacionados pode tornar o processo de ensino/aprendizagem mais delicado. Assim, ao se trabalhar com um assunto desconhecido é importante resgatar alguma referência que sirva de ponto de ancoragem para os novos conhecimentos.

Desta forma, na pesquisa propomos a utilização do conhecimento prévio sobre música como ponto de partida e o software Frescobaldi como ferramenta de apoio ao ensino de programação para músicos.

1.1 Problema de Pesquisa

As rápidas mudanças provocadas pela tecnologia levaram a novas formas de se comunicar e novos modos de produção. Com larga aplicação de tecnologia em diversos segmentos, qualquer profissional poderá ter uma forte interação entre softwares e dispositivos eletrônicos que darão um ganho de produtividade e eficiência. Desta forma, as habilidades desenvolvidas ao aprender programação são úteis para qualquer profissional ao planejar o uso de sistemas computacionais ou ferramentas em sua área de atuação.

Sendo assim, o cenário que orientou esse trabalho é o de que uma proposta de ensino

fundamentada na Aprendizagem Significativa possibilite a aprendizagem de programação

para músicos. Partindo desta proposta, algumas das contribuições esperadas são facilitar o uso

prático do computador na elaboração de soluções para demandas como a criação de webpage

para divulgar seu trabalho, criação de aplicativos que auxiliem o professor em sala de aula,

optimização de softwares para gravação, entre outros. Desta forma elaborou-se a seguinte

questão norteadora para esta pesquisa:

(18)

Quais são as principais possibilidades de uso do software Frescobaldi através da aprendizagem significativa como ferramenta de ensino da programação de computadores para músicos?

1.2 Objetivos

A objetivo deste trabalho é introduzir práticas com o software livre Frescobaldi como ferramenta de apoio ao ensino de linguagem de programação para músicos através de uma metodologia baseada na Teoria da Aprendizagem Significativa, que leve em consideração o conhecimento prévio de música que possa ser relacionado com computação. Além disso, o trabalho apresenta os objetivos específicos:

 Identificar dificuldades e soluções propostas para aprendizagem de programação de computadores presentes na literatura;

 Compreender a relação entre música e tecnologia;

 Identificar as principais relações entre o conteúdo de programação para computadores e música;

 Compreender o funcionamento do software Frescobaldi

 Elaborar e implementar uma proposta baseada na aprendizagem significativa ;

 Analisar as contribuições desta proposta.

1.3 Justificativa

Qualquer indivíduo relacionado à música é invariavelmente requisitado a um envolvimento com a tecnologia, travando contato com um linguajar que se estende desde o mero manuseio de um aparelho de som até ao funcionamento de complexos processadores digitais de áudio. Sendo assim, considera-se de grande relevância o ensino de programação de computadores para músicos, proporcionando conhecimento que dará suporte na elaboração de soluções para os seus problemas, além de promover formas de aprendizagem mais eficientes e efetivas através da aplicação da tecnologia no ensino da música.

Este trabalho está inserido em um contexto interdisciplinar com abordagem

educacional, computacional e musical. Desta forma, esta pesquisa contribui para o campo da

computação, tendo como enfoque a informática na educação e ensino de música para

programadores, contribuindo com trabalhos já desenvolvidos na área do ensino de

(19)

programação, bem como no campo da música, onde estão compreendidas a educação musical e composição.

1.4 Estrutura do trabalho

O presente trabalho está organizado da seguinte forma:

No Capítulo 2 apresentam-se as bases teóricas que subsidiam e fundamentam a pesquisa, partindo de definição sobre programação de computadores, passando pelo ensino de programação no Brasil com seus desafios e propostas de soluções dando enfoque as principais ferramentas de apoio utilizadas no ensino de programação. Também neste capitulo faremos uma abordagem histórica sobre a evolução da tecnologia e computação na música até a descrição da teoria de aprendizagem significativa que servirá de base a nossa proposta de ensino.

O Capítulo 3 descreve a metodologia utilizada para o desenvolvimento deste estudo, bem como os procedimentos metodológicos, referenciando os instrumentos de coleta de dados e as atividades que serão desenvolvidas.

Já no Capítulo 4 é descrito a ferramenta Frescobaldi que será utilizada durante a aplicação da proposta desenvolvida neste trabalho bem como as principais relações entre o conteúdo de programação e de música.

No Capitulo 5 serão descritos os dados coletados junto com a discussão desses dados.

(20)

2 REFERENCIAL TEÓRICO

Este capítulo apresenta os pressupostos teóricos que norteiam este trabalho.

Inicialmente são descritos alguns conceitos de programação de computadores juntamente com algumas dificuldades apresentadas no processo de ensino/aprendizagem de introdução a programação e as soluções propostas com enfoque nas ferramentas que são utilizadas como apoio neste processo encontradas na literatura.

No segundo momento será exposto um breve histórico da relação entre música e tecnologia computacional, desde as primeiras maquinas capazes de transformar meio físico (onda sonora) em pulso elétrico, passando pelos experimentos com softwares para a sintetização de sons, até os mais modernos equipamentos de gravação, manipulação sonora e distribuição da música.

Por fim, apresentamos a teoria da aprendizagem significativa de David Ausubel que servirá como ponto de apoio a esta proposta e como ela poderia contribuir no ensino/aprendizagem de programação de computadores para músicos.

2.1 A programação de computadores e o processo de ensino/aprendizagem

Os computadores são considerados como uma ferramenta indispensável a vida moderna, alterando significativamente o modo de vida das pessoas. Essas mudanças acontecem em razão de desenvolver-se maquinas, ferramentas e aplicações para as mais diversas demandas da humanidade, com o auxílio da programação desses dispositivos para as mais diversas finalidades.

Na subseção abaixo será apresentada a linha central do que é programação de computadores e como ela acontece.

2.1.1 O que é programação de computadores

Hoje, para a maioria dos usuários o computador é um dispositivos simples de utilizar e isso é possível devido aos avanços que o tornaram cada vez mais intuitivo e de fácil interação.

A facilidade de interação entre o homem e a máquina se dá através de softwares que são

desenvolvidos com esse objetivo. Um software ou programa de computador, é o resultado da

compilação ou interpretação de um conjunto de instruções (roteiros) elaboradas para

realização de uma tarefa ou resolução de um problema. Estas instruções devem seguir padrões

(21)

de sintaxe e regras para que possam ser compreendidas e executadas pelo computador. O desenvolvimento da solução e implementação por meio da codificação engloba criar ou deduzir o raciocínio necessário para resolução do problema pelo computador, ou seja, o programador deve pensar igual a um computador no momento em que vai escrever o seu programa.

O processo de desenvolvimento de um programa de computador possui inúmeras etapas, que vão desde o estudo do problema, estrutura e arquitetura, possíveis erros e soluções até a implementação do software em um linguagem de programação

Há diversas linguagens de programação com características específicas. A escolha da linguagem a ser utilizada está associada a diversos fatores, dentre os mais importantes pode-se citar o paradigma de desenvolvimento do software. Um paradigma pode ser definido como um modelo de programação, ou seja, é um padrão utilizado pelo programador para orientar a maneira como o software será desenvolvido. (BERSSANETTE, 2016, p.17)

Assim, programar nos diferentes paradigmas significa representar segundo padrões diferentes a solução do problema a ser resolvido. Pode-se dizer que um mesmo problema pode ser abordado empregando qualquer um dos paradigmas existentes, resultando em maior ou menor esforço do programador.

...programar computadores é uma atividade que requer o conhecimento do conteúdo que está sendo tratado, o domínio de uma linguagem de programação onde a solução do problema deve ser representada, e criatividade, uma vez que há sempre inúmeras maneiras de se chegar a uma solução por meio da programação. A programação de computadores é uma atividade exigente, que requer do programador certas habilidades a fim de que possa implementar soluções para um determinado problema e representa-las no ambiente computacional. A programação está relacionada com outras atividades como especificação, projeto e modelagem. (BERSSANETTE, 2016, p.17)

Para a execução de todas estas atividades, a literatura menciona diversas características, visando sintetizar as principais, apresentamos o Quadro 1.

Principais fatores envolvidos na programação mencionadas na literatura

Habilidade/Competência Definição/relação com a programação Autores

Raciocínio lógico / Raciocínio crítico /Pensamento Sistêmico

Processo de estruturação do pensamento de acordo com as normas da lógica que permite chegar a uma determinada conclusão ou resolver

um problema.

(DEREMER, 1993); (WILSON; SHROCK, 2001); (RAABE; SILVA, 2005); (PEREIRA

JÚNIOR et al.,2005); (SANTOS; COSTA, 2006); (GOMES; MENDES, 2007)

(22)

Resolução de problemas

Habilidade que envolve processos cognitivos como criatividade e racionalidade, a partir de um conjunto de meta-habilidades mentais tais como a

abstração, inferência, dedução entre outros, além disso, esta habilidade está diretamente ligada a

leitura e compreensão.

(FALKEMBACH; AMORETTI; et al., 2003);

(GOMES; MENDES, 2007); (MARTINS;

MENDES; FIGUEIREDO, 2010)

Abstração

Processo de generalização ao reduzir o conteúdo de informação de um conceito, a fim de reter apenas uma informação que seja relevante para

um propósito particular.

(PEREIRA JÚNIOR; RAPKIEWICZ, 2004);

(RAABE; SILVA, 2005); (HABERMAN;

MULLER, 2008); (PIVA JR; FREITAS, 2010), (MARTINS; MENDES;

FIGUEIREDO, 2010)

Habilidade matemática

Existe a crença de que os conceitos a fim de dominar problemas matemáticos são semelhantes

aos de programação.

(HENDERSON, 1987); (DEREMER, 1993);

(WILSON; SHROCK, 2001); (KOLIVER;

DORNELES; CASA, 2004); (RAABE;

SILVA, 2005); (GOMES, A.; MENDES, 2007); (MOTA et al., 2009)

Quadro 1 - Síntese dos principais fatores envolvidos na programação mencionadas na Literatura (BERSSANETTE, 2016)

Observando o Quadro 1 é possível constatar que programadores experientes possuem um conjunto de recursos (habilidades, competências, experiências) que podem utilizar em qualquer parte do processo da solução do problema para computador. Portanto, o aprendizado de programação está associado ao desenvolvimento deste conjunto de recursos. Buscar metodologias que desenvolvam de forma conjunta essas habilidades e competência podem trazer resultados significativos para o processo de ensino e aprendizagem.

2.1.2 O ensino de programação no Brasil

No Brasil, o ensino de programação ocorre principalmente nas Universidades, em cursos superiores nas áreas de Computação e Informática. Esse conteúdo também é trabalhado em alguns cursos técnicos profissionalizantes subsequentes ou na modalidade integrada ao ensino médio. Também é possível observar algumas iniciativas relacionadas ao ensino de programação na educação básica com o uso de ferramentas mais lúdicas.

Segundo as diretrizes curriculares para os cursos de informática e computação do

MEC, a disciplina de Programação faz parte da área de formação básica em Computação e

(23)

Informática, juntamente com as matérias de computação, algoritmos e arquitetura de computadores (BRASIL, 2001).

Geralmente o processo inicial de ensino/aprendizagem de programação ocorre por meio de um conjunto de disciplinas introdutórias que são identificadas por nomes como: algoritmos, lógica de programação, linguagem de programação, técnicas de programação entre outras. Estas disciplinas têm como objetivo fornecer aos alunos os conceitos básicos de programação e isto representa um pequeno conjunto de comandos e conceitos, dos quais os alunos devem utilizar para implementar soluções para um determinado problema e representa-las num ambiente computacional.

(BERSSANETTE, 2016, p.20)

A programação é possivelmente uma das únicas matérias que tenta ensinar métodos de resolução de problemas gerais, visto que em cursos como química, matemática e física, o estudante lê e aprende conceitos para se resolver problemas específicos não sendo capaz de generalizá-los (GRIES, 1974).

Alguns aspectos fundamentais em um curso introdutório seriam: 1º - Identificar um problema; 2º - Como resolver problemas; 3º - Como descrever uma solução algorítmica; 4º - Como verificar se um algoritmo está correto (GRIES, 1974; GOMES; HENRIQUES;

MENDES, 2008).

De modo geral, nestas disciplinas introdutórias, o conteúdo tratado inclui principalmente a descrição dos passos necessários para se solucionar um problema, entradas e saídas, constantes e variáveis, tipos primitivos de dados, instrução de atribuição, operadores aritméticos, relacionais e lógicos, estruturas simples de controle de fluxo, decisão e repetição.

Esses conceitos normalmente são tratados dentro de algoritmos e evita-se num primeiro momento o contato com a linguagem de programação.

Ao analisarmos o Quadro 1 que destaca os principais fatores envolvidos na programação mencionadas na literatura vemos que alguns conteúdos poderiam ser mais explorados, o que seria uma via possível para se conter problemas no aprendizado, a evasão e a desistência. A exploração de aspectos como raciocínio lógico, raciocínio crítico, conhecimento prévio, pensamento sistêmico e abstração deve andar aliados a fatores práticos relacionados aos passos necessários para se solucionar um problema mencionadas no parágrafo anterior.

Desta forma, a realização de atividades práticas podem ter uma grande importância,

pois conforme apontam (HABERMAN; MULLER, 2008; NEDSSEN; CASPERSEN, 2008),

(24)

a forte carga de conceitos abstratos presentes no processo da elaboração e implementação da solução do problema no ambiente computacional pode não ser motivador para continuar os estudos

Sendo assim, é importante dar oportunidade ao estudante de observar a execução de um programa e seus resultados, o que lhe oferece mais um caminho para tratar dificuldades encontradas em aspectos teóricos, uma vez que outra limitação encontrada em alguns cursos é justamente, deixar de enfatizar a solução de problemas para se concentrar em conceitos teóricos (NOBRE; MENEZES, 2002; KOLIVER; DORNELES; CASA, 2004; GOMES;

MENDES, 2007).

Ambrósio (2001) destaca uma característica interessante relacionada a estudantes de programação, é o ganho significativo de aprendizagem em determinados momentos por alguns alunos e com isso avançam sem problemas durante os conteúdos. No entanto outros alunos mesmo se esforçando não conseguem atingir os objetivos propostos pela disciplina.

Dunican (2002), identifica três categorias de estudantes iniciantes em programação:

I. Alunos que não têm a aptidão para compreender os conceitos básicos, muitas vezes, resultado de uma escolha equivocada do curso;

II. Alunos que podem captar os conceitos essenciais se expostos a abordagem de ensino eficaz; e

III. Alunos que são totalmente confortáveis com a natureza abstrata de conceitos de programação.

Seguindo essa classificação e assumindo que esteja correta, o professor deve ficar atento e se possível identificar os alunos pertencentes à segunda categoria, assegurar condições adequadas de ensino/aprendizagem para que a maioria destes possam progredir.

Entretanto, não devemos considerar que o processo de ensino/aprendizagem de programação possa ser considerado apenas uma receita didática.

Conforme apresentado durante esta seção, é possível observar que o aprendizado de

programação de computadores é uma das bases na formação de estudantes dos cursos de

informática e computação. Entretanto aprender a programar computadores não é uma tarefa

simples, tampouco trivial (JENKINS, 2002; ROBINS; ROUNTREE; ROUNTREE, 2003).

(25)

Ao longo dos anos, o processo de ensino/aprendizagem dos fundamentos de programação de computadores, tem se mostrado difícil para estudantes e professores, estas dificuldades levaram muitos professores e pesquisadores a estudar suas causas e propor soluções variadas que visam de alguma maneira atenuar estes problemas. Grande parte destas pesquisas são voltadas especialmente para estudantes novatos em programação, como citado em Delgado et al. (2004), Pereira Júnior e Rapkiewicz (2004).

Conforme Sheard (2009), o grande volume de pesquisas referente à programação introdutória é reflexo das dificuldades relacionadas ao tema que faz com que o ensino de programação de computadores seja considerado um dos sete grandes desafios na educação em informática.

Desta forma, essas pesquisas buscam apresentar iniciativas que podem de alguma maneira contribuir para atenuar dificuldades apresentadas no processo de ensino/aprendizagem de programação. A subseção a seguir busca apresentar parte destas dificuldades destacadas na literatura.

2.1.3 O ensino de programação e suas dificuldades

Nesta seção serão tratadas algumas das dificuldade identificadas no processo de ensino/aprendizagem e quais as ferramentas professores utilizam como apoio a esse processo.

Podemos observar na literatura relacionada as dificuldades apresentadas por alunos e professores durante o processo de ensino/aprendizagem de programação originam-se em dois fatores, sendo:

I. Os elevados níveis de insucesso; e

II. As elevadas taxas de desistência e até mesmo abandono do curso;

Berssanete (2016) observa que as disciplinas de introdução a programação podem ser consideradas um dos gargalos existentes nos cursos, dificultando ou até mesmo impedindo a continuidade dos estudantes. As dificuldades abrangem os quatro integrantes envolvidos no processo que é a instituição, o professor, o aluno, e os conteúdos.

Ao observarmos as instituições estamos falando sobre a falta de infraestrutura, como

laboratórios, equipamentos e em alguns casos até mesmo a falta de internet. Somados esses

(26)

problemas com uma metodologia que não é atraente para os alunos, temos os ingredientes para os altos índices de insucesso.

Tradicionalmente, os conteúdos das disciplinas introdutórias a programação são apresentados da forma mais comum, como em todas as áreas de conhecimento, ou seja, apresentação da teoria, construção de exemplos e proposição de exercícios práticos inicialmente simples e paulatinamente complexos (RODRIGUES JÚNIOR, 2004).

O modelo tradicional de ensino de programação não consegue facilmente motivar os alunos a se interessar pela disciplina. Pois não é clara para os mesmos a importância destes conteúdos para sua formação. Essa falta de motivação dos alunos possivelmente pode ser agravada especialmente quando os conteúdos são apresentados sem o auxílio de uma linguagem de programação, podendo dificultar o entendimento e utilidade dos conteúdos apresentados (AUSUBEL; NOVAK; HANESIAN, 1980; HABERMAN; MULLER, 2008).

Desta forma BERSSANETE 2016 apresenta outro quadro que mostra algumas dificuldades enfrentadas por professores no que diz respeito às metodologias implementadas.

Dificuldades inerentes aos professores mencionadas na literatura

Dificuldades Autores

Prática docente

(BIGGS, 2003); (JENKINS, 2001); (GIRAFFA;

MARCZAK; ALMEIDA, 2002); (PIMENTEL; FRANÇA;

OMAR, 2003); (CASPERSEN; BENNEDSEN, 2007);

(RODRIGUES JÚNIOR, 2004)

Ausência de metodologias e/ou práticas de ensino adequadas.

(JENKINS, 2001); (GIRAFFA; MARCZAK; ALMEIDA, 2002); (PIMENTEL; FRANÇA; OMAR, 2003);

(RODRIGUES JÚNIOR, 2004); (SANTOS; COSTA, 2006);

(CASPERSEN; BENNEDSEN, 2007); (GOMES;

HENRIQUES; MENDES, 2008)

Restrição de tempo (KOLIVER; DORNELES; CASA, 2004); (ROCHA et al., 2010)

Impossibilidade de acompanhamento individual da (JENKINS, 2001); (TOBAR et al., 2001); (BIGGS, 2003);

(27)

aprendizagem dos alunos (RAABE; SILVA, 2005); (ROCHA et al., 2010)

Ensino sem enfoque na resolução de problemas (NOBRE; MENEZES, 2002); (KOLIVER;

DORNELES; CASA, 2004); (GOMES; MENDES, 2007)

Abordagem pouco motivadora (BORGES, 2000); (KOLIVER; DORNELES; CASA, 2004);

(RODRIGUES JÚNIOR, 2004)

Heterogeneidade dos alunos (ROBERTS, 1999); (ROBERTS, 2001); (KOLIVER;

DORNELES; CASA, 2004)

Quadro 2 - Síntese das principais dificuldades inerentes aos professores mencionadas na literatura (BERSSANETE, 2016)

O uso de metodologias e/ou práticas de ensino adequadas pode contribuir para atenuar algumas destas dificuldades. Para isto é importante que o docente vise um ensino contextualizado com enfoque na resolução de problemas, e sempre que possível utilizando-se de abordagens motivadoras levando em consideração os conhecimentos prévios do aluno, com exemplos do dia a dia.

Nobre e Menezes (2002) apontam as seguintes dificuldades vivenciadas pelos professores:

I. Reconhecer as habilidades inatas de seus alunos;

II. Apresentar técnicas para soluções de problemas;

III. Trabalhar a capacidade de abstração do aluno, tanto na busca das possíveis soluções como na escolha da estrutura de dados a ser utilizada; e

IV. Promover a cooperação e a colaboração entre os alunos.

A literatura apresenta desta forma algumas soluções para minimizar estes problemas encontrados durante o processo de ensino. Na subseção seguinte será apresentado uma das soluções presentes na literatura que visam atenuar estas dificuldades, que é o utilização de ferramentas que auxiliam nesse processo.

2.1.4 Ferramentas de apoio ao ensino de programação

O ensino de programação envolve a escrita de código, que pode acontecer dentro de

ferramentas desenvolvidas para esse fim. Infelizmente grande parte destes ambientes são

(28)

elaborados mais para fins profissionais do que pedagógicos. Assim, um dos caminhos adotados por professores é buscar ferramentas desenvolvidas com o intuito de ajudar estudantes. Nesta subseção será apresentado o resultado de um mapeamento sistemático realizado com objetivo de identificar e mapear as ferramentas utilizadas, bem como o objetivo de utiliza-las.

Para esse mapeamento foram elaboradas cinco questões de pesquisa que levam em consideração a evolução histórica de trabalhos na literatura, as principais ferramentas utilizadas no apoio a metodologia, a acessibilidade destas ferramentas (softwares livres ou pagos), qual o tipo de metodologia utilizada (ex: games, interdisciplinar), e se as mesmas são utilizados na educação básica ou superior.

Num olhar histórico na literatura sobre novas experiências no uso de aplicações encontramos 34 trabalhos de pesquisa no recorte temporal de três anos.

1

10

23

0 10 20 30

2014 2015 2016

Histórico de Publicações

Gráfico 1 -Evolução histórica de publicações

Observando a figura acima, podemos perceber que e evolução histórica de publicações

sobre metodologias e ferramentas sobre o ensino de programação nos principais eventos e

periódicos brasileiros tem apresentado um grande salto. Ao olharmos um pouco para o ensino

básico, podemos observar que o ensino normalmente é focando na utilização das tecnologias

com o intuito de alfabetização digital, ou seja, fornecer o acesso as tecnologias. Para mudar

esse cenário, precisamos pensar em um ensino básico com proficiência digital, incluindo o

pensamento computacional e a programação. Segundo Wangenheim (2014), isso atualmente é

uma tendência mundial e existem diversos ambientes para ensinar computação para cada faixa

etária.

(29)

O segundo ponto levantado é a relação de quais ferramentas são utilizadas no processo metodológico de ensino. Pensar numa metodologia que atraia a atenção do estudante nos momentos iniciais do ensino é de fundamental importância no processo de ensino aprendizagem e em se tratando de ensino de programação o uso de ferramentas ou aplicativos para a execução de tarefas é indispensável.

Porém, o fato de utilizar alguma ferramenta não garante que os objetivos do processo de ensino aprendizagem sejam alcançados. Diante disso, é fato de que o conhecimento e o domínio do saber são de responsabilidade do professor, entretanto, o uso de aplicações de forma lúdica e interdisciplinar, poderá ser uma ferramenta didática quando na transposição didática desse saber. Através da técnica, o conhecimento poderá melhor se adequar ao perfil dos nossos alunos na contemporaneidade.

Todos os artigos abordam metodologias de ensino de programação, mas alguns deles não citam a utilização de ferramentas ou aplicativos. O quadro abaixo mostra as principais ferramentas utilizadas no apoio as metodologias de ensino de programação.

Ferramentas utilizadas como apoio a metodologia de ensino.

Ferramentas Autores Descrição

SCRATCH

(BATISTA; CASTRO JR.; BOGARIM; LARREA, 2015); (BELCHIOR; BONIFÁCIO; FERREIRA,

2015); (CARDOSO, ANTONELLO, 2015);

(GALDINO; NETO; COSTA, 2015); (GOMES;

MELO; TEDESCO, 2016); (LOPES; DUARTE;

NOGUEIRA; LOPES; FERREIRA, 2016);

(MATTOS; FERREIRA; ANACLETO, 2016);

(OLIVEIRA; RODRIGUES; QUEIROGA, 2016);

(RAFALSKI; SANTOS, 2016); (SALAZAR, ODAKURA, BARVINSKI, 2015); (SANTOS;

MONTEIRO; MACHADO; LINS; RAMOS;

BATISTA, 2015); (SILVA; GARCIA; OLIVEIRA;

TRINDADE; SGARBI; NASCIMENTO, 2016);

(SILVA; ARANHA; SANTOS, 2016); SOUZA;

MOMBACH, 2016); (TEIXEIRA; ORO;

BATISTELA; MARTINS; PAZINATO; 2015);

(VERA; MIRANDA; COSTA; MATOS, 2016);

Ferramenta desenvolvida dentro do mesmo contexto lúdico proposto pelo LOGO, nesta utiliza-se a metáfora na qual as instruções de

um programa são elaboradas a partir de blocos de comandos que se encaixam uns nos outros. Pode ser usada para elaboração

de jogos de computador, histórias interativas, obras de arte gráfica e animação

por computador, e outros projetos de multimídia.

(30)

(WANGENHEIM; NUNES; SANTOS, 2014)

APP INVENTOR

(BATISTA; CASTRO JR.; CANTERO; BOGARIM;

LARREA, 2016); (RIBEIRO; MANSO; BORGES, 2016)

A plataforma fornece a possibilidade dos estudantes praticarem conceitos de algoritmos para elaborarem aplicativos que serão utilizados em seus dispositivos móveis.

ARDUINO

(ALBUQUERQUE, BREMGARTNER, LIMA, SALGADO, 2016); (MARINHO; MOREIRA;

COUTINHO; PAILLARD; NETO, 2016)

Plataforma de prototipagem eletrônica de hardware livre e de placa única, projetada com um microcontrolador e suporte de

entrada/saída embutido e possui uma linguagem de programação padrão baseada

em C/C++.

SOCRATIVE (IZEKI; NAGAI; DIAS, 2016)

Ferramenta que permite ao professor engajar e avaliar os alunos enquanto a aprendizagem

ocorre. O professor pode criar um questionário e aplicá-lo de diferentes formas,

de acordo com a metodologia de ensino empregada. O aluno deverá responder o questionário em um tempo total determinado

pelo professor, que pode visualizar as respostas de cada aluno ao mesmo tempo em

que eles respondem as perguntas.

CODE BAYMAX (MARTINS; BRELAZ; NASCIMENTO; ALFAIA;

MARTINS, 2016)

O Code Baymax incorpora conceitos básicos de pensamento lógico como algoritmos (sequência de instruções para resolver um

problema), funções, ciclos, sub-rotinas e loops. Isso oferece às crianças a satisfação

de solucionar desafios cada vez mais complexos por meio de novas formas de

jogar e pensar.

CODE STUDIO (JESUS; SILVA, 2016); (LOPES; DUARTE;

SOUSA; SOUZA; PEREIRA, 2016)

O Code Studio é um editor de código-fonte e suporta um número de linguagens de programação e um conjunto de recursos que podem ou não estarem disponíveis para uma

dada linguagem.

LEGO (CAMBRUZZI; SOUZA, 2015) Lego Mindstorms é uma linha do brinquedo LEGO voltada para a educação tecnológica e

(31)

MINDSTORMS que possui uma plataforma própria para programação.

LORD OF CODE (NAGANO; DIRENE, 2016); (SOUZA; COSTA;

SILVA; TERRA, 2016)

Inserindo o aspecto lúdico dos jogos a desafios envolvendo lógica de programação,

a ferramenta Lord of Code (LoC) visa auxiliar na aprendizagem de programação

por meio de um jogo que estimula a interpretação e resolução de problemas em

códigos escritos em Java.

PYSCHOOL.NET (OLIVEIRA; NOGUEIRA; MOTTA; MEIRELES, 2015)

Uma plataforma de ensino que disponibiliza um editor de programas e um campo de provas onde se pode testar o programa e

construir jogos.

ROBOCODE

(AMARAL; SILVA, PANTALEÃO, 2015);

(RODRIGUES; QUEIROGA; OLIVEIRA; MORE, 2016); SANTIAGO; KRONBAUER, 2016

É um jogo de programação, onde o objetivo é desenvolver um robô para lutar contra outros robôs. Utilizando as linguagens de programação .NET (C#) ou JAVA, podem ser implementadas as classes e objetos que definirão a inteligência artificial por trás da

estratégia de batalha do seu robô.

SPYDER (CARVALHO; OLIVEIRA; GADELHA, 2016);

(MARTINS, REIS, MARQUES, 2016)

É uma IDE1 para a linguagem Python e possui recursos que auxiliam o aprendizado

do programador iniciante, tais como destacador de sintaxe, enumerador de linhas,

visualizador do estado de variáveis, bibliotecas Numpy e MathPlotLib

Quadro 3 - Ferramentas de apoio ao ensino de programação encontradas no mapeamento

O SCRATCH possibilita que as crianças elaborem animações, histórias interativas ou jogos, tornando fácil a combinação de gráficos, imagens, fotos, música e som. Com o SCRATCH é possível criar personagens que dancem, cantem e interagem uns com os outros.

1 IDE - Integrated Development Environment ou Ambiente de Desenvolvimento Integrado, é um programa de computador que reúne características e ferramentas de apoio ao desenvolvimento de software.

(32)

Permite também integrar imagens com efeitos de som e clipes musicais para criar um cartão interativo de aniversário para um amigo ou para criar um mapa interativo. Segundo Resnick (2009), diversas pesquisas mostram que o uso do SCRATCH contribui positivamente no ensino de computação em escolas. Criando programas de software com o SCRATCH, crianças aprendem a pensar criativamente, a trabalhar de forma colaborativa e a pensar de forma sistemática na solução de problemas.

Quanto a acessibilidade as ferramentas livres no âmbito educacional tornaram-se importantes no combate à exclusão social, uma vez que propiciam a redução de custos na elaboração de laboratórios e de projetos voltados para educação e inclusão digital. Em geral, eles apresentam uma boa qualidade e funcionam em máquinas com configurações de hardware mais antigas, o que ajuda a reduzir os custos.

As publicações encontradas no mapeamento sistemático trazem 11 ferramentas que são utilizadas para o ensino de programação, todas são livre ou possuem versões livres.

Algumas aplicações têm versões básicas livre e versões completas que necessitam de aquisição para que funcionem. Como a todos os trabalhos tratam de experimentos com as ferramentas, foram utilizadas as versões básicas.

Quanto ao emprego do software dentro da metodologia de ensino temos o gráfico abaixo.

Robótica; 2

Gamificação / Lúdico; 22 Tradicional; 1

interdisciplinar;

7

Mediação Online; 2

Metodologias

Gráfico 2 - Metodologias utilizadas para o ensino de programação

(33)

Como demonstra o gráfico acima, na grande maioria dos estudos, a Gamificação/Lúdico é a metodologia mais utilizada no processo de ensino aprendizagem de programação. O termo gamificação, segundo Kapp (2012), significa utilizar os mecanismos, a estética e o pensamento dos jogos com o objetivo de encorajar as pessoas, motivar as ações, promover aprendizado e resolver problemas. O termo teve origem na indústria de mídias digitais em 2008, mas foi popularizado somente na segunda metade de 2010 (DETERDING et al, 2011).

De acordo com sua definição, a gamificação vem sendo utilizada em sites e aplicativos móveis voltados ao consumidor com a finalidade de convencer as pessoas a utilizarem determinada plataforma. Muntean (2011) relata que os princípios da gamificação podem ser aplicados em processos de jogos educacionais associando a motivação intrínseca à extrínseca objetivando melhorar o engajamento e interesse do aprendiz. A gamificação é sustentada a partir dos princípios do design de jogos. Esses princípios definem o que são jogos e como eles funcionam, bem como os elementos do design que o compõem. Os jogos educacionais destacam-se como ferramentas que facilitam no ensino e aprendizagem dos usuários, no entanto esta deve estar interligada à outros recursos de aprendizagem (MUNTEAN, 2011).

Depois aparecem trabalhos que utilizam uma abordagem interdisciplinar, tendo como princípio a ligação com outras áreas do conhecimento, como matemática, física e música.

Outro ponto observado no mapeamento foi quanto aos espaços ou instituições onde as ferramentas são utilizadas. A introdução de conceitos de Computação, enquanto ciência, na educação básica é de fundamental importância e relevância (CSTA, 2011). No entanto, seu ensino, no Brasil, por muitos anos tem tido enfoque nos âmbitos da graduação e pós-graduação. Atualmente vemos uma grande mudança nesse sentido, pois com o advento da tecnologia, a facilidade de acesso e o incentivo do poder público tem mudado esse paradigma.

O ACM Model Curriculum for K-12 Computer Science – (CSTA, 2011) defende que é

necessário o desenvolvimento de habilidades computacionais na Educação Básica, no sentido

da Ciência da Computação ser importante intelectualmente, promover múltiplos caminhos

profissionais futuros, desenvolver a capacidade de resolver problemas, apoiar e relacionar-se

com outras ciências e motivar os estudantes.

(34)

Neste mapeamento constatamos que grande parte dos trabalhos de pesquisa se desenvolvem na educação básica, visando a introdução dos elementos computacionais de forma lúdica, com os mais diversos objetivos, como ajudar na aprendizagem de conteúdos de matemática.

0 10 20 30

Básico Técnico Superior

Concentração de pesquisas nos níves de Ensino

Gráfico 3 - Campo de desenvolvimento das pesquisas sobre o ensino de programação.

Desta forma, observa-se que as pesquisas brasileiras com relação as metodologias de ensino utilizadas no ensino da programação e quais ferramentas dão apoio a essa metodologia, constatou-se o aumento no número de publicações relacionadas a ambientes de ensino de programação com o passar dos anos e a preferência dos professores em utilizar o SCRATCH, com ferramenta de apoio, pois tem um caráter mais lúdico para o ensino de programação. Tal fato está diretamente ligado a tendência de Gamificação das ferramentas, situação que prende mais a atenção do estudando, imergindo o mesmo, dentro de um jogo onde ele acaba aprendendo a programação.

Os espaços onde os estudos são desenvolvidos também chamam a atenção, pois durante muitos anos o ensino de programação estava restrito as universidades e com o advento das tecnologias, o barateamento da mesma e os incentivos governamentais é possível perceber que atualmente o ensino de programação está presente também na educação básica.

Portanto, nesta subseção apresentamos um breve panorama sobre as principais

dificuldades encontradas no ensino de programação bem como uma das propostas da

literatura para minimizar estas dificuldades. Neste caso, temos as ferramentas de apoio

pedagógico, que tendem a ser mais lúdicas do que os softwares tradicionais.

(35)

Na próxima seção será apresentado um panorama sobre a relação da tecnologia e computação com a música que historicamente estão interligadas, seja na produção musical ou no processo de ensino/aprendizagem.

2.2 Histórico da tecnologia musical

A música como expressão artística, tem o objetivos de expressar o sentimento da forma mais pura. Como o pintor usa arte para demonstrar seus sentimentos, o escultor usa sua obra para transparecer suas impressões interiores, o músico irá utilizar suas ferramentas para mostrar seus sentimentos e devaneios, suas opiniões ou mesmo a ausência delas sobre determinado assunto. Desta maneira, a música necessariamente não necessita um computador para existir, porém, com a advento da computação aliada a ferramentas e meios eletrônicos tem produzido ao longo dos anos, principalmente a partir da década de 70, alterações na maneira de fazer, interagir e divulgar música. O avanço da computação na área da música é marcante a tal ponto de utilizar inteligência artificial, redes neurais e realidade virtual na construção de sistemas inovadores e que permitem uma grande flexibilidade ao usuário.

A invenção do telefone por Alexander Graham Bell (1876), estabeleceu que o som podia ser convertido em sinal elétrico e vice-versa. Por sua vez, a invenção do gramofone, que rapidamente se seguiu, estabeleceu as possibilidades de armazenamento e alteração do som.

Por volta de 1906, Thaddeus Cahill criou o Dinamofone, primeiro instrumento que produzia som por meios elétricos. A geração do som era feita a partir de dínamos e a transmissão por meio de cabos telefônicos.

Segundo Gohn (2009), a invenção do oscilador a válvula por Lee De Forest, representa outro momento histórico de grande importância. O oscilador, que representa a base para a geração do som eletrônico, tornava possível a geração de frequência a partir de sinais elétricos e, consequentemente, a construção de instrumentos eletrônicos mais fáceis de manejar. O primeiro desses foi desenvolvido pelo russo Lev Termen (Leon Theremin), em 1919/1920 e foi posteriormente melhorado por volta da década de trinta. Este instrumento, o

“Theremin”, usava dois osciladores controlados pelo movimento das mãos do executante em

torno de duas antenas verticais, sem nunca tocá-las. Outros instrumentos eletrônicos

rapidamente o seguiram (GOHN, 2009). O inventor alemão Jörg Mager introduziu alguns

deles na década de trinta. O “Ondas Martenot” foi criado pelo francês Maurice Martenot e o

(36)

“Trautonium” pelo alemão Friedrich Trautwein, ambos em 1928. Neste mesmo ano o americano Lores Hammond produziu o primeiro órgão elétrico.

Os compositores de música eletroacústica geram suas composições em estúdios e laboratórios. As audições são realizadas através da reprodução das composições em fita. Este tipo de técnica foi chamada de “tape-music”, ou música para fita magnética. Tal música, independente do processo de composição (acústico ou eletrônico), tem como particularidade o fato de que a sua execução em público só poderia ser feita por meio de reprodutores de fita e amplificação eletrônica. A sua execução era exatamente a criação do compositor, eliminando com isso a ideia do instrumento/intérprete. O compositor fazia os dois papéis utilizando-se de audições para mostrar suas obras, já que essas eram concebidas em laboratórios musicais.

Ainda na década de 50, a partir da antiga idéia de criar sons usando a eletricidade, Herbert Belar e Harry Olsen inventaram o Mark II RCA Music Synthesizer, o primeiro sintetizador controlado por voltagem. Deste instrumento somente um modelo foi fabricado.

Max Mathews, desenvolveu no Bell Laboratories, em Nova Jersey, o primeiro programa de computador para a música em 1957, num computador de grande porte. O programa chamado Music I tinha uma única voz, uma forma de onda triangular, não possuía ADS

2

R e só controlava a afinação, intensidade e duração dos sons. O Music I deu origem a uma série de programas musicais como Music II, Music III e Music IV. Estes programas abriram espaço para uma “avalanche” de novos programas musicais de todas as categorias que foram criados a partir de 1976 com a difusão dos microcomputadores e a utilização de linguagens de programação de alto nível e grande portabilidade.

Na década de 50, Robert Moog era um engenheiro que montava e vendia Theremins.

Na década de 60 ele iniciou a construção de novos equipamentos que resolveu chamar de sintetizadores. Ele foi o responsável pela invenção dos primeiros sintetizadores modulares Moog, que foram mundialmente difundidos através dos primeiros tecladistas que utilizaram

2 ADSR – (Attack – Decay – Sustain – Release)- Sigla referente aos termos Ataque, Decaimento, Sustentação e Repouso e é uma das formas mais comumente utilizadas para aplicar um envelope de amplitude a um som para produzir um timbre característico de um instrumento musical.

(37)

sintetizadores em suas gravações e performances, como Keith Emerson e Wendy Carlos. A chegada do sintetizador Moog e de outros instrumentos eletrônicos semelhantes ao mercado, em 1964, representou uma revolução nas técnicas da música eletrônica.

Os sintetizadores possibilitaram o surgimento de novos gêneros musicais baseados em suas possibilidades tímbricas e de controle eletrônico dos parâmetros musicais. Os músicos, então, utilizavam a síntese para criar seus próprios sons exigidos em suas composições e que até então não eram possíveis de serem produzidos pelos instrumentos convencionais.

A música popular começou a assimilar a música eletrônica de vanguarda, e grupos ingleses de rock progressivo da década de 70 como ELP, Yes e Genesis começaram a utilizar sintetizadores em suas performances. A utilização da orquestra sinfônica, coral e sintetizadores na música popular foi difundida principalmente por Rick Wakeman com a obra Viagem ao Centro da Terra obtendo uma sonoridade ímpar até então na música popular. A utilização só de equipamentos eletrônicos originou também a música eletrônica popular, tendo como expoentes Kraftwerk, JeanMichel Jarre e Vangelis. Este último recebendo um Oscar nos EUA pela trilha sonora do filme Chariots of Fire, realizada apenas com piano e sintetizadores, abrindo ainda mais o caminho para a música eletrônica. Até então, apenas compositores eruditos com trilhas para orquestra haviam alcançado esse prêmio.

Os sintetizadores evoluíram e deixaram de ser teclados analógicos com osciladores e potenciômetros para alteração do som para se tornarem uma incrível linha de produtos que vão desde módulos de som até computadores com software que os tornam sintetizadores.

Grandes empresas fabricantes de sintetizadores ganharam o mercado como a Roland, Yamaha e a Korg. Com base nos conceitos herdados dos sintetizadores analógicos modulares, vários tipos de síntese como FM, aditiva, subtrativa, linear e modelagem física foram desenvolvidas para os sintetizadores digitais modernos.

Na década de 70 já existiam ligações entre os instrumentos musicais, mas foi só em

1983 que a MIDI - Musical Instrument Digital Interface - surgiu para padronizar as

comunicações entre instrumentos eletrônicos. Como o computador já havia sido usado para a

música, mas sem uma ligação efetiva com instrumentos do meio externo, ele foi rapidamente

empregado na ligação com sintetizadores através do interfaceamento MIDI. Essa utilização da

MIDI originou uma revolução no campo da música.

(38)

A criação dos microcomputadores pessoais e sua difusão nos anos 80 facilitou a configuração de um sistema MIDI completo pois barateou e simplificou a aquisição do hardware básico para Introdução à Computação Musical aplicações em sistemas musicais.

Logo após o padrão MIDI ser difundido, fabricantes de software iniciaram uma produção em grande escala dos mais diversos aplicativos musicais que utilizavam a comunicação entre instrumentos e o computador. No final de 1986, uma grande linha de produtos já existia. Os computadores PC multimídia tornaram o padrão MIDI e a gravação digital em computador ainda mais difundida por já apresentarem esses recursos inclusos no preço final do computador.

Além das incontáveis contribuições da computação e tecnologia à música no que diz respeito a produção sonora, também vemos inúmeras iniciativas no tocante a educação musical, onde a tecnologia tem desempenhado um papel importante. A criação de aplicativos e ferramentas que auxiliam os professores no processo de ensino aprendizagem vem crescendo com o passar dos anos.

Modelos tradicionais de educação musical tem sido aperfeiçoados com o auxílio da tecnologia por professores e pesquisadores que buscam aproximar a metodologia de ensino ao cotidiano do aluno.

Henderson Filho (2007) aponta que a tecnologia contribui significativamente para o desenvolvimento educacional, visto que além serem empregadas para dinamizar as aulas, também servem de complemento às atividades. As aulas se tornam mais interessantes, participativas, menos cansativas, mais produtivas e condizentes com a realidade atual das tecnologias digitais.

É perceptível o interesse das diversas áreas de conhecimento pelo uso da tecnologia como um recurso inovador e eficiente, no que diz respeito aos aspectos educacionais. Gohn (2009) destaca que na área da música não é diferente, “as tecnologias atuais estão sendo cada vez mais aproveitadas na educação, especialmente na área de música”.

Os caminhos da educação musical estão tomando um rumo diferente, uma vez que os

educadores estão sendo cada vez mais estimulados a propor alternativas no âmbito

tecnológico para melhorar o ensino de música, a partir de estratégias didáticas com o uso do

computador e das multimídias disponíveis (ONOFRIO, 2011).

Referências

Documentos relacionados

Para preparar a pimenta branca, as espigas são colhidas quando os frutos apresentam a coloração amarelada ou vermelha. As espigas são colocadas em sacos de plástico trançado sem

Promovido pelo Sindifisco Nacio- nal em parceria com o Mosap (Mo- vimento Nacional de Aposentados e Pensionistas), o Encontro ocorreu no dia 20 de março, data em que também

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

Se você vai para o mundo da fantasia e não está consciente de que está lá, você está se alienando da realidade (fugindo da realidade), você não está no aqui e

Nessa situação temos claramente a relação de tecnovívio apresentado por Dubatti (2012) operando, visto que nessa experiência ambos os atores tra- çam um diálogo que não se dá

A presente dissertação é desenvolvida no âmbito do Mestrado Profissional em Gestão e Avaliação da Educação (PPGP) do Centro de Políticas Públicas e Avaliação

De acordo com o Consed (2011), o cursista deve ter em mente os pressupostos básicos que sustentam a formulação do Progestão, tanto do ponto de vista do gerenciamento

Janaína Oliveira, que esteve presente em Ouagadougou nas últimas três edições do FESPACO (2011, 2013, 2015) e participou de todos os fóruns de debate promovidos