terça-feira, 21 de maio de 2013

Utilização de aplicativos em sala de aula

Nenhum comentário:

Há algum tempo atrás, Nathalia e eu fomos convidados pelo SINSESP (sindicato das secretárias e secretários de SP) para ministrar um mini curso sobre uso de aplicativos em sala de aula.

O sindicato oferece uma série de cursos de aperfeiçoamento profissional para professores interessados, e um dos temas solicitados foi justamente como tirar proveito de tecnologias da informação e comunicação em educação. O público foi relativamente diversificado em termos de fluência digital, e quando nos passaram esta informação, resolvemos estruturar o curso de maneira mais introdutória.

O curso aconteceu no dia 18/05 /2013, teve duração de aproximadamente 3 horas e meia, e três partes, basicamente. Na primeira, fizemos uma introdução nos conceitos de pedagogia de projetos e aprendizagem com mobilidade (mobile learning), além de um glossário de tecnologias da informação e comunicação.

Na segunda, mostramos alguns recursos digitais disponíveis para uso em sala de aula, como canais de vídeo, repositórios de conteúdo e redes sociais. Outro tópico abordado foi o de como fazer melhores buscas na Internet (um tópico que parece óbvio, mas não é tanto assim). Além disso, abordamos alguns jogos e aplicativos para celular com potencial de exploração em aprendizagem.

Por último, propusemos uma atividade prática. A atividade consistiu em modificar um plano de aula, a fim de incluir o uso de recursos tecnológicos. Foram formados grupos de trabalho, com disciplinas distintas.

O material usado no curso está disponível neste link. Aproveito também para agradecer o convite e também a participação do público durante a apresentação. Foi uma ótima experiência para mim.

sexta-feira, 11 de janeiro de 2013

Django simple captcha no Ubuntu 12.10

Nenhum comentário:
Hoje eu estava desenvolvendo um projeto em Django que precisa de Captcha no cadastro de usuários. Já tenho familiaridade com o Simple Captcha, e resolvi usar novamente.

Esta aplicação Django tem uso bastante simples, mas eu não conseguia fazer a exibição das imagens corretamente. Eu usei a ferramenta virtualenv para montar meu ambiente de desenvolvimento, e as bibliotecas estavam instaladas lá via pip. A biblioteca PIL é uma dependência de Simple Captcha, justamente por permitir a criação de imagens por código. No meu formulário, ficou assim:

captcha = CaptchaField( label = 'Repita os caracteres a seguir')


Mas a exibição do formulário continha apenas o texto alternativo. O comando manage.py runserver mostrava um código 500 para a URL das imagens do captcha. Acessando a imagem da URL em si, pude verificar o seguinte erro:

The _imagingft C module is not installed

Um erro que já tinha me deparado antes, mas nunca registrei a solução. Essencialmente, a instalação via pip compila a bilioteca PIL, e o uso do Simple Captcha requer o suporte a Freetype2 no momento da compilação para poder gerar as imagens corretamente. Para corrigir isso no Ubuntu 12.10, basta colocar as referências certas antes da compilação:

# ln -s /usr/lib/`uname -i`-linux-gnu/libfreetype.so /usr/lib/
# ln -s /usr/lib/`uname -i`-linux-gnu/libjpeg.so /usr/lib/
# ln -s /usr/lib/`uname -i`-linux-gnu/libz.so /usr/lib/

Depois, basta instalar a biblioteca PIL:

pip install pil

A mensagem final da compilação deverá mostrar algo como

    --------------------------------------------------------------------
    PIL 1.1.7 SETUP SUMMARY
    --------------------------------------------------------------------
    version       1.1.7
    platform      linux2 2.7.3 (default, Sep 26 2012, 21:51:14)
                  [GCC 4.7.2]
    --------------------------------------------------------------------
    *** TKINTER support not available
    --- JPEG support available
    --- ZLIB (PNG/ZIP) support available
    --- FREETYPE2 support available
    *** LITTLECMS support not available
    --------------------------------------------------------------------

