Can U Control: jogo educativo brasileiro aplica conceitos de Ciências no iPhone e iPad

O Can u control é criação do engenheiro e desenvolvedor brasileiro Allan Medeiros, que da sua experiência como professor mais uma vez encontrou uma forma lúdica de transmitir conceitos de ciências.

Ele já apareceu por aqui anteriormente falando sobre seu outro app, o iDynamic, que simula experiências de laboratório de Física.

Assim, convidei-o para descrever sua nova criação (o jogo Can U Control, e o resultado segue:

Can U Control

por Allan Medeiros, autor do app

O aplicativo "can U control" é um joguinho simples de jogar mas que utiliza como ideia conceitos bastante complexos de engenharia de sistemas (Mecânica, Elétrica, etc…) aliados a gráficos divertidos e personagens cativantes.

O objetivo do jogo é fazer com que um personagem animado alcance um alvo. Ao contrário dos jogos deste tipo, o jogador não controla os movimentos do personagem e sim o "labirinto" onde o personagem se encontra.

Neste jogo, o personagem é obrigado a caminhar sempre seguindo um "campo vetorial" (primeiro conceito avançado que é mostrado de forma simples) que consiste basicamente de um monte de setas que indicam a direção para onde o personagem deve movimentar-se. O jogador então controla como fica disposto este campo vetorial (movendo um joystick para cima e para baixo).

Dependendo da fase e dificuldade, os movimentos ficam bem variados e o controle que se tem sobre o campo é limitado. Existe ainda um pequeno dial no canto esquerdo onde o jogador pode pausar, reiniciar, etc, bastando "girar" o dial com o dedo.

O tema central: educação

Tudo no jogo é relacionado (direta ou indiretamente) com educação. O tema principal do design do jogo é "papel" (as fases e mapas são desenhados em diferentes tipos de papeis). Os personagens são caracteres que consistem em componentes eletrônicos "antropomorfisados" (com olhos, boca, etc…).

À medida que o jogador vai avançando e passando de fase, dicas misteriosas vão aparecendo que indicam (pra quem estudar o assunto) o tipo de estratégia que pode ser utilizada nas fases.

As fases são ainda divididas em ilhas (como em Super Mário World) e os nomes das ilhas lembram os tipos de sistemas que cada ilha representa (por exemplo, linearLand é a ilha dos sistemas lineares, quantizedLand a dos sistemas quantizados e assim por diante).

Bastidores e desenvolvimento

Até as músicas no jogo são associadas a educação. Todas as músicas tocadas dentro das fases foram geradas por equações matemáticas! No about do jogo é possível visitar o site do mesmo e conferir como gerar as músicas com o Wolfran Tones.

Além disso, no about existe as estatísticas de quantas vezes o personagem perdeu (o personagem "morre" se o jogador perder o controle e sair da tela), quantos alvos e quantos bônus foram pegos.

O jogo é registrado no game center da Apple e os jogadores podem comparar seus pontos com jogadores do mundo todo (atualmente o recordista é um Britânico, quem sabe aparece um Brasileiro bom e toma esta posição!).

O jogador pode escolher dentre 16 personagens, e a explicação para o design de cada um deles também pode ser encontrada na home page (até o design deles tem um fundo educativo).

Por fim, ainda no about existe um link que explica como o jogo foi feito, a matemática usada e um exemplo da relação do jogo com um sistema dinâmico real (no caso do exemeplo um circuito elétrico).

Faça o ícone do Terminal pular, e outros truques de notificação em scripts

A necessidade de chamar a atenção do operador mesmo se ele não estiver olhando para a tela é bem mais antiga que os nossos microcomputadores: um caracter de controle que faz o dispositivo ecoar um sino já estava presente até mesmo no tempo dos terminais de fita perfurada e teletipos (incluindo o Telex), e sua origem pode ser encontrada na década de 1870.

Soar uma sineta ainda é possível nos terminais atuais, mas as características multimídia de nossos computadores fazem do modesto sinal sonoro uma forma muitas vezes insuficiente de chamar a atenção do operador que pode estar atento a outra janela.

Entra em cena o caracter ␇ do Lion

O caracter BEL é a personificação da sineta clássica dos terminais, e pode ser representado de muitas formas: na entrada de dados clássica ele é o ^G (Control + G), na tabela ASCII ele é o código 07, na linguagem C (e em sistemas com sintaxe derivada) ele é o  ("alert"), e assim por diante.

Em terminais "físicos" (hoje raros), tentar imprimir o caracter BEL fazia soar a sineta, e este comportamento é reproduzido em vários terminais virtuais modernos (ou ao menos oferecido como uma opção de configuração).

A partir do OS X Lion, entretanto, o BEL aprendeu um truque extra: se o Terminal ou aba em que ele for "impresso" não estiver em primeiro plano, ele tocará o som de alerta do teclado como esperaríamos, mas também fará seu ícone pular na Dock, e incluirá/incrementará um contador de eventos junto a ele, como o da imagem acima (se a janela do Terminal estiver em primeiro plano, ele só tocará o som, sem pulos nem contadores).

Para emitir o caracter BEL no teclado você pode recorrer a vários comandos, incluindo estes, em ordem de minha preferência:

  • tput bel
  • printf ""
  • echo -e ""

Para testar, vamos usar uma sequência simples de 3 comandos, sendo que os 2 primeiros são simplesmente uma forma de dar 5 segundos de tempo para você clicar em outra janela qualquer e garantir que o Terminal não esteja em primeiro plano na hora em que o BEL for impresso:

echo "Clique em outra janela AGORA e aguarde o beep"; sleep 5; tput bel

Fique de olho na Dock: em 5 segundos, se você tiver mesmo clicado em outra janela qualquer, o ícone do Terminal vai pular e ganhar o contador de eventos.

E é assim simples: se você quiser que o Terminal o notifique do completamento de algum comando, basta acrescentar o trecho ; tput bel ao seu final.

Por exemplo, para um desenvolvedor que usa ferramentas via linha de comando ser avisado ao final da longa compilação do sistema que ele está testando, pode simplesmente emitir o comando abaixo:

make; tput bel

... e ficar olhando o Twitter do @brmacblog enquanto compila, ciente de que será adequadamente notificado pelo Terminal quando a compilação terminar.

Para comandos bem-comportados (que sigam a convenção usual de registro de situações de erro), você também pode recorrer à execução condicional do alerta. Para executá-lo apenas se o comando anterior tiver sido bem-sucedido, acrescente o trecho && tput bel ao seu final; da mesma forma, para executá-lo apenas se o comando anterior tiver terminado em erro, acrescente o trecho || tput bel ao seu final.

Sons de alerta com estilo

O simples uso do caracter BEL gera um discreto tom sonoro de alerta, mas você pode querer optar por sons diferentes. Uma maneira simples de fazê-lo é recorrer à coleção de sons de notificação da biblioteca do sistema (dê uma olhada na pasta /System/Library/Sounds), por meio do comando afplay.

Para notificar audivelmente em caso de erro (cláusula ||), você pode optar usar o mesmo áudio que o OS X usa, como no exemplo abaixo:

ping -c 1 308.8.8.8 || afplay -v 9 /System/Library/Sounds/Funk.aiff

Este comando ping vai falhar, afinal o endereço que incluí nele é inválido. E quando ele falhar, a cláusula || permitirá que o comando afplay a seguir seja executado, tocando exatamente o Funk.aiff, usado na configuração default do OS X para indicar vários casos de erro.

Já para notificar em caso de sucesso (cláusula &&), uma alternativa é usar o Glass.aiff, também usado pelo OS X e por uma série de aplicativos. Exemplo:

ping -c 1 8.8.8.8 && afplay -v 9 /System/Library/Sounds/Glass.aiff

Se você estiver conectado à Internet, é provável que o ping acima funcione (8.8.8.8 é o servidor de DNS público do Google), e você ouvirá um som de toque em uma taça de vidro para indicar.

Vozes do além

Se você experimentou com todos os sons da pasta /System/Library/Sounds e não se satisfez, há algo diferente a testar, especialmente para situações incomuns (senão ninguém aguenta): fazer o OS X falar, usando o comando say.

Adaptando diretamente no exemplo do ping que falha, veja como fazer um aviso falado, usando a voz default do OS X, que fala em inglês:

ping -c 1 308.8.8.8 || say "ping failed"

O Growl também ajuda

Se você usa o sistema de notificação Growl (ou o fork gratuito do Growl), e instalou o utilitário growlnotify, pode fazer uso das suas bolhas de notificação também no Terminal ou em seus scripts.

Em uma forma bem simples, você poderia simplesmente chamar o growlnotify passando o texto da mensagem de erro a exibir. Voltando ao exemplo do ping que forçosamente dá errado:

ping -c 1 308.8.8.8 || growlnotify -m "Erro tentando ping em 308.8.8.8" -t "Script de teste"

Mas o Growl é bem mais rico que isso. Dá para incluir um ícone do seu sistema, por exemplo, ou mesmo garantir que o balão de mensagem ficará fixo na tela até que você ativamente o feche, como no exemplo:

ping -c 1 308.8.8.8 || growlnotify --sticky --image ~/Imagens/insira-o-nome-do-seu-icone.png -m "Erro tentando ping em 308.8.8.8" -t "Script de teste"

Claro que o growlnotify (assim como o say, o afplay, o tput e os demais comandos que abordamos hoje) possuem mais opções além das básicas que exploramos. Investigue-as, crie aliases, funções e outras estruturas com elas, e torne seus scripts mais dinâmicos e interativos!

Guiato: quando o panfleto chega no iPhone porque a gente pediu, não é spam

Um conhecido meu trabalhou por muitos anos com pesquisa acadêmica na área de tecnologias móveis, e há uns 15 anos me disse: antes do fim da próxima década, teu celular vai poder te dizer detalhes e mostrar imagens de ofertas de empresas próximas de onde você estiver.

Na época parecia ficção: meu celular nem mostrava imagens, nem tinha recursos de geolocalização (embora a operadora de celular pudesse me localizar), e o máximo de conectividade de dados que eu percebia nele era nas mensagens de SMS.

Como eu estava enganado... anúncios baseados em mobilidade e localização já são realidade faz algum tempo, e podem ser bastante invasivos (quando enviados a quem não os solicitou) mas também bastante convenientes (quando o usuário se candidata a recebê-los, ou quando são configuráveis junto a outro serviço de seu interesse, como o GPS veicular que aponta postos próximos quando identifica que a gasolina está acabando, por exemplo).

O app Guiato está na segunda categoria – a dos convenientes –, pois só exibe as promoções e anúncios a quem queira recebê-los (e instale o app, claro).

Este trecho da descrição que recebi dos desenvolvedores explica a proposta do app:

Através do geoposicionamento, o consumidor pode localizar e consultar ofertas de produtos, endereços e horários de funcionamento no momento em que precisar, usando o tablet ou smartphone. O nosso aplicativo é uma maneira efetiva e inovadora de trazer o mundo físico de panfletos de vendas e promoções para o mundo digital.

Utilizando o site ou o aplicativo Guiato é possível receber alertas, procurar folhetos que antes eram fisicos, mas que agora estão disponiveis online. Com um smartphone e informando a sua localização, o usuário pode buscar por produtos, catalogos e promoções de acordo com os seus interesses utilizando a tecnologia de geolocalização Guiato.

Eu instalei a versão para iPhone (tem para iPad também), que naturalmente é gratuita (o modelo de negócio básico no ramo é cobrar do anunciante, e não do target), e rapidamente recebi uma série de catálogos de lojas nas minhas imediações.

Os catálogos são os mesmos que as empresas em questão distribuem na forma de folhetos, "jornalzinhos" ou encartes. Como estou em Floripa, longe dos grandes centros, a maior parte das ofertas são pouco direcionadas, e vem de lojas com alcance nacional e presença aqui na cidade. Pelo que percebo das descrições do app, o pessoal dos grandes centros pode esperar receber ofertas de um contexto geográfico mais próximo e específico, o que torna o serviço mais útil.

Mas mesmo aqui na província o modo mapa do Guiato me mostrou uma série de lojas nas quadras ao meu redor – uma farmácia, uma loja de bombons, 2 magazines, e destacou que uma delas (as Pernambucanas) tinha uma promoção de eletrodomésticos válida para o momento em que eu estava passando na frente dela.

De uma forma ou de outra, me parece que a utilidade é voltada a quem gosta de programar compras a partir de ofertas ou catálogos de lojas, e provavelmente não alcança muito a quem toma suas decisões de compras por outras maneiras.

Minha sugestão: se você deu atenção a algum folheto ou encarte de ofertas de empresa presente na sua cidade nos últimos 15 dias, e se sua cidade consta na lista de áreas abrangidas, instale o Guiato e veja se o conteúdo lhe agrada!

O Guiato tem presença brasileira, evidentemente, mas é um aplicativo de origem alemã. Além de atuar por aqui e na Alemanha, ele está presente em países como França, Russia e Espanha, onde alcançou a primeira posição na Apple App Store.

Happi Soletra HD: jogo infantil de palavras cruzadas ilustradas no iPad

Direto de Lund, no Sul da Suécia, a Brisa Drummond Sjölin me mandou um e-mail (em bom português, claro, até porque nem todo mundo que mora na Suécia nasceu lá) avisando sobre um app trazido ao Brasil por sua empresa, a Catavento Communications.

Além de ficar pensando se Catavento é tão difícil de pronunciar, pros clientes dela de lá, como o sobrenome dela foi difícil de ditar para o reconhecimento de voz no meu iPhone brasileiro, eu lamentei por uma dificuldade profissional minha: meu laboratório não está aparelhado para testar apps infantis, por falta de bebês e crianças pequenas trabalhando aqui.

Resumindo a história, ela teve uma boa ideia: parcerias com desenvolvedores suecos para lançar no Brasil apps deles, adaptados para cá. O primeiro foi da Happi Papi, uma empresa que só desenvolve apps pedagógicos infantis.

O Happi soletra HD, é uma série de palavras cruzadas ilustradas voltadas, em primeira mão, para crianças recém-alfabetizadas.

São 48 palavras cruzadas divididas em 4 graus de dificuldade, com 12 palavras cruzadas em cada nível. Cada jogo contém de 4 a 8 palavras com peças de letras importantes distribuídas ao longo do tabuleiro. O objetivo do jogo é, com o mínimo de erros, arrastar as peças de letras para o lugar certo. Quando colocada no lugar apropriado, a peça fica presa ao tabuleiro. As peças erradas voltam à posição inicial. Todas as palavras são ilustradas com imagens coloridas.

A experiência dela é que a interface bonita (e o fundo musical agradável, mas que pode ser desligado) e o próprio clima descontraído do app acabam por atrair, também, as crianças maiores. Resultado: todo mundo adora. Eu acredito, até eu que deixei de ser criança há um tempinho achei muito bonitas as telas.

Para os pais, talvez esta frase do final da descrição oficial agrade ainda mais: "Sem publicidades, links ou configurações confusas".

Viu, Brisa Drummond Sjölin? ツ Não é porque não estou aparelhado para testar adequadamente o jogo que eu não posso resenhá-lo a partir do que ele passa para mim (e que, admito, não chega nem perto do que ele pode passar para uma criança que está começando a brincar com as letras e palavras).

O Happi soletra HD para iPad custa US$ 1,99 na App Store.

Portrait Professional: correções automáticas - estilo Photoshop - nas suas fotos, com categoria

Sabe aqueles efeitos (que muita gente chama, às vezes erroneamente, de photoshop mesmo quando são feitos com outros programas) de imagens publicitárias e de capa de revista, que fazem sumir características do indivíduo (como espinhas, descolorações, manchas da pele, olheiras, rugas, sinais, cicatrizes, ...) em prol de uma imagem mais "vendável" do indivíduo retratado?

É isso que o Portrait Professional para Mac oferece, e o resultado (obtido sem o menor conhecimento técnico da minha parte, apenas selecionando uma imagem e clicando em opções oferecidas por um assistente) me deixou boquiaberto.

Mas, como bem disse o filósofo Peter Parker, com grandes poderes vêm grandes responsabilidades. Não é porque uma ferramenta com essa capacidade está ao seu alcance que você deve usá-la para apresentar falsamente os retratos que expuser ao público: respeite os limites da ética e do bom senso, e este app será muito melhor aproveitado.

Fiz o download do PortraitProfessional Studio v10 (foram 64MB) e instalei usando uma chave fornecida pelos desenvolvedores especialmente para possibilitar esta resenha. O aplicativo suporta o idioma português (europeu, e não o nosso), e foi esta a minha opção.

Desde o primeiro teste, usando imagens originais fornecidas como amostra juntamente com o programa, fiquei impressionado. O assistente me perguntou se a foto era masculina ou feminina, me pediu para clicar com o mouse nos olhos, ponta do nariz e boca, informar se a boca estava aberta ou fechada, confirmar os contornos detectados automaticamente, e pronto.

Veja o resultado obtido, sem qualquer prática ou habilidade, na primeira execução:

Mas sou desconfiado por natureza, e resolvi tentar o mesmo procedimento com uma foto que não tivesse vindo como amostra do produto. Escolhi a simpática ruivinha que sempre serve de modelo para as amostras de retratos no site cameras.co.uk (e que certamente não precisa de retoque nenhum). O resultado você confere:

No teste abaixo, com a mesma modelo, perceba que parece haver uma escolha quanto a quais características "esconder" - o sinal que a modelo mirim tem no queixo foi preservado, por exemplo.

Mas quando os parâmetros automáticos exageram, uma ferramenta em forma de borracha permite fazer retornar, onde a aplicarmos, um pouco mais da aparência original. No caso oposto (retoque insuficiente), também há uma ferramenta (em forma de pincel) que reforça os efeitos onde é aplicada.

Depois da aplicação dos efeitos, há um quadro de parâmetros (imagem acima) à disposição para reduzir ou aumentar o nível de vários dos efeitos aplicados automaticamente: remoção de rugas, de poros, alisamento da pele, etc.

Em uma palavra: impressionante. Não compartilho da demanda por este tipo de ferramenta no meu dia-a-dia (afinal não produzo imagens publicitárias ou de imprensa, por exemplo), mas fiquei abismado com o nível de modificação que pode ser atingido com esta ferramenta automatizada, e que exige de mim, basicamente, apenas apontar onde estão os olhos, nariz e boca da imagem selecionada.

O Portrait Professional para Mac no momento custa US$ 19,95, mas tem uma versão grátis para testes (que coloca uma marca d'água bem visível nas imagens que gera).

Vou falar ao vivo sobre produtividade, hoje às 21h30, no hangout comemorativo do Movebla

Quer participar de uma conversa em vídeo e áudio sobre produtividade no trabalho? Então sintonize seu navegador no hangout comemorativo de 2 anos do Movebla que ocorrerá hoje a partir das 21h30.

O Movebla é um blog no qual eu acompanho com interesse as conversações sobre os novos modelos de trabalho (e não apenas os que envolvem mobilidade), e seu aniversário de 2 anos será comemorado com uma série de eventos em vídeo (hangouts do Google Plus) comemorativos.

Eu tive a honra de ser convidado a participar do primeiro deles, conversando com o autor do Movebla (Anderson Costa) e com a Debora Batello, colaboradora de lá, às 21h30 de hoje (16/7/12), sobre produtividade no trabalho. Obrigado pelo convite, e por minha vez convido vocês a assistir!

O convite é devido à minha atuação no Efetividade.net, mas como minhas ferramentas de produtividade on-line hoje rodam quase 100% em produtos da Apple, é bem possível que o foco aqui do BR-Mac também apareça ao longo da conversa, e interesse a vocês diretamente.

Tem mais detalhes no meu post da semana passada, e as instruções você encontra lá no Movebla, mas o essencial é incluir o Movebla nos seus círculos do Google+.

Até lá!

Mais acessados:

Artigos recentes: