h1

Porque o Iphone é melhor que (insira aqui o modelo).

Dezembro 10, 2008

Até que enfim conclui a minha meta pessoal desse ano, comprar um Iphone (3G), aliás esse post é inteiramente escrito nele. O título parece é meio extremista, mas irei apresentar minha argumentação.

Eu poderia ficar horas falando sobre o quão fenomenal é a App Store, o quanto são bonitos os efeitos que usam o acelerômetro, capacidade de 16 Gb, do ótimo posicionamento do GPS no Maps ou da melhor experiência de navegação móvel que eu tive até hoje, mais aí já estariam me chamando de Iphonetard (se não já o fizeram).

A principal característica que me marcou é a usabilidade, tanto se falou em blogs sobre o desconforto de seu teclado que eu mesmo fiquei com receio, mas após 3 dias de uso posso dizer que isso é um mito, pois é de fácil utilização e com a devida experiência qualquer pessoa pode se tornar expert em seu manuseio. Outro ponto importante é a bateria, que durou 5 dias após uma carga completa, com um uso extremo do aparelho (sem 3G, pois não escolhi a operadora, aceito sugestões).

Agora um ponto ruim é a fragilidade que sinto em carregá-lo no bolso, pois realmente é um produto com um preço elevado e parece que qualquer queda é capaz fazê-lo em pedaços!

Assim que me decidir sobre o 3G, farei um post sobre. Peço desculpas aos que acompanham esse blog, pois estou sem tempo de atualizá-lo freqüentemente, mas logo irei publicar uma série de tutoriais sobre Objective C, que estou estudando e achei pouco material bom em pt-br.

Mensagem subliminar? Iphone mais Objective C, quem sabe.
Até mais!

h1

Zeebo + SDK + Python = :D

Novembro 15, 2008

Olá, começo pedindo desculpas por não estar com muito tempo para atualizar meu blog como deveria.

Mas vamos direto para as novidades, como gamer que sou uma notícia pra lá de interessante (pelo menos para mim) está rolando por aí. Uma parceria entre a Zeebo Inc. e Qualcomm está produzindo um novo video game chamado Zeebo (clichê). A idéia parece promissora pois, segue o mesmo preceito do mac air, ou seja, sem dispositivos de mídia física. Os jogos serão armazenados diretamente no HD e mais, com uma “ajuda” da Claro os jogos serão distribuidos via 3G na ZeeboNet3G, logo, adeus midia fisica! Agora o mais legal foi a liberação do SDK para download diretamente no site, claro é necessário se registrar no site. Segundo a informação do próprio site, há rumores sobre a possibilidade de desenvolvimento em C/C++ Python e por último e não tão importante Java.

Estou tentando utilizar o SDK, assim que conseguir farei mais um post sobre.
Até mais!

h1

Usando o Serviço de Usuários

Outubro 29, 2008

Para mim essa é a funcionalidade matadora do Google App Engine, ele provê diversos serviços baseados na infra-estrutura do Google, acessível por aplicações usando as bibliotecas incluídas no SDK. Um desses serviços é o serviço de Usuário, que permite a sua aplicação integrar diretamente com as contas de usuários do Google. Com este serviço, os seus usuários podem utilizar as contas do Google que eles já possuem para acessar a sua aplicação.

Vamos utilizar o serviço de usuário para personalizar uma aplicação de saudação:

Carregue seu aplicativo no servidor de testes local (dev_appserver.py). Sua aplicação deve redirecionar você até uma versão local de login para que então você possa testar. Você pode inserir qualquer nome de usuário nesta tela e sua aplicação irá trabalhar com um objeto usuário falso baseado nesse nome. Quando sua aplicação estiver executando no App Engine, os usuários serão direcionados para a tela de logins do Google Accounts, e depois redirecionados para a sua aplicação se logados, ou após criarem uma conta.

Vamos a uma explicação de alguns comandos:

Se o usuário já estiver previamente logado na sua aplicação, get_current_user() retornará um objeto User para esse usuário. Caso contrário, ele retornará None.

Se o usuário estiver logado, será mostrada uma mensagem personalizada, utilizando o apelido associado com a conta do usuário.

Se o usuário não estiver logado na aplicação, o webapp redirecionará o browser do usuário até a tela de login do Google Account. O redirecionamento inclui a URL para a página de origem (self.request.uri), então o mecanismo de login do Google Account irá enviar o usuário de volta para a página inicial após o usuário ter logado ou criado uma nova conta.

Até mais!

h1

Python 2.6, o que muda?

Outubro 26, 2008