E deverá funcionar! Encontrei a solução neste link.

domingo, 15 de abril de 2012

Instalando Android 2.3.7 no LG GT540 usando Ubuntu

17 comentários:
Como disse antes, eu estava tentando atualizar meu celular. Depois de algum tempo pesquisando, encontrei uma maneira de instalar uma ROM personalizada usando (quase exclusivamente) Ubuntu. No meu caso, instalei o Android 2.3.7 (Gingerbread), a partir de uma ROM conhecida como SwiftDroid 2.0, que é baseada no CyanogenMod 7.

Meu celular veio com Android 2.1, sem fastboot [1], por isso o processo foi feito em duas etapas: instalação de uma ROM com fastboot e a instalação do SwiftDroid. A primeira parte, não consegui fazer diretamente do Ubuntu, a segunda pode ser feita em Ubuntu sem problema algum. Se você já conseguir ativar o modo fastboot diretamente, pode seguir diretamente para a instalação da ROM Gingerbread.

Instalando uma ROM com fastboot: fiz esta etapa usando Windows. Li relatos de pessoas que teriam feito esta etapa usando Windows no Virtualbox, mas comigo não deu certo; por isso usei o Windows 7 para esta primeira parte. Eis os passos:

  1. Baixar e instalar drivers do celular, e o software de instalação de ROMs da LG o KDZ Updater. O pacote do KDZ contém o arquivo msxml.msi, necessário para rodar o KDZ Updater. Os drivers não são necessários se você já tiver instalado no LG PX Suite.
  2. Baixar a ROM com fastboot, versão Android 2.1.
  3. Rodar KDZ Updater, usando os parâmetros: type = 3GQCT, mode = DIAG, ROM = Android_2.1_Fastboot.kdz (arquivo que acabamos de baixar).

Agora é só clicar em "Launch software update" e esperar (não desligue o telefone).

Instalando ROM Android 2.3.7 (Gingerbread): uma vez que você tenha uma ROM com fastboot no telefone, é possível usar o Ubuntu para instalar uma nova versão de Android a qualquer momento, basta ter os arquivos certos. Os arquivos são: imagens do SwiftDroid 2.0 e os executáveis do ADB e fastboot. Conecte o telefone com Debug USB ativado e digite o seguinte na linha de comando (descompacte os arquivos na mesma pasta):

./adb reboot bootloader

E espere o telefone reiniciar em modo fastboot. Se tudo estiver certo, o telefone apresentará o logo da LG e, depois, uma tela preta, apenas com o backlight ligado. Na sequência:

sudo -s
./fastboot -w #apaga dados de usuário! faça ***BACKUP***
./fastboot flash boot boot.img
./fastboot flash system system.img
./fastboot flash recovery recovery.img
./fastboot reboot

O fastboot vai instalar os arquivos na partição de boot, depois na de sistema e, finalmente, na de recuperação. O processo todo demora em torno de 8 minutos. Vale lembrar que é bom fazer backup, já que configurações e aplicativos serão apagados.

Nota: fiz este procedimento usando Ubuntu 11.10. Além disso, eu já tinha o SDK Android instalado, pode ser necessário para você também.

-----

[1] - o fastboot funciona como um bootloader, ao iniciar o celular em modo fastboot, é possível descarregar uma nova versão do sistema operacional. Tal qual outros sistemas baseados em GNU/Linux, Android tem partições de boot e sistema, e o fastboot permite descarregar uma imagem nestas partições.

Atualização: corrigi os links como a Inês Adornes relatou nos comentários.

Referências:
http://ericcarneiro.wordpress.com/2012/01/09/overclock-no-lg-gt540/
http://forum.xda-developers.com/showthread.php?t=927379
http://android.stackexchange.com/questions/17499/install-custom-rom-from-linux-on-a-lg-gt540/21263#21263

