Disponibilizar uma atividade ou recurso a somente uma turma

Grupos e agrupamentos no moodle

No Moodle existe o conceito de “grupo”. É uma sub-divisão dos participantes de um ambiente de apoio. Após configurar seu ambiente para usar grupos separados, é possível por exemplo usar um fórum para mandar um aviso para somente um grupo.

Grupos podem ser formados manualmente (em Administração do ambiente / Usuários / Grupos ), No Moodle do Stoa também é possível formar grupos baseado nas turmas do Júpiter: ao juntar dois ou mais “turmas” num único ambiente (veja o campo “Turmas da USP” nas configurações do seu ambiente), os alunos serão colocados num grupo automaticamente.

Tendo os grupos, a primeira coisa que a fazer é ir para as configurações do seu ambiente e, lá no final do formulário, escolher “Grupos Separados”. Isto faz com que a maioria das atividades ganham uma opção de separar os grupos. Para o fórum, por exemplo, isto significa que é possível abrir um tópico para somente uma das turmas (ainda é possível abrir um post para todos os participantes).

Grupos e agrupamentos no moodleMas para recursos, como faz? Nas configurações de recursos não existe opção de deixar um arquivo ou rótulo somente visível para um dos grupos. Para deixar recursos e atividades visíveis e acessíveis para somente uma turma, precisamos de agrupamentos. Um agrupamento é um conjunto de um ou mais grupos. Para criar eles, vá para Usuários / Grupos, aba Agrupamentos e coloque um ou mais grupos dentro do agrupamento. Agora, as atividades e recursos do Moodle ganham mais uma opção ao configurar eles: na seção em Configurações comum de módulos (clique em  “Mostrrar Avançado”) vai ser possível escolher o agrupamento para qual o recurso (ou atividade) deve ser visível.

 

Não se esqueça de escolher um agrupamento: se deixar em “Nenhum”, ninguém terá acesso ao recurso / atividade!

[Nota para administradores de Moodle: a receita acima vai funcionar somente se ativou a opção “Habilitar apenas membros de grupo” (enablegroupmembersonly) em Administração do site / Desenvolvimento / Experimental / Configurações experimentais ]

Novas Ferramentas para Matemática

Agora há pouco instalamos novas maneira de trabalhar com notação matemática e gráficos no Moodle do Stoa. As ferramentas são experimentais e devem ser habilitados para cada ambiente. Isto requer dois passos:

  1. Usar o tema stoamath. No seu ambiente, edite as configurações do seu ambiente (Bloco Configurações / Administração do ambiente / Editar configurações ) e escolhe o tema “stoamath” (Editar configurações / stoamath).
  2. Habilitar os filtros. Na administração do ambiente, clique em Filtros, habilite pelo menos o filtro Math.

Após estes passos, várias facilidades passam a funcionar:

  • O editor visual vai mudar um pouco, ganhando alguns botões que facilitam a inserção de conteúdo matemático e gráficos. Repare também um botão novo canto no topo esquerdo que revela ou esconde uma terceira linha de ferramentas.
  • É possível agora usar Mathjax usando notação TeX entre os códigos delimitadores @i @i (inline) ou @d @d (display). Estes delimitadores não-padrão foram escolhidos para não conflitar com os códigos de costume ($$ $$ e \[ \] ) que ainda geram imagens png, usando o filtro TeX padrão.
  • Experimente também as outras possibilidades ( inserção de gráficos por meio do Google Charts, Asciisvg ou JSXGraph (use o botão GeoNext))

Repetimos que estas ferramentas novas são experimental. Entre em contato se tiver sugestões ou perguntas.

Agradecemos o Prof. Tonelli da IME para incentivar este trabalho.

Problemas com datas em inglês resolvido

Até agora há pouco, as datas no calendário e nas seções de ambientes de apoio no formato semanal estava em inglês. Graças a um link passado pelo Prof. Tonelli do IME resolvemos o problema. Agora temos datas na língua padrão do ambiente.

(para os administrados de sistema: em servidores baseado na distribuição debian, use, no servidor onde o servidor web está instalado, dpkg-reconfigure locales e instale pt_BR.UTF8, es_ES.utf8, etc.)

Problema com notificações via email resolvido!

Acabamos de resolver um problema com o sistema de notificações do Moodle do Stoa. Normalmente, ao fazer um post em um fórum do tipo “Notícias”, uma notificação é mandado via email a todos os participantes (incsritos) do ambiente de apoio. Mas até hoje, dia 27 de janeiro no início da tarde isto não estava acontecendo. Acontece que o Moodle do Stoa novo foi instalado em novos servidores, que por um engano de configuração não podiam usar os servidores de email da USP. Avisamos o CCE e o problema está resolvido.

Obrigado à Profa. Eva Glenk para e ao CCE para a rápida resolução do problema!

Mudança na ordem dos blocos Navegação e Configuração

