Pular para conteúdo

GSoC 2025

omegaUp está participando do Google Summer of Code 2025! Procuramos alunos motivados para contribuir com nossa plataforma educacional de código aberto.

Primeiros passos

Incentivamos você a visitar omegaup.org e omegaup.com para conhecer nossa plataforma e recursos. Esta é uma Lista de Ideias - esperamos que você complete a maioria dos detalhes de sua proposta e você também pode propor sua própria ideia de projeto.


Ideias de projetos

Assistente de ensino de IA

Breve descrição: Recentemente, adicionamos a função de Assistente de Ensino (humano), que tem a capacidade de fornecer revisões de código aos alunos e responder a perguntas de esclarecimento feitas pelos alunos sobre as tarefas. Neste projeto queremos criar um bot que possa responder esclarecimentos e realizar revisões de código de forma proativa e mediante solicitação. Isso ajudará a estreitar o ciclo de feedback dos alunos para que possam crescer mais rapidamente.

Resultados esperados: omegaUp possui um bot AI Teaching Assistant que pode responder perguntas de esclarecimento e realizar revisões de código, de forma proativa e mediante solicitação.

Atributo Detalhes
Habilidades Python, PHP, MySQL, LLM Prompt Engineering, APIs REST
Tamanho 350 horas
Nível Avançado
Mentores Aritra8438, heduenas

Gere editoriais problemáticos usando IA

Breve descrição: omegaUp possui uma base de problemas com milhares de problemas públicos, a grande maioria deles não possui uma solução oficial para os alunos lerem e aprenderem quando não conseguem resolver o problema sozinhos. Este projeto consiste em utilizar IA generativa e validar soluções oficiais para milhares de problemas públicos. A IA generativa também deve ser usada para validar o editorial, solicitando a geração de código com base no editorial.

Resultados esperados: Uma elevada percentagem (> 70%) de problemas existentes e novos deveria ter um editorial oficial que foi gerado e validado utilizando IA.

Atributo Detalhes
Habilidades Python, LLM Prompt Engineering, PHP, Vue.js
Tamanho 350 horas
Nível Avançado
Mentores heduenas, pabo99

Cursos públicos no GitHub

Breve descrição: omegaUp oferece muitos cursos públicos em espanhol abertos a todos. Eles foram gerenciados exclusivamente pela equipe do omegaUp, mas queremos poder gerenciá-los através do GitHub para que qualquer pessoa possa sugerir melhorias no conteúdo (por meio de solicitações pull). A Olimpíada Mexicana de Informática já faz isso em um curso público que oferece através do omegaUp. Precisamos replicar o que eles têm em nossos cursos.

Resultados esperados: O conteúdo dos cursos públicos oferecidos pelo omegaUp é gerenciado através do GitHub e qualquer pessoa pode propor melhorias através de pull requests.

Atributo Detalhes
Habilidades git/github, Python, Integração Contínua, APIs REST
Tamanho 175 horas
Nível Médio a Avançado
Mentores heduenas, tvanessa

Otimização de Cronjob

Breve descrição: Temos vários cronjobs responsáveis por coisas como atualizar classificações de alunos/escolas, conceder distintivos a alunos, etc. Queremos torná-los mais eficientes, aumentar a cobertura de testes e melhorar a capacidade de depuração.

Resultados esperados: Cronjobs tornam-se muito mais enxutos, rápidos e fáceis de manter.

Atributo Detalhes
Habilidades Python, MySQL, PHP, testes unitários e de integração
Tamanho 350 horas
Nível Alto
Mentores carlosabcs, tvanessa

Integrar o Problem Creator com fluxos de trabalho de criação/edição de problemas

Breve descrição: Um projeto do GSoC do ano passado introduziu o Problem Creator, um editor visual que ajuda os autores de problemas a criar e editar problemas com mais facilidade. No entanto, o Problem Creator ainda não está totalmente integrado ao omegaUp. Atualmente os autores devem:

  1. Escreva o problema usando o Problem Creator
  2. Baixe-o como um arquivo .zip
  3. Faça upload por meio de uma UI separada para adicioná-lo à plataforma

O processo de edição é igualmente complicado, exigindo que os autores baixem um .zip, carreguem-no no Problem Creator, façam alterações, baixem novamente e carreguem novamente para atualizar. Este ano, pretendemos agilizar esses fluxos de trabalho integrando totalmente o Problem Creator com os recursos de criação e edição de problemas do omegaUp.

Resultados esperados: Os autores terão acesso a um fluxo de trabalho simples e direto para criar e editar problemas sem a necessidade de lidar com arquivos .zip.

Atributo Detalhes
Habilidades Vue.js, TypeScript, PHP
Tamanho 350 horas
Nível Médio
Mentores Aritra8438, carlosabcs

Medição de cobertura de código para testes ponta a ponta

