Zulip

O que é?

Zulip é a plataforma que usaremos para comunicar sobre qualquer assunto (meta ou não) da disciplina, fora das aulas. É um dos nossos meios oficiais para comunicar, e logo os alunos matriculados devem participar (caso contrário podem perder avisos e notícias importantes).

Existem muitos zulips abertos de várias comunidades e diversos assuntos, aqui o zulip que nos importa é da nossa disciplina.

Como funciona?

Se nunca usou o Zulip, primeiramente veja o tour no seu próprio site e também o Why Zulip? que aparece no fim do tour.

Como eu entro?

O Zulip da disciplina é o fmcthanos.zulipchat.com. Os alunos matriculados na disciplina precisam entrar e participar no nosso zulip. Para entrar precisa um convite: verifique teu email cadastrado no SIGAA e as notícias na turma do SIGAA também. Caso que não consegues acessar mesmo assim, espere uma hora, e se ainda não recebeu link, entre em contato comigo por email!

Alunos que não entraram no Zulip para mais que uma semana serão desativados sem aviso (além deste aqui). Se isso acontecer—não deveria—entre em contato comigo para reativar tua conta.

É obrigatório atualizar teu perfil, preenchendo os campos e também adicionando uma foto tua. (Foto de ti mesmo, onde dá pra ver tua cara e te reconhecer; não avatars, spidermans, etc.) Sem isso feito também não ganharás pontos de participação.

Em quais canais eu devo me inscrever?

Siga o link na parte esquerda Subscribe to more channels para confirmar que tu tá inscrito nos canáis corretos.

Para os alunos de FMC1: em todos da lista abaixo exceto os: #meta-fmc2, #set-fun-rel, #algebra, #cats, #set-theory, #meta-fun.

Para os alunos de FMC2: em todos da lista abaixo exceto os: #meta-fmc1, #meta-fun.

Para os alunos de Programação Funcional: #meta-fun, #programming, #tech, #rec-ind, #zulip, #misc, #fmcbook, #cafe, #test, #english, #portuguese

Onde postar?

Cada post é associado a um tópico, e cada tópico é associado a um canal.

Os canais relevantes são:

#meta-D meta-assuntos, ou seja, assuntos não-matemáticos relacionados às coisas administrativas (para a disciplina D)
#cafe bater papo aleatório
#test use isso para testar o zulip, como postar, etc.
#intro-lang-proofs (FMC) sobre o conteúdo (matemático) introdutório (corresponde aos capítulos 1--3)
#rec-ind (FMC) sobre recursão e indução (corresponde ao capítulo 5)
#ints (FMC1) sobre teoria dos números inteiros (corresponde ao capítulo 4)
#reals (FMC1) sobre teoria dos números reais (corresponde ao capítulo 6)
#set-fun-rel (FMC2) sobre conjuntos, funções, relações, e seus amigos dos números (corresponde aos capítulos 8,9,11)
#set-theory (FMC2) sobre teoria dos conjuntos (corresponde aos capítulos 15--16)
#algebra (FMC2) sobre álgebra (corresponde aos capítulos 13--14)
#cats (FMC2) sobre categorias
#proofassistants sobre Lean e os demais proof assistants: Agda, Coq, etc.
#programming sobre programação
#misc sobre conteúdo (matemático) da disciplina que não encaixa nos canais mais especializados
#english sobre inglês
#portuguese sobre português
#fmcbook erros, atualizações, e sugestões sobre o fmcbook
#tex sobre TeX, LaTeX, ConTeXt, Overleaf, ...
#zulip sobre o (uso do) próprio Zulip
#tech sobre outras ferramentas, aplicatívos, editores, sistemas operacionais, programas, etc.

Exemplos:

  1. Na p.302 do fmcbook na última linha não era pra ser sem utilizar' em vez de utilizando’?
    → #fmcbook
  2. No 01:12:40 da aula tal (link no youtube) não entendi o que permite esse passo
    → (depende do assunto discutido)
  3. Podemos entregar o homework de hoje em jpg?
    → #meta-fmc1
  4. O capítulo 6 vai ser tudo que vamos ver na unidade 3?
    → #meta-fmc1
  5. Compilei o Problem Set com LaTeX e criei o PDF. Como eu mando agora?
    → #meta-fmc1
  6. No teorema Θ4.11 do fmcbook daria certo usar redução ao absurdo?
    → #ints
  7. Dá para usar Agda em vez e Coq para formalizar o teorema Θ4.12?
    Depende: se a dúvida é sobre as capacidades das duas linguagens, poste no #proofassistants; se a dúvida é sobre se eu, Thanos, vou aceitar nesta disciplina entregar tal trabalho em Agda em vez de Coq, poste no #meta-fmc1.
  8. Alguém tá matriculado em LP2 neste semestre?
    → #cafe
  9. Onde tem kebab bom em Natal?
    → #cafe

Cria um novo tópico para tua mensagem, exceto se ela faz parte dum tópico já existente.

