Twitter Bot

Padrão

I created a new Twitter bot, now using Node JS. It’s very easy to use and much more flexible to configure. I also decided to make it open source on Github.

You can get it here: https://github.com/cetorres/twitter-bot

It’s a bot that periodically searches for tweets and then like, reply and follow automatically. It can be used for advertisement, promotions etc. But please use it carefully to avoid spam.

  • Bot saves tweets ids already processed to avoid interact with the same ones again.
  • Bot randomly selects each time from the list TWEETS_TO_REPLY one tweet to reply.
  • Bot automatically adds the original tweet’s user handle to the reply, as a mention.
  • Bot logs to the console the tweet’s id’s that were processed each time.

All information about it can be found on its README file.

O Meta-Empreendedorismo

Padrão

Empreendedor que tem como único empreendimento falar para os outros como empreender, para mim não é empreendedor, é um meta-empreendedor.

Não digo que é de todo ruim. Motivação, autoajuda sempre tiveram sua vez e seu mercado. Mas não chame de empreendedorismo, chame de qualquer outra coisa.

Mostre que empresas, negócios, produtos ou serviços já lançou. Conte suas experiências boas e não tão boas. Como foi o processo de startup, mas também como foi a operação, o dia-a-dia para manter o negócio vivo e lucrativo. E como teve sucesso ou não.

Ai sim, posso ir a uma palestra sua!

Se não for assim, é somente empreendedor de palco, um meta-empreendedor e desses quero distância!

Ensinamentos

Padrão

Um dia estava querendo ler algum ensinamento que Deus escreveu para me tornar uma pessoa melhor. Logo me sugeriram ler a Bíblia. Mas eu disse que queria algo que o próprio Deus tivesse escrito, não alguns homens como eu. Queria aprender direto da fonte e não por seus repórteres.

Então percebi que bastava olhar ao meu redor, em todo lugar, na própria natureza que nos cerca. Essa sim foi escrita (criada) diretamente por Deus. Maravilhosa, imponente, perfeitamente balanceada e justa. Ao entender a natureza, passei a ver o mundo com outros olhos. Todo ensinamento está lá. Todo exemplo bom ou mau. Toda experiência que precisamos.

Assim,  não havia motivo de buscar os ensinamentos de Deus em livros criados pelo homem, porque esses sofriam das imperfeições humanas. Mas somente contemplando e aprendendo com a natureza que nos cerca. Se todos nós soubéssemos aprender com ela seríamos certamente bem melhores.

Não sou ateu. Não sou agnóstico. Não tenho rótulos. Sou sem religião. Sou parte da natureza criada por Deus. E só Nele creio e confio.

Tenha um excelente dia!

Texto: Carlos Eugênio Torres

iPhone pode ser reiniciado à distância através de SMS graças ao bug do ‘código árabe’

Padrão

O bug do ‘código árabe’, descoberto dia 29 deste mês na Rússia, está causando dor de cabeça aos usuários dos dispositivos Apple, com Mac OS e iOS, computadores, iPhones e iPads.

Simplesmente ao visualizar uma simples sequência de caracteres em árabe (veja aqui somente se não estiver em um Mac, iPhone ou iPad) em vários aplicativos desses sistemas operacionais, como Safari, Chrome, iMessages, que usam uma API da biblioteca CoreText, o aplicativo trava e é encerrado inesperadamente. Pode até causar um loop infinito de travamentos em alguns programas, como o iMessages, se tiver uma das mensagens com esse texto. Então, toda vez que é aberto, ele fecha, deixando o programa praticamente inutilizado.

Já existem vários tutoriais na internet ensinando a destravar certos aplicativos, como aqui. Mas até então, esse bug tem sido explorado apenas através de redes sociais e amigos passando uns para os outros. Redes como Facebook e Twitter já bloquearam esse código para evitar mais problemas. Mas ainda existe uma forma muito pior e inevitável de enviar esse código para os iPhones, através de uma mensagem SMS. Elas sempre chegam no aparelho, praticamente não tem como evitar. E se no corpo dela vier a tal sequência de caracteres árabes, o iPhone (pelo menos o 4 e o 4S) REINICIA! E ao voltar, o aplicativo Mensagens (iMessages) já fica sem poder ser utilizado.

Assim, remotamente, é possível você reiniciar um iPhone e ainda deixar o iMessages inutilizado! Que bug fantástico, heim, Apple!

