sábado, 21 de novembro de 2009

Apresentação do CoSMo no Devoxx 2009

Ola a todos!!

Primeiro de tudo, uma pequena explicação: Eu resolvi registrar meu dominio para poder criar um blog melhor e também poder fazer algumas coisas mais que vinha planejando, como por exemplo um webservice pro CoSMo e umas aplicações pro Facebook. E ai veio a dúvida: postar em português ou inglês?
E então, devido a aspirações de carreira, alguns amigos que não falam português e claro, a vontade de praticar minha escrita em outro idioma resolvi postar em inglês. Para aqueles que não falam inglês ou estão com preguiça, eu irei manter sempre aqui uma versão em português dos posts, mas as demais seções do meu site vou manter em inglês, sorry! ;-)

Mas, depois de um longo e tenebroso inverno, estou de volta blogando sobre mobilidade e outras coisas que eu estou acostumado a compartilhar com você. E, como você pode ver, meu blog está de "casa nova", porque eu finalmente decidi registrar meu próprio domínio, e agora, eu serei capaz de fazer mais coisas do que apenas os posts, por exemplo: compartilhar meus "toy projects" , atualizações do Cosmo, fotos e muito mais! :)

Mas, vamos ao assunto deste post: Minha apresentação no Devoxx 2009, sobre o Cosmo. Ok, para você que não sabe o Cosmo é: é um projeto open-source criado em 2007 com base na aplicação JustaJava Mobile (mais informações disponíveis no site do projeto). É uma aplicação Java ME para mostrar em seu celular (Java enabled) o cronograma de eventos. Com esta aplicação, é possível ver todo o cronograma, os detalhes da palestra e até o currículo do palestrante. E muito mais está para vir ... :)

A apresentação
A apresentação foi na terça-feira e eu tinha 15 minutos para explicar o que é Cosmo, as características, roteiro e (é claro) uma pequena demonstração da versão atual e também da nova interface do usuário. Eu estava muito ansioso e um pouco nervoso, mas acho que é normal, afinal, foi a minha primeira apresentação internacional. E, tudo correu bem e no final da palestra eu falei com Sebastien o desenvolvedor do Conference Guide (http://conferencegui.de) sobre uma parceria entre o seu software e Cosmo. E, no final deste post você vai encontrar os slides da apresentação.

Notícias sobre Cosmo:
Estou terminando a interface nova interface de usuário, e, espero, em breve escrever um post descrevendo a nova interface e compartilhar de código com vocês! :)


terça-feira, 15 de setembro de 2009

Criando aplicativos JME para devices touch screen

Ola pessoal,

Conforme prometido na apresentação, estou compartilhando com vocês os slides da palestra "Criando aplicativos JME para devices touch screen":

Além disso, você pode fazer o download do aplicativo que faz uma linha no visor do telefone conforme o usuário passa o dedo no device touch screen. Para baixar o código, clique aqui.

Obrigado a todos que compareceram a palestra, e divirtam-se.

Abraços
Neto

quinta-feira, 10 de setembro de 2009

Nos vemos no JustJava 2009 !

Ola pessoal,

Mais um mês de Setembro e isso é sinal de que mais um JustJava vem por ai. E como já vem acontecendo a alguns anos, o evento vai ser realizado nas excelentes instalações do Senac Sto. Amaro nos dias 15, 16 e 17 de setembro (próxima semana).

A grade já pode ser consultada no endereço http://grade.justjava.com.br e como sempre, os temas são os mais variados e atualizados possíveis. A grade também estará disponível através do CoSMo, aplicação que você pode instalar em seu celular e consultar a grade a qualquer momento.
Eu estarei participando com duas sessões:

  • JME 360 - do Sun SPOT a TV Digital: Irei apresentar juntamente com o Igor Medeiros uma visão geral do Java em sistemas embarcados, falando de Java Card, Sun SPOT, Lego Mindstorm, telemetria, celulares e também TV Digital.
  • Criando aplicativos Java ME para devices touch screen: com um número cada vez maior de dispositivos com touch screen disponíveis no mercado, é importante que você saiba as diferenças de criar algo para esse tipo de dispositivo e conhecer como o JME pode te ajudar nisso.
