Postagens

Mostrando postagens de 2009

Perspectivas do Desenvolvimento para Dispositivos Móveis

Acredito ser uma das tendências mais fortes dos últimos tempos, no que diz respeito ao desenvolvimento de novas tecnologias, a distribuição e compartilhamento de software na modalidade livre[1]. Porém, o nicho de sistemas embarcados -- atualmente a cereja do bolo do universo das TICs -- tem se mantido há bastante tempo à margem disto, fora algumas iniciativas isoladas. No mundo dos dispositivos móveis ainda não existe (e talvez nunca existirá) uma plataforma ou arquitetura padrão como no caso dos PCs onde temos a ix86, padrão lançado pela IBM com o IBM PC. Cada fabricante de mobile investe em plataformas próprias e que na imensa maioria dos casos é muito fechada. Em outras palavras, existem uma infinidade de arquiteturas e plataformas, cada uma com especificidades e características diferentes, numa quantidade tamanha que inviabiliza o desenvolvimento multiplataforma para dispositivos móveis. Até mesmo o onipresente Java ME apresenta inúmeros sabores em suas diferentes implementações p…

PyDev com Django no Ubuntu 9.04

O Eclipse com o plug-in PyDev é uma das melhores IDEs para desenvolvimento, inclusive em Python. E oferece um bom suporte ao desenvolvimento com o django. Este artigo é baseado em posts de outros blogs e experiência pessoal do autor.

Instalação do Django

Existem várias formas para instalar o Django. A que eu mais gosto e recomendo é através do tarball. Para isso, vá ao site[3] do django e baixe o arquivo .tar.gz. Então descompacte no caminho desejado e execute:
$sudo python2.4 setup.py install
Recomendo fortemente a utilização do python2.4 com o django. Esta versão do interpretador não vem por padrão no Ubuntu 9.04.
Instalação o Eclipse+PyDev

Para instalar o Eclipse, se ainda não o fez, basta acessar o site[1], realizar o download do mesmo e descompactar no caminho desejado. Supondo que o JDK tenha sido previamente instalado, deverá funcionar.

A instalação do PyDev é ainda mais fácil. No Eclipse:
Acesse "Help > Software Updates";Selecione a aba "Available Software" e cl…

Python acessando Oracle® XE no Ubuntu

No último post vimos como instalar o Oracle® 10g Express Edition no Ubuntu Server (sem ambiente gráfico) e habilitar o acesso remoto via http com o Application Express (apex). Agora nosso objetivo é mostrar como acessar o Oracle® XE a partir de uma aplicação Python.

A biblioteca padrão do Python não oferece suporte nativo ao acesso a bancos de dados SQL. Para este fim precisamos fazer uso de bibliotecas de terceiros. No caso do acesso ao Oracle®, faremos uso da cx_Oracle[1]. Para a instalação dessa biblioteca no Ubuntu recomendamos que seja feito a partir dos fontes disponíveis no sourceforge[2].


I M P O R T A N T E: Para que a instalação seja bem sucedida, garanta que os pré-requisitos do cx_Oracle estejam previamente satisfeitos. Para isto, instale, via apt-get, os pacotes libc6-dev e python-dev. Você também precisará do build-essential ferramentas essenciais para compilação de programas.

Após o download, descompacte o pacote, através dos comandos:
$ tar zxvf cx_Oracle-5.0.1.tar.gz
$ cd …

Fazendo funcionar o Oracle® 10g XE em um Ubuntu Server com acesso remoto (http) liberado

Imagem
Saudações.

Esta semana tive que fazer funcionar o Oracle® 10g Express Edition no Ubuntu Server (sem X instalado) com acesso remoto HTTP.

O Oracle® 10g XE requer no mínimo 1024MB de partição swap no sistema. O artigo[0] do Krix Apolinário sobre como extender a memória swap pode ser útil. A instalação é tranquila e sem maiores atropelos. O pacote de instalação[1] contém pucas dependências (o meu Ubuntu reclamou da ausência do dos pacotes bc e libaio) e o artigo do Zezival Sabino Neto[2] é bastante útil para o processo de instalação.

I M P O R T A N T E:

No processo de configuração do Oracle® será solicitado a senha do usuário SYSTEM. Não utilize o caracter '@' (arroba) na composição desta senha, sob pena de não conseguir logar no banco através do sqlplus ou outro cliente.


Após o término da configuração, é necessário reiniciar o Oracle®.

Neste ponto percebemos que o acesso ao gerenciador Web (APEX - Application Express) está restrito apenas ao localhost. Pesquisando no Google, descobri…

E com vocês o novo Ubuntu 9.04!

Imagem
Saiu a nova versão do Ubuntu! A Jaunty Jackalope!
Jaunty Jackalope quer dizer Jackalope Desenvolto. O Jackalope, no folclore, diz-se ser um cruzamento entre uma jackrabbit (lebre) e um antílope (daí o nome) que viveria na Califórnia...
(Cf. pt.wikipedia.org/wiki/Jackalope)

