Inicialmente este blog foi criado para armazenar algumas dicas e links de UNIX/Linux, OpenVMS, linguagem C, Assembly, TCP/IP e nerdezas afins. No entanto devido ao autor ter abandonado o seu plano de ser um super hacker e dominar o mundo (devido esposa, família, filhos, trabalho), a partir de 2012 este blog tem um tipo de nerdeza mais light (Android, Linux, RetroPie (retrogames), produtividade, e por aí vai). Estas dicas raramente serão criações minhas.

segunda-feira, 10 de outubro de 2011

aprendendo a programar com o RUR-PLE

Recentemente meu filho estava me pentelhando para aprender a programar. Eu achei cedo demais (8 anos de idade) e fui colocando algumas barreiras. Só que o danado se mostrou tão persistente que eu percebi que ele queria MESMO.

Pois bem, para encurtar a história... Pesquisei várias coisas sobre como ensinar programação para crianças pequenas e por fim decidi usar o RUR-PLE. Se você quiser pesquisar por conta própria, eis alguns termos para procurar no google (existe muito mais do que isso):

programacao logo seymour papert
scratch programming
robomind

também tem um bom artigo aqui: http://marshallbrain.com/kids-programming.htm

Talvez você perceba na web uma certa predileção pelo Scratch. Bem... não vou ficar dizendo porque não escolhi algumas abordagens. Vou me limitar a dizer porque escolhi o RUR-PLE:

  • utiliza sintaxe do python (python 2, é verdade, mas mesmo assim preferi), daí mais pra frente o moleque já vai poder usar python para inúmeras coisas;
  • já contem uma boa sequencia de lições prontas (só tive que traduzir e fazer algumas adaptações);
  • aprende-se a programar um robôzinho bem simples com comandos python, o resultado é visto em uma animação quando o programa é executado;
  • o robô só sabe dar um passo a frente, virar a esquerda, pegar e soltar objetos, todas outras funcionalidades precisam ser programadas;
  • a programação é feita digitando o código, e não com "arrastar e soltar" bloquinhos (há quem ache isso uma desvantagem, eu já acho vantagem).

    Preciso dizer que o RUR-PLE não é um software maduro. Existem algumas desvantagens e empecilhos:

  • usa Python 2 (facilmente ignorável, quero ensinar programação, e não python 3);
  • problemas de dependências de certas versões do wxWindows (isso não é problema para quem vai usar no Windows);
  • o código não pode ter acentos, nem nos comentários (só aceita caracteres ascii);
  • entre outros...

    Como já tenho uma certa intimidade com computadores, consegui contornar estas situações. Mas talvez alguns pais/professores tenham algumas dificuldades, e isto pode atrapalhar um pouco. Infelizmente... :(

    Mas se mesmo assim você optar pelo RUR-PLE, pode conseguí-lo em http://code.google.com/p/rur-ple/

    A receptividade do meu filho está sendo muito boa. Ele está gostando muito de programar o robozinho e já me alcançou nas traduções. Quando não tenho a próxima lição já traduzida, tenho que ficar inventando atividades extras para ele

    OK. Chega de muita conversa. Se depois de suas pesquisas, você optar por usar o RUR-PLE para aprender a programar (ou para ensinar aos seus pequenos) aqui vão algumas lições que estou traduzindo e adaptando (encontrei na página da Profa. Carla Delgado, as lições do RUR-PLE já traduzidas para pt_BR, mas mesmo assim continuarei fazendo as minhas adaptações para crianças aqui):

  • 00.ALGORITMOS - esta lição não é do RUR-PLE, é a tradução do primeiro capítulo do "Programación de Computadores con Scratch - Cuaderno de Trabajo para estudiantes"

  • 01.introdução

  • 02.conhecendo o reeborg

  • 03.primeiro programa

  • 04.lidando com erros

  • 05.comentários

  • 06.virando a esquerda

  • 07.beepers

  • 08.exercícios

  • 09.evitando repetições

  • 10.evitando repetições novamente

  • 11.se o Reeborg pudesse decidir...

    Não quero ficar chateando a criança fazendo ela criar os mundos para realizar os exercícios. Portanto aqui está o arquivo com os mundos prontos (coloque isso no diretório world_files):

  • world_files.zip - clique no link no canto superior direito, algo como "fazer download no formato original".

    A medida que eu for traduzindo mais, vou colocando aqui. Qualquer feedback é muito bem vindo.

  • quarta-feira, 27 de abril de 2011

    Modem 3G Huawei E1756 no Ubuntu

    Não lembro onde peguei esse arquivo, mas foi ele que me permitiu conectar com o Vivo ZAP usando o modem Huawei E1756.

    Crie o arquivo /etc/udev/rules.d/15-huawei.rules com o seguinte conteúdo.


    SUBSYSTEM=="block", \
    ACTION=="add", \
    SYSFS{idVendor}=="12d1", \
    SYSFS{idProduct}=="1446", \
    OPTIONS="ignore_device"

    SUBSYSTEM=="usb", SYSFS{idProduct}=="1446", SYSFS{idVendor}=="12d1", RUN+="/usr/sbin/usb_modeswitch"

    Add-ons recomendados para firefox

    Assim que instalo o firefox, instalo também os seguintes add-ons:

    Readability: já comentado aqui em "tornando a leitura na web mais agradável".

    DownThemAll: gerenciamento de downloads.

    FlashGot: pesquisa links dentro de uma pagina e permite downloadear tudo que tem nela. Exemplo de como eu a usei, entrei numa pagina com tiras do calvin & haroldo e queria downloadear todas. Ao invés de ficar clicando nas imagens uma a uma para "Salvar imagem como...", usei o FlashGot e baixei tudo de uma vez. Lindão! :D.

    Xmarks: meus bookmarks em todo firefox que uso. Me parece que o firefox 4 já tem um serviço deste tipo embutido, mas como ainda uso firefox 3 em muitos lugares, o xmarks continua sendo bastante útil para mim.

    Transformando o Ubuntu num roteador WiFi (Access Point)

    ATENÇÃO: O que temos aqui é uma versao enxuta do passo-a-passo que vi originalmente aqui: http://flavioschiavoni.blogspot.com/2011/01/transformando-seu-ubuntu-em-um-access.html.

    Espantosamente simples e útil!


    Normalmente os usuários de Ubuntu utilizam um programa chamado "nm-applet" que é o applet do network-manager. Ele costuma aparecer na bandeja do sistema.

    Bem, clique nele e aparecerá a opção "Criar nova rede sem fio...."

    Feito isto, aparecerá uma janela com a opção para ser colocado o nome da rede, o tipo de segurança e também a chave de segurança.

    Pronto! Este tutorial pode terminar aqui.

    Como esta configuração é muito complexa, aproveito para sugerir uma alteração na mesma. Se você criou esta rede é bem provável que seu computador sempre conecte-se nela pois, afinal de contas, sempre será a melhor rede para ele. Para evitar que isto aconteça, clique com o botão direito no nm-applet e aparecerá a opção "Editar conexões...".

    Selecione a rede que você acabou de criar e clique no "Editar".

    Se a intenção for manter esta configuração mas evitar que o computador sempre utilize-a, basta desmarcar o "Conectar automaticamente". Desta maneira ela estará sempre disponível mas só se conectará quando for necessário.

    tags