Para os interessados, mais detalhes do evento:


De 15 a 17 de Setembro de 2009 (8h30 às 19h30)
Local:
Centro Universitário SENAC - CAMPUS SANTO AMARO
Av. Engenheiro Eusébio Stevaux, n. 823
Santo Amaro - 04696-000 - São Paulo / SP

Nos vemos lá! ;-)

sábado, 18 de julho de 2009

A pergunta maldita: Qual a melhor plataforma móvel?

Ola pessoal,

Nas últimas duas semanas a lista de Java ME do SouJava (para se inscrever envie e-mail para j2me-list-subscribe@soujava.dev.java.net) o assunto a respeito do futuro das plataformas mobiles e do próprio JME voltou a gerar flames e opiniões acalouradas e bem parciais ;-) (me incluo nessas opiniões).
Então, resolvi escrever um pouco sobre essa pergunta "maldita": Qual a melhor plataforma móvel?

O Cardápio

Antes de qualquer coisa, é preciso saber quais são as opções entre plataformas e linguagens que demos povoando o mercado:

  • Symbian (S60): Presente principalmente nos smartphones da Nokia.
  • iPhone OS: Sistema operacional criado pela Apple para o iPhone
  • Android: SO criado pelo Google e já adotado pela HTC e Motorola. Logo, Sony Ericsson.
  • Linux: Algumas distribuições de Linux já foram vistas povoando alguns celulares, como a A1200 da Motorola.
  • Plataformas proprietárias: Para os dispositivos mais simples (não smartphones) as fabricantes possuem seus próprios SOs, mais simples.
A Plataforma Java

Porque eu não coloquei o Java como uma plataforma móvel junto com as demais acima? Porque ali preferi listar os SOs, e que são de fato uma plataforma. O Java ME ou FX Mobile são especificações ou linguagens e que com excessão do iPhone OS rodam em todas as plataformas citadas.
Ou seja, podem espernear e gritar a vontade, mas quando se fala em número de aparelhos que sua aplicação pode alcançar, uma aplicação em Java ME tem muito mais potencial do que as demais.

Recursos nativos x Java

É (muito) óbvio dizer que Objective-C (iPhone) ou Symbian possuam mais recursos do que JME por um simples motivo: são as linguagens nativas do telefone. Então é claro que o acesso a um recurso novo ou diferenciado vai estar disponível primeiro nessas linguagens.
Entramos então na questão de que o JCP (Java Community Process) que foi criado para ajudar no crescimento do Java está na verdade atrapalhando o JME, mas isso é assunto pra outro post (bastante polêmico por sinal...), já que ele demora em especificar a API para novos recursos, exemplos: MIDP 3, Location API 2.0 e outras...

Mas, o que dizer de recursos já sedimentados como o bluetooth por exemplo? Eu não preciso aprender como Symbian ou como o Objective-C trata isso, eu preciso saber apenas a API da JSR-82 e eu teria meu aplicativo compatível com todos os devices... lindo não?

E a resposta pra pergunta maldita?

Poderia escrever uma dissertação de mestrado sobre essa pergunta, usar diferentes aspectos de comparação e então chegar a uma conclusão e mesmo assim teria milhares de pessoas que iriam contestar, esperniar e me xingar. Então, eu vou usar uma linha de raciocínio bem simples: número de potenciais clientes.

O pessoal no geral fica se degladiando sobre os SOs dos smartphones e com recursos super modernos, que se pegarmos o Brasil, estão na mão de menos de 30% do usuários de telefone celular.
Então, temos um número enorme de pessoas usando celulares low-end que custam menos do que 150 dólares com recursos (pasmem!!) ainda limitados. Sim, são MILHÕES de celulares sem touch-screen, GPS ou acelerometro? Incrível não?!?! É, mas isso existe ainda! ;-)

