domingo, 16 de novembro de 2014

Infográfico - A história do Cloud Computing

Talvez vocês não saibam, mas a idéia de Cloud Computing surgiu há mais de 50 anos. E quem criou inicialmente a idéia foi John McCarthy, o criador do Lisp.
Mas ainda há muitas perguntas intrigantes a respeito do assunto: Quando demos início a isso? Quem começou a utilizar?
Neste post, quero divulgar um post do blog Cloud Market que faz um infográfico sobre Cloud Computing. Desde a origem até os dias atuais, ele explica de forma sucinta toda a evolução da tecnologia até chegarmos ao presente e fazer uma previsão do que virá em Cloud Computing.
O conteúdo é muito bom e vale a pena dar uma olhada. O link para o post é: http://www.cloudmarket.com.br/blog/cloud-computing/infografico-historia-cloud-computing/
Por ora é isso. Até o próximo post!

quinta-feira, 21 de agosto de 2014

Meetup de OpenShift em São Paulo - Migração de aplicações Google App Engine para OpenShift

Olá a todos.

Hoje na Caelum às 19hs eu apresentarei no Meetup de OpenShift com o tema: "Migração de aplicações Google App Engine (GAE) para o OpenShift". Quem quiser mais detalhes, é só clicar no link abaixo:

http://www.meetup.com/OpenShift-Sao-Paulo/events/200967252/

Desculpa aos leitores pelo convite em cima da hora, mas não deu pra postar antes. Para quem puder participar, nos veremos lá.

domingo, 15 de junho de 2014

Crie seu próprio site de e-commerce nas nuvens com o Openshift

Um dos grandes e mais importantes setores do mercado da Internet com certeza são os chamados e-commerce. Com certeza, quando se fala em varejo online, fala-se em Submarino, Americanas, Magazine Luiza, etc. Um dos sites de e-commerce mais importantes dessa linha com certeza é a Amazon.
Além da Amazon ser a maior varejista online do mundo, ela é um perfeito estudo de caso de utilização de Cloud Computing. Neste post, eu irei mostrar que voce também pode ter uma loja online utilizando OpenShift e um framework feito em PHP chamado Magento.

O que é o Magento?

Magento é um framework de e-commerce feito em PHP e com diversas funcionalidades para criação, design e gerenciamento de uma loja online, vem como diversos dashboards para acompanhamento das vendas e também o controle de estoque.
Uma das coisas que fazem do Magento uma grande plataform de e-commerce é a possibilidade de desenvolver e instalar diversos plugins que permitem a integração com sistemas de pagamento online (como PayPal), bem como monitoramento de campanhas de marketing com o Google AdWords e Google AdSense. Sem dúvidas é a melhor plataforma de e-commerce que há no mercado e além de tudo é Open Source, que permite que você possa alterar o código para suas necessidades.
Um problema que eu vejo em relação ao Magento é a complexidade de instalação da plataforma e isso traz um fator complicado para utilização da ferramenta. O OpenShift permitiu que o Magento fosse provisionado de forma simples e com todo o aparato necessário para iniciar sua loja online sem muito conhecimento da plataforma. Na próxima seção eu irei mostrar como criar uma aplicação Magento.

Criando sua loja online no OpenShift

Para criar sua loja online no OpenShift, basta criar uma nova aplicação instantânea dentro da interface de gerenciamento web do OpenShift. Nota do autor: Aplicações instantâneas (ou Instant Apps) são aplicações dentro do OpenShift que podem ser criadas sem a necessidade de pegar o código de outro repositório ou configurações adicionais. Com ele, é possível provisionar diversas aplicações como blogs, ferramentas de produtividade e muito mais.
Sem mais delongas, vamos criar a aplicação. Na tela de criação da aplicação, use o campo de busca para encontrar a aplicação Magento como mostra a figura abaixo:

Tela de criação da aplicação

Assim que selecionada a aplicação Magento, você seguira para a tela de informações da aplicação, como a URL da aplicação:

Definindo os parâmetros básicos da aplicação - 1
Definindo os parâmetros básicos da aplicação -2
Após clicar em "Create Application", em alguns minutos a aplicação já estará pronta para uso e você terá sua loja online funcionando! Acesse a aplicação pela URL definida anteriormente e você verá a loja com um visual pré-pronto:

Loja online provisionada no OpenShift