Breve descrição: Recentemente migramos nossos testes de integração para Cypress. Usamos Codecov para medir e aplicar a cobertura de teste, no entanto, nossa configuração do Codecov no momento leva em consideração apenas testes unitários e não testes ponta a ponta. Neste projeto, queremos que o Codecov também meça a cobertura do teste Cypress para que possamos impor níveis mínimos de cobertura.

Resultados esperados: Codecov relata cobertura de teste Cypress permitindo que os níveis de cobertura sejam monitorados e níveis mínimos de cobertura sejam aplicados.

Atributo Detalhes
Habilidades Teste de integração, TypeScript, PHP
Tamanho 90 horas
Nível Médio
Mentores pabo99, heduenas

Processo de inscrição

Nosso processo de inscrição consiste em quatro fases. Você deve completar cada fase em ordem.

Fase 1: Conclua nosso teste

  1. Crie uma conta em omegaUp.com
  2. Participe do nosso Teste GSoC 2025
  3. Resolva pelo menos 2 de 3 problemas para passar

Sem plágio

No caso de plágio, desqualificaremos os candidatos envolvidos. Por favor, não compartilhe suas soluções com seus colegas candidatos.

Fase 2: Familiarize-se com nossa base de código

Conclua a Fase 1 antes de iniciar esta fase.

  1. Siga o guia de configuração do ambiente de desenvolvimento
  2. Encontre um bug interessante em nosso rastreador de problemas, especialmente em "Bom primeiro problema", ou entre em contato pelo Discord e ajudaremos a encontrar uma boa opção
  3. Implemente sua correção e envie-a para revisão
  4. Combine pelo menos um PR antes de passar para a Fase 3

Idioma

A maioria das conversas no rastreador de problemas é em espanhol, mas fique à vontade para mudar a conversa para inglês sobre qualquer assunto. O Google Tradutor faz um trabalho decente ao traduzir conteúdo em espanhol.

Fase 3: Escreva sua proposta

Nesta etapa você deve estar familiarizado com nosso ambiente de desenvolvimento e código.

  1. Crie um documento de design usando este modelo
  2. Se estiver trabalhando em vários projetos, mencione isso em sua inscrição, mas inclua apenas um design
  3. Envie-nos seu rascunho para feedback por meio este formulário (certifique-se de que qualquer pessoa com o link possa ver e comentar)
  4. Não forneceremos feedback aos candidatos que não tenham concluído as fases 1 ou 2
  5. Envie sua proposta final para Google

Fase 4: Entrevista

Após o envio dos documentos de design, selecionaremos uma pequena lista de candidatos e agendaremos entrevistas por telefone. A entrevista consistirá em questões comportamentais e técnicas.

Importante

Consideraremos apenas candidatos que concluíram todas as 4 fases da inscrição.


Comunicações

Nosso principal meio de comunicação é o nosso canal Discord. Convidamos você a participar!

Para perguntas sobre o ambiente de desenvolvimento, base de código ou como funciona o processo de aplicação GSoC, siga nosso Guia de ajuda.


Perguntas frequentes

O script de instalação do ambiente de desenvolvimento está gerando um erro

Siga nosso Guia de ajuda para resolver seu problema de maneira eficaz.

Devo falar espanhol?

Claro que não. Tentamos o nosso melhor para sermos o mais inclusivos possível para os voluntários não espanhóis. Fique à vontade para usar o inglês em todos os nossos canais de comunicação e em seu código. O Google Translate faz um trabalho decente ao traduzir conteúdo em espanhol em nossa página GitHub.

Quantas vagas sua organização terá para o GSoC 2025?

Pediremos 2 alunos este ano, mas ainda não há garantia. Saberemos com certeza em meados de maio de 2025.

Como você escolhe seus alunos?

Analisamos cada inscrição e escolhemos os candidatos com base em:1. Nível de habilidade - Demonstrado por meio de PRs impactantes em nossos repositórios (recomendado) ou experiência anterior 2. Plano de trabalho - Design de alto nível seguindo nosso modelo de proposta 3. Adequação cultural – Pessoas que promovem a inclusão e ajudam proativamente os colegas no Discord

Há algum aplicativo de exemplo que eu possa ver?

Duas boas amostras são:

Posso propor uma solução para vários problemas da lista de ideias?

Este ano pedimos que você inclua o design de apenas um projeto em sua inscrição. Se você terminar mais cedo durante a fase de codificação, poderá trabalhar em projetos adicionais.

Haverá mais oportunidades no omegaUp se eu não for selecionado para o GSoC?

Claro! Sempre recebemos novos voluntários interessados ​​em apoiar nossos esforços. Na época em que os resultados forem divulgados, anunciaremos um plano para integrar os interessados ​​em se tornarem voluntários.


Como acelerar

Se você estiver interessado em passar este verão colaborando conosco:

  1. Visite omegaup.org para conhecer nosso trabalho, visão e as pessoas beneficiadas
  2. Leia este artigo publicado por nossos cofundadores sobre a arquitetura e design de nossa plataforma

Documentação Relacionada