E acredite, essas pessoas consomem e também querem utilizar seu celular para algo mais além de simplesmente telefonar, cabe a nós (desenvolvedores, designers, pesquisadores, gerentes, etc) oferecer a esses usuários serviços e softwares simples de usar e bonitos.

E adivinhe só, qual a linguagem que "ataca" principalmente esses telefones? Sim, é o "condenado" Java ME! Não há números exatos (e seria quase impossível conseguir algo verdadeiro), mas o número de celulares low / middle end é esmagadoramente maior do que o número de smartphones disponíveis por ai.
Além disso, seu aplicativo Java também irá rodar nesses smartphones (menos no iPhone).

E o mercado corporativo?

Vamos imaginar uma situação e VOCÊ responde:
Seu cliente chega e diz que precisa colocar em campo uma força de vendas automatizada, mas esses trabalhadores também vão usar o dispositivo para fazer ligações, ou seja, são telefones celulares. E ele tem um contrato com uma operadora para conseguir os telefones mais baratos e que além disso ele já tem uma base com vários Nokia, Motorola e alguns LG (!!) mas que ele ta pensando em adquirir mais alguns que você aconselhar.
Ah, e além disso, esse telefone passa por situações onde ele pode cair, riscar e em sua grande maioria é operado por pessoas com pouco relacionamento com a tecnologia.

Me diga você, o que você escolhe?

Bom, podem começar os flames e xingamentos. Mas essa é a minha opinião, pois apesar de não ser algo com totais recursos, continua sendo uma linguagem de fácil aprendizado, menos segmentação e maior número de possíveis usuários.

Abraços
Neto

sábado, 4 de julho de 2009

Porque as pessoas se viciam no Twitter ?!?

Ola pessoal,

Sei que algumas pessoas devem estar se roendo pra ver um trecho de código aqui, ou então saber mais detalhes do BotSpot1, mas o post anterior fez um "sucesso" que eu não esperava. Um pouco inclusive por conta do Twitter, uma ferramenta onde cada vez mais gente começa sua experiência de Web 2.0 e daí em diante, se vicia. Então, por isso resolvei analisar um pouco porque as pessoas acabam se viciando em algo que na sua essência é extremante SIMPLES!
Só para vocês terem noção, ao buscar no Google as palavras (juntas) TWITTER e ADDICTED o retorno é de (espantosos) 32.1000.000 resultados!!!

Simples assim!

A grande maioria das pessoas passa sua vida inteira tentando ter idéias brilhantes, e principalmente o pessoal que trabalha com tecnologia quer marcar o seu "nome" na história inventando um serviço, um software ou qualquer coisa que todos usem (mesmo que o autor não ganhe nada) e que se torne uma febre mundial.
E como a maioria das grandes idéias, o Twitter veio de um momento de crise e foi resultado da melhoria de uma idéia. Essa história pode ser vista com mais detalhes no post "Como nasceu o Twitter" de Kris do blog Agrega.

Limitação ou inovação ? ;-)

Mas afinal, o que há demais em uma página simples (sem refresh automático), com um campo de texto com limite de 140 caracteres e abaixo uma lista do que os seus "amigos" estão fazendo ou falando?

Esse é justamente o motivo do sucesso. A simplicidade da sua interface faz com que mesmo os usuários não muito familiarizados com a tecnologia ou os com uma infra-estrutura precária possam participar.
E também, o que parece ser um limite do seu post é outro grande fator de sucesso, já que ler 140 caracteres é algo muito mais rápido do que ler posts de blog ou noticias inteiras. O seu seguidor pode ter uma "introdução" sobre o assunto e ai escolher se quer saber mais ou não e isso é fundamental em uma época onde tempo livre é algo extremante raro.

Fazendo amizades...

Isso sem falar o quanto o Twitter está aproximando as pessoas. Através dessa ferramentas os laços de amizade entre as pessoas vem se "fortalecendo" pois é possível saber mai facilmente o que fulano ou ciclano anda fazendo ou pensando. Além disso, é uma ótima forma de se pedir a opinião pra diversos amigos de uma vez só ou até tirar uma dúvida rapidamente! :-)

