Nós, representantes do povo do MaratonUSP... Isso não é bem uma constituição, é um manual, mas a gente chama do que quiser.
O objetivo é documentar quais são as preocupações principais envolvidas em administrar o grupo, como realizar algumas ações técnicas tais como postar no site ou outros meios de comunicação, organizar um contest, entre outros.
Este documento está em constante desenvolvimento.
É importante manter sempre em mente a ideia de que esse grupo, para se manter funcionando, não pode depender de uma pessoa só. Ele tem que funcionar como grupo e tem que contar com a colaboração das pessoas envolvidas. Isso é essencial porque:
- As pessoas tem que treinar além de organizar o grupo.
- As pessoas, em algum momento, se formam, vão fazer estágio, entre outros e o grupo não deveria parar na ausência de certas pessoas.
- Criar um ambiente onde as pessoas tem liberdade para contribuir e são responsáveis pelos seus próprios interesses inclui pessoas que estão a fim de contribuir e levar o grupo adiante.
O grupo deve pensar em como vai continuar funcionando após a progressão das gerações do próprio grupo. Isso faz com que seja essencial se preocupar em recrutar novas pessoas e incentivar que o máximo de pessoas participem.
Deve se dar atenção para o ensino e preparo de novos membros do grupo. É de extrema importancia que veteranos se preocupem em dar aulas e preparar listas para a galera nova treinar e aprender. Ademais, com o advento do canal do YouTube, é muito importante que aulas sejam gravadas, pois somos um dos unicos canais que postam videoaulas de programação competitiva em portugues.
Pera. Mas não é o Coach que toca o grupo? Não. O Coach, idealmente, deveria se preocupar com as seguintes tarefas:
- Organizar a seletiva
- Organizar as reuniões, especialmente, a reunião de começo de ano.
- Inscrever os times
Naturalmente, Coaches costumam se propor a fazer mais, como, idealmente, organizar contests, montar listas interessantes, reservar salas de treino ou aulas, entre outros.
Nosso coach, ainda, não é quântico.
Uma diretiva geral que vem funcionando bem para reuniões de um grupo que funciona tão distribuidamente é a de delegar responsabilidades. A ideia funciona assim:
- Cada proposta tem um responsável. Esta pessoa fica incumbida de fazer com que a proposta seja encaminhada.
- Seguindo o princípio de proatividade, o responsável deve se voluntariar a ter essa tarefa.
- Se ninguém se voluntaria, a tarefa não vai ser supervisionada e a proposta não vai pra frente. Só vão ser carregadas propostas com pessoas interessadas em realizá-las.
Vale lembrar que toda reunião vai ter uma ata, então, caso você não possa comparecer á ela, basta ler a ata.
Alguns assuntos devem ser decididos o quanto antes no ano, idealmente, durante uma reunião. Algumas questões que certamente devem ser discutidas todo ano são:
- Como vai funcionar o recrutamento?
- Quem vai fazer a seletiva?
- Como vão ser os treinos?
- Como vão ser as reuniões mensais?
- Quem vai organizar o bixeCamp?
- Quem vai organizar o simulado de bixes?
- Como vão funcionar as aulas avançadas?
- Como vai funcionar o acampamento?
- Onde vai ser o japonês depois da primeira reunião?
As reuniões mensais vêm sendo uma forma muito boa de acompanhar, com facilidade, o andamento das tarefas do grupo.
A reunião idealmente dura uma hora e, atualmente, acontece das 12h às 13h da última sexta-feira de cada mês, já que ninguém tem aula nesse horário. A ideia é que ela seja mesmo bem rápida, uma forma fácil de participar e acompanhar o progresso do grupo, permitindo que os participantes fiquem focados no que importa pra eles.
Qualquer pessoa pode organizar/covocar essa reunião, basta fazer um Doodle e chamar a galera. A reunião deve ser compartilhada publicamente, qualquer um pode participar. A divulgação da reunião deve conter um documento publicamente editável como esse onde as pessoas podem adicionar pautas, assuntos que interessam para elas e questões que elas querem levantar.
No começo da reunião, é revisada a pauta da reunião passada e as pessoas responsáveis por cada ponto atualizam as outras, rapidamente, sobre qual foi o progresso (ou não). A seguir, cada item da pauta da reunião atual é visitado e quem quer que tenha escrito aquilo (ou um representante) apresenta o assunto. Pode haver uma breve discussão, mas é importante que ela seja breve, e um responsável por aquele tema é decidido, se for necessário e possível. O foco dessa reunião é designar responsáveis.
Se as discussões precisarem se estender, o responsável escolhido para o tema deve organizar uma discussão fora da reunião. Idealmente buscando envolver todos os interessados e não tirar o foco dos não interessados.
Seguindo o princípio da continuidade, uma grande preocupação do grupo deve ser a busca por novos integrantes. Assim, é preciso ver como aprimorar algumas frentes e quais novas são interessantes de se tentar.
- bixeCamp
- Simulado de bixes
- Seletiva
- Aulas Avançadas
- Matérias de Graduação
Os treinos têm ocorrido durante as sextas-feiras, das 14h às 19h, horário combinado com os professores do MAC para ser reservado às atividades dos grupos de extensão.
Durante o primeiro semestre, as primeiras horas desse horário, das 14h às 15h30, são geralmente dedicadas às aulas do bixeCamp, enquanto que durante o segundo semestre, nesse mesmo horário, geralmente acontecem as aulas de nível intermediário e avançado.
É comum a ocorrência de simulados semanais organizados entre times, por isso é interessante que se forme um compilado de contests, com provas selecionadas. Criando um arquivo de recomendações de simulados, os novos times podem contar com provas de bom nível, cujos problemas eles podem discutir com times mais antigos, que tiverem feito a recomendação.
Além dos simulados, parte do treinamento deve ser dedicado ao aprendizado de novos assuntos. Para auxiliar na escolha de problemas para esse tipo de estudo, existe também um arquivo de listas de exercícios categorizados.
Tanto as recomendações de simulados, quanto as listas categorizadas estão disponíveis neste quadro.
O bixeCamp é um ciclo anual de aulas direcionadas ao calouros da universidade. Em geral, consiste de um semestre no qual são semanalmente cobertos tópicos que são posteriormente cobrados na forma de planilhas de exercícios, a qual se encontra no drive da equipe, sendo sempre atualizada com novos exercicios e links, de acordo com o feedback dos calouros daquele ano.
As aulas atualmente oferecidas no semestre são:
-Aula 1: Input/output, tipos, condicional, max/min, % ,for, while
-Aula 2: Arrays, matrizes e funções
-Aula 3: Complexidade
-Aula 4: STL e guloso
-Aula 5: Recursão e two pointers
-Aula 6: Grafos e dfs
-Aula 7: Structs e Segment Tree e contar inversões
-Aula 8: BFS e Djikstra
-Aula 9: Geometria Básica
-Aula X: PD (definir data de modo a ser antes de feriado, pois a lista de exercícios é mais extensa)
O primeiro e maior oferecimento do bixeCamp é o direcionado aos calouros de Ciências da Computação do IME. Ele acontece de meados de maio até o fim das aulas do primeiro semestre, tendo como objetivo a preparação para que os times de calouros possam participar da Seletiva. Nele também é oferecido o Simulado de bixes.
Oferecido no segundo semestre, é geralmente organizado pelos calouros de Ciências da Computação do mesmo ano, com alguma ajuda nas primeiras aulas.
O mais instável. Seu sucesso depende diretamente do professor que estiver oferecendo computação naquele ano e da viabilidade de aplicar um contest durante o horário de aula, como uma forma de divulgação da Maratona.
O simulado dos bixes é um evento realizado entre a metade e o fim do bixeCamp. Tem como objetivo dar uma previa aos calouros sobre como é o ambiente de um contest real, oferecendo problemas mais simples que abranjam temas já vistos, com um prêmio simbolico para o time vencedor.
A seletiva do MaratonUSP tem como objetivo selecionar os times que irão representar a USP nas competições oficiais. Como dito anteriormente, a organização da seletiva fica para o coach.
Deve ser apontado, no início do segundo semestre, alguém que se responsabilize pelo andamento das aulas avançadas.
É responsabilidade desta pessoa designada:
- Organizar o calendário de aulas: sugerindo tópicos, organizando um formulário de interesse nos tópicos planejados para publicar no facebook e achando professores para ministrar as aulas
- Auxiliar na preparação das aulas
- Garantir, sempre que possível, a divulgação prévia das aulas no facebook e em grupos do Telegram
- Incentivar a gravação das aulas avançadas, seja gravando ou procurando alguém que se disponha a gravar a aula
Faz parte das responsabilidades de quem dará a aula:
- Realizar a postagem divulgando a aula, com alguma antecedência, sempre que possível
- Reservar a sala em que a aula será realizada, mandando um email para secmac@ime.usp.br
- Organizar uma lista de exercícios sobre o assunto da aula (link que pode ajudar: problemas categorizados)
É interessante que se mantenham atualizadas todas informações sobre as aulas neste quadro. As informações estão organizadas em quatro listas:
- Tópicos: possui cartões com possíveis tópicos para aulas avançadas (ordenados do mais ao menos requisitado), além de um link para o resultado do formulário que determinou os tópicos mais pedidos
- Agendadas: aqui se armazenam os tópicos que já possuem um professor e uma data para acontecer
- Gravadas: mantendo as aulas que já foram gravadas, mas que ainda estão em período de edição de vídeo
- Publicadas: nesta estão os cards das aulas que foram gravadas, editadas e já publicadas no youtube
Devemos sempre buscar gravar as aulas que oferecemos, deste modo estaremos incentivando não só alunos da USP, mas sim todos que se interessam pela Maratona, criando uma referência muito boa para estudos em português.
Nada como ganhar créditos fazendo Maratona. No IME se oferecem duas oportunidades para isso e o MaratonUSP possui a responsabilidade de delegar/preparar os professores ou tutores para esses cursos.
Idealmente ocorrerá duas matérias:
- Desafios I: Destinada aos iniciantes em programação competitiva. É necessário conhecimento de MAC0110.
- Desafios II: Destinada aos veteranos em programação competitiva.
Nas matérias geralmente ocorrem 2 contests semanais que possuem em torno de 5 problemas cada de diferentes graus de dificuldade. O professor é responsável por construir os contests e dar aulas sobre os assuntos que venham a cair nas provas.
No caso de destinar para Maratona de Programação, o aluno se proporia a desenvolver atividades como resolução de contests e listas de exercícios, dar aulas e outras atividades que totalizassem pelo menos 100 horas. Para isso é necessário um tutor que acompanhe o progresso do aluno e valide as suas atividades.
Tradicionalmente, a tarefa de tutor é assumida pelo Coach. Para mais informações é possível consultar a página da matéria no jupiterweb.
- Site
- Grupos de Telegram
- Canal do Telegram
Nosso Drive armazenana listas, tutoriais e arquivos importantes para o grupo. Para entrar, simplesmente peça para algum dos membros mais velhos do grupo. É importante manter a ordem e organização dentro dele, então não faça baderna e não apague coisas sem ter certeza do que esta fazendo (ou seja, quase nunca).
Note que os links de listas da pagina do MaratonUSP redirecionam para os arquivos do drive, então não mude os arquivos das listas de lugar.
Não menos importante, existe a pasta YouTube em nosso Drive. Nela ficam dois ótimo tutoriais em video de como fazer a gravação de aulas, além de todos os arquivos necessarios para te auxiliar.