Projeto 2 de CES-22
Aplicação usando a Web, a Programação Orientada a Objetos e Python
Sistema de avaliação de professores por parte dos alunos do ITA.
Um site em que alunos que já concluíram determinada matéria podem votar em critérios como facilidade da disciplina, didática do professor na disciplina, coerência do professor na avaliação da disciplina, dentre outros. Além disso, qualquer aluno que já tenha cursado disciplinas ou que já tenha tido outro tipo de contato com determinado professor pode avaliá-lo em critérios pessoais (não vinculados às disciplinas).
- Área: Educação
- Público-alvo: Alunos de graduação do ITA
- Dor: Dificuldade de escolha de eletivas
- Auxiliar que os alunos escolham disciplinas eletivas
- Avaliação da experiência com o professor de forma geral
- Avaliação das experiências individuais com relação a cada disciplina cursada pelo aluno
- Fácil visualização das avaliações
- Comparação entre as disciplinas
- o avalITA pode vir a se tornar a plataforma oficial de votação do Prêmio Weis no futuro
Todo começo de semestre, na época de escolha de eletivas, os grupos de WhatsApp em que há mais de uma turma de alunos do ITA são lotados com perguntas do tipo "você conhece tal professor?" ou "tal disciplina é bizu?". Os alunos menos experientes buscam uma orientação com outros alunos veteranos em relação a qual disciplina escolher.
Essa situação aflige bastante os alunos. Muitas vezes tais comentários podem ser enviesados por uma experiência ruim, e o julgamento final do calouro é bastante subjetivo. Com o avalITA, o aluno que tiver em dúvida entre duas eletivas poderá fazer uma decisão mais precisa, embasada em critérios quantitativos além dos qualitativos já fornecidos pelos veteranos.
Outro fator que nos motiva a esse projeto é que ele já tinha sido iniciado pelo @Atsocs, de modo que a equipe dos @Mágicos não precisa partir do zero absoluto.
Previsão de forte impacto na comunidade iteana, entre as turmas que estão cursando o ITA agora e que cursarão no futuro.
Referência de projeto de CES-22 de outra equipe feito em 2020
Stack inspirada no curso de desenvolvimento web do @tonylampada: https://evolutio.io/curso/djavue.
- BackEnd: Python / Django
- FrontEnd: HTML, CSS, JavaScript / Vue
- Deploy: a decidir (algumas opções: Heroku, DigitalOcean, AWS, Google Cloud, ...). Na manutenção do avalITA ao longo dos anos futuros, pode ser necessário pagar a hospedagem do website. Por enquanto, alguma opção do GitHub Student Developer Pack deve servir.
- https://simpleisbetterthancomplex.com/series/beginners-guide/1.11/
- https://devcenter.heroku.com/articles/getting-started-with-python
- https://tutorial.djangogirls.org/pt/
- https://www.youtube.com/playlist?list=PL-osiE80TeTtoQCKZ03TU5fNfx2UY6U4p
- Projeto: GitHub,
- Código: Git
- Reuniões: Google Meet/Zoom
- Gravação da Apresentação: Zoom
- Slides da Apresentação: LaTeX / Beamer
- Comunição: WhatsApp, Discord, Meet
Quem? Mágicos
- Marina Moreira
- Álexandre Bernat
- Gabriel Martinz
- Iteanos
- Caio Costa
- Orientação a Objeto
- Samuel Vendramini
Reuniões gerais semanais via Google Meet, de duração ~30 min, de guiadas por pauta pré-preparada por todos na aba de projetos do GitHub, com controle de tempo e de escopo para evitar reuniões longas e improdutivas. Perto do fim do semestre a frequência das reuniões pode ser diminuída.
Trabalho preferencialmente síncrono em dupla ou trio, com uma reunião curta semanal de check-up e períodos mais longos de trabalho orientado a resultados (desenvolvimento do projeto).
- Dupla: M + G
- Trio: A + C + S
Para clonar o repositório:
git clone git@github.com:Magicos-de-CES-22/proj2.git Avalita
cd Avalita
git checkout caio
Para rodar o frontend, supondo que você está na pasta Avalita e usando a versão 14 do node (no linux, nvm use 14):
cd avalita_vue
npm install
npm run serve
Instalar dependências do backend, supondo que a pasta atual é Avalita:
python -m venv env
source env/bin/activate
pip install -r req.txt
Para rodar o backend, em um novo terminal cuja raiz é a pasta Avalita:
cd avalita_django
python manage.py migrate
python manage.py runserver
Agora é só acessar http://localhost:8080/ e ser feliz :)