Olá! Somente hoje (26/10) tive a chance de atualizar meu Python para o 2.6, mas o que muda com essa versão?
Como todo usuário que acompanha as atualizações do Python, sabe que boa parte dos próximos releases são para adequar a estrutura do Python para a versão 3.0 (também conhecida como Python 3000). Ao longo dessa semana, li alguns artigos e um video do próprio Van Rossum sobre a perda da retrocompatibilidade com as versões antigas do Python. Mas antes que alguns xiitas digam: “Python é uma m****!” Já existe uma ferramenta que corrige isso (quase todas as modificações, alguma terão que ser feitas manualmente). E mais na nova versão (2.6) são exibidas mensagens de possíveis imcompatibilidades com a versão 3.0, para que possa existir uma migração tranquila.
Bem, as novidades são: a declaração with , módulos para codificação e decodificação em JSON , processamento baseado na interface threading o módulo fractions para tratamento de frações, o método str.format em substituição do operador % das strings, reestruturação da documentação usando o Sphinx , diretórios exclusivos por usuários, otimizações e correções de bugs.

Para mais informações http://docs.python.org/dev/whatsnew/2.6.html

h1

Hello World no Google App Engine

Outubro 22, 2008

As aplicações baseadas no App Engine se comunicam o web server utilizando “CGI” (Common Gateway Interface). Quando o web Server recebe a requisição da aplicação, ele executa a aplicação com os dados da requisição em variáveis de ambiente em cima da plataforma de input padrão. Para responder utiliza a plataforma de output padrão, incluindo os headers de HTTP e o conteúdo. Vamos começar implementando uma pequena aplicação que mostra uma pequena mensagem na tela.

Este script em Python responde para uma requisição HTTP com o header descrito em “Content-Type”, uma linha em branco e uma mensagem “Hello World!!!”. Uma aplicação no App Engine possui um arquivo de configuração chamado app.yaml. Entre outras coisas, este arquivo descreve qual script será usado para cada url.

O identificador da aplicação é helloworld. Quando você registra sua aplicação com o App Engine no último passo, você irá selecionar um único identificador, e vai atualizar esse valor. Este valor pode ser qualquer coisa durante o desenvolvimento. Por enquanto será helloworld. Esta versão é número 1 para este código da aplicação. Se você ajustar antes de atualizar a nova versão de sua aplicação, o App Engine vai manter a versão anterior e permitir a você voltar à versão anterior utilizando o console administrativo. Este código roda utilizando o ambiente de desenvolvimento python, com a versão 1. No futuro serão suportadas mais linguagens e ambientes. Todas as requisições cujo url corresponde a “/.*” (todas as URLs) utilizarão o script helloworld.py. A sintaxe deste arquivo é YAML. Para uma completa lista de opções de configurações, confira a especificação do app.yaml.

Com o script e o arquivo de configuração mapeando cada URL para seu respectivo script nosso aplicativo está pronto! Agora podemos testar com um servidor web que vem incluso no SDK do App Engine.

Inicie o servidor web com o seguinte comando, apontando a pasta helloworld, que é a pasta recipiente da nossa aplicação. O servidor web está funcionando agora, ele está esperando requisições na porta 8080. Para testar sua aplicação apenas visite a URL http://localhost:8080 com seu browser favorito. Você pode deixar o servidor web rodando enquanto desenvolve sua aplicação. O servidor web assiste enquanto você modifica sua aplicação e quando tiver alguma modificação nos arquivos, ele automaticamente recarregará a aplicação.

Esse é apenas o primeiro exemplo de como é prático, rápido e limpo o desenvolvimento web com App Engine, até mais!

h1

Iniciando na web com Google App Engine

Outubro 20, 2008
Google App Engine

Google App Engine

Google App Engine:

Google App Engine é o nome de um dos mais novos “serviços” que a Google começa a disponibilizar, para facilitar a criação de aplicativos para web. Com o Google App Engine você pode rodar suas aplicações web em cima da estrutura do próprio Google. É disponibilizado para cada conta 500MB para upload de aplicações o em torno de cinco milhões de acessos por mês.

Com o App Engine não existe servidores para manter, é só você fazer o upload de sua aplicação e ela estará disponível para os usuários. Sua aplicação usará um domínio gratuito chamado appspot.com, isso pode ser usado tanto para aplicações públicas, quanto para aplicações com acesso restrito.

Ainda o App Engine tem um total suporte as tecnologias comuns para web, API’s para autenticação e envio de emails para usuários usando as próprias contas da Google, além de contar com um ambiente local para simulação de suas aplicações no seu próprio computador.

O Google utiliza-se (somente, por enquanto) a linguagem Python para o desenvolvimento ágil de aplicações. O App Engine conta com as bibliotecas padrão do Python, claro, com algumas restrições como tentativas de abrir sockets, gravação de arquivos em disco e códigos com extensões em C também não são permitidos (lágrimas :P ).

Em contra partida, o App Engine conta com API’s para armazenamento de dados (The Datastore), busca de URL’s, envio de emails e uma API para integração direta com o Google Accounts.

Para mais informações clique na figura acima.