Inverti a ordem dos blocos “Navegação” e “Configuração” na barra lateral esquerda do Moodle do Stoa (são os dois blocos na barra lateral que aparecem em todas as páginas do site) . Agora, o bloco “Configuração” fica acima do bloco “Navegação”. Achei que vai ficar melhor, já que o bloco Navegação pode ficar muito comprido, deixando o bloco Configurações (que é importante sobretudo para Docentes e Monitores) difícil de achar.

Outras ideias? Fiquem a vontade fazer sugestões!

Quadro de notas do Moodle e PHP5.3.9

Descobrimos (e resolvemos) um problema que apareceu recentemente. Ao atualizar notas diretamente pelo quadro de notas, tutores percebiam que algumas notas não mudaram. Por exemplo, as notas dos alunos com nomes de digamos até M podiam ser atualizados, mas as notas dos alunos mais para baixo no quadro permanciam inalteradas. A razão é uma combinação de quadro de notas muito grandes e uma atualização de segurança recente do PHP.

Em algumas disciplinas os quadros de notas são bem grandes: podem conter mais do que 40 ou 50 colunas. Isto significa que ao atualizar uma nota diretamente pelo quadro de nota as notas de, digamos 25 alunos vezes 40 colunas ou da ordem de 1000 itens de nota  devem ser atualizados. Vimos que o navegador estava mandando todos os novos valores corretamente na requisição POST ao servidor. Mas  aparentemente o Moodle não processava os valores após 1000 itens.

Acontece que uma atualização do PHP (implementada 10 de janeiro 2012) introduz uma nova variável de configuração: “Added max_input_vars directive to prevent attacks based on hash collisions”. Esta nova variável é igual a 1000, por padrão. Portanto, a solução para quem lida com quadro de notas grandes no Moodle é usar um valor maior para a variável max_input_vars. Isto pode ser feito, por exemplo, colando em seu arquivo .htaccess a linha

php_value max_input_vars 10000

variável foi acrescentado para proteger o seu servidor contra um ataque denial of service. Acreditamos que aumentando seu valor para 10 mil não aumente o risco deste tipo de ataque substancialmente (porque, sinceramente, há maneiras muito mais simples de fazer este ataque).

Checklist para configuração de um novo Moodle

Instalar um novo Moodle é simples, sobretudo se já tiver um pouco de experiência com a instalação de software Web. Mas preparar um ambiente de produção requer muita atenção em muitas detalhes. Veja um checklist para verificar ao instalar um novo Moodle.