Também se tornou comum as celebridades (ajudadas por assistentes ou não) conversarem com o público, divulgarem seus shows, suas músicas ou simplesmente contar o que acabaram de jantar.

Ou seja...

O Twitter passou de uma simples idéia na Web 2.0 para se tornar protocolo de comunicação de diversos aplicativos que ficam coletando informações e com isso uma mania. Onde as pessoas pensam primeiro em "colocar no twitter" do que simplesmente contar para um amigo ou para sua namorada. Sem falar no caso de pessoas que trabalham uma do lado da outra e ficam sabendo noticias a respeito do seu "vizinho" através do Twitter.

Há, claro, aqueles que usam muito isso a seu favor, seja aumentando o seu networking ou até recebendo newsletters de forma mais rápida e eficiente, já que é você quem determina quem você quer seguir e pode mudar isso quando quiser.

Não usa o Twitter? Experimente por 1 semana twittando e seguindo seus amigos e algumas celebridades (eu gosto muito dos humoristas...) que você terá sua própria opinião!

[]s
Neto

sexta-feira, 3 de julho de 2009

Compartilhando... sua vida...

Esse post não tem nada de técnico, trecho de código ou algum tutorial. É apenas uma curta análise e a minha opinião pessoal sobre o crescimento incrível dos serviços de Web 2.0 com cunho "social".

É incrível como hoje em dia tudo tem que ser compartilhado: As fotos da últimas festa, a lista das músicas que você ouve durante o dia (e as próprias músicas), o que você está fazendo num determinado momento, onde você está, qual foi o percurso que você fez no treino de corrida da manhã e até informar as pessoas o que você esta comendo.
E o mais engraçado é que algumas pessoas "acusam" o Google de ler seus e-mails (por causa do GMail), saber quem são seus amigos (Orkut), saber em quais sites você navega (Chrome) e mais uma série de informações que ele recolhe através de seus serviços, mas não reclamam de expor sua vida completa através de diversas ferramentas na Internet.

Isso sem falar da sensação do momento: Twitter!
Hoje em dia celebridades e anônimos passam o dia emitindo opiniões, trocando noticias, links e até fotos. Na minha opinião o maior exemplo de que o Twitter virou a principal media foi a morte do Michael Jackson. Eu (pelo menos) fique sabendo pelo Twitter antes de ler em qualquer site de noticias "convencional".
Outra coisa que fascina no Twitter é como ele é capaz de aproximar pessoas. Você se acha mais amigo de fulano simplesmente porque sabe que naquele momento ele está em uma reunião X discutindo o assunto Y e tem uma certa opinião.

E por fim, mas não menos importante, o melhor é ter tudo isso na palma da sua mão. Se foi o tempo em que tínhamos que ter um trambolho (computador) ligado fisicamente a um cabo pra ter acesso a tudo isso!
Basta colocar seu celular pra fazer algo a mais do que receber chamadas e dar toques a cobrar nos seus amigos. Com alguns programinhas instalados no seu celular você pode:

  • Acessar MSN, GoogleTalk ou qualquer outro programa de MI.
  • Checar seu e-mail.
  • Atualizar no mapa a sua localização atual através do Google Latitude.
  • Postar no twitter que acabou de entrar no ônibus e que está atrasado.
  • Tirar uma foto de um amigo que não via a muito tempo e imediatamente postar no Twitter e subir também para o seu álbum no Facebook ou MySpace.
  • Ouvir sua música preferida e atualizar no Last.FM que você acabou de ouvir.
Enfim, hoje não há invasão de privacidade, mas sim um compartilhamento tão grande de informações que a estamos perdendo a noção do que é privado ou público. Só espero que isso não gere uma paranóia e tudo isso comece a retrair.

Bom, é isso... depois volto com os códigos Java e outras coisas mais.

Abraços
Neto

quarta-feira, 1 de julho de 2009

Começando com Sun SPOT

Ola pessoal,