E pronto! você já tem uma loja online. Agora, bastaque você faça a administração da sua loja e faça as devidas configurações de moeda, idioma e outras coisas mais. Mas pera lá: se eu já tenho a loja e posso acessar como cliente, como eu posso agora acessar a interface de administração?
Para acessar a interface de administração, basta que você adicione /admin na URL da sua aplicação e você poderá acessar a interface de administração conforme abaixo:

Tela de login da interface de Administração do Magento
Agora, basta que você acesse a aplicação utilizando o usuário admin e a senha OpenShiftAdmin123. E pronto! Você terá acesso à interface de administração do Magento, conforme mostra a figura abaixo:

Tela de administração do Magento
Para obter mais informações sobre o Magento, dê uma olhada na documentação sobre como gerenciar a ferramenta e também tem algumas dicas de como criar uma loja online de sucesso. 

Informações adicionais

O Magento como uma aplicação instantânea foi desenvolvido como um quickstart e é Open Source também. Caso você queira contribuir com funcionalidades adicionais ou aperfeiçoando a aplicação para rodar no OpenShift é possível baixar o repositório e contribuir.

Conclusão

Não há dúvidas de que o varejo online é um mercado bem atrativo, pois sempre há espaço para novas lojas com preços cada vez mais competitivos no mercado. Uma das coisas que poderiam ser o impeditivo para uma nova loja online não ter sucesso é o custo de se manter a hospedagem e gerenciamento da loja na Internet. Com esse post, espero poder contribuir para que esse impeditivo deixe de existir, tornando cada vez mais fácil gerenciar sua loja online e também iniciar seu negócio online em pouco tempo. Por ora é isso, até o próximo post!

sábado, 14 de junho de 2014

Review do livro "Getting Started with OpenShift: A guide for impacient Beginners"

Recebi do time do OpenShift o livro Getting Started with OpenShift, dos autores Steve Pousty e Katie Miller. Tive o prazer de conhecer o Steve no evento JUDCon e conversei com ele sobre OpenShift. =D
Para quem não conhece, Steve Pousty é Desenvolvedor do OpenShift e Katie Miller é Developer Advocate do OpenShift.

Do que se trata o livro?

O livro trata dos primeiros passos com OpenShift (havia feito esse post anteriormente) mas com muito mais detalhes a respeito da administração de sua conta OpenShift e como usufruir de todas as funcionalidades do OpenShift para criar aplicações.


Imagem da capa do Livro
O livro é pequeno, porém é bem consistente quando se trata em explicar os primeiros passos. Nele, é possível aprender desde a criação da aplicação e adição de tecnologia de backend, passando por gerenciamento da aplicação até conceitos um pouco mais avançados como WebSockets, Backup e colaboração entre contas.
Para tornar a didática do livro mais prazeirosa, ao longo dos capítulos você vai criando e evluindo uma aplicação de exemplo (utilizando Python) e utilizando algumas tecnologias de backend como cron, Banco de Dados PostgreSQL e alguns recursos adicionais do OpenShift.
Bom, por ora é isso. Até o próximo post!

sexta-feira, 30 de maio de 2014

Primeiro meetup de OpenShift em São paulo

O time da Getup Cloud apresentou o primeiro meetup de OpenShift em São Paulo. O evento aconteceu na Osmose coworking e contou com a participação da Red Hat.

O evento

Nesse primeiro meetup, o pessoal quis abordar os termos mais básicos sobre o OpenShift, suas vertentes(expliquei sobre isso em um post anterior), a arquitetura e como a Getup Cloud se encaixa nisso.

À espera do início da apresentação
O evento foi sensacional, as pessoas que foram trouxeram muitas dúvidas prontamente respondidas pelos organizadores, houve uma interação dos participantes e muito interesse por parte deles em conhecer sobre Openshift.

Diego (Getup Cloud) explicando a diferença das vertentes do Openshift
Ao final do evento, a Red Hat pagou pela pizza e houve um ótimo espaço para Networking. Todos conversando sobre as possibilidades de uso do OpenShift e também muitas idéias para aplicações e quickstarts/cartridges.

Slide sobre a arquitetura da Getup Cloud

O pessoal do meetup no espaço Osmose coworking
Provavelmente, haverá um próximo evento do meetup em Junho. Pra quem não quer ver a Copa, conversem com os organizadores para fazer o evento. Pra quem quer ver, vamos assistir a Copa juntos enquanto falamos de OpenShift. =D
Por ora é isso, até o próximo post!