E você agora se pergunta: e agora, como faço para consertar isso? Não é tão simples de resolver. Quando descobri que esse bug podia ser explorado com o envio de um SMS para um iPhone e vi o resultado, também fui buscar uma solução. Consegui resolver desta forma, mas ela tem uma limitação:

  1. IMPORTANTE: Primeiramente, a mesma pessoa que enviou a mensagem com o código deve enviar outra mensagem com um texto qualquer diferente do tal código para você (ai que reside a limitação, porque se você não conhecer a pessoa ou se ela não quiser enviar, não funciona);
  2. Entre no aplicativo do Telefone e vá na tab de Contatos (ou abra diretamente o aplicativo Contatos);
  3. Entre em qualquer contato;
  4. Toque no botão Enviar Mensagem;
  5. Na tela de Nova Mensagem, toque em Cancelar (ou Mensagens), para voltar para lista de mensagens;
  6. Na lista irá mostrar aquela última mensagem que a pessoa enviou e não mais a com o código, mas não toque nessa mensagem, porque vai entrar na conversa que contém a mensagem com o código e vai travar o aplicativo de novo;
  7. Apague a conversa toda com a pessoa, passando o dedo na mensagem ou tocando em Editar e no botão vermelho de Apagar;
  8. Pronto! A conversa com a mensagem foi apagada e pode voltar a usar normalmente o Mensagens!

Se tiver alguma dúvida ou se detectou algum outro comportamento diferente deste, comente abaixo.

Deixe sua opinião se este post ajudou você!  E repasse para o seus amigos.

 

Dica: Gerar QRCode automaticamente de URL encurtada com Goo.gl

Padrão

Esta dica é bem simples, mas ao mesmo tempo muito legal. Acredito que muita gente não sabe que as URLs encurtadas do serviço do Google, Goo.gl, se acrescentadas de um “.qr” no final geram automaticamente uma imagem com o QR Code daquela URL.

Assim, uma URL como esta: http://goo.gl/65Z5r

Se você acrescentar ao final “.qr”, ficando assim: http://goo.gl/65Z5r.qr

Ela vai apontar para esta imagem:

 

Dica: Bookmarklet para gerar QR Code de uma URL que está vendo no navegador

Padrão

Para gerar um QR Code automaticamente de uma URL de uma página que esteja visualizando em seu navegador, sem ter que sair da página nem usar outros programas, basta usar um bookmarklet na barra de favoritos e pronto.

Basta arrastar o link abaixo para a barra de favoritos do seu navegador para ficar sempre à mão. Assim, quando estiver vendo uma página no seu computador e quiser visualizá-la em seu smartphone ou tablet, basta gerar o QR Code e ler a partir do dispositivo para abrir a página nele.

URL para QRCode

Veja abaixo o código-fonte desse bookmarket:

javascript:void(window.open(‘http://chart.apis.google.com/chart?cht=qr&chs=300×300&chl=’+encodeURIComponent(location.href),’Qr%20code’, ‘top=100,left=200,width=310,height=310,status=yes’));

Bem simples. Eu chamo o próprio serviço do Google Charts para gerar o QR Code da URL atual do navegador e abro numa nova janela para mostrar.

Aproveitem!

Palestra na III Semana de Tecnologia da FATENE

Padrão

Ontem, dia 23/11, proferi palestra na FATENE, em sua III Semana de Tecnologia, com o tema Desenvolvimento de Apps Móveis: Iniciando no iOS e no Android.

A FATENE está de parabéns pela organização do evento! Os alunos compareceram em peso e, apesar do curto tempo da palestra, apenas 1:30h, acredito que tenha sido bastante produtiva e elucidativa.

A palestra não falou apenas em teoria, de como se tornar desenvolvedor das plataformas iOS e Android, suas arquiteturas e ambientes de desenvolvimento. Também contou com uma parte prática, onde mostrei a criação de um aplicativo móvel em Android, um cliente de Twitter.

O “MeuTwitter” é um simples cliente de Twitter para Android com o objetivo de demonstrar as principais características desse sistema, abordando técnicas como:

  • Chamadas HTTP (GET) à API JSON do Twitter
  • Parsing de JSON
  • Montagem de interface (widgets, styles, menus, drawables…)
  • Listagens (ListView, ListAdapter)
  • Tarefas assíncronas usando AsyncTask para carregamento remoto de dados sem travar a interface
  • Preferências de usuário (Prefs)
  • Android Manifest
O projeto foi enviado para o Github e está disponível para todos que quiserem aprender a programar em Android. Veja o link abaixo para o repositório.
A apresentação da palestra também está disponível na internet através do Slideshare. Veja abaixo o link para os slides.