Se não tem certeza onde postar, poste em algum lugar que tu acha melhor e depois mudamos para o lugar certo sem problema!

Como não postar

  1. Na grande maioria dos casos não direcione tua mensagem/pergunta pra mim (escrevendo, por exemplo, «Professor, eu não entendi como bla bla…», ou «Thanos, por que bla bla..?». Simplesmente pergunte: «Eu não entendi como bla bla…». A idéia é abrir/participar numa discussão no grupo e não num dialogo aberto.
  2. Na grande maioria dos casos não use a função de “quote and reply” do Zulip. Isso faz sentido em outros modelos (emails, discord, slack, etc.) mas no modelo do Zulip isso atrapalha muito: toda a conversa é facilmente disponível para ler então não faz sentido copiar/colar (mesmo sendo feito automaticamente). Simplesmente responda. Caso que não é óbvio ao que tá referindo tua resposta, melhor incluir um curto quote manualmente usando > talvez escondido grandes partes botando [...] para indicar que algo foi omitido. Dependendo do caso pode fazer sentido tag’ar um usuário (usando o @).
  3. Evite usar a função do Zulip de “marcar como resolvido”.
  4. Querendo falar sobre teu código, não poste screenshots dele, quando dá para copiar-colar o próprio código. Use blocos indicando a linguagem usada!
  5. Tendo um tópico sobre um exercício que tu já tentou resolver, se envolva na discussão em vez de simplesmente jogar tua resolução inteira na mesma conversa para receber um feedback independente. (Dá para abrir novo tópico, mas também faz muito mais sentido fazer isso depois de aproveitar a briga atual.) Também faz sentido atualizar tua resolução antes de mandar, levando em consideração a briga já feita no tópico existente. Provavelmente tem como adicionar apenas os pontos diferentes na mesma conversa para receber possíveis “ataques”. Caso que se trata uma resolução escrita em forma bem diferente, realmente é melhor abrir um novo tópico, assim facilitando uma nova briga acontecer.
  6. Tente no máximo não depender nem de arquivos externos nem de símbolos complicados. Por exemplo, não fique LaTeX’ando um documento inteiro para anexar o pdf, isso complica demais tua vida e a vida do resto da turma também. A grandíssima maioria dos exercícios dá para responder postando aqui em pleno texto, e usando um unicodezinho here ou um TeX’inho there. Use o #test para testar qualquer coisa, além da função “preview” para ver como vai ficar teu post antes de postá-lo.
  7. Pode ser que tu quis abrir um novo tópico mas, escolhendo o título acabou existindo outro no mesmo canal com este mesmo título. Para não “seqüestrar” a conversa anterior tente mudar pouco teu título, por exemplo adicionando um número ou o semestre atual, caso que a conversa anterior foi de outro semestre.

Como postar…

…numa maneira bem formatada?

Veja sobre o markdown do Zulip!

…matemática?

O Zulip entende e tem funcionalidade de usar (La)TeX mas, surpresa: muitas vezes é melhor simplesmente usar unicode.

Para inline math: se usar TeX para mencionar, por exemplo, variável x o modo TeX já vai destacá-la numa maneira legal no meio do texto normal; mas uma outra maneira legal para destacá-la seria usar os backticks para escrevé-la como se fosse um codigozinho (como eu acabei de fazer aqui que falei «variável x …» em vez de «variável x …».

Para display math: Se escolher usar TeX tu escreve com o code block escolhendo como linguagem a math. Se escolher texto (com Unicode) escreve com o code block sem linguagem ou escolhendo alguma das linguagens que fazem um highlight legal (veja a próxima resposta).

…demonstrações?

Optem para formar demonstrações usando code block (com ```) em vez de escrever com texto normal. Assim destacamos ainda mais a separação entre a linguagem-objeto que estamos discutindo (linguagem de demonstrações que desenvolvemos aqui) com a metalinguagem (português, ou quase isso) que estamos usando para discutir sobre ela. Além disso, fica mais alinhado o formato com a idéia de «linhas de código».

Se quiser, brinque (usando o Preview) com as opções de linguagem-objeto que Zulip conhece para ver se alguma delas acaba criando um highlighting melhor para a leitura (opções comuns para considerar: lean4, agda, idris, coq, …)

…cálculos?

Em vez de escrever na forma

bla bla bla bla = blu blu  [foo.2]
                = blu bli  [bar.2]
                = meh boo  [meh.1]

que é um PITA para alinhar corretamente se tu trabalha num navegador, e acaba tendo largura abusiva em geral, escreva ou assim:

bla bla bla bla
  = blu blu  [foo.2]
  = blu bli  [bar.2]
  = meh boo  [meh.1]

ou assim:

  bla bla bla bla
=   [foo.2]
  blu blu
=   [bar.2]
  blu bli
=   [meh.1]
  meh boo

Todas essas três formas ficam bonitas e válidas no papel também. Mas a primeira é cansativa de ler e de escrever no Zulip!