Para baixá-lo aqui no Brasil, pode-se usar, além dos espelhos oficiais
http://espelhos.edugraf.ufsc.br/ubuntu-releases/jaunty/ubuntu-9.04-desktop-i386.iso

Vários databases na mesma query

Se você precisa acessar duas ou mais bases de dados PostgreSQL numa mesma query você pode utilizar o contrib dblink[1].

Para quem utiliza Ubuntu, basta executar:
$ sudo apt-get install postgresql-contribEm seguida, instalá-lo no database que necessitará acessar dados de outras bases de dados.
$ psql -d nome_database -U nome_usuario -f /usr/share/postgresql/8.2/contrib/dblink.sqlOnde nome_database e nome_usuario são o nome da base de dados e o nome do usuário com privilégios sobre esta base de dados, respectivamente.

Pronto! Você agora já pode executar comandos do tipo:
SELECT *
FROM dblink('dbname=mydb', 'select proname, prosrc from pg_proc')
AS t1(proname name, prosrc text)
WHERE proname LIKE 'bytea%';Requisitos
Ubuntu 8.04PostgreSQL 8.2Referências
[1] http://www.postgresql.org/docs/current/static/contrib-dblink.html[2] http://www.vivaolinux.com.br/dica/Acessando-dois-databases-no-mesmo-SELECT-(PostgreSQL)/[3] http://www.vivaolinux.com.br/dica/Funcao-dblink()/

Matando o Java e Mostrando o Python

A princípio achei muito sugestivo o título desta apresentação. Mas olhando o conteúdo gostei ainda mais. Trata-se de um comparativo entre as duas plataformas de desenvolvimento.
View more presentations from Osvaldo Santana. Saudações!

Blog de endereço novo!

Saudações a todos!
É com muita satisfação que informo: A partir de agora nosso blog é acessível através do endereço

www.helder.eti.br

O antigo endereço continua funcionando.

Django sobre Google App Engine

Saudações a todos!

Esta semana tive a ideia de testar o Google App Engine (GAE), publicando uma pequena aplicação feita por mim sob o django. Fiquei surpreso com a simplicidade de uso do SDK e o suporte fornecidos pelo Google. O GAE compreende uma quantidade razoável de APIs e recursos, inclusive persistência de dados. Outra coisa interessante é o dashboard - página de gerência da aplicação - onde é possível acompanhar o desempenho da aplicação e o consumo de recursos do cluster.

Para publicar minha aplicação, uma vez que eu já havia finalizado-a em "django puro", ou seja, sem o SDK do GAE, precisei fazer algumas adequações no código para garantir compatibilidade com a estrutura do GAE. Nesse momento, o artigo Django on Google App Engine in 13 simple steps[1] (em inglês) de Thomas Brox Røst foi de muita valia. Depois que eu conclui meu projeto descobri uma tradução livre para o português deste mesmo artigo[2].

Dicionário Michaelis Português-Português

Existe uma versão on-line do…

Integrando o Apache2 com o Tomcat

Saudações mais uma vez.

Novamente deparei-me com a necessidade de mapear no Apache uma aplicação disponibilizada por outro servidor de aplicações - desta vez o Tomcat. Neste pequeno artigo descrevo como realizar tal tarefa de maneira bastante simples num servidor Ubuntu.

A integração entre o Apache e o Tomcat se dá com o auxílio do módulo mod_jk.

Supondo que você já disponha em seu servidor ambos o Apache2 e o Tomcat devidamente instalados e funcionando, necessita-se instalar o mod_jk. Para isto, execute no terminal:
$ sudo apt-get install libapache2-mod-jkTerminada a instalação, precisamos ainda realizar umas poucas configurações, tanto do lado do Apache, como do lado do Tomcat.

1º Passo:

Crie um arquivo chamado workers.properties na raiz do seu apache. No caso do Ubuntu:
$ sudo touch /etc/apache2/workers.propertiesEdite este arquirvo para que o mesmo contenha as seguintes linhas:
workers.tomcat_home=/usr/lib/apache-tomcat
workers.java_home=/usr/lib/jvm/java-6-sun
ps=/
worker.list=worker1

worker…

Utilizando o Zope com o Apache2

Saudações, pessoal.

Acredito que várias pessoas que utilizam aplicações Zope já ouviram falar sobre a possibilidade de rodar tais aplicações sob o Apache. E muitas outras já leram diversos tutoriais que tentam explicar como é feito tal acoplamento dos dois servidores. Eu sou uma dessas pessoas e minha experiência com tais tutoriais é que quase todos mostram exemplos de como realizar esta tarefa mas pouco explicam do mecanismo utilizado, ficando como que algo nebuloso, como que uma caixa preta. Neste pequeno artigo tentarei explicar algumas das partes que considero mais confusas deste procedimento.

Por que usar o Apache ao invés do Zserver?

Segundo [WIKIZOPE], existem várias motivações para você querer usar o Apache ao invés do ZServer (servidor web que vem junto com o Zope), entre elas estão:
Mesclagem em um mesmo site de conteúdos baseados em Zope e outros não baseados em Zope;Hospedar em um mesmo host aplicações baseadas em Zope e aplicações baseadas em outras tecnologias, como JavaEE o…