Após ver o pessoal ganhando spots no M3DD e também depois de algumas demonstrações do Roger Brinkley, eu fiquei ainda mais curioso e com vontade de fazer algumas "brincadeiras" com esse interessante dispositivo. Foi então que lembrei que aqui no INdT temos dois kits desses e com isso poderia bolar alguma coisa para começar a entender o funcionamento desse "negócio".

Afinal, o que é o Sun SPOT ?

Trata-se de um dispositivo criado pela Sun como o objetivo de promover a pesquisa e experimentos utilizando a tecnologia JME. Como mostra a figura ao lado, ele é composto por:

  • Sunroof: Uma capa de acrilico para proteger a placa e compor o spot.
  • Sensor board: Uma placa com sensores de temperatura, luminosidade, acelerometro, 8 leds e dois botões.
  • Processor board: Um pequeno processador que receberá suas MIDlet (SIM, MIDLETS) e irá fazer todo esse conjunto funcionar.
Além disso ele possui um rádio transmissor que permite que ele se comunique com uma estação radio-base que normalmente fica ligada via USB em um PC (Mac, Windows, Linux, etc) com uma aplicação que possa fazer a interação que seja necessária.

Gostei, como consigo um?

Então, esse é um grande problema! Devido ao fato dele possuir um rádio transmissor ele se torna um dispositivo que precisa da homologação da ANATEL, e isso é um processo altamente burocrático e demorado.
Você pode tentar importá-lo, comprando no site Sun SPOT World, mas talvez vá ter alguns problemas. Outra opção é que em alguma viagem que você (ou um amigo) faça aos EUA, você pode comprar o dispositivo por lá e trazer na mala. OU, ser muito sortudo como o Igor Medeiros ou muito chorão como o Alexandre Gomes e ganhar um quando alguém da Sun estiver em algum evento que você está! :)

Instalando

A instalação é bem tranquila, basta visistar o site Sun SPOT World Manager e fazer a instalação pelo web start oferecido. O problema é, se você tem um Mac OS X (o meu caso) o funcionamento pode não ocorrer tão bem. E aí, ter que apelar para um VirtualBox ou VMWare, eu estou usando na VMWare.
Depois, o primeiro passo é atualizar o firmware dos seus spots via Spot Manager.

BotSpot1 - O SPOT que usa o Twitter.

Para não estender esse post, não vou entrar em detalhes de código. Vou apenas apresentar o BotSpot1. É uma aplicação que fiz em parceria com um amigo e que tem como objetivo ler de hora em hora a temperatura da sala onde trabalho, enviar via rádio para a estação radio base e a aplicação host publica essa informação no twitter.

Para acompanhar, basta visitar o perfil do BotSpot no twitter acessando http://www.twitter.com/botspot1. Por enquanto ele apenas informa através do microblog, a próxima feature que estará disponível vai ser a interação com o spot através de posts direcionados para ele (usando @botspot1).

Nos próximos posts vou explicar como criar uma aplicação, como fazer o deploy no spot e como rodar uma host application.

Fique ligado!

Abraços
Neto

terça-feira, 30 de junho de 2009

M3DD LA - Goiânia

Ola pessoal,

Depois de um tempo de ausência estou de volta com algumas novidades. No dia 20 de junho tive o prazer de participar do evento M3DD LA em Goiânia apresentando uma palestra sobre a plataforma Nokia WRT Widgets.
O evento foi muito interessante (e me surpreendeu) por vários fatores:

  • Nivel excelente da maioria das palestras.
  • Um ótimo público (o maior M3DD já realizado).
  • Ótimas instalações do Senac.
  • Poder visitar Goiânia, onde morei por 10 anos!
Além é claro de poder reencontrar alguns "teimosos" dessa área de softwares móveis e saber o que o pessoal tem de novidade e trocar algumas idéias. Inclusive com a visita ilustre do Roger (líder da comunidade Mobile & Embedded) e também do Terrence (engenheiro da Sun e grande conhecedor do LWUIT).
Na foto temos (da esquerda pra direita): Igor Medeiros, Roger Brinkley, Elói Jr., eu, Robison Brito e Alexandre Gomes.

