Aprendizagem Colaborativa
em Comunidades Virtuais

Com o advento da pandemia do coronavírus, lidamos com o desafio de interagir ainda mais por meio de recursos digitais, com lives, cursos on-line, webnários e reuniões virtuais. Atônitos com uma quantidade enorme de informação, estamos aprendendo a filtrar e selecionar conteúdos e participações em eventos. Porém, antes mesmo da pandemia, já existia muita informação circulando na internet, e não era novidade a existência de comunidades virtuais como GitHub e Kaggle, onde desenvolvedores de softwares, cientistas de dados e aprendizes de machine learning (aprendizado de máquina) trabalham de forma colaborativa, aprendendo conceitos, aprimorando projetos e achando, coletivamente, soluções para problemas sociais e de negócios. Vamos conhecer nesse texto, um pouco de como funciona a disseminação de conhecimento nessas comunidades virtuais.

O Github é uma plataforma on-line de repositórios de arquivos e códigos computacionais que utiliza uma tecnologia de controle de versões chamada Git. Versões de trabalho são aqueles arquivos que denominamos como: versao1, versao1_1, versao1_2, muito utilizados quando desenvolvemos um trabalho ou projeto. Esse sistema de controle de versões facilita o trabalho de equipes de desenvolvedores, pois disponibiliza a todos os participantes a última versão do trabalho encaminhada ao repositório. Ou seja, cada participante da equipe pode desenvolver a sua parte de projeto em seu computador e depois uni-la à dos outros integrantes, já que sempre será notificado pela ferramenta da necessidade de sincronizar a sua versão com a última disponibilizada na plataforma. E assim é construído o projeto; se houver algum conflito entre a última versão publicada na rede e a do integrante da equipe, este deve ser resolvido por comunicação entre eles.

Os repositórios criados para hospedar os projetos podem ser públicos ou privados, se o repositório é público e os códigos são open source (código aberto), existe a possibilidade de que outros usuários da comunidade se ofereçam para colaborar com o projeto. Esses códigos open source ficam disponíveis para que outros desenvolvedores possam reutilizá-los e até aprimorá-los na busca por soluções de problemas. Essa é a forma de trabalhar da maioria das equipes de desenvolvedores de softwares que estão no GitHub, proporcionando um sistema circular de disponibilização e aprimoramento de conteúdo que beneficia a muitos.

Mas você pode se perguntar: espere, eu não sou desenvolvedor de softwares, então, como esse sistema de construção e aprendizado colaborativo que acontece no GitHub pode ajudar no meu trabalho e nos projetos de equipe dos quais participo?

Bem, considerando que o contexto do ano de 2020 redirecionou uma significativa parte das atividades profissionais para a categoria do trabalho on-line, devemos considerar que precisamos aperfeiçoar as metodologias de trabalho em equipe ou entre equipes nos ambientes virtuais para que haja uma integração mais eficiente entre as pessoas. Refletindo nesse sentido, é possível modelar ambientes coletivos de trabalhos on-line tendo como inspiração plataformas como a mencionada Github ou outras semelhantes, onde as pessoas possam desenvolver projetos ou trabalhos de forma colaborativa e até disponibilizá-los para comunidades que não estão intrinsicamente ligadas à sua equipe primária de trabalho.

O Kaggle é uma outra plataforma que também pode servir de inspiração para criação de ambientes que promovam o desenvolvimento de trabalhos colaborativos entre pessoas que não se encontrem em um mesmo espaço físico. Essa comunidade é um ambiente on-line onde participantes estudam e disseminam de forma coletiva os seus conhecimentos nos campos de Data Science (ciência de dados) e Machine Learning (aprendizado de máquina). Independentemente do nível de expertise dos usuários nesses campos de estudos, se iniciante ou avançado, todos se beneficiam da circulação de informações na plataforma.

Os participantes publicam, nessa plataforma, códigos de soluções de problemas e datasets (conjuntos de dados utilizados em desenvolvimento de projetos) que são disponibilizados a comunidade on-line. As pessoas podem visualizar, avaliar e sugerir melhorias a esses conteúdos. A partir dessas avaliações, os usuários recebem pontuações em seus perfis, que somados aos pontos por participarem de competições de machine learning promovidas pela plataforma, os posicionam em um ranking classificatório.

Por falar nisso, o Kaggle é uma das maiores plataformas de competição de machine learning do mundo, oferecendo excelentes recompensas financeiras aos vencedores, além de boas oportunidades de emprego aos mais bem colocados no ranking de pontuação da comunidade. As competições podem ser públicas, privadas ou acadêmicas e têm o objetivo de encontrar uma modelagem de dados que trará a melhor solução para o problema apresentado.

Segundo Thiago Vieira (link), analista de TI (tecnologia da informação), as competições no Kaggle funcionam da seguinte forma: uma organização quer resolver um determinado problema e contrata a plataforma como consultora, então, é lançada uma competição para que a comunidade encontre a melhor solução para esse problema. Companhias de serviço de streaming, por exemplo, já contrataram o Kaggle para melhorar os seus algoritmos (códigos) de indicação de conteúdos sob demanda.

As melhores soluções são compartilhadas durante e após o término da competição e ficam disponíveis para consultas posteriores nos fóruns, explica ainda Thiago Vieira. Assim, ao final todos ganham: o vencedor leva o prêmio, a comunidade ganha acesso a um rico material de estudo e a empresa fica com a solução.

Podemos ver, portanto, que as comunidades virtuais têm muito a nos ensinar em relação à elaboração de um mundo onde projetos e aspirações são construídos de forma coletiva e até mesmo competições geram benefícios para todos. 

Ficou interessado? Conheça o GitHub e o Kaggle, ambientes de construção coletiva de conhecimento e soluções.
Texto: Maria de Lourdes da Costa e Silva, servidora da Seção de Soluções em EaD e Desenho Instrucional – SEADI/CEFOR, mestre em Design e Tecnologia e recentemente egressa do curso “Coding Bootcamp” da Escola Nacional de Administração Pública – ENAP, que tinha o objetivo de introduzir servidores públicos no mundo da programação de computadores, ciência de dados e machine learning.
Revisão: Joel de Castro Mota, servidor da Seção de Soluções em EaD e Desenho Instrucional – SEADI/CEFOR
Responsável pelo projeto: Seção de Soluções em EaD e Desenho Instrucional (SEADI/CEFOR/STJ) 
Design gráfico: Virgílio Ataide (SEADI/CEFOR/STJ)
Imagem: iStok


Referências bibliográficas

https://github.com/ - Plataforma GitHub
https://www.youtube.com/watch?v=UbJLOn1PAKw - GitHub: o Guia Completo do Iniciante – Felipe Fontoura
https://www.zup.com.br/blog/git-github-e-gitlab - Git, Github e Gitlab: o que são e principais diferenças – Fernanda Bertola
 https://www.kaggle.com/ - Plataforma Kaggle
https://tirandolicoesdetudo.com.br/kaggle-o-que-e-como-funciona/ - Thiago Ribeiro
https://paulovasconcellos.com.br/competicao-kaggle-titanic-tutorial-5b11993774f7
https://paulovasconcellos.com.br/o-que-e-machine-learning-e-como-aprender-sem-gastar-nada-2e612f13102b
https://www.youtube.com/watch?v=mhe5e2B9bL8 - Machine Learning: como ensinar uma máquina a aprender - Nerdologia Tech
https://www.youtube.com/watch?v=ykSILAQQu6o - O que é ciência de dados - Nerdologia Tech