domingo, 25 de maio de 2014

OpenShift Origin Index: O catálogo de serviços para o OpenShift

Com tantas possibilidades de serviços para utilizar no OpenShift, ficamos até perdidos em saber qual está disponível ou não. Google nem sempre é nosso amigo quando se trata de quickstarts e cartuchos para o OpenShift, então é importante procurar em um ponto central para também ter uma sensação de que o quickstart/cartucho que estamos utilizando é até confiável e não incompleto. Com base nisso, a equipe do OpenShift criou o OpenShift Origin Index. Falarei sobre ele nas próximas seções.

O que é o OpenShift Origin Index?

O OpenShift Origin Index é uma aplicação criada pelo time de OpenShift afim de centralizar todos os quickstart e cartuchos da comunidade em uma página, onde os desenvolvedores que querem divulgar seu trabalho adicioná-los no site e os que estão interessados en utilizar poder buscar e fazer o deploy  diretamente no Openshift.

Basicamente, o OpenShift Origin Index é um Google para o OpenShift Origin porém com a diferença de que ao lado do Quickstart/ Cartucho há um botão de deploy, que irá lhe redirecionar diretamente para a página de criação da aplicação OpenShift e com isso

Tela do OpenShift Origin Index
 A interface é bem simples, porém está em constante desenvolvimento pela equipe e com certeza veremos uma evolução cada vez maior dele.

Como Acessar?

O OpenShift Origin Index está disponivel na URL http://origin.ly/ e você pode tanto publicar seu quickstarts/ cartuchos quanto usar os que estão disponíveis no catálogo.
Para quem quer visualizar ou usar os serviços não é necessário login, porém para divulgar você precisa fazer o login com a sua conta do GitHub. Para isso, clique em Sign In e você será redirecionado para a página do GitHub onde irá pedir sua autorização para que a aplicação possa acessar seus repositórios e sua conta.

Adicionando um quickstart/cartucho



Posso usar o OpenShift Origin Index em meu próprio ambiente OpenShift Origin?

O código do OpenShift Origin Index é aberto (assim como o código do OpenShift Origin) e você pode encontrar o código em
https://github.com/openshift/oo-index. A aplicação foi feita em Python utilizando Flask e Bootstrap.
Para utilizá-lo em seu próprio ambiente OpenShift Origin, basta seguir as instruções na página do GitHub do OpenShift Index e fazer o deploy em seu próprio ambiente. Não se preocupe com dados, pois no momento seu repositório de dados é um arquivo .json que armazena todos os quickstarts.

Conclusão

Não há como negar as infinitas possibilidades do OpenShift em trazer plataformas, aplicações ou linguagens para o ambiente de Computação em Nuvem. Basta analisar todos esses quickstarts e cartuchos para ver o quanto pode ser feito nesse ambiente. Até o próximo post.

sábado, 24 de maio de 2014

xPaaS: A nova geração de serviços na nuvem

É cada vez mais claro que a nuvem está se tornando uma solução mais atraente quando se fala em reduzir o Time-to-Market e desenvolvimento rápido de aplicações. Porém em determinados momentos não há como simplesmente esquecer conceitos do passado e em alguns momentos reinventar a roda. Com base nessa necessidade, a equipe do OpenShift está lançando a solução xPaaS, que reúne alguns serviços para desenvolvimento de aplicações mais avançados. Neste post, falarei um pouco sobre a solução.

A Solução xPaaS

A solução xPaaS é um conjunto de features adicionais agregadas ao OpenShift que permite utilizar em suas aplicações conceitos já utilizados atualmente dentro da nuvem. Tais conceitos, como BPM e EAI, rodam como aplicações dentro do OpenShift permitindo assim integrar os sistemas através de padrões de arquitetura EAI, orquestração de serviços utilizandos processos e regras e fazer deploy em ambientes híbridos.
O OpenShift xPaaS possui até o momento os serviços iPaaS, BPMaaS e mPaaS. O que eles são e para que serve? Tentarei explicar nas próximas seções.

O serviço base ou o serviço de container de aplicações

