Conheça o WebShell, um ambiente de programação web.
Por Lucas Albuquerque
(lucas.almeida@ccc.ufcg.edu.br)
É notória a preocupação que a Unidade Acadêmica de Sistemas e Computação (DSC) da UFCG tem em formar desenvolvedores de software cada vez mais capacitados e que atendam às exigências do mercado. Pensando no aprimoramento do ensino e aprendizagem dos alunos, desde a sua entrada no curso, está sendo desenvolvida uma ferramenta chamada WebShell , um ambiente de programação online.

Já imaginou um ambiente de programação que não exigisse instalar bibliotecas, compilador ou coisa do tipo e que ainda pudesse ser acessado de qualquer lugar? Pois é, isso já está perto de se tornar uma realidade, graças a uma ferramenta web que está sendo desenvolvida na UFCG chamada WebShell, que inicialmente será utilizada para a linguagem de programação Python.

A motivação para o desenvolvimento do WebShell se dá em virtude de os professores não poderem acompanhar passo-a-passo a construção do código dos alunos. Tendo em vista a forma de avaliação usada, provas e exercícios, os alunos codificam o problema e enviam apenas a solução final, privando, assim, que a equipe de ensino possa avaliar a formulação gradativa do código, uma vez que é enviada apenas a solução final. Dessa forma, existe uma deficiência em avaliar quais as principais dificuldades enfrentadas pelo aluno na construção do código, em quais pontos ele se sentiu mais dificuldade ou facilidade de programar. Levando em conta esse problema, é importante que haja um ambiente de programação para os alunos em que os professores tenham total domínio e consigam coletar os passos da codificação do programa otimizando, dessa forma, a aprendizagem.

O WebShell está sob a coordenação do Prof. Dr. Dalton Serey Guerreiro e também conta com a participação de Matheus Gaudêncio do Rêgo (co-orientador) e da petiana Jéssika Renally Ribeiro Rodrigues. O financiamento da bolsa da graduanda é feito pelo Grupo PET Computação, pois faz parte da filosofia do programa a atuação do petiano em projetos de pesquisa, sendo este realizado no SPLab, que disponibiliza a estrutura física necessária ao seu desenvolvimento.

A ferramenta, que inicialmente não é open source, tem como objetivo inicial a construção de uma interface que permita que os alunos codifiquem um shell Python online usando apenas o browser, sem a necessidade de instalação de programas adicionais, além de fornecer a equipe de ensino informações sobre as etapas de codificação dos programas dos alunos. É importante salientar, que nesta primeira fase, o foco está voltado para a coleta de dados de forma eficiente.

Como vai funcionar o WebShell? A ferramenta está no domínio do App Engine, mas ainda se encontra em fase de construção e testes. Apesar disso, a ideia é que o aluno tenha uma IDE (Integrated Development Environment) de programação hospedada em um browser, a partir da qual poderá criar seus códigos e executá-los na própria página, utilizando scripts. O código em Python é, então, mapeado e executado em Javascript e depois a saída do código é impressa na página.

Protótico do WebShell

O próximo passo do projeto será permitir que a equipe de ensino acompanhe, em tempo real, a codificação da resolução do problema, algo semelhante ao que ocorre no Google Docs, quando duas ou mais pessoas podem ver e/ou editar um determinado arquivo em tempo real. Mas, existem alguns desafios pela frente, tais como:

- Implementar uma forma para utilizar os módulos de Python e as funções de leitura do teclado;

- Não bastasse o WebShell, a equipe de desenvolvimento da ferramenta pretende criar um segundo aplicativo, que vai utilizar os dados que foram coletados e armazenados pelo WebShell e analisá-los. A análise dos dados acarretará em uma série de benefícios e informações importantes, a exemplo da possibilidade de verificar qual a estratégia mais utilizada na resolução do problema.[a]

Caso tenha se interessado por essa pesquisa, contacte um dos membros do projeto ou visite o SPLab.

Jornal PETNews - Edição: Jeymisson Oliveira - Revisão: Savyo Igor e Joseana Fechine
Grupo PET Computação UFCG, 2012. All rights reserved.