Como criar um projeto Django (Resumo)

Fonte: https://docs.djangoproject.com/en/1.4/intro/tutorial01/

django-admin.py startproject nome_do_projeto
(isto criará uma pasta com os arquivos iniciais do projeto)

Entre nesta pasta e teste se a criação funcionou com o comando:
python manage.py runserver
(depois acesse http://127.0.0.1:8000/)

Instalando MySQL e PHPMyAdmin
http://www.vivaolinux.com.br/dica/Servidor-Apache2-+-MySQL-+-PHP5-+-PHPMyAdmin-%28Ubuntu%29

Através do PHPMyAdmin, você pode criar a base de dados para seu novo projeto.

Configure sua nova base de dados em nome_do_projeto/settings.py
'ENGINE': 'django.db.backends.mysql'
'NAME': 'nome_da_base'
'USER': 'usuario_do_bd'
'PASSWORD': 'senha_do_bd'

Em nome_do_projeto/settings.py você também pode querer configurar o TIME_ZONE (exemplo: America/Recife) e os INSTALLED_APPS.

Após escolher os INSTALLED_APPS, você precisa construir o banco de dados de cada app. Isto é feito com:
python manage.py syncdb

Agora que está tudo pronto, você finalmente pode começar a desenvolver a primeira aplicação do seu projeto. Isto é feito com o comando:
python manage.py startapp nome_do_app

Agora você vai em nome_do_app/models.py e começa a modelar seu banco de dados.
Os tipo de campo você encontra aqui: https://docs.djangoproject.com/en/1.4/ref/models/fields/

Após a criação dos seus models, acrescente seu app na lista INSTALLED_APPS do arquivo nome_do_projeto/settings.py.
Basta acrescentar uma linha
'nome_do_app',
no fim da lista de apps.

Agora execute
python manage.py sql nome_do_app
e verifique quais comandos SQL seriam feitos para criar estes models no seu banco.

Outros comandos:
python manage.py syncdb
cria o seus models no banco.

  • Use a shell do Django para aprender a usar sua API e visualizar os dados da sua aplicação.
  • Lembre-se dos métodos __unicode__ em seus modelos (explicação no fim da seção do link acima).

O que aprendi com o I2P (Idea to Product)

Voltei de São Paulo no último domingo e decidi postar um pouco sobre a minha experiência por lá, após a minha participação no Idea to Product Latin America, realizado no Centro de Empreendedorismo e Novos Negócios da Fundação Getúlio Vargas (FGVCenn).

Entrada do salão nobre do FGVCenn, no primeiro dia da competição

Além das duas apresentações do Pluviara, assisti a outras 15 apresentações de projetos dos mais variados tipos, incluindo os respectivos modelos de negócio, que foram rigorosamente avaliados por especialistas da área, como Edson Rigonatti e Carlos Praes (O Boticário).

Apresentação do Pluviara na semifinal, na sala 703 do FGVCenn - Segundo dia do I2P

Com o passar das apresentações, o mais interessante já não era mais ouvir qual inovação tecnológica desenvolvida por cada equipe, mas sim em (i) como isto se transformaria num produto, (ii) o tamanho do mercado, (iii) se havia alguma demonstração de que realmente há uma demanda do mercado escolhido e depois ouvir as críticas dos especialistas após a apresentação. No segundo dia do evento, eu já estava fazendo mentalmente minha própria crítica das apresentações, para depois ver se tinha algo em comum com aquela feita pelo avaliador. Sinto que o evento não só despertou meu senso crítico em estratégias de empreendedorismo, como também me deu uma ideia do que é necessário em uma apresentação feita a investidores. O Professor Cristiano Araújo foi nosso mentor durante o evento e nos deu muitas orientações neste sentido.

Prof. Cristiano e eu, durante as apresentações do primeiro dia do evento. Na bancada atrás de nós, dois membros da FEBETECH: equipe que se sagraria campeã deste I2P, dois dias depois.
O evento é bastante diferente do que acontece no Centro de Informática (UFPE), nas apresentações do "Projetão" - disciplina oferecida pelo Professor Cristiano Araújo, de onde surge a maioria dos projetos do CIn que se inscrevem neste tipo de competição.

A questão central debatida no I2P é se você escolheu corretamente o mercado a ser atacado, se seu produto resolve o problema do cliente, se o mercado é grande o suficiente para sustentar sua empresa. No CIn, a feira de projetos serve como uma demonstração de alguma tecnologia ou serviço inovador implementado pelos estudantes. É uma demonstração da competência técnica dos estudantes do Centro. A questão mercadológica fica em segundo plano, servindo como uma introdução das preocupações de um empreendedor. O esforço maior da equipe é na utilização dos conhecimentos adquiridos durante o curso de computação para implementar o que foi proposto.

No mundo ideal, antes de implementar, os alunos deveriam pesquisar se o mercado existe mesmo e ir moldando o projeto de acordo com o feedback recebido do(s) cliente(s) ou dos testes feitos às hipóteses. No entanto creio que não haja tempo suficiente para tudo isto em um único semestre. Os alunos têm a ideia do produto primeiro, pesquisam se há algo similar no mundo, verificam se há viabilidade tecnológica e temporal (um protótipo deve estar pronto no fim do semestre), e só depois vão pensando em um possível modelo de negócios, sem validar nenhuma hipótese apresentada. Pelo menos isto foi o que aconteceu no semestre em que cursei a disciplina, que segundo o Professor, está em constante transformação.

Gostaria de aproveitar o post e agradecer a direção do Centro de Informática da Universidade Federal de Pernambuco, em especial aos Professores André Santos, Paulo Cunha e à Ivanilda da Silva, pelo financiamento do nosso transporte ao evento. Muito obrigado!