Desde o início, o OpenShift oferece Servidores de Aplicações Java (como JBoss, Tomcat e outros) para desenvolvimento de aplicações. Sem dúvida, esses servidores são essenciais já que hospedam suas aplicações. A partir daí, o desenvolvimento cria as aplicações corporativas utilizando a especificação Java EE onde define as APIs necessárias tais como persistência, transação e outros.


Aplicação Kitchensink rodando no cartridge JBoss EAP
Mais informações você pode encontrar em https://www.openshift.com/developers/jboss

iPaaS: Integração como um Serviço

Geralmente, em uma empresa, há diversas aplicações para agilizar o fluxo de trabalho de departamentos internos da empresa porém é necessário que essas aplicações interajam entre si afim de melhorar a eficiência deles sem reinventar a roda. Para isso, os padrões EAI facilitam a integração entre sistemas utilizando princípios arquiteturais.

Fuse no OpenShift

Além de integração, há também uma necessidade de se integrar diversas fontes de dados para o ecossistemas de aplicações de uma empresa. Uma vez que há diversas formas de se armazenar dados, sempre há um problema para juntar informações que vêm de várias fontes e com isso criou-se o conceito de Data Virtualization. Esse conceito trata de juntar todas as fontes de dados em uma base de dados virtual, criando-se um único ponto de acesso  para as informações vindas de diversas fontes de dados.
O OpenShift oferece um cartucho chamado Data Virtualization que consiste em criar uma instância de Teiid (mais informações sobre o projeto Teiid em http://teiid.jboss.org/) e assim poder criar um ponto único de acesso a diversas fontes. A integração pode ser feita via IDE Eclipse utilizando os plugins do JBoss Tools ou utilizando o JBoss Developer Studio.

Eclipse executando uma instância de Teiid rodando no OpenShift

Você pode encontrar mais informações sobre o Fuse em https://www.openshift.com/developers/jboss-fuse/getting-started e sobre o Teiid/Data Virtualization Platform  em https://www.openshift.com/developers/jboss-data-virtualization/getting-started

BPMaaS: Processos de negócio como um Serviço

Apesar de o desenvolvimento de código para criar aplicações é a forma mais clássica da computação de se facilitar processos das áreas da empresa. No entanto, certas áreas possuem regras de negócio mutáveis que inviabiliza o desenvolvimento de código dado o esforço de se alterar as regras a qualquer momento. Para isso, existe o conceito de Business Rules Management (Gerenciamento de Regras de Negócio) que permite que o analista de neǵocios possa criar e alterar as regras de negócio de forma mais prática e rápida através de uma linguagem simples e sem necessitar de alterações no código da aplicação.
O projeto Drools (http://drools.jboss.org/) permite esse tipo de lógica e vai além: é possível também criar fluxos de negócio para serem integrados a aplicações e com isso criar um ambiente de BRM para regras de negócios mutáveis.

Criando um Fluxo de Negócio com o Cartucho BPMS

O OpenShift utiliza o Drools através do cartucho JBoss BPM Suite, que também adiciona BAMs (Business Activity Monitoring ou Monitoramento de Atividade de Negócios) para que sejam gerados dashboards que monitora como estão os dados gerenciais que permite tomar decisões mais certeiras a respeito do negócio.

Tela de BAM do JBoss BPMS no OpenShift

Mais informações sobre o JBoss BPM Suite pode ser encontrada em https://www.openshift.com/developers/jboss-bpms/getting-started

mPaaS: Plataforma de Mobilidade como um Serviço

Uma das tecnologias que têm sido cada vez mais adotada é a Mobilidade, ou seja, aplicações corporativas criadas para Smartphones e/ou Tablets. Um dos desafios dessa tecnologia é criar aplicações que rodam sem dificuldade em diversas plataformas Mobile, o que dificulta o desenvolvimento. Para isso, há um conceito chamado de Mobile Web onde é possível criar aplicações que podem rodar em qualquer plataforma, uma vez que a aplicação é desenvolvida utilizando as tecnologias W3C (HTML, CSS e Javascript). Mas e quando é necessário utilizar conceitos nativos do SO Mobile? Aí é necessário desenvolver a aplicação sob o conceito de aplicações Híbridas em que a partir do código cria um pacote nativo para determinada plataforma Mobile.
Ok, mas e se eu precisar fazer algum tipo de comunicação Push nas minhas aplicações Mobile? O OpenShift possui o cartucho Aerogear Push Server que gerencia todos os provedores de Push para assim criar um ponto único de comunicação entre as diversas implementações de Push como o Google Cloud Messaging, Apple Push Network, etc.

Aerogear Push Server no Openshift

Para maiores informações sobre o Aerogear, veja em https://www.openshift.com/quickstarts/aerogear-push-0x. O Aerogear Push Server é parte do projeto Aerogear, que pode ser encontrado em http://aerogear.org/.

Conclusão

O OpenShift cresce cada vez mais e com mais aplicações e plataformas disponíveis para uso.  O xPaaS é uma das plataformas que eu particularmente acho mais promissora dada a variedade de serviços corporativos envolvidos. Quem quiser conhecer mais sobre o xPaas, pode ver em https://www.openshift.com/xpaas. Até o próximo post.

quarta-feira, 29 de janeiro de 2014

Fedora 20 Release Party

No dia 18 de Janeiro, participei do Fedora 20 Release Party no escritório da Red Hat. O evento foi mais um motivo para encontrar bons e velhos amigos para conversar sobre Open Source e também poder compartilhar conhecimento. Graças ao meu amigo Leonardo Vaz (que apresentou o tema principal do encontro), tive a oportunidade  e apresentar sobre o OpenShift Origin 3 e OpenShift Enterprise 2.
Apresentando sobre o OpenShift
O pessoal em geral conhecia o OpenShift mas não o conhecia tão a fundo, e com isso o evento ficou ainda mais bacana já que eu não havia preparado uma apresentação mais formal sobre o assunto mas só a vontade de todos por querer conhecer mais sobre o assunto já me permitiu que eu falasse por mais ou menos 2 horas. =D
Pessoal super interessado sobre OpenShift
Há propostas de se fazer outros e provavelmente estarei por lá. Publicarei o próximo evento aqui assim que souber a data. Até a próxima!
Pessoal do evento

sábado, 11 de janeiro de 2014

Django nas nuvens: Python com OpenShift

Esse e alguns próximos posts serão a respeito de um projeto novo que pretendo finalmente botar em prática sobre um sistema que gostaria muito de desenvolver. Tenho algumas idéias com algumas features que virão no futuro no OpenShift e que virão também para complementar essa série. Iniciarei essa série falando sobre Python e de um framework muito utilizado pelos programadores Python: O Django.

Introdução

O Django é um framework MVC que auxilia na construção de aplicações Web com Python utilizando o bom e velho padrão MVC (Model-View-Controller). Nele, é possível criar aplicações de forma bem rápida e simples. Bastando criar algumas linhas de código e você já consegue ter CRUDs básicas funcionando.

Primeiros passos

Para iniciar o desenvolvimento, vamos criar uma aplicação utilizando a ferramenta RHC (em um post anterior eu expliquei como utilizar)
$ rhc create-app djangoapp python-2.7 --from-code git://github.com/openshift/django-example.git
Após a criação da aplicação,você poderá acessar através da URL http://djangoapp-<dominio>.rhcloud.com. A página inicial será assim:
Página inicial da aplicação Django
Falarei sobre esse link admin logo a seguir. A estrutura do projeto Django fica dessa forma:


CRUD sem esforço: A interface administrativa do Django

Uma das coisas que gostei do Django é justamente porque ele facilita muito a geração de telas de cadastro, mais conhecidas como CRUD (Create-Retrieve-Update-Delete), tornando assim mais rápido o desenvolvimento de telas que realmente importam para o sistema. Sem contar que ele já fornece autenticação de usuários na criação da aplicação.
Para isso o Django possui o Django Admin Site, que é uma série de pacotes que permite criar essas telas sem muito esforço de código. Basta algumas linhas e logo é possível fazer o CRUD das suas entidades. Como o Django Admin Site já está acessível assim que você cria a aplicação no OpenShift, já é possível acessá-la. 
Mas espera! Falta a senha do admin e sem ela não dá pra acessar. Para pegar a senha, é simples: basta acessar a aplicação via SSH e procurar pelo arquivo app-root/runtime/data/CREDENTIALS e lá estará os dados de usuário e senha para acessar o Django Admin Site:

Capturando a senha gerada pelo OpenShift
Para habilitar o Django Admin Site para procurar pela classe de modelo que iremos adicionar, abra o arqivo wsgi/openshift/settings.py e adicione na seção INSTALLED_APPS o conteúdo abaixo que está em negrito:
INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Uncomment the next line to enable the admin:
    'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
    # 'django.contrib.admindocs',
    'openshift',)
Depois, abra (ou crie se não existir) o arquivo wsgi/openshift/models.py e adicione o seguinte conteúdo:
from django.db import models
class Pessoa(models.Model):
    nome = models.CharField(max_length=40)
    idade = models.IntegerField()
Por fim, abra (ou crie se não existir) o arquivo wsgi/openshift/admin.py e adicione o seguinte conteúdo:
from django.contrib import admin
from openshift.models import *
admin.site.register(Pessoa)
Depois disso, é só enviar o código para o OpenShift:
$ git add . --all
$ git commit -m "Adicionando o Django Admin Site"
$ git push
Com isso, eu habilitei o Django Admin Site e criei um primeiro cadastro de Pessoas (conforme código em models.py). Após isso, acesse o Django Admin Site e você verá que apareceu uma seção openshift e um link para o cadastro de Pessoas:

Django Admin Site com o cadastro de Pessoas
Agora é só fazer o cadastro de pessoas como preferir. =D

E se eu quiser expor minha aplicação com REST?

Como eu estou criando uma aplicação com diversas formas de acesso (Web, Mobile e Desktop), eu precisava expor meus modelos de forma que pudesse ser acessados para manipular meus cadastros. Procurei pela Internet (Google, pra ser mais específico) e encontrei um Framework muito bacana chamado Django REST Framework, que já faz o trabalho de capturar todos os modelos criados para o Django Admin Site e expor operações de CRUD via REST. Para adicionar em sua aplicação Django no OpenShift, basta executar os comandos abaixo:
$ rhc ssh djangoapp
> pip install djangorestframework
 Depois disso, iremos adicionar mais alguns códigos para expor nossa classe Pessoa para operações de CRUD. Abra o arquivo wsgi/openshift/settings.py e adicione o conteúdo em negrito:
INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Uncomment the next line to enable the admin:
    'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
    # 'django.contrib.admindocs',
    'openshift',
    'rest_framework',
Depois, abra ou crie o arquivo wsgi/openshift/serializers.py e adicione o seguinte conteúdo:

from openshift import models
from rest_framework import serializers
class PessoaSerializer(serializers.HyperlinkedModelSerializer):
        class Meta:
            model = models.Pessoa
            fields = ('nome', 'idade')
Esse código simplesmente define que a classe Pessoa será exposta via REST e quais são os campos que podem ser visualizados via REST. Abra o arquivo wsgi/openshift/views.py e adicione o seguinte conteúdo em negrito:

import os
from django.shortcuts import render_to_response
from openshift import modelsfrom rest_framework import viewsetsfrom openshift import serializers
def home(request):
    return render_to_response('home/home.html')
class PessoaViewSet(viewsets.ModelViewSet):        queryset = models.Pessoa.objects.all()        serializer_class = serializers.PessoaSerializer
Por fim, abra o arquivo wsgi/openshift/urls.py e adicione o conteúdo em negrito:
from django.conf.urls.defaults import patterns, include, url
from rest_framework import routersfrom openshift import views
router = routers.DefaultRouter()router.register(r'pessoa', views.PessoaViewSet)
# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
    # Examples:
    url(r'^rest/', include(router.urls)),    url(r'^$', 'openshift.views.home', name='home'),
    # url(r'^openshift/', include('openshift.foo.urls')),
    # Uncomment the admin/doc line below to enable admin documentation:
    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
    # Uncomment the next line to enable the admin:
    url(r'^admin/', include(admin.site.urls)),
)
E depois é só enviar o código para o OpenShift:
$ git add . --all
$ git commit -m "Adicionando REST ao djangoapp"
$ git push
Pronto! Agora é só acessar a página http://djangoapp-rmartinelli.rhcloud.com/rest/pessoa/ e o Django REST Framework listará todas as pessoas cadastradas. Caso queira fazer um teste, experimente criar um código simples que acesse essa URL REST e veja se você recebe os dados. O formato da resposta é o JSON, então é possível facilmente fazer um parse e listar em uma página HTML.
Por ora, essa parte  é apenas para esquentar para que nos próximos posts eu possa falar de como criar aplicações Web, Mobile e Desktop para consumir essa API REST e assim poder demonstrar outras tecnologias/linguagens/plataformas que o OpenShift pode utilizar.