Primeiro, a instalação básica.

  • Baixar o código. O jeito moderno é usar algum branch do git://git.moodle.org/moodle.git . Se quiser usar o nosso código (uma versão levemente customizado do código “upstream”, com alguns plugins e temas já pré-instalados), use
    $ git init 
    $ git remote add -t devel2 -f origin git://git.atp.usp.br/moodle.git 
    $ git checkout -b meuprojeto origin/devel2

    A razão de não usar git clone é que não é necessário levar todos os branches para seu repositório local

  • Configurar o seu servidor Web (usamos Apache). Colocar ServerName e ServerAlias no VirtualHost. Aproveitar e mudar as configurações padrão da sua distribuição: KeepAliveTimeout 2, ServerLimit e MaxClients para algo como (memória disponível / 50M)* 80% (ou menos, se o seu base de dados fica na mesma máquina. Veja mais nas dicas de desempenho no Moodle Docs
  • Instalar um acelerador PHP (usamos APC, php-apc no debian e ubuntu )
  • Instalar um base de dados (usamos Mysql) e criar sua base. Aproveitar e mudar as configurações padrão da sua distribuição. Se usar innodb, o parâmetro mais importante é innodb_buffer_pool_size. Veja mais nas dicas de desempenho no Moodle Docs
  • Configurar o admin/cron.php (usando o crontab do root do servidor Web, por exemplo)
  • Configurar o tamanho máximo de uploads. Fazemos usando um arquivo .htaccess no raiz do site com
    php_value upload_max_filesize 150M
    php_value post_max_size 151M
  • Configurar backups! Usamos mysqldump para a base e rsync para moodledata.
Uma vez instalado, vem a configuração do Moodle
  • Decidir como os seus usuários vão se cadastrar e autenticar (em Plugins / Authentication). No nosso caso, isto envolve plugins de autenticação desenvolvidos por nós. Não esquecer escrever as instruções (colocar em Plugins / Authentication / Common Settings )
  • Configurar email (em Plugins / Message Outputs)
  • Decidir o template principal do site. Decidir se categorias e cursos podem usar templates próprios. Neste caso, colocar pelo menos o seu próprio logo nestes templates.
  • Configurar o menu principal (em Appearance / Temas ). Fazer links para as páginas de ajuda.
  • Baixar “language packs”.
  • Configurar os papeis (renomear Teacher para Docente, mudar permissões a gosto, criar outros papeis)
  • Ativar estatísticas (em Server / Statistics e também (!) em Advanced Features)
  • Colocar o código de Google Analytics (em Appearance / Aditional HTML)
  • Habilitar o filtro Latex (em Plugins / Filters). No debian o pacote texlive-latex-base traz quase tudo.
Que mais acham que não podemos esquecer?

 

Grupo ATP no MoodleMoot 2011

O Grupo ATP apresentou (parte de) seu trabalho numa conferência de especialistas no AVA Moodle. Veja as nossas apresentações embaixo. Na primeira apresentação descrevemos a infraestrutura que montamos em apoios ao Redefor e a Licenciatura em ciências. Focamos na arquitetura do nosso cluster de servidores e o desenho dos ambientes criados no Moodle.

Na segunda apresentação, encabeçado pelo Helbert, descrevemos a nossa solução para o problema de administração de muitos Moodles, cada um com seus próprios plugins e temas: usar git não somente para o versionamento de código mas também para manter este código atualizado nos servidores de produção.

Tipos de Fórum no Moodle da Redefor

Antes de mais nada,  é bom definir uma terminologia. Pode ter um ou mais fóruns em cada ambiente. Um fórum consiste de vários “tópicos” e um tópico é uma sequência  de mensagens. Uma mensagem geralmente é um resposta a uma outra mensagem dentro do mesmo tópico.

No Moodle da Redefor temos adotado uma determinada política de configuração dos fóruns. Com poucas exceções estamos usando dois tipos de fórum:

  1. Um fórum do tipo “Fórum de Notícas”. Neste fórum, somente alguém no papel de tutor ou especialista pode iniciar um tópico e por padrão o cursista não pode responder (é possível mudar isto, mas se cursista deve poder responder, recomendamos usar um fórum do tipo “Geral”). É possível usar um bloco na barra lateral para mostrar os últimos posts neste fórum.
  2. Um fórum do tipo “Geral”. Este fórum é desenhado para promover discussões. Por padrão, no Moodle do Redefor cursistas não podem iniciar novos tópicos. Portanto, é essencial que o tutor “abra” (inicie um novo tópico) cada novo fórum no ambiente. O cursista poderá somente responder a tópicos abertos pelo seu tutor. Esta configuração é uma tentativa de organizar melhor as discussões, mas o Editor / DI do ambiente pode abrir uma exceção desta política em fóruns individuais.

Uma configuração e política importantíssima é a de assinatura do fórum. Para cada mensagem postado num fórum, o Moodle decide se vai mandar uma notificação no e-mail de notificações. O Editor / DI do ambiente pode determinar uma política padrão mas o usuário também pode mudar as suas preferências de notificações para cada fórum.

O Fórum é uma ferramenta extremamente flexível e pode ser adaptado para implementar várias estratégicas pedagógicas. Veja algumas funcionalidades mais avançadas do fórum:

  1. A funcionalidade “interromper” : se uma discussão virou muito longo, podem usar o botão “interromper” para transferir uma resposta (e tudo embaixo desta resposta) para um novo tópico no mesmo fórum.
  2. É possível “transferir” um tópico para um outro fórum (dentro do mesmo ambiente).
  3. Anexar arquivos: se o arquivo é uma imagem (.png, .jpg) a imagem será inserido no post
  4. Avaliação: o Fórum pode ser configurado para permitir que o tutor atribua uma nota (ou conceito, se foram usados “esscalas”) a cada post do cursista. É até possível permitir cada cursista avaliar os seus colegas! Esta avaliação por pares possibilita mais N dinâmicas pedagógicas.
  5. Cada usuário pode mudar a sua visualização do tópico. A visualização padrão “aninhada” usa indentação para mostrar qual mensagem é uma resposta a qual outra mensagem. Mas é possível por exemplo ordenar os posts cronologicamente.

Como baixar uma planilha com números USP dos seus cursistas

Quem tem permissões de edição em algum ambiente (disciplina) pode fazer o seguinte para baixar uma planilha com nomes e números USP dos inscritos neste ambiente:
  1. No ambiente, vá para Grupos (caixa de administração), clique o link.
  2. Clique na aba “Visão Geral”.
  3. ‘Scrollar” (?) para baixo, procurar o botão “Download em formato Excel”
Nesta planilha, a terceira coluna é chamada “Número de identificação”. No caso dos Moodles da USP, este campo contem o número USP.  É preciso ressaltar que esta planilha somente contem os cursistas que acessarem o ambiente pelo menos uma vez (são “inscritos” no ambiente). Ou seja, a lista pode mudar na medida que novos cursistas acessam o ambiente e são inscritos automaticamente.
Outros relatórios no Moodle também incluem o número USP (“idnumber” ou “número de identificação”): por exemplo, ao baixar (exportar) o quadro de notas ou os resultados de uma enquete este campo é incluído. Mas nestes casos, somente cursistas com notas atribuídas ou (no caso das enquetes) respondentes são incluídos na planilha.