├── .github └── ISSUE_TEMPLATE │ ├── publicidade.md │ ├── reuniao.md │ └── tarefa.md ├── README.md ├── palestras └── 11-segunda_por_hora.txt ├── particpantes-relampago ├── participantes.csv └── script-sorteio.py ├── post-mortem.md ├── protocolos ├── patrocinio.md ├── protocolo-denuncia-incidente.md └── resposta-incidente-cdc.md ├── roteiros ├── abertura.md ├── assets │ ├── CleanShot 2021-10-11 at 00.34.28.gif │ └── files.txt ├── charla-transmision-en-vivo.md ├── encerramento.md ├── palestra-relampago-e-keynote.md └── palestra-transmissao-ao-vivo.md └── scripts ├── README.md ├── distribui_palestras.py ├── distribui_palestras_es.py ├── distribui_palestras_pt.py └── distribui_tutoriais.py /.github/ISSUE_TEMPLATE/publicidade.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Arte e publicidade 3 | about: Registro de arte a ser criada para divulgação da Python Brasil 4 | title: "" 5 | labels: Arte, Comunicação 6 | assignees: cmdiasbr, martinsvanessa, paulohenriquedsgn, deboraazevedo 7 | 8 | --- 9 | 10 | ### Campanha 11 | *Informe a campanha a qual essa arte faz parte* 12 | 13 | ### Peça/publicidade solicitada 14 | *Objetivamente informe a arte/publicidade que você está solicitando* 15 | 16 | ### Detalhamento do uso 17 | *Descreva em detalhe para que essa arte será usada, exemplo: arte para divulgação dos tipos das atividades do evento, deverá existir um cartão para cada tipo* 18 | 19 | ### Data prevista para uso da arte 20 | *Informe a data ou período previsto para uso da arte* 21 | 22 | ### Quais informações devem aparecer na arte 23 | *Informe as informações que você imagina que deva conter na arte* 24 | 25 | ### Quais formatos necessários 26 | - [ ] Quadrado 27 | - [ ] Retangular (instagram story) 28 | - [ ] Outro *(detalhe o formato necessário)* 29 | 30 | ### Locais para divulgação 31 | - [ ] Redes sociais (twitter, facebook e instagram); 32 | - [ ] E-mail; 33 | - [ ] Discord PyBr2020; 34 | - [ ] Grupos do Telegram; 35 | - [ ] Eventos locais (Brasil + América Latina) (pedir 5min para falar sobre PyBR2021) 36 | 37 | > Ferramenta para verificar [acessibilidade das cores](https://www.toptal.com/designers/colorfilter/) em imagens. 38 | 39 | **Para concluir essa atividade, comente com os links dos posts realizados nas redes sociais ou prints, quando divulgação realizada em outros meios** 40 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/reuniao.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Reunião 3 | about: Registro de reunião, desde a criação da pauta até registro das participantes 4 | e decisões tomadas 5 | title: "[Reunião] : " 6 | labels: reunião 7 | assignees: '' 8 | 9 | --- 10 | 11 | _[Remover antes de abrir o ticket] Este template deve ser editado com os itens a serem discutidos durante a reunião. Toda colaboração é bem vinda. Durante a reunião devem ser registradas as participantes e as decisões tomadas, caso hajam informações sensíveis, deve ser criado um arquivo no [Google Drive da organização da Python Brasil 2021](https://drive.google.com/drive/folders/18zvyKpV42k_n_8Sr4a7yo5KxyU_SFgen?usp=sharing) e o link inserido nessa issue. Após o encerramento, o grupo responsável pela reunião deve revisar as informações e fechar a issue em não mais do que uma semana._ 12 | 13 | # Reunião 14 | 15 | - Data: 16 | - Participantes: 17 | - Nome e Sobrenome (@Github ou E-mail) 18 | 19 | ## Acompanhamento das tarefas 20 | 21 | - [ ] Verificar [tarefas bloqueadas](https://github.com/pythonbrasil/pybr2021-org/projects/1?card_filter_query=label%3Abloqueado): 22 | - Está claro o que precisa ser feito para desbloquear a tarefa? 23 | - Há parte da tarefa que pode prosseguir de alguma forma? 24 | - [ ] Verificar [tarefas em andamento](https://github.com/pythonbrasil/pybr2021-org/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-asc+-label%3ABloqueado+-label%3AP%C3%B3s-evento+project%3Apythonbrasil%2Fpybr2021-org%2F1), filtrando as bloqueadas e de pós-evento e ordenando pela últimas que foram atualizadas. 25 | - A tarefa está associada a uma pessoa responsável? 26 | - Há algo bloqueando o avanço da tarefa que possa ser discutido? 27 | - [ ] Verificar [tarefas abertas](https://github.com/pythonbrasil/pybr2021-org/issues?q=is%3Aopen+is%3Aissue+-project%3Apythonbrasil%2Fpybr2021-org%2F1+) não associadas ao projeto no Github. 28 | 29 | 30 | ## Ata 31 | 32 | _Adicione os itens que foram discutidos durante a reunião._ 33 | 34 | - 35 | 36 | ### Ações para serem realizadas 37 | 38 | - Atividade (@responsável) - #issue 39 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/tarefa.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Tarefa 3 | about: Registro de uma tarefa referente a Python Brasil 4 | title: " (Dica: comece sempre com um verbo)" 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | ### Descrição 11 | *Detalhe o que precisa ser feito na tarefa, contextualizando de tal forma que outra pessoa no time possa entender o que precisa ser feito.* 12 | 13 | 14 | ### Requisitos para a atividade ser considerada como concluída 15 | 16 | *Por exemplo: "- Plano de patrocínio em PDF salvo no Drive da organização."* 17 | 18 | - Verificar [acessibilidade das cores](https://www.toptal.com/designers/colorfilter/). Válido para atividades que dependem de imagem, como criação de artes e modificação do site. 19 | - Item 1 20 | - Item 2 21 | - Item 3 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Organização Python Brasil 2021 2 | 3 | Repositório para reunir documentação de atividades e ações realizadas pela organizaão da Python Brasil. 4 | 5 | ## Registro de reuniões 6 | 7 | Para registrar uma reunião, abra uma *issue* usando o template "Reunião". Elas devem ser abertas com antecedência para que seja possível a construção coletiva da pauta. Os registros da presença e do que foi decidido durante a reunião são feitos na própria *issue*, que deve ser fechada logo após a sua conclusão. 8 | 9 | Toda colaboração para o debate é bem vinda. Deixe seu comentário! 10 | 11 | ## Informações consolidadas 12 | 13 | **Data:** 11 a 17 outubro de 2021 ([issue](https://github.com/pythonbrasil/pybr2021-org/issues/2)) 14 | 15 | **Local:** Online 16 | 17 | **Plataformas:** Streamyard, Discord, Youtube (em contrução) 18 | 19 | **Estrutura da programação:** ([issue](https://github.com/pythonbrasil/pybr2021-org/issues/6)) 20 | | | segunda-feira | terça-feira | quarta-feira | quinta-feira | sexta-feira | sábado | domingo | 21 | | -------------- | ------------------ | ------------------ | ------------------ | ------------------ | ---------------- | ----------------- | ----------------- | 22 | | 10:00 às 12:00 | Roda de Conversa | Roda de Conversa | Roda de Conversa | Roda de Conversa | Roda de Conversa | Sprint / Tutorial | Sprint / Tutorial | 23 | | 12:00 às 13:30 | | | | | | Sprint / Tutorial | Sprint / Tutorial | 24 | | 13:30 às 15:00 | | | | | | | | 25 | | 15:00 às 15:50 | Palestra | Palestra | Palestra | Palestra | Palestra | Sprint / Tutorial | Sprint / Tutorial | 26 | | 15:50 às 16:40 | Palestra | Palestra | Palestra | Palestra | Palestra | Sprint / Tutorial | Sprint / Tutorial | 27 | | 16:40 às 17:30 | Palestra | Palestra | Palestra | Palestra | Palestra | Sprint / Tutorial | Sprint / Tutorial | 28 | | 17:30 às 19:00 | | | | | | | | 29 | | 19:00 às 19:50 | Palestra | Palestra | Palestra | Palestra | Keynote | | | 30 | | 19:50 às 20:30 | Palestra Relâmpago | Palestra Relâmpago | Palestra Relâmpago | Palestra Relâmpago | Encerramento | | | 31 | | 20:30 às 21:30 | Keynote | Keynote | Keynote | Keynote | Prêmio Dorneles | | | 32 | 33 | **Cronograma (previsto) de submissões:** ([issue](https://github.com/pythonbrasil/pybr2021-org/issues/14)) 34 | - 12 jul.: abertura das submissões 35 | - 12 ago.: encerramento das submissões 36 | - 19 ago.: envio para avaliadoras de propostas anonimizadas 37 | - 31 ago.: limite para recebimento das avaliações 38 | - 08 set.: envio de e-mail para pessoas cujas atividades foram selecionadas 39 | - 10 set.: reenvio de e-mail para pessoas cujas atividades foram selecionadas 40 | - 13 set.: limite para responder ao e-mail de contato 41 | - ----- acho bom darmos um dia para nos organizarmos aqui. Não é só chamar as próximas palestras, também é necessário dar alguma atenção ao balanceamento de temas também em relação às palestras confirmadas. Eu deixaria um dia livre aqui para debates internos da organização. 42 | - 15 set.: envio de e-mail para segunda leva de pessoas cujas atividades foram selecionadas (cobrir vagas abertas) 43 | - 20 set.: data limite para responder ao e-mail de contato 44 | - 11 set.: data limite para abertura das inscrições 45 | - 30 set.: publicação de programação 46 | 47 | ## Tecnologias utilizadas 48 | 49 | - [Bot para checar inscrição e dar acesso ao conteúdo do Discord](https://github.com/rougeth/pybr2021-discord-bot) 50 | - [Cria página da programação no site do evento](https://github.com/rougeth/calendaryo) 51 | - [Downloader do StreamYard](https://github.com/gabubellon/streamyard-downloader) 52 | - [Gerador da foto oficial do evento](https://rgth.co/pt-br/blog/criando-a-foto-oficial-da-python-brasil-2020/) 53 | - [Gerador de artes individualizadas para divulgação de palestras](https://github.com/GabrielRF/pybr2021-Arte-Palestrantes/) 54 | - [Gerador de artes individualizadas para divulgação de palestras e certificados - Integrado com o Google sheets](https://github.com/gabubellon/certificates-google-sheets-generator) 55 | - [PyBrasilOpenData - Dados Abertos](https://github.com/gabubellon/pybr_opendata) 56 | - [Realiza download dos vídeos do StreamYard](https://github.com/gabubellon/streamyard-downloader) 57 | -------------------------------------------------------------------------------- /palestras/11-segunda_por_hora.txt: -------------------------------------------------------------------------------- 1 | Segunda-feira - Dia 11/10 2 | 3 | 15:00 - 15:45: 4 | 5 | Os Nerds e a Ciência de Dados na Guerra dos Mundos: https://youtu.be/s7B8Cd02MF8?t=804 6 | Detecção de anomalias em séries temporais de produtos digitais: https://youtu.be/qu85TN0Ljok?t=904 7 | Introducción a la programación con Python: https://youtu.be/c-ytboo__JI?t=231 8 | Pesquisa reprodutível: como tornar sua análise de dados aberta e colaborativa?: https://youtu.be/7Rgz3rnVPR4?t=378 9 | Deploy: tudo que nunca te contaram sobre como colocar uma aplicação Python no ar: https://youtu.be/lsrVtD5qaW4?t=806 10 | 11 | 15:50 - 16:35: 12 | 13 | Code Review: https://youtu.be/s7B8Cd02MF8?t=3436 14 | factory_boy: testando objetos complexos: https://youtu.be/qu85TN0Ljok?t=3929 15 | Python Mutant Nation: https://youtu.be/Z8oFrUY5DAU?t=398 16 | Desafios do Home Office - Como melhorar o equilíbrio entre vida pessoal e trabalho: https://youtu.be/7Rgz3rnVPR4?t=3397 17 | Paralelismo em python: dá pra assobiar e chupar cana ao mesmo tempo?: https://youtu.be/lsrVtD5qaW4?t=3827 18 | 19 | 16:40 - 17:25: 20 | 21 | Na verdade, é mais fácil pedir perdão do que permissão: https://youtu.be/s7B8Cd02MF8?t=6365 22 | Ativando superpoderes do Django Admin com Widgets: https://youtu.be/qu85TN0Ljok?t=6800 23 | Tierra digital, tecnologías geoespaciales y python: https://youtu.be/Z8oFrUY5DAU?t=3315 24 | Conectivismo Pedagógico: novas formas de ensinar e aprender no século XXI: https://youtu.be/7Rgz3rnVPR4?t=7128 (não aconteceu por problemas técnicos) 25 | Como capturar exceções de maneira efetiva: https://youtu.be/lsrVtD5qaW4?t=6577 26 | 27 | 19:00 - 19:45: 28 | 29 | Fatos interessantes sobre arrays, matrizes e tensores: o número 3 vai te surpreender: https://youtu.be/s7B8Cd02MF8?t=14806 30 | Full-stack Django Rest Framework: https://youtu.be/qu85TN0Ljok?t=15227 31 | WebAssembly: El que, el porque y el como: https://youtu.be/Z8oFrUY5DAU?t=11382 32 | Python Software Foundation: o que é? o que faz?: https://youtu.be/7Rgz3rnVPR4?t=14895 33 | Machine Learning do início ao fim: uma breve visão de um projeto de ML: https://youtu.be/lsrVtD5qaW4?t=15215 34 | 35 | 19:50-20:40: 36 | 37 | Palestras Relâmpago: https://youtu.be/ia-W6GwDTto?t=445 38 | 39 | 20:20-21:30: 40 | 41 | Keynote: Kizzy Terra e Hallison Paz: https://youtu.be/ia-W6GwDTto?t=1771 -------------------------------------------------------------------------------- /particpantes-relampago/participantes.csv: -------------------------------------------------------------------------------- 1 | date;nick;id_discord 2 | "2021-10-11";"@Gomex (He/Him)";"486926559345901569" 3 | "2021-10-12";"@kadidjah | ela/dela";"892054925616504884" 4 | "2021-10-12";"@Dandara | ela/ella";"630937883791982592" 5 | "2021-10-12";"@givanaldo";"712770781771202600" 6 | "2021-10-12";"@Pedro Gonzalez ele/dele";"580215692691767317" 7 | "2021-10-13";"@Gabriel RF (ele/dele)";"204349445641338880" 8 | "2021-10-13";"@Lis R. Barreto";"497178591990382623" 9 | "2021-10-13";"@Ana Dulce | ela/dela";"483456890349682690" 10 | "2021-10-13";"@Jailson Pereira (ele/dele)";"358059938473312256" 11 | "2021-10-13";"@adorilson (ele/él/he)";"395696155373338624" 12 | "2021-10-14";"@claudio.paulo";"843348300098043925 13 | "2021-10-14";"@Vinicius Mendes";"397588556660342786" 14 | "2021-10-14";"@LucianoRamalho;689592268377555095" 15 | "2021-10-14";"@Bruno Freire";749625220842782800" 16 | "2021-10-14";"@jackson";"824677773062045726" 17 | "2021-10-14";"@João Carabetta;"692742616416256019" 18 | "2021-10-14";"@Cuducos";"335098092158451714" 19 | "2021-10-14";"@Arthur Alvim | ele / el / he";"689102216686338065" 20 | "2021-10-14";"@marcosguilherme';"712795297759100980" 21 | "2021-10-14";"@Flavinha | Ela/Ella/She;"607710527824724006" 22 | "2021-10-14";"@Pastoremetal";"559895028168785931" 23 | "2021-10-14";"@thiago.ferreira (ele/dele)";"773276391746830361" 24 | 25 | -------------------------------------------------------------------------------- /particpantes-relampago/script-sorteio.py: -------------------------------------------------------------------------------- 1 | import os 2 | import random 3 | from time import sleep 4 | 5 | inscritos = [] 6 | 7 | print("###INSCRITOS##") 8 | novos_inscritos=[] 9 | for index,item in enumerate(inscritos): 10 | i = f"{index+1}:{item}" 11 | print(i) 12 | novos_inscritos.append(i) 13 | clear = lambda: os.system('clear') 14 | 15 | input("\nPressione enter para sortear") 16 | clear() 17 | 18 | input("\nAjustando index...") 19 | random.shuffle(novos_inscritos) 20 | clear() 21 | 22 | input("Refatorando ordem dos index..") 23 | random.shuffle(novos_inscritos) 24 | clear() 25 | 26 | 27 | for index,item in enumerate(novos_inscritos): 28 | print(item) 29 | if index==:print('############') 30 | -------------------------------------------------------------------------------- /post-mortem.md: -------------------------------------------------------------------------------- 1 | > Esse Post Mortem foi originário na [issue 63](https://github.com/pythonbrasil/pybr2021-org/issues/263) 2 | 3 | # Post Mortem Python Brasil 2021 4 | 5 | --- 6 | ## Item: Durante a organização não prestamos atenção devida a grade de eventos 7 | - Declarante :@gabubbellon 8 | 9 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 10 | 11 | 1. Grade de horários foi planejada inicialmente sem horários de encerramento e APyB; 12 | 2. Cotação de Libras foi realizada com a grade de forma errada; 13 | 3. Grade foi refeita e aprovada; 14 | 4. Cotação de Libras ajustada e aprovada 15 | 16 | #### Impacto: 17 | 18 | 1.Impacto em orçamentos 19 | 2.Planejamento dos fornecedores de Libras 20 | 3.Planejamento nos convites de palestrantes 21 | 22 | #### Solucionado ? Se sim como : 23 | 24 | **Solucionado**: 25 | Grade refeita e orçamentos refeitos, podiamos ter tido impactos financeiros e de palestras caso não existisse tempo hábil 26 | 27 | --- 28 | ## Item:Problematica com Juridico e financiero com patrocinadores @tiidadavena 29 | - Declarante 30 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 31 | #### Impacto: 32 | #### Solucionado ? Se sim como : 33 | 34 | - Proposta de um Form (?) sobre Interesse de Patrocínio com os seguintes pontos: 35 | [ ] a sua empresa tem contrato específico para patrocínios? 36 | [ ] precisarão do modelo de contrato em outro idioma? 37 | [ ] como é o fluxo de pagamento da sua empresa para patrocinadores? 38 | [ ] qual o tempo estimado para processo? 39 | 40 | Pasta específica para documentações fiscais da APyB (p.ex. Nada Consta da Receita Federal): sugiro que o acesso seja apenas para a/o/e Big Kahuna, Presidência APyB e pessoa do Patrocínio 41 | 42 | --- 43 | ## Item:Notion e Planilha funcionaram bem 44 | - Declarante 45 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 46 | #### Impacto: 47 | #### Solucionado ? Se sim como : 48 | 49 | ---- 50 | ## Item:Gerenciamento de dados de palestras a ser melhorado 51 | - Declarante 52 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 53 | #### Impacto: 54 | #### Solucionado ? Se sim como : 55 | 56 | --- 57 | ## Item:Roda de diálogo (forma de captar dados nao ordenada: foto, roteiro: título/tema) 58 | - Declarante 59 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 60 | #### Impacto: 61 | #### Solucionado ? Se sim como : 62 | 63 | --- 64 | ## Item: Envio de feedback para submetedoras de atividade 65 | - Declarante 66 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 67 | #### Impacto: 68 | #### Solucionado ? Se sim como : 69 | 70 | --- 71 | ## Item:Tutoriais - estabelecimento de fluxo para entrada de participantes nas salas, escrever tutorial para ministrantes saberem como gerenciar o seu canal 72 | - Declarante 73 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 74 | #### Impacto: 75 | #### Solucionado ? Se sim como : 76 | 77 | ---- 78 | ## Item:Preparam ambiente online e tutorial antes 79 | - Declarante 80 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 81 | #### Impacto: 82 | #### Solucionado ? Se sim como : 83 | 84 | --- 85 | ## Item:Exigir de patrocinadores ouros pessoas para ajudarem em partes da org 86 | - Declarante 87 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 88 | #### Impacto: 89 | #### Solucionado ? Se sim como : 90 | 91 | --- 92 | ## Item: Abrir e fechar inscrições de tutorias 2 dias antes !! 93 | - Declarante 94 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 95 | #### Impacto: 96 | #### Solucionado ? Se sim como : 97 | 98 | --- 99 | ## Item:Forçar comunidação com ministantes e palestrantes para que eles usem um canal central de comunicação 100 | - Declarante 101 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 102 | #### Impacto: 103 | #### Solucionado ? Se sim como : 104 | 105 | --- 106 | ## Item:Fazer um reunião PRE evento com Palestrantes e ministrantes mostrando o ambiente 107 | - Declarante 108 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 109 | #### Impacto: 110 | #### Solucionado ? Se sim como : 111 | 112 | --- 113 | ## Item:Fazer uma reunião pos evento com palestrantes e ministrantes para pegar feedbacks e principalemente OUVIR a organização 114 | - Declarante 115 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 116 | #### Impacto: 117 | #### Solucionado ? Se sim como : 118 | 119 | --- 120 | ## Item:Seria interessante dar mais autonomia aos ministrantes para a inscrição e controle de acesso às atividades práticas? Neste caso, a Organização entraria como suporte. 121 | - Declarante 122 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 123 | #### Impacto: 124 | #### Solucionado ? Se sim como : 125 | 126 | --- 127 | ## Item: No pitch do Plano de Patrocínio, ressaltar que o evento é uma ótima oportunidade de apresentar a empresa no Job Fair, além da palestra através do tutorial. O fato de ter pessoas com interesse e com fit cultural imediato pode poupar o time de RH. 128 | - Declarante 129 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 130 | #### Impacto: 131 | #### Solucionado ? Se sim como : 132 | 133 | --- 134 | ## Item:ferramenta de envio de e-mail em massa 135 | - Declarante 136 | ### Acontecimentos e Impactos em Ordem Cronologica (o mais exato possível) 137 | #### Impacto: 138 | #### Solucionado ? Se sim como : 139 | 140 | -------------------------------------------------------------------------------- /protocolos/patrocinio.md: -------------------------------------------------------------------------------- 1 | # PYBR 2021 - Patrocínio 2 | 3 | ### 🎟 Tickets no Helpdesk 4 | 5 | 1. #7003 - Luiza Labs 🥇 (analisando as propostas de alteração da empresa) 6 | 2. #6964 - JusBrasil 🥇- (form de submissão de atividades) 7 | 3. #7024 - Carta 🥇 - (doc em avaliação pelo Compliance interno - enviar email com andamento - forms do patrocinadores enviados) 8 | 4. #7038 - Buser 🥈- (pagamento recebido - envio do form ) 9 | 5. #7118 - Mercado Livre 🥈 - (enviar contrato para avaliação) 10 | 6. #7119 - Ebury 🥈- (contrato assinado - traduzindo o contrato para inglês ) 11 | 7. #7212 - AmbevTech 🥉- (aguardando parecer sobre o nosso modelo de contrato) 12 | 1. #7261 - Setor Compras 13 | 8. #7233 - Uber by Cornershop 🥈 - (email em inglês enviado para eles) 14 | 9. #7276 - RAlura ? - desistiu de apoiar o evento 15 | 16 | 1. ~~#7249 - Magarathea Labs (Gabu Enviou a devolutiva)~~ 17 | 2. ~~#7220 - Vanhack (Ana Cecília mandou email de contato)~~ 18 | 19 | Convidar as empresas patrocinadoras para que estas incentivem os seus funcionários a submeterem palestras, com assuntos relacionados à Python, carreira em TI 20 | 21 | --- 22 | 23 | #6940 - Zé Delivery (email enviado para eles, mas sem retorno) 24 | #6893 - IBM (email enviado para eles, mas sem retorno) 25 | 26 | #7125 - Afroyá (informaram que não tem condições de seguir com o patrocínio, mas fizeram a ponte com a Vanhack) 27 | 28 | ### 📄 Submissão das atividades das patrocinadoras 29 | 30 | ❕A empresa deve enviar as atividades práticas até 30 dias antes do evento (10/09/2021) [https://forms.gle/HtsbnSnaEdB2C8XF7](https://forms.gle/HtsbnSnaEdB2C8XF7) 31 | 32 | ### ⛓ Links 33 | 34 | [Drive da PYBR 2021](https://drive.google.com/drive/u/2/folders/18zvyKpV42k_n_8Sr4a7yo5KxyU_SFgen) 35 | 36 | [Helpdesk](https://pythonbrasil.freshdesk.com/a/tickets/filters/all_tickets) 37 | 38 | [Plano de Patrocínio em Inglês](https://docs.google.com/presentation/d/162aP16LwpYutmrnhgXypclHfO0UxnSLL/edit#slide=id.gdfe84e7549_1_15) 39 | 40 | [Plano de Patrocínio em Português](https://docs.google.com/presentation/d/1xh54DHHs5ZxzLFUJS5EQXkh9Nijmirgb/edit) 41 | 42 | [Issues no GitHub](https://github.com/pythonbrasil/pybr2021-org/issues?q=is%3Aissue+patroc%C3%ADnio) 43 | 44 | [Drive do Patrocínio](https://drive.google.com/drive/u/3/folders/1-joru_hoJd2KoLLYUeiTY5UPjyS9aLzX) 45 | [Drive da PYBR 202](https://drive.google.com/drive/u/2/folders/1_W2UM89Cgv2ngiAQDMSI_hpiBNH5x6OY)0 46 | 47 | ### 🧾 Docs 48 | 49 | [Meet Google Drive - One place for all your files](https://drive.google.com/drive/u/2/folders/18zvyKpV42k_n_8Sr4a7yo5KxyU_SFgen) 50 | 51 | [Google Sheets - create and edit spreadsheets online, for free.](https://docs.google.com/spreadsheets/d/1ddYFSfrkOsH0LbP7O1a13IuZImvUXEGnfvpQiv3aISM/edit#gid=510557133) 52 | 53 | ### ☑ To-do 54 | 55 | **Atribuição Inicial: Plano de Patrocínio** 56 | 57 | - [x] Falar com Pastore sobre a reunião do Plano de Patrocínio 58 | - [x] Ver emails relacionados no Freshdesk 59 | - [x] Organizar as issues no GitHub 60 | - [x] Organizar documentações 61 | - [x] Montar (caso ainda não exista a estratégia de Patrocíncio) 62 | - [x] Ver docs do CNPJ do APyBR 63 | 64 | ### 👀 Critérios de Avaliação do Patrocinador 65 | 66 | 1. Existem questões em aberto PYBR? E com a APyBR? 67 | 2. A prioridade: ordem de confirmação da assinatura do contrato 68 | 3. Afinidade com o CdC 69 | 4. Priorizar empresas que estejam que tratem bem a comunidade (e mediante do Comitê de Patrocínio) 70 | 71 | ### 🕵️‍♀️ Processo de avaliação do Patrocínio 72 | 73 | - Primeiro contato com patrocinador 74 | - Patrocinador procura a organização 75 | - ou Organização procura Patrocinador 76 | - Agendamento reunião de apresentação 77 | - Na reunião: 78 | - roteiro: [Perguntas - Reuniões](https://www.notion.so/PYBR-2021-Patroc-nio-1348c076242b4897b8288ae755c39d0c) 79 | - coletar dúvidas da empresa interessada 80 | - Se houver dúvidas 81 | - comunicar a Organização 82 | - responder à empresa 83 | - Empresa Confirma o interesse no Patrocínio 84 | - Antes de confirmar o aceite do patrocínio 85 | - Analisar se cota está disponível 86 | - Se houver outras empresas interessadas (concorrência pela cota), seguir [Critérios de Avaliação do Patrocinador](https://www.notion.so/PYBR-2021-Patroc-nio-1348c076242b4897b8288ae755c39d0c) 87 | - Organização decide se a Empresa receberá a Cota 88 | - Caso perca a concorrência pela Cota: 89 | - Organização oferece cotas inferiores como opção 90 | - Caso aprovada: 91 | - Envio confirmação de aceite 92 | - Envio de contrato para verificação 93 | - Assinatura do contrato 94 | - Início de divulgação e outras atividades definidas 95 | 96 | ### ❓Perguntas - Reuniões 97 | 98 | 102 | 103 | **TORNAR O EVENTO EXCLUSIVO, SEM SER EXCLUDENTE** 104 | 105 | 1. Por quê buscamos o patrocínio? O que nos motiva? 106 | 2. Para onde os fundos arrecadados serão destinados? 107 | 3. A empresa conhece a comunidade? Vocês já tem envolvimento? 108 | 4. A PYBR é capaz de oferecer o que patrocinador procura? A recíproca é verdadeira? 109 | 5. CdC - nossos valores: diversidade, inclusão, comunidade, visibilidade: [mostrar o CdC da PSF](https://www.python.org/psf/conduct/) 110 | 6. PYBR como roteador de informações: Divulgação no canal de notícias, vagas, milhares de pessoas no BR, visibilidade global 111 | 7. Fomento ao evento: sem palestras e sem keynotes 112 | 1. PYBR: estimula que as empresas apoiem funcionários que queiram palestrar ou realizar atividades técnicas 113 | 2. A empresa ganha mais visibilidade e passa a ser referência 114 | 8. Carta: pessoas para contratação 115 | 116 | ### Sobre o Discord e atribuições 117 | 118 | Sobre o Discord: ele tem vários canais, tanto de texto quanto de áudio. Para os patrocinadores serão disponibilizados 2: um para texto e outro para voz (vide imagem a seguir). 119 | 120 | ![Untitled](https://s3-us-west-2.amazonaws.com/secure.notion-static.com/769d3ed2-4fa3-4f0f-9311-33d520b87d62/Untitled.png) 121 | 122 | - Nos canais de texto é possível enviar mensagens para os participantes (e eles enviarem para vocês) de forma assíncrona. É permitido enviar links de vagas por ele. Os canais de texto serão específicos para cada empresa que terá direito. 123 | - Nos canais de áudio dá pra ter conversas de forma síncrona. O tutorial e o Job Fair acontecerão por ele. Nesse caso, será um canal para todas as empresas que têm direito. Para incentivar a participação de forma mais assertiva, cada empresa terá um horário específico que será divulgado durante o evento. Ainda estamos montando a programação, mas enviaremos em breve! 124 | - Existem também os "papéis" ou "roles". Vocês terão um chamado "patrocinador" e um "NomedaSuaEmpresa". Sempre que alguém enviar uma mensagem com "@NomedaSuaEmpresa", todos que têm essa role serão notificados. 125 | - No máximo até 5 pessoas podem ficar com a role de "Patrocinador" 126 | 127 | ![Untitled](https://s3-us-west-2.amazonaws.com/secure.notion-static.com/d8ddd479-5234-466e-9d1a-7ce4e71300e4/Untitled.png) 128 | 129 | ### Arcabouço do Roteiro para a Feira de Empregos (Job Fair) 130 | 131 | OBS 1: Esta é uma estrutura sugerida, mas que é facilmente adaptável para os materiais a serem disponibilizados pela empresa, mas a dinâmica é semelhante ao stand de uma empresa em um evento presencial. 132 | 133 | OBS 2: Atentar caso algum participante infrinja alguma das regras do Código de Conduta (estas pessoas estarão com as roles definidas). 134 | 135 | 1. Cumprimentar os presentes (@Participantes) no canal de voz: o canal de texto pode ser usado para avisos. 136 | 1. Perguntar se já conhecem a empresa 137 | 2. Perguntar a motivação de conhecer 138 | 2. Apresentar vídeo ou slides relacionados à empresa 139 | 3. Ao final da apresentação, sugerimos uma breve sessão de Q&A com os participantes 140 | 1. Materiais como vídeos, links dos portais de vagas podem ser disponibilizados no canal de texto da empresa 141 | 2. É interessante que tenha alguém do time técnico para tirar dúvidas mais específicas com o RH junto com os inscritos no evento 142 | 3. Possíveis perguntas: 143 | 1. Quais stacks são usadas na empresa? 144 | 2. Nível de senioridade das vagas 145 | 3. Nível de domínio em alguma língua estrangeira (por exemplo, espanhol ou inglês) 146 | 4. Como funcionam os testes de seleção (etapas, atividades) e os prazos para candidatura. 147 | -------------------------------------------------------------------------------- /protocolos/protocolo-denuncia-incidente.md: -------------------------------------------------------------------------------- 1 | # Protocolo do participante para denunciar incidentes que infringem o Código de Conduta 2 | 3 | **Se você acredita que está ou que alguém está em perigo**, consulte um voluntário ou membro da equipe da organização da Python Brasil através do e-mail ou canal do Discord para obter o número de emergência apropriado, o número não emergencial, o número da polícia ou site oficial para registro de ocorrência. 4 | 5 | Se você acredita que alguém violou o Código de Conduta da Python Brasil, encorajamos você a denunciar. Se você não tiver certeza se o incidente é uma violação ou se o ambiente onde aconteceu está coberto por este Código de Conduta, encorajamos você a denunciá-lo. Aceitamos receber denúncias e que decidimos não tomar nenhuma providência sem análise prévia para que possamos sempre criar um espaço mais seguro para todos. Em caso de reincidência, a organização também se reserva ao direito de não permitir a participação da(s) pessoa(s) envolvida(s) nas demais edições do evento. 6 | 7 | Durante a conferência, você pode fazer uma denúncia: 8 | 9 | - Para um membro da equipe de incidentes. 10 | - E-mail cdc@python.org.br 11 | 12 | No caso de um conflito de interesses, você pode entrar em contato diretamente com o responsável geral do evento: 13 | 14 | - Alynne Ferreira - Responsável Geral pela Python Brasil 2021. 15 | 16 | # Dados para denúncia 17 | 18 | Se você fizer uma denúncia por e-mail ou Discord, inclua: 19 | 20 | - Suas informações de contato (para que possamos entrar em contato com você se precisarmos fazer um acompanhamento, username do discord ou telefone). 21 | - Data e hora do incidente. 22 | - Localização (canal ou palestra) do incidente. 23 | - O status do incidente está em andamento (Está em andamento? Ocorreu em outro momento?) 24 | - Descrição do incidente. 25 | 26 | Informações de identificação da pessoa infratora: nome, aparência física, roupa, sotaque de voz, informações de identificação (username, nome da apresentação, nome da empresa). 27 | Circunstâncias adicionais em torno do incidente. 28 | Outras pessoas envolvidas ou testemunhas do incidente e suas informações de contato ou descrição. 29 | 30 | # Confidencialidade 31 | 32 | Todas as denúncias serão mantidas em sigilo. Quando discutimos incidentes com as pessoas infratoras, anonimizamos os detalhes tanto quanto podemos para proteger a privacidade do denunciante. 33 | 34 | No entanto, alguns incidentes acontecem em interações pessoais e, mesmo que os detalhes sejam anônimos, a pessoa infratora pode ser capaz de adivinhar quem fez a denúncia. Se você tiver dúvidas sobre retaliação ou sua segurança pessoal, anote isso em sua ocorrência. Ainda o encorajamos a relatar, para que possamos apoiá-lo e, ao mesmo tempo, manter os participantes da conferência seguros. Em alguns casos, podemos compilar várias denúncias anônimas em um padrão de comportamento e agir de acordo com esse padrão. 35 | 36 | Se necessário, podemos determinar que uma declaração pública ou nota de esclarecimento precisará ser feita. Se for esse o caso, as identidades de todas as vítimas e denunciantes permanecerão confidenciais, a menos que os mesmos nos instruam o contrário. 37 | 38 | # Procedimento de tratamento das denúncias 39 | 40 | Quando você faz uma denúncia, reunimos informações sobre o incidente de acordo com o protocolo da equipe para resposta a incidentes da Python Brasil. 41 | 42 | Depois que um responsável pelo incidente obtiver a denúncia, ele consultará imediatamente o responsável ​​pela resposta ao incidente (Responsável Geral pela Python Brasil 2021). 43 | 44 | Se o incidente estiver em andamento e precisar ser tratado imediatamente, qualquer um dos responsáveis ​​pela resposta ao incidente pode tomar as medidas adequadas para garantir a segurança de todos os envolvidos. 45 | 46 | Se o incidente for menos urgente, o responsável geral se reunirá em 24 horas para determinar uma resposta apropriada. Exemplos de possíveis respostas a incidentes são descritos no protocolo da equipe para resposta a incidentes da Python Brasil. 47 | 48 | Antes da conferência, a equipe terá uma reunião obrigatória onde os procedimentos de resposta a incidentes serão descritos. Após a conferência, todos os respondentes a incidentes participarão de uma sessão de esclarecimento com o responsável geral para discutir todos os incidentes e determinar as ações de acompanhamento necessárias. 49 | 50 | # Acompanhamento das denúncias 51 | 52 | Dentro de uma semana de uma denúncia de incidente, o respondente geral fará um acompanhamento com a pessoa que fez a denúncia e forneceu suas informações de contato. O acompanhamento pode incluir: 53 | 54 | - Um reconhecimento de que os principais respondentes da Python Brasil discutiram a situação. 55 | - Se a denúncia foi determinada ou não como uma violação do Código de Conduta. 56 | - Quais ações (se houver) foram tomadas para corrigir o comportamento do infrator. 57 | 58 | Em alguns casos, os responsáveis ​​pela resposta podem precisar fazer perguntas adicionais sobre o incidente para identificar a pessoa infratora. 59 | Conflitos de interesse 60 | 61 | Se um responsável pelo incidente tiver um conflito de interesses para uma denúncia, a pessoa se recusará a discutir e lidar com o incidente. A documentação do incidente não estará disponível e a pessoa se desculpará oficialmente de quaisquer conversas envolvendo o tratamento do incidente. 62 | 63 | Caso todos os responsáveis ​​pela resposta ao incidente precisem se recusar, a responsável pelo evento e um membro da APyB entrarão como responsável pela resposta ao incidente . 64 | 65 | - Alynne Ferreira (alynneferreiras@gmail.com) 66 | - Patrick Mazulo (contato@python.org.br) 67 | -------------------------------------------------------------------------------- /protocolos/resposta-incidente-cdc.md: -------------------------------------------------------------------------------- 1 | # Protocolo da equipe para resposta aos incidentes que infringem o Código de Conduta 2 | 3 | Certifique-se de ter um bom entendimento de nosso Código de Conduta, que pode ser encontrado aqui: 4 | 5 | - [Código de conduta da Python Brasil](https://python.org.br/cdc/) 6 | 7 | Também tenha um bom entendimento do que se espera de um participante que deseja relatar um incidente. Essas diretrizes podem ser encontradas aqui: 8 | 9 | - Procedimento do participante para relatar incidentes do código de conduta[]() 10 | 11 | ## Ao registrar uma denúncia de incidente: 12 | 1. Seja um ouvinte ativo e empático. Não use palavras de julgamento. 13 | 2. Garanta a segurança do denunciante. 14 | 3. Registre a denúncia e faça perguntas de esclarecimento. 15 | 4. Agradeça ao denunciante por relatar o incidente. 16 | 5. Relate o incidente aos responsáveis ​​pela resposta a incidentes listados abaixo. 17 | 18 | Em caso de conflito de interesses, você pode entrar em contato individualmente: 19 | 20 | - Alynne Ferreira - Responsável Geral pela Python Brasil 2021 (e-mail: A DEFINIR) 21 | 22 | ## Ao coletar informações do denunciante: 23 | 1. Não os convide a retirar o relatório do incidente. 24 | 2. Não peça conselhos sobre como responder imediatamente ao incidente. 25 | 3. Não ofereça a eles informações sobre a resposta de longo prazo ao incidente. 26 | 4. Não prometa nenhuma resposta específica, uma vez que pode ser diferente da resposta oficial decidida pelos responsáveis ​​pela resposta ao incidente. 27 | 28 | Tente obter o máximo de informações ou dados do incidente por escrito pelo denunciante. É necessário ter tudo documentado para nosso próprio respaldo. Se o denunciante não puder, transcreva-o como foi dito a você e peça que de alguma forma ele revise e assine. As informações importantes a serem coletadas incluem o seguinte: 29 | - Data e hora atuais. 30 | - Data e hora do incidente. 31 | - Localização do incidente. 32 | - Descrição do incidente. 33 | - Informações de identificação da pessoa infratora: nome, aparência física, roupa, sotaque de voz, informações de identificação (username, nome da apresentação, nome da empresa). 34 | - Circunstâncias adicionais em torno do incidente. 35 | - Nome do denunciante ou vítima e informações de contato. Se o denunciante quiser fazer uma denúncia anônima, permita que ele o faça. Se a resposta ao incidente revelar quem relatou o incidente (por exemplo, uma violação em um contexto de uma conversa individual), pergunte ao denunciante se ele tem preocupações de segurança sobre isso. 36 | - Outras pessoas envolvidas ou testemunhas do incidente e suas informações de contato ou descrição. 37 | - Não peça sugestões ao denunciante sobre como lidar com o incidente, mas registre as respostas sugeridas, se eles as oferecerem. 38 | 39 | Avalie se uma resposta imediata é necessária. Essa resposta inicial é muito importante e definirá a conduta a ser tomada pela Python Brasil. Dependendo da gravidade/detalhes do incidente, siga esta diretriz: 40 | 41 | - Depois de registrar a denúncia, avalie se você precisa de um responsável pela resposta do incidente para responder imediatamente ao incidente. 42 | 43 | Resposta às necessidades do denunciante. Você pode: 44 | 45 | - Agradeça ao denunciante por fazer a denúncia do incidente. 46 | - Tranquilize-os de que a denúncia do incidente será revisada pelos responsáveis ​​pela resposta ao incidente. 47 | - Reúna suas informações de contato para enviar um acompanhamento depois que o incidente for resolvido. 48 | - Pergunte: "De que outra forma posso lhe ajudar?" 49 | - Forneça a eles contatos não emergenciais, se necessário o número da polícia ou site oficial da polícia civil para registro de ocorrência. 50 | 51 | Assim que algo for relatado, o responsável geral do evento, o membro da APyB e os responsáveis ​​pela resposta a incidentes devem se reunir. Os principais objetivos desta reunião são: 52 | 53 | - Revisar a documentação da denúncia do incidente para determinar o que aconteceu. 54 | - Consultar a documentação de incidentes anteriores para padrões de comportamento. 55 | - Discutir as respostas adequadas ao incidente. 56 | - Designar uma pessoa para fazer essas respostas. 57 | - Determinar as ações de acompanhamento para qualquer pessoa vítima e/ou o denunciante. 58 | - Designar uma pessoa para acompanhar as pessoas lesadas. 59 | 60 | Após a reunião e discussão da equipe, um membro da equipe (de preferência o responsável geral da conferência ou membro da APyB, se disponível) pode optar por se comunicar com a pessoa infratora. 61 | 62 | ## Ao acompanhar uma pessoa infratora: 63 | - Explique o que aconteceu. 64 | - Concentre-se no impacto de seu comportamento. 65 | - Reitere o Código de Conduta e que seu comportamento não foi apropriado. 66 | - Dê a eles exemplos concretos de como eles podem melhorar seu comportamento. 67 | - Lembre-os das consequências de seu comportamento ou consequências futuras se o comportamento for repetido. 68 | 69 | As pessoas infratoras geralmente ficam chateadas, na defensiva, agressivas ou negam a denúncia. Permita que eles forneçam detalhes adicionais sobre o incidente. No entanto, lembre-se: 70 | 71 | - Não importa se eles não pretendiam machucar ninguém. Seu comportamento ainda impactou negativamente os participantes. 72 | - Não é seu trabalho tranquilizá-los ou perdoá-los. 73 | - Não permita que a pessoa infratora peça desculpas à vítima ou à pessoa denunciante. Freqüentemente, um pedido de desculpas centra-se nos sentimentos da pessoa infratora e não na pessoa que foi lesada. Você pode aceitar o pedido de desculpas e se oferecer para repassá-lo (mas você não é obrigado se achar que isso teria um impacto negativo para a vítima ou denunciante). 74 | 75 | A seguir, exemplos de possíveis respostas a um relatório de incidente. Esta lista não é inclusiva e a Python Brasil reserva-se o direito de tomar as medidas que julgar necessárias. As possíveis respostas a um incidente incluem: 76 | 77 | - Nada, se o comportamento foi determinado como não sendo uma violação do Código de Conduta. 78 | - Um aviso verbal ou por e-mail. 79 | - Exigir que a pessoa infratora evite qualquer interação com outra pessoa durante o resto do evento. 80 | - Exigir que a pessoa infratora não compareça aos eventos. 81 | - Banir a pessoa dos canais de comunicação do Discord ou chat. 82 | - Encerrar ou interromper uma interação que viola o Código de Conduta. 83 | - Não publicar o vídeo ou slides de uma palestra que violou o Código de Conduta. 84 | - Não permitir que um palestrante que violou o Código de Conduta dê (mais) palestras no evento agora ou no futuro. 85 | - Terminar imediatamente com as responsabilidades e privilégios voluntários de qualquer evento que uma pessoa detém. 86 | - Exigir que uma pessoa não se voluntarie para eventos futuros que a organização realize (seja indefinidamente ou por um determinado período de tempo). 87 | - Banir uma pessoa de eventos futuros (indefinidamente ou por um determinado período de tempo). 88 | - Remover uma pessoa da associação a organizações relevantes. 89 | - Publicar um relato do incidente e pedir a renúncia de uma pessoa de suas responsabilidades (geralmente perseguido por pessoas sem autoridade formal: pode ser chamado se a pessoa for o responsável do evento, ou se recusar a se afastar do conflito de interesses, ou semelhante, normalmente a equipe do evento tem direitos de liderança suficientes sobre seu espaço para que isso não seja tão útil). 90 | 91 | Se uma pessoa infratora quiser apelar da decisão, notifique-a de que ela pode entrar em contato com a APyB contato@python.org.br ou Python Brasil cdc@python.org.br. 92 | 93 | **ATENÇÃO:** Lembre-se de que não é uma boa ideia encorajar um pedido de desculpas da pessoa infratora. 94 | 95 | É muito importante como lidamos com o incidente publicamente. Nossa política é garantir que todos os que estão cientes do incidente inicial também estejam cientes de que não está de acordo com a política e que uma ação oficial foi tomada - respeitando a privacidade dos participantes individuais. 96 | 97 | Ao falar com pessoas (aqueles que estão cientes do incidente, mas não estiveram envolvidos nele) sobre o incidente, é uma boa ideia manter oculto os detalhes da situação. 98 | s 99 | Dependendo do incidente, o responsável geral da conferência ou outro responsável pode decidir fazer um ou mais anúncios públicos. Se necessário, isso será feito com um breve anúncio durante o evento e/ou por outros meios de comunicação/canais. Ninguém, a não ser o responsável geral da conferência ou alguém com autoridade delegada por ele, deve fazer qualquer anúncio. 100 | 101 | Se alguns participantes ficaram irritados com o incidente, é melhor pedir desculpas a eles. Se houver ressentimentos residuais, sugira que eles escrevam um e-mail para o responsável geral da conferência listado abaixo. Isso será tratado em conformidade. 102 | 103 | - Alynne Ferreira - Responsável Geral pela Python Brasil 2021 (e-mail: alynneferreiras@gmail.com) 104 | 105 | ------------------------ 106 | Este código de conduta foi adaptado a partir do definido pela PyCon US. 107 | -------------------------------------------------------------------------------- /roteiros/abertura.md: -------------------------------------------------------------------------------- 1 | ## Roteiro de abertura 2 | 3 | [Voluntária de infraestrutura :desktop_computer:] 4 | 5 | 1. Inicia a transmissão 6 | 2. Coloca o vídeo contador [90 segundos] 7 | 3. Inicia o vídeo de abertura 8 | 4. Inicia o procedimento do roteiro de mesa redonda. 9 | 10 | 11 | -------------------------------------------------------------------------------- /roteiros/assets/CleanShot 2021-10-11 at 00.34.28.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2021-org/44b2b86f1f531be62d38e0601186847b73f3380b/roteiros/assets/CleanShot 2021-10-11 at 00.34.28.gif -------------------------------------------------------------------------------- /roteiros/assets/files.txt: -------------------------------------------------------------------------------- 1 | files 2 | -------------------------------------------------------------------------------- /roteiros/charla-transmision-en-vivo.md: -------------------------------------------------------------------------------- 1 | # Guión para la transmición en vivo 2 | 3 | La comunicación entre la **Voluntaria de infraestructura :desktop:**, **la anfitriona :woman_juggling:** y las ponentes será siempre realizado a través de un chat privado por StreamYard. 4 | 5 | ## Antes de la charla 6 | 7 | ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ 8 | 9 | ⚠️⚠️NUNCA⚠️⚠️ HAGA CLIC EN ESTE BOTÓN SI NO ESTÁ CON LA ORGANIZACIÓN O NO ESTÁ SEGURO DE 10 | 11 | 12 | ![image](https://user-images.githubusercontent.com/7385097/136955832-dcf38e04-a684-4b54-a6b9-695826c5a297.png) 13 | 14 | EN DUDA << Inserta la superposición **"Aguarde transmissão** >> 15 | ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ 16 | 17 | **[Voluntaria de infraestructura :desktop: ]** 18 | 19 | - Informa a la ponente y presentadora que la comunicación será a través del chat privado de StreamYard. 20 | - Solicicitar que la ponente comparta su pantalla 21 | - Pide a la ponente que NO mire Youtube, ni Discord. 22 | - Sugerir a la ponente que encienda un cronometro de 45 minutos en su celular (tiempo total de la charla) 23 | 24 | ## Entretiempo 25 | 1. Poner la sobreposición **"AGUARDE"** antes de empesar la charla 26 | 2. Assegurese que el diseño seleccionado es lo mismo que se pone a continuacion: 27 | ![image](https://user-images.githubusercontent.com/30605862/136805604-d848a392-0869-4f4c-9460-04de49695460.png) 28 | 3. 90 segundos antes de empezar la charla, activar el video de **90 segundos**. Si la charla esté retrasada, activar el video de **"30 segundos** 29 | 4. Mientras el video, añada en la pantalla la intérprete de señales y la presentadora. También desactive la sobreposición **"AGUARDE"**. Assim, Cuando termine el video las personas ya estarán en la pantalla 30 | 31 | 32 | ## Introducción a la charla 33 | 34 | **[Presentadora :woman_juggling: ]** 35 | 1. Saluda a la gente, da la bienvenida al evento Python Brasil 2021 y agradece a todas por su participación. 36 | 2. Decir su nombre. 37 | 3. Realiza una autodescripción (ejemplo: soy una mujer negra, mi cabello es rizado y suelto, llevo gafas y una camiseta sin mangas estampada). Solo describe como se ve en el video, la idea es que sepan lo que hay en la pantalla. 38 | 39 | ([Voluntária de infraestrutura desktop_computer] 1 poner QR Code en la pantalla.) 40 | 41 | 5. Anima a contribuir con la campaña de donaciones para las proyecto "Mães da favela" que ayuda madres barrios pobres de Brasil. Informa que hay un código QR en la pantalla y la posibilidad de donar a través de EventBrite. 42 | 5. Informe que las inscripciones de los talleres están abiertas en el Discord. Busque el canal del tutorial que deseas y siga las instrucciones. Recuerde que solo puedes inscribirte en 1 taller del evento. Informar que los talleres tendrán intérprete de seña para los participantes que lo solicitaron. Entonces los que desearen, por favor, marca la @Organização en el canal #geral con la solicitud 43 | 8. Invita a todas las mujeres del evento a participar en la Assembleia anual PyLadies Brasil que se impartirá sábado a las 18h15 no canal mesa-pyladies Discord do evento. Essa assembleia es exclusiva para mujeres y TODAS son muy bienvenidas para hablar acerca de nuestra comunidad. Es un momento para confraternizar, compartir ideas y planear los próximos pasos de las comunidad PyLadies de Brasil 44 | 9. Anuncia a la ponente. 45 | 46 | **[Voluntaria de infraestructura :desktop: ]** 47 | - Añade a la ponente en la pantalla. 48 | 49 | **[Presentadora :woman_juggling: ]** 50 | 51 | 1. Presenta a la ponente y lee una pequeña biografía suya. 52 | 2. Da la bienvenida a la ponente, le pregunta cómo está. 53 | 3. Informa que todas las dudas deben ser publicadas en la seccion Bonnie Prado en el Discord del evento. Para tener acceso a ello, hace falta inscribirse en el evento. 54 | 55 | **[Presentadora :woman_juggling: ]** 56 | 1. Invita a seguir a través de las redes sociales (@pythonbrasil) y recuerda utilizar el hashtag # pybr2021. 57 | Informa que toda la programación del evento se puede encontrar en la web 2021.pythonbrasil.org.br 58 | 2. Anuncia el nombre de la charla. 59 | 3. Da la palabra a la ponente y le desea suerte en la charla. 60 | 61 | ## Durante la charla 62 | 63 | **[Voluntaria de infraestructura :desktop: ]** 64 | 1. Insere la presentación de la ponente en la pantalla 65 | 2. Remueve a la **Presentadora** :woman_juggling: de la pantalla. 66 | 3. Pone la interprete de señales arriba de la palestrante, como enseña el video a continuación: 67 | 68 | ![image](https://github.com/pythonbrasil/pybr2021-org/blob/main/roteiros/assets/CleanShot%202021-10-11%20at%2000.34.28.gif) 69 | 70 | 71 | **[Presentadora :woman_juggling: ]** 72 | 1. Recopila las preguntas que aparecen en el canal de Discord sobre la **charla**. 73 | 2. Controla el tiempo de la charla, informando a la ponente el tiempo restante a partir de 15min, a cada 5 min 74 | 75 | ## Después de la charla (momento de preguntas) 76 | 77 | **[Voluntaria de infraestructura :desktop: ]** 78 | 1. Añade a la **Presentadora :woman_juggling:** a la pantalla. 79 | 2. Remove la presentación de la ponente. 80 | 81 | **[Presentadora :woman_juggling: ]** 82 | 1. Felicita y agradece a la ponente. 83 | 2. Si la charla no pasó de sus 45 minutos, se hace las preguntas seleccionadas del Discord. 84 | 3. Agradece nuevamente a la ponente y a las personas que asistieron. 85 | 4. Informa el horario de regreso después del descanso. 86 | 87 | **[Voluntaria de infraestructura :desktop: ]** 88 | - Elimina a todo el mundo de la pantalla. 89 | - Añade el cronómetro. 90 | 91 | ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ 92 | 93 | ⚠️⚠️NUNCA⚠️⚠️ HAGA CLIC EN ESTE BOTÓN SI NO ESTÁ CON LA ORGANIZACIÓN O NO ESTÁ SEGURO DE 94 | 95 | 96 | ![image](https://user-images.githubusercontent.com/7385097/136955832-dcf38e04-a684-4b54-a6b9-695826c5a297.png) 97 | 98 | EN DUDA << Inserta la superposición **"Aguarde transmissão** >> 99 | ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ 100 | -------------------------------------------------------------------------------- /roteiros/encerramento.md: -------------------------------------------------------------------------------- 1 | # Roteiro de encerramento 2 | 3 | ## Após keynote 4 | 5 | **[Voluntária de infraestrutura :desktop_computer: ]** 6 | 7 | 1. Informar o contato será realizado pelo chat privado do StreamYard; 8 | 2. Pedir para **NINGUÉM** abrir o Youtube e nem o Discord; 9 | 3. **Antes de começar**, a **sobreposição** [AGUARDE]; (verificar) 10 | 4. Colocar o contador do tempo [90 SEGUNDOS] para a palestra. 11 | 12 | - **Voluntária de infraestrutura :desktop_computer:** deve adicionar a **Big Kahuna** na tela antes do contador acabar. 13 | 14 | - **Big Kahuna** dar boa noite a todas as pessoas. Dizer seu nome; 15 | - Realiza sua autodescrição (exemplo: Sou uma mulher negra, meus cabelos são cacheados e estão soltos, uso óculos e estou usando uma blusinha de alça estampada). Descreva apenas como você está se vendo no vídeo, a ideia é que todas as pessoas saibam o que está aparecendo na tela; 16 | 17 | - Hoje é dia da professora/professor, então gostaria de parabenizar a todas as professoras e professores e todas as ministrantes de tutoriais, palestras, oficinais e atividades das comunidades locais, que proporcionam momentos de trocas de conhecimento e fazem essa comunidade Python Brasil viva. 18 | 19 | - Incentiva a contribuir com a campanha de doação para o projeto que Mães da Favela. Informa que existe QR Code na tela e possibilidade de doação através do EventBrite; 20 | 21 | - Convida para participar dos tutoriais e sprints do final de semana. 22 | 23 | - Avisar sobre Assembleia anual PyLadies Brasil que acontecerá sábado as 18h15 no Discord do evento. Essa assembleia é exclusiva para mulheres e TODAS são bem vindas para conversar sobre as comunidades locais, confraternizar e trocar ideias para os próximos passos das comunidades PyLadies no Brasil 24 | 25 | - Informar que esta cerimônia de encerramento, que será em 3 partes: entrega do prêmio Dorneles Treméa/Jean Ferri, depois o convite para a Python Brasil 2022 e apresentação da organização desse ano. 26 | 27 | 28 | - Chama o Presidente da ApyB e passa a palavra 29 | 30 | - Prêmio Dorneles Treméa/Jean Ferri (40 a 45 minutos) @mazulo 31 | 32 | - apresentação Python Manaus 2022 (8min) 33 | - vídeo: 1 minuto 34 | - Chamar Nilo (@lskbr) e @julianyraiol 35 | 36 | - apresentação da organização (2 minutos) 37 | - mostrar foto de todas as integrantes da Organização 38 | - Foto do evento (vídeo do @rougeth) 39 | 40 | - Libras (3min) 41 | - Colocar logo da empresa na apresentação 42 | - chamar e dar voz a empresa 43 | - Listar nominalmente as pessoas intérpretes (slide @gabubellon) + logo 44 | 45 | - Tradução simultânea (3 minutos) 46 | - chamar e dar voz a empresa 47 | - Listar nominalmente as pessoas intérpretes (slide @gabubellon) + logotipo 48 | 49 | - Nome das mesas e quem são essas pessoas (3 minutos) 50 | - Shirley Ann Jackson 51 | - Marie Van Brittan Brown 52 | - Timnit Gebru 53 | - Angelica Ross 54 | - Bonnie Prado Pinto 55 | 56 | **- Chamar Gabu** (manter Alynne na tela) 57 | 58 | - Automatizações e bots (3 minutos) 59 | - adicionar links (@gabubellon, @rougeth) 60 | - Bots do Discord 61 | - Downloader do Stream Yard 62 | - Calendaryo 63 | - Criador de artes 64 | - Falar do pybrasilopendata 65 | - Site 66 | - Repo da organização 67 | 68 | - Dados & Doações (2 minutos) 69 | - Agradecer as doações 70 | - De prestação de contas (até o momento da live). Informar que a doação via EventBrite pode ser realizada até domingo 71 | - Falar que iremos prestar contas nas redes sociais 72 | 73 | - Aviso livros das palestras relâmpago (2 minutos) 74 | - São 18 livros. Responder em até uma semana (22 out.) pelo privado do discord 75 | 76 | - Avisa que tem Algorave as 22hs (youtube e discord) e convida as pessoas a interagir pelo discord 77 | - Agradecimento geral (Alynne sozinha na tela) 78 | - Vídeo **Final de palestra** 79 | 80 | ** Roteiro originado na [Issue 225](https://github.com/pythonbrasil/pybr2021-org/issues/225) 81 | 82 | -------------------------------------------------------------------------------- /roteiros/palestra-relampago-e-keynote.md: -------------------------------------------------------------------------------- 1 | # Roteiro para palestras relâmpago 2 | 3 | - coloca a pessoa e o slide se tiver 4 | - cronometra 5 minutos 5 | - tira a pessoa e o slide se passar o tempo 6 | 7 | **Voluntárias de infraestrutura :desktop_computer:** coloca a **Apresentadora :woman_juggling:** na tela 8 | 9 | **Apresentadora :woman_juggling:** 10 | 1. Dá boa noite 11 | 2. Explica o que é a palestra relâmpago 12 | - Palestras com duração de 5 minutos, sobre qualquer assunto, desde que não infrinja o Código de Conduta. Pode ou não ter slide. 13 | 3. Explica como funciona 14 | - As inscrições ficam abertas por um tempo no servidor do Discord, no canal #quero-participar 15 | - As pessoas interessadas clicam no emoji 16 | - O bot envia o link do Stream Yard para elas 17 | - Precisam responder e entrar no Stream Yard em até 3 minutos 18 | 4. Chama a participante 19 | 20 | 21 | **Voluntárias de infraestrutura :desktop_computer:** 22 | 23 | 1. Coloca a pessoa e o slide (se tiver) na tela 24 | 2. Tira a **Apresentadora :woman_juggling:** da tela 25 | 3. Quando der 5 minutos, tira o participante e o slide da tela e adiciona a **Apresentadora :woman_juggling:** 26 | 27 | No fim das palestras-relâmpago 28 | 1. **Apresentadora :woman_juggling:** avisa que vai começar o Keynote logo após os vídeos institucionais dos patrocinadores ouro 29 | 2. **Voluntárias de infraestrutura :desktop_computer:** tira a **Apresentadora :woman_juggling:** da tela 30 | 31 | ## Intervalo: 32 | Após a finalização, **Voluntárias de infraestrutura :desktop_computer:** colocam os vídeos institucionais dos patrocinadores ouro. 33 | 1. Jusbrasil 34 | 2. LuizaLabs 35 | 3. Carta 36 | 37 | # Roteiro para Keynote: 38 | 39 | 40 | A comunicação entre as **Voluntárias de infraestrutura :desktop_computer:**, **Apresentadoras :woman_juggling:** e Keynotes deverá ser realizado através do chat privado na plataforma StreamYard. 41 | 42 | ## Antes de acabarem os vídeos: 43 | 44 | **[Voluntária de infraestrutura :desktop_computer: ]** 45 | 46 | 1. Informar para a Keynote e apresentadora que o contato será realizado pelo chat privado do StreamYard; 47 | 2. Pedir para a Keynote **NÃO** abrir o Youtube e nem o Discord; 48 | 3. **Antes de começar**, colocar o **plano de fundo** [COM APRESENTAÇÃO], a **sobreposição** [+ DE PESSOAS + FUNDO]; 49 | 4. Colocar o contador do tempo [30 SEGUNDOS] para a palestra. 50 | 51 | - **Voluntária de infraestrutura :desktop_computer:** deve adicionar a **Apresentadora :woman_juggling:** na tela antes do contador acabar. 52 | 53 | 54 | ## Introdução da palestra: 55 | 56 | **[Apresentadora :woman_juggling: ]** 57 | 1. Cumprimenta as pessoas, dá boas vindas ao evento Python Brasil 2021 e agradece a participação de todas; 58 | 2. Se apresenta; 59 | 3. Realiza sua autodescrição (exemplo: Sou uma mulher negra, meus cabelos são cacheados e estão soltos, uso óculos e estou usando uma blusinha de alça estampada). Descreva apenas como você está se vendo no vídeo, a ideia é que todas as pessoas saibam o que está aparecendo na tela; 60 | 4. Incentiva a contribuir com a campanha de doação para a iniciativa Mães da Favela, que trabalha com segurança alimentar. Informa que existe QR Code na tela e possibilidade de doação através do EventBrite; 61 | 5. Anuncia a Keynote. 62 | 63 | **[Voluntária de infraestrutura :desktop_computer:]** 64 | 65 | - Insere Keynote na tela. 66 | 67 | **[Apresentadora :woman_juggling: ]** 68 | 69 | 1. Apresentar a Keynote e ler minibiografia da pessoa; 70 | 2. Dar boas vindas à Keynote, perguntar como ela está; 71 | 3. Avisar que todas as dúvidas devem ser postadas em nosso canal do Discord #perguntas-keynote; que toda a comunicação do evento também está ocorrendo por lá e que o link está na descrição do vídeo. 72 | 73 | **[Voluntária de infraestrutura :desktop_computer:]** 74 | 1. Colocar banner das redes sociais e hashtag. 75 | 76 | **[Apresentadora :woman_juggling: ]** 77 | 1. Convida para acompanhar através das redes sociais que também está na descrição do vídeo, e lembra de utilizar a hashtag #pybr2021; 78 | Avisar que a programação do evento pode ser encontrada no site 2021.pythonbrasil.org.br; 79 | 2. Anuncia o nome da palestra; 80 | 3. Passa a palavra ao Keynote e deseja boa palestra. 81 | 82 | ## Durante a palestra: 83 | 84 | **[Voluntária de infraestrutura :desktop_computer:]** 85 | 1. Remove **Apresentadora** :woman_juggling: da tela; 86 | 2. Coloca apresentação da Keynote; 87 | 88 | **[Apresentadora :woman_juggling: ]** 89 | 1. Coleta as perguntas que aparecerem no canal do Discord #perguntas-keynote; 90 | 2. Controla o tempo da palestra, informando para a Keynote o tempo restante a partir de 15min. 91 | 92 | ## Após a palestra (momento das perguntas): 93 | 94 | **[Voluntária de infraestrutura :desktop_computer:]** 95 | 1. Coloca a **Apresentadora :woman_juggling:** na tela; 96 | 2. Remove a apresentação da Keynote; 97 | 98 | 99 | **[Apresentadora :woman_juggling: ]** 100 | 1. Parabeniza e agradece a Keynote; 101 | 2. Fazer as perguntas selecionadas do Discord; 102 | 3. Agradece novamente a Keynote e as pessoas que assistiram; 103 | 4. Avisa que a programação continua amanhã. 104 | 105 | 106 | -------------------------------------------------------------------------------- /roteiros/palestra-transmissao-ao-vivo.md: -------------------------------------------------------------------------------- 1 | # Roteiro para transmissão ao vivo: 2 | 3 | A comunicação entre as **Voluntárias de infraestrutura :desktop_computer:**, **Apresentadoras :woman_juggling:** e palestrantes deverá ser realizado através do chat privado na plataforma StreamYard. 4 | 5 | ## Antes da palestra: 6 | 7 | ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ 8 | 9 | **⚠️⚠️NUNCA⚠️⚠️ CLICK NESSE BOTÃO SE VOCÊ NÃO FOR DA ORGANIZAÇÃO OU NÃO TIVER CERTEZA SOBRE** 10 | 11 | ![image](https://user-images.githubusercontent.com/7385097/136955832-dcf38e04-a684-4b54-a6b9-695826c5a297.png) 12 | 13 | NA DÚVIDA << Insere a sobreposição **"Aguarde transmissão** >> 14 | ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ 15 | 16 | **[Voluntária de infraestrutura :desktop_computer: ]** 17 | 18 | 1. Informar para a palestrante e apresentadora que o contato será realizado pelo chat privado do StreamYard; 19 | 2. Solicitar que a palestrante compartilhe apenas sua tela ou aba com a aparesentação; 20 | 3. Pedir para a palestrante **NÃO** abrir o Youtube e nem o Discord; 21 | 4. Sugerir que a palestrante acione o timer do seu celular em 45min (tempo total da palestra) assim que iniciar a apresentação dos slides 22 | 23 | ## Intervalo: 24 | 1. Colocar a sobreposição **"Aguarde"** antes de começar a palestra; 25 | 2. Garanta que o layout selecionado é o informado abaixo: 26 | 27 | ![image](https://user-images.githubusercontent.com/7385097/136731254-2a2a7227-83f2-4805-870b-589f20f67041.png) 28 | 29 | 30 | 4. 90 segundos antes de começar a palestra, acione o vídeo "90 SEGUNDOS". Caso a palestra esteja atrasada, acione o vídeo "30 SEGUNDOS" 31 | 5. Durante o vídeo, adicione na tela a intérprete de Libras e a anfitriã. Também desative a sobreposição **"Aguarde"** 32 | 6. Quando terminar o vídeo, ele sumirá e as pessoas aparecerão na tela. 33 | 34 | ## Introdução da palestra: 35 | 36 | **[Apresentadora :woman_juggling: ]** 37 | 1. Cumprimenta as pessoas, dá boas vindas ao evento Python Brasil 2021 e agradece a participação de todas; 38 | 2. Dizer seu nome; 39 | 3. Realiza sua autodescrição (exemplo: Sou uma mulher negra, meus cabelos são cacheados e estão soltos, uso óculos e estou usando uma blusinha de alça estampada). Descreva apenas como você está se vendo no vídeo, a ideia é que todas as pessoas saibam o que está aparecendo na tela; 40 | 41 | (**[Voluntária de infraestrutura :desktop_computer:]** 42 | 1 colocar QR Code na tela.) 43 | 44 | **[Apresentadora :woman_juggling: ]** 45 | 46 | 4. Incentiva a contribuir com a campanha de doação para projeto Mães da Favela. Informa que existe QR Code na tela e possibilidade de doação através do EventBrite; 47 | 5. Informar que as inscrições para tutoriais estão abertas no Discord. Busque o canal do tutorial desejado e leia as instruções. Lembrando que só pode se inscrever em 1 tutorial do evento. Informar que os tutoriais terão intérprete de libras sob solicitação, então a participante que desejar esse serviço deverá solicitar marcando @Organização no canal #geral 48 | 6. Avisar sobre Assembleia anual PyLadies Brasil que acontecerá sábado as 18h15 no Discord do evento. Essa assembleia é exclusiva para mulheres e TODAS são bem vindas para conversar sobre as comunidades locais, confraternizar e trocar ideias para os próximos passos das comunidades PyLadies no Brasil 49 | 7. Anuncia a palestrante. 50 | 51 | **[Voluntária de infraestrutura :desktop_computer:]** 52 | 53 | - Insere a palestrante na tela. 54 | 55 | **[Apresentadora :woman_juggling: ]** 56 | 57 | 1. Apresentar a palestrante e ler minibiografia da pessoa; 58 | 2. Dar boas vindas à palestrante; 59 | 3. Avisar que todas as dúvidas devem ser postadas em nosso canal do Discord e para ter acesso basta se inscrever no evento pelo EventBrite; o link está na descrição do vídeo. 60 | 4. Convida para acompanhar através das redes sociais @pythonbrasil e lembra de utilizar a hashtag #pybr2021; 61 | Avisar que a programação do evento pode ser encontrada no site 2021.pythonbrasil.org.br; 62 | 5. Anuncia o nome da palestra; 63 | 6. Passa a palavra ao palestrante e deseja boa palestra. 64 | 65 | ## Durante a palestra: 66 | 67 | **[Voluntária de infraestrutura :desktop_computer:]** 68 | 1. Coloca apresentação da palestrante; 69 | 3. Remove **Apresentadora** :woman_juggling: da tela; 70 | 4. Coloca a intérprete de LIBRAS na imagem acima da palestrante. 71 | 72 | ![image](https://github.com/pythonbrasil/pybr2021-org/blob/main/roteiros/assets/CleanShot%202021-10-11%20at%2000.34.28.gif) 73 | 74 | **[Apresentadora :woman_juggling: ]** 75 | 1. Coleta as perguntas que aparecerem no canal do Discord sobre a palestra; 76 | 2. Controla o tempo da palestra, informando pelo chat privado para à palestrante o tempo restante a partir de 15min a cada 5 min. 77 | 78 | ## Após a palestra (momento das perguntas): 79 | 80 | **[Voluntária de infraestrutura :desktop_computer:]** 81 | 1. Coloca a **Apresentadora :woman_juggling:** na tela; 82 | 2. Remove a apresentação da palestrante; 83 | 84 | **[Apresentadora :woman_juggling: ]** 85 | 1. Parabeniza e agradece a palestrante; 86 | 2. Caso a palestra não tenha ultrapassado os 45min, fazer algumas perguntas selecionadas do Discord; 87 | 3. Agradece novamente a palestrante e as pessoas que assistiram; 88 | 4. Avisa que a programação volta depois do intervalo. 89 | 90 | **[Voluntária de infraestrutura :desktop_computer:]** 91 | 1. Insere vídeo **"Final da palesttra** 92 | 2. Insere a sobreposição **"Aguarde transmissão** 93 | 3. Remove todas as pessoas "da tela" 94 | 95 | ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ 96 | 97 | ** ⚠️⚠️NUNCA⚠️⚠️ CLICK NESSE BOTÃO SE VOCÊ NÃO FOR DA ORGANIZAÇÃO OU NÃO TIVER CERTEZA SOBRE** 98 | 99 | ![image](https://user-images.githubusercontent.com/7385097/136955832-dcf38e04-a684-4b54-a6b9-695826c5a297.png) 100 | 101 | NA DÚVIDA << Insere a sobreposição **"Aguarde transmissão** >> 102 | ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ 103 | 104 | 105 | -------------------------------------------------------------------------------- /scripts/README.md: -------------------------------------------------------------------------------- 1 | # Como utilizar os scripts nesta pasta 2 | 3 | ## distribui_palestras_pt.py 4 | 5 | Este script espera como entrada a *planilha com as respostas dos formulários de submissão de atividades*. 6 | 7 | O que o script faz com essa entrada? 8 | - Filtra apenas as submissões em português 9 | - Remove espaços na coluna de e-mail da pessoa submetedora 10 | - Filtra apenas submissões de palestras (ignorando tutoriais) 11 | - Remove da planilha as colunas referentes à perguntas que existiam no form para a submissão de tutoriais e para submissões em espanhol (da coluna AG até o final no formulário de 2021) 12 | - Remove da planilha as colunas referentes à perguntas irrelevantes para a avaliação (colunas E a W no formulário de 2021) 13 | - Remove colunas referentes à coautoria (colunas Y a AA no formulário de 2021) 14 | - Remove coluna de timestamp e idioma (colunas A e B no formulário de 2021) 15 | - Ordena o resultado por e-mail da pessoa submetedora 16 | - Obtém o indíce do nome de uma pessoa avalidadora para a submissão, utilizando o seguinte algoritmo: 17 | 18 | ``` 19 | (indíce da submissão + INCREMENTO) % tamanho da entrada 20 | ``` 21 | 22 | O `INCREMENTO` deve ser um número maior ou igual ao número de palestras da palestrante que mais submeteu palestras. Neste código usamos `9`. 23 | 24 | - Como definimos que cada palestra teria três pessoas avaliadoras, utilizamos `INCREMENTO * 1` para obter a primeira, `INCREMENTO * 2` para obter a segunda, e `INCREMENTO * 3` para obter a terceira. 25 | - O mesmo algoritmo é aplicado para obter o e-mail da pessoa avaliadora 26 | 27 | ### Como executar o script 28 | 29 | 1. Tenha a planilha com as respostas dos formulários de submissão de atividades na mesma pasta do script, com o nome `entrada-revisada.xlsx` 30 | 31 | 2. Execute o script com o comando `python3 distribui_palestras.py` 32 | 33 | 3. O script irá gerar um arquivo chamado `teste-saida.xlsx` na mesma pasta. 34 | 35 | ## distribui_palestras_es.py 36 | 37 | Assim como o `distribui_palestras_pt`, este script espera como entrada a *planilha com as respostas dos formulários de submissão de atividades*. Ele funciona de forma muito semelhante ao script anterior, porém filtra as palestras em *espanhol*, e logo, filtra também os campos relativos às perguntas nesta linguagem. 38 | 39 | O que o script faz com essa entrada? 40 | - Filtra apenas as submissões em espanhol 41 | - Remove da planilha as colunas referentes à perguntas em português (do início até a coluna AG no formulário de 2021) 42 | - Remove espaços na coluna de e-mail da pessoa submetedora 43 | - Remove da planilha as colunas referentes à perguntas irrelevantes para a avaliação (colunas BC a BU no formulário de 2021) 44 | - Remove colunas referentes à coautoria (colunas BV a BX no formulário de 2021) 45 | - Remove colunas referentes ao direito de imagem (colunas CC e CE no formulário de 2021) 46 | - Ordena o resultado por e-mail da pessoa submetedora 47 | - Obtém o indíce do nome de uma pessoa avalidadora para a submissão, utilizando o mesmo algoritmo do script anterior, porém adaptando o incremento conforme a quantidade de submissões. Neste código estamos usando `3`. 48 | 49 | ## distribui_tutoriais.py 50 | 51 | Assim como o os dois scripts acima, este script espera como entrada a *planilha com as respostas dos formulários de submissão de atividades*. Ele funciona de forma muito semelhante, porém filtra as submissões de *tutoriais*, e logo, filtra também os campos relativos às perguntas deste tipo de atividade. 52 | 53 | O que o script faz com essa entrada? 54 | - Filtra apenas as submissões de tutoriais 55 | - Remove da planilha as colunas referentes à perguntas em português (do início até a coluna AG no formulário de 2021) 56 | - Remove espaços na coluna de e-mail da pessoa submetedora 57 | - Remove da planilha as colunas referentes à perguntas irrelevantes para a avaliação e perguntas referentes à submissões do tipo palestra (colunas E a AF no formulário de 2021) 58 | - Remove colunas referentes à sprints (da coluna AO até o final no formulário de 2021) 59 | - Remove coluna de timestamp e idioma (colunas A e B no formulário de 2021) 60 | - Ordena o resultado por e-mail da pessoa submetedora 61 | - Obtém o indíce do nome de uma pessoa avalidadora para a submissão, utilizando o mesmo algoritmo do script anterior, porém adaptando o incremento conforme a quantidade de submissões. Neste código estamos usando `9`. -------------------------------------------------------------------------------- /scripts/distribui_palestras.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | 3 | def trata_entrada(): 4 | entrada = pd.read_excel("entrada-revisada.xlsx") 5 | entrada = entrada[entrada[entrada.columns[1]]=="Português"].copy() 6 | entrada[entrada.columns[3]]=entrada[entrada.columns[3]].apply(lambda x : x.strip()) 7 | entrada = entrada[entrada[entrada.columns[22]]=="Palestra"].copy() 8 | entrada = entrada.drop(columns=entrada.columns.values[32:]) 9 | entrada = entrada.drop(columns=entrada.columns.values[4:23]) 10 | entrada = entrada.drop(columns=entrada.columns.values[5:8]) 11 | entrada = entrada.drop(columns=entrada.columns.values[0:2]) 12 | entrada = entrada.sort_values(by=[entrada.columns[1]], ignore_index=True) 13 | entrada = entrada.reset_index() 14 | return entrada 15 | 16 | def distribui_palestras(): 17 | """ Para cada posição na lista de entrada, ele atribuirá 3 palestras. 18 | % len(entrada) é utilizado para atribuir as palestras circularmente.""" 19 | entrada = trata_entrada() 20 | entrada["avaliador1"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(9*1))%len(entrada)], axis=1) 21 | entrada["avaliador2"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(9*2))%len(entrada)], axis=1) 22 | entrada["avaliador3"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(9*3))%len(entrada)], axis=1) 23 | entrada["email1"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(9*1))%len(entrada)], axis=1) 24 | entrada["email2"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(9*2))%len(entrada)], axis=1) 25 | entrada["email3"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(9*3))%len(entrada)], axis=1) 26 | aux1=entrada.copy().drop(columns=["email2","email3","avaliador2","avaliador3"]).rename(columns={"email1":"email","avaliador1":"avaliador"}) 27 | aux2=entrada.copy().drop(columns=["email1","email3","avaliador1","avaliador3"]).rename(columns={"email2":"email","avaliador2":"avaliador"}) 28 | aux3=entrada.copy().drop(columns=["email1","email2","avaliador1","avaliador2"]).rename(columns={"email3":"email","avaliador3":"avaliador"}) 29 | saida = pd.concat([aux1, aux2, aux3],ignore_index=True) 30 | saida.to_excel("teste-saida.xlsx") 31 | return saida 32 | print(distribui_palestras()) 33 | -------------------------------------------------------------------------------- /scripts/distribui_palestras_es.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | 3 | def trata_entrada(): 4 | entrada = pd.read_excel("entrada-revisada.xlsx") 5 | entrada = entrada[entrada[entrada.columns[1]]=="Español"].copy() 6 | entrada = entrada.drop(columns=entrada.columns.values[:52]) 7 | entrada[entrada.columns[1]]=entrada[entrada.columns[1]].apply(lambda x : x.strip()) 8 | entrada = entrada.drop(columns=entrada.columns.values[2:20]) 9 | entrada = entrada.drop(columns=entrada.columns.values[3:6]) 10 | entrada = entrada.drop(columns=entrada.columns.values[7:10]) 11 | entrada = entrada.sort_values(by=[entrada.columns[1]], ignore_index=True) 12 | entrada = entrada.reset_index() 13 | entrada.to_excel("teste-saida.xlsx") 14 | return entrada 15 | 16 | def distribui_palestras(): 17 | """ Para cada posição na lista de entrada, ele atribuirá 3 palestras. 18 | % len(entrada) é utilizado para atribuir as palestras circularmente.""" 19 | entrada = trata_entrada() 20 | entrada["avaliador1"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(3*1))%len(entrada)], axis=1) 21 | entrada["avaliador2"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(3*2))%len(entrada)], axis=1) 22 | entrada["avaliador3"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(3*3))%len(entrada)], axis=1) 23 | entrada["email1"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(3*1))%len(entrada)], axis=1) 24 | entrada["email2"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(3*2))%len(entrada)], axis=1) 25 | entrada["email3"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(3*3))%len(entrada)], axis=1) 26 | aux1=entrada.copy().drop(columns=["email2","email3","avaliador2","avaliador3"]).rename(columns={"email1":"email","avaliador1":"avaliador"}) 27 | aux2=entrada.copy().drop(columns=["email1","email3","avaliador1","avaliador3"]).rename(columns={"email2":"email","avaliador2":"avaliador"}) 28 | aux3=entrada.copy().drop(columns=["email1","email2","avaliador1","avaliador2"]).rename(columns={"email3":"email","avaliador3":"avaliador"}) 29 | saida = pd.concat([aux1, aux2, aux3],ignore_index=True) 30 | saida.to_excel("teste-saida.xlsx") 31 | return saida 32 | print(distribui_palestras()) 33 | -------------------------------------------------------------------------------- /scripts/distribui_palestras_pt.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | 3 | def trata_entrada(): 4 | entrada = pd.read_excel("entrada-revisada.xlsx") 5 | entrada = entrada[entrada[entrada.columns[1]]=="Português"].copy() 6 | entrada[entrada.columns[3]]=entrada[entrada.columns[3]].apply(lambda x : x.strip()) 7 | entrada = entrada[entrada[entrada.columns[22]]=="Palestra"].copy() 8 | entrada = entrada.drop(columns=entrada.columns.values[32:]) 9 | entrada = entrada.drop(columns=entrada.columns.values[4:23]) 10 | entrada = entrada.drop(columns=entrada.columns.values[5:8]) 11 | entrada = entrada.drop(columns=entrada.columns.values[0:2]) 12 | entrada = entrada.sort_values(by=[entrada.columns[1]], ignore_index=True) 13 | entrada = entrada.reset_index() 14 | return entrada 15 | 16 | def distribui_palestras(): 17 | """ Para cada posição na lista de entrada, ele atribuirá 3 palestras. 18 | % len(entrada) é utilizado para atribuir as palestras circularmente.""" 19 | entrada = trata_entrada() 20 | entrada["avaliador1"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(9*1))%len(entrada)], axis=1) 21 | entrada["avaliador2"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(9*2))%len(entrada)], axis=1) 22 | entrada["avaliador3"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(9*3))%len(entrada)], axis=1) 23 | entrada["email1"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(9*1))%len(entrada)], axis=1) 24 | entrada["email2"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(9*2))%len(entrada)], axis=1) 25 | entrada["email3"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(9*3))%len(entrada)], axis=1) 26 | aux1=entrada.copy().drop(columns=["email2","email3","avaliador2","avaliador3"]).rename(columns={"email1":"email","avaliador1":"avaliador"}) 27 | aux2=entrada.copy().drop(columns=["email1","email3","avaliador1","avaliador3"]).rename(columns={"email2":"email","avaliador2":"avaliador"}) 28 | aux3=entrada.copy().drop(columns=["email1","email2","avaliador1","avaliador2"]).rename(columns={"email3":"email","avaliador3":"avaliador"}) 29 | saida = pd.concat([aux1, aux2, aux3],ignore_index=True) 30 | saida.to_excel("teste-saida.xlsx") 31 | return saida 32 | print(distribui_palestras()) 33 | -------------------------------------------------------------------------------- /scripts/distribui_tutoriais.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | 3 | def trata_entrada(): 4 | entrada = pd.read_excel("entrada-revisada.xlsx") 5 | entrada = entrada[entrada[entrada.columns[22]]=="Tutorial"].copy() 6 | entrada[entrada.columns[3]]=entrada[entrada.columns[3]].apply(lambda x : x.strip()) 7 | entrada = entrada.drop(columns=entrada.columns.values[4:32]) 8 | entrada = entrada.drop(columns=entrada.columns.values[12:]) 9 | entrada = entrada.drop(columns=entrada.columns.values[0:2]) 10 | entrada = entrada.sort_values(by=[entrada.columns[1]], ignore_index=True) 11 | entrada = entrada.reset_index() 12 | return entrada 13 | 14 | def distribui_tutoriais(): 15 | """ Para cada posição na lista de entrada, ele atribuirá 3 palestras. 16 | % len(entrada) é utilizado para atribuir as palestras circularmente.""" 17 | entrada = trata_entrada() 18 | entrada["avaliador1"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(9*1))%len(entrada)], axis=1) 19 | entrada["avaliador2"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(9*2))%len(entrada)], axis=1) 20 | entrada["avaliador3"] = entrada.apply(lambda x: entrada[entrada.columns[1]].iloc[(x.name+(9*3))%len(entrada)], axis=1) 21 | entrada["email1"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(9*1))%len(entrada)], axis=1) 22 | entrada["email2"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(9*2))%len(entrada)], axis=1) 23 | entrada["email3"] = entrada.apply(lambda x: entrada[entrada.columns[2]].iloc[(x.name+(9*3))%len(entrada)], axis=1) 24 | aux1=entrada.copy().drop(columns=["email2","email3","avaliador2","avaliador3"]).rename(columns={"email1":"email","avaliador1":"avaliador"}) 25 | aux2=entrada.copy().drop(columns=["email1","email3","avaliador1","avaliador3"]).rename(columns={"email2":"email","avaliador2":"avaliador"}) 26 | aux3=entrada.copy().drop(columns=["email1","email2","avaliador1","avaliador2"]).rename(columns={"email3":"email","avaliador3":"avaliador"}) 27 | saida = pd.concat([aux1, aux2, aux3],ignore_index=True) 28 | saida.to_excel("teste-saida.xlsx") 29 | return saida 30 | print(distribui_tutoriais()) 31 | --------------------------------------------------------------------------------