Pesquisador do INdT, trabalha com Linux desde 2000 e atualmente é coordenador da comunidade PythonBrasil. No INdT faz parte da equipe de SDK onde cuida do port da linguagem Python para a plataforma Maemo.
INdT – BRASIL / RECIFE
Instituto Nokia de Tecnologia
Instituição sem fins lucrativos, fundada pela Nokia em 2002.
Criado com investimentos da Lei de Informática.
3 escritórios, em Manaus, Brasília e Recife.
Pesquisa & Desenvolvimento nas áreas de Mecânica & Produtos Eletrônicos, Software, Multimídia, Telecomunicações e Excelência em Operações e Logística.
INdT - ESTRUTURA
Estrutura:
O INdT conta hoje com uma equipe de cerca de 100 profissionais altamente qualificados, divididos entre 2 áreas-chave: técnica e administrativa. A área técnica é composta por quatro áreas de conhecimento para a execução de projetos. A área administrativa inclui todas as funções de suporte para a execução de projetos como Governança, Recursos Humanos, Administrativo e Financeiro, Escritório de Projetos e TI.
Parcerias:
Estes são alguns parceiros do INdT para execução de projetos:
CESAR - Centro de Estudos e Sistemas Avançados de Recife FUCAPI - Fundação Centro de Análise, Pesquisa e Inovação Tecnológica INATEL - Instituto Nacional de Telecomunicações PMR - Escola Politécnica da Universidade de São Paulo UFAM UFCG UFMG UFRJ
PLATAFORMA MAEMO
Maemo é uma plataforma para o desenvolvimento de aplicações para Internet Tablets da Nokia e outros dispositivos portáteis compatíveis.
A plataforma é formada por componentes populares de Softwares Livre que são largamente utilizados e estão presentes nas principais distribuições Linux da atualidade.
ESPECIFICAÇÕES TÉCNICAS
Kernel Linux (Core)
D-BUS (IPC)
GTK+ (GUI)
Xserver
Gconf
GnomeVFS
Hildon (GUI)
LibOSSO
NOKIA 770: 1º PRODUTO
Primeira versão:
OMAP 1710 DSP ARM9 220MHz Resolução: 800x480 65 mil cores 4.13” widescreen Touch screen WLAN 802.11b/g Bluetooth 1.2 USB Multimídia
NOKIA N800: 2º PRODUTO
Uma nova versão:
OMAP 2420 DSP ARM11 330MHz Resolução: 800x480 65 mil cores 4.13” widescreen Touch screen WLAN 802.11b/g Bluetooth 1.2 USB Multimídia Câmera VGA Rádio FM
DESENVOLVENDO PARA MAEMO
Desenvolvimento muito semelhante ao desenvolvimento Linux para Desktop:
As ferramentas são as mesmas utilizadas para desenvolvimento Linux
As bibliotecas são as mesmas utilizadas por dezenas de aplicações Linux para Desktop com pequenas optimizações
DESENVOLVENDO PARA MAEMO
As ferramentas necessárias para o desenvolvimento:
Ambiente para cross-compiling (scratchbox)
GNU Toolkit (gcc, gdb, make, autotools, ...)
Python
projeto criado e mantido pelo INdT de Recife
DESENVOLVENDO PARA MAEMO
Aplicação bem simples, componentes básicos sendo utilizados. C e GTK+
Tela de abertura de um jogo escrito em Python com PyGame
for
PORQUE PYTHON?
Licenciamento:
Python possui uma licença de código aberto compatível com GPL
Todos os componentes estão sob a mesma licença, inclusive a máquina virtual / interpretador Python
Desenvolvimento aberto
Python possui uma comunidade participativa e aberta a sugestões
Python possui um modelo de desenvolvimento pouco burocrático
PORQUE PYTHON?
Qualidade da Linguagem
Facilidade de uso, sintaxe limpa, estrutura de dados poderosas como lista, tupla e dicionário
Paradigmas suportados: estrutural, bom para scripts rápidos e orientado a objetos¸facilita o desenvolvimento de aplicativos de maior porte
Muitos módulos reunidos
Parsers XML, HTML, servidores SMTP, HTTP, manipulação de textos, imagens e outros
DESAFIOS PARA O PORT
Ocupação de espaço em disco:
Redução da instalação padrão
Remoção de módulos desnecessários
Otimização dos módulos com remoção das “docstrings”
Arquivamento dos módulos principais em um arquivo ZIP
DESAFIOS PARA O PORT
Velocidade do Interpretador
O aplicativos em Python aparentam ter o comportamento esperado para uma linguagem interpretada
Calcanhar de aquiles: Tempo de inicialização
Experiências de melhoria do tempo de carga do módulo GTK+
Python Launcher (experiência para a próxima versão)
Melhorias beneficiariam também os projetos OLPC e OpenMoko
CARACTERíSTICAS DO PYMAEMO
PyGame
Bindings Python para biblioteca SDL. Permite o desenvolvimento de jogos
PyGTK/PyHildon
GTK componente padrão no Linux
Hildon é uma “extensão” do GTK para a plataforma Maemo
CARACTERíSTICAS DO PYMAEMO
Python OSSO
Acesso à serviços do dispositivo
Outros bindings:
HildonDesktop - plugins e applets para a plataforma. Desenvolvido pela Nokia
Envolvimento do Lucas Rocha
LibIconic, GnomeVFS, D-Bus, BlueZ, Gstreamer, ...
IDÉIAS PARA O FUTURO
Otimizador de bytecode e compiladores nativos (Psyco, CPython, PyPy/LLVM, ...)
0 comments
Post a comment