No site do evento você pode encontrar os slides das apresentações e em breve irão disponibilizar os videos as apresentações que foram feitas no auditório e que foram gravadas.

Além disso o que me chamou atenção foi a partipação do pessoal nos dois painéis que dividi com o Alexandre, Robison e Elói. Infelizmente vemos que temos mais vontade do que ações no mundo da mobilidade no Brasil, mas o pessoal já está se movimentando e buscar oportunidades.

Os slides da minha palestra você pode ver aqui:
Em breve estou de volta com alguns posts sobre minhas aventuras com o Sun SPOT. Se quiser saber mais noticias ou acompanhar mais de perto, visite meu perfil no twitter: http://www.twitter.com/netomarin

terça-feira, 24 de março de 2009

Instalando o ambiente do QT 4.5 para Série 60


Que a Nokia havia comprado a Trolltech (proprietária do QT que inclusive já teve seu nome trocado para QT Software) já é notícia velha, mas, enfim foi anunciado e disponibilizado o primeiro port para a S60 que inclui os principais celulares (smartphones e série multimedia) da fabricante finlandesa.
Mas, se você já pensou que ia poder sair programando em Symbian C++ logo de cara, infelizmente não é tão "simples" assim. O QT facilita (e muito) a criação de interfaces e alguns outros detalhes, mas não elimina o conhecimento básico de Symbian, principalmente se você quiser acessar recursos nativos do telefone ou dar um comportamento mais profissional a sua aplicação.

Instalação
Para utilizar o QT, é necessário ter um SDK do Symbian instalado. Eu indico que se você vai fazer o download agora, instale logo a versão 1.0 do SDK 5, que inclusive contempla os novos celulares (como o 5800 e N97). Também será necessário ter uma versão do Carbide C++ (v. 2.0.0 ou superior).
Para facilitar sua vida, foi criado um guia de instalação: Installing QT on S60. É só seguir os passos indicados que não haverá problema.

Referência
O Forum Nokia é um ótimo lugar para se encontrar qualquer documentação e exemplos para tecnologias relacionadas a Nokia. E lá já foi disponibilizado uma library inteira sobre o assunto: QT for S60 Developer's Library. Também, há uma documentação completa sobre todo o framework no site da Trolltech.
E claro, você pode encontrar também o Wiki do Forum Nokia sobre QT e sobre Symbian, caso ainda esteja começando ou tenha alguma dúvida.

Bom pessoal, por enquanto é só porque ainda estou instalando e fazendo algumas experiências. Em breve volto com algumas curiosidades e links para quem está começando nessa plataforma.

Abraços
Neto

sexta-feira, 20 de março de 2009

Gartner pública números mundiais sobre os SOs móveis para 2008

Ola pessoal,

Estou a tempo afastado, mas esses números públicados pelo Gartner me motivaram a escrever algumas palavrinhas por aqui. Esses dados são referentes ao market share e vendas de aparelhos smartphones no ano de 2008.

Para os mais aficionados pela Apple, a interpretação dessa tabela pode ser tendenciosa, principalmente se considerarmos o expressivo crescimento de 245% (!!) enquanto o líder Symbian teve uma queda de 6.1%.
Mas, a diferença entre eles ainda é muito grande, de 44,2% ! Ou seja, o iPhone teria que continuar com um ritimo "alucinado" de crescimento e as outras fabricantes se estagnarem totalmente para que ele conseguisse chegar perto da liderança.

Além disso, essa tabela ficará ainda mais interessante no ano de 2009 pois temos diversas novidades no mundo mobile:

  1. Mais aparelhos com o Android (SonyEricsson, Motorola, HTC, etc);
  2. Novos aparelhos touch da LG e Samsung;
  3. N97 e Ovi Store (loja de aplicativos Nokia);
  4. Saída do Steve Jobs da Apple (vão manter o folego???);
  5. Java FX Mobile
Enfim, a escolha de qual plataforma móvel utilizar vai continuar sendo motivo para discussões, dúvidas e erros! Se eu tenho alguma opinião? Tenho, mas isso é assunto pra outro post... e dos grandes...

[]s
Neto