sábado, 7 de abril de 2012

Acesso root no Android usando Ubuntu

Nenhum comentário:
Como já disse antes, tenho um LG GT540, um celular Android modesto. Como se sabe, a LG disponibiliza a versão 2.1 do Android (codinome Eclair) para este celular.

Uns dias atrás, resolvi que arriscaria atualizar para uma versão mais nova, a 2.3.7 (codinome Gingerbread). Antes de mais nada, tinha de fazer backup dos dados e principais aplicativos. Como tinham me recomendado usar o Titanium Backup para isso, eu precisava de acesso root no meu celular.

Instalar o acesso a root é bem simples, você vai precisar deste arquivo (contém o ADB e arquivos de instalação para o celular). É preciso habilitar USB debugging no celular para funcionar também. Descompacte os arquivos numa pasta e execute os comandos a seguir:

./adb push rageagainstthecage-arm5.bin /data/local/tmp/rageagainstthecage
./adb shell chmod 4755 /data/local/tmp/rageagainstthecage
./adb shell /data/local/tmp/rageagainstthecage
./adb wait-for-device
./adb shell mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
./adb push su /system/xbin/su
./adb push su /system/bin/su
./adb shell chmod 4755 /system/xbin/su
./adb shell chmod 4755 /system/bin/su
./adb shell rm /data/local/tmp/rageagainstthecage

Simples, né? Depois disso, recomendo instalar o aplicativo Superuser no celular para controlar quais aplicativos podem ou não ter privilégio de root.

Adaptado daqui.

Notas:
  1. Não desligue o celular antes de concluir o processo.
  2. Testado no Ubuntu 11.10.
  3. Este artigo parte da premissa de que o celular está rodando a versão Android 2.1 instalada de fábrica.
  4. Necessita do pacote ia32-libs instalado no Ubuntu.

quarta-feira, 4 de abril de 2012

Avaliando pessoas

2 comentários:
Eu participo da organização da FEBRACE há algum tempo já, e, entre minhas responsabilidades está avaliar projetos. Em resumo,o processo funciona assim: estudantes submetem seus projetos através de um sistema online, um conjunto de mestres e doutores avaliam e selecionam algo como 240 a 300 projetos.

Agora, como saber quais são os melhores entre todos os que foram submetidos? Sem dúvida, este é o maior desafio conceitual para a avaliação da feira. A abordagem comum para este problema é definir um conjunto de critérios de avaliação e um conjunto de observáveis. A partir disso, chega-se a uma lista ordenada dos projetos. Não acaba aí, mas já dá para captar a ideia. Eu quero falar das dificuldades.

A FEBRACE é uma feira nacional com diversas áreas do conhecimento, e isto implica em alguns filtros para a seleção de finalistas. Seleção esta feita à distância, por sinal.

Os projetos submetidos são frutos de um processo conduzido por meses pelos estudantes. Mas se você não tiver acompanhado o desenvolvimento do projeto em si, como saber se ele cumpre requisitos mínimos de qualidade? É difícil saber, ainda mais pelo fato dos avaliadores terem poucos observáveis disponíveis. São formulários, relatório e eventualmente um vídeo disponíveis.

O que quero dizer é: o processo de seleção nem sequer permite selecionar os melhores projetos de fato. Só é possível capturar os mais bem relatados. Um avaliador não acompanha os estudantes no dia a dia, logo a avaliação tem que se basear no material entregue. É a única coisa disponível.

Dessa forma, projetos mal documentados tem muito mais chance de ser mal avaliados que outros bem relatados. Sempre é bom lembrar, a submissão é o momento no qual o estudante descreve o projeto. Olhando assim, é como contar o projeto para quem nunca ouviu falar dele, portanto o estudante tem de prover elementos observáveis capazes de fazer o avaliador entender o projeto. Sem os observáveis fica mais difícil, e a culpa nem é nossa.