Exemplo em Django – parte 2

django-2_abertura

Continuando com o desenvolvimento da “Agenda de Eventos”. Na primeira parte foi criado, através do virtualenv, um ambiente de desenvolvimento e instalado o Django nele. E a partir das ferramentas do framework foi criada a estrutura de um novo projeto (“Agenda”) e nele uma nova aplicação (“events”).

Nesta parte, além de mais um pouco de teoria, a definição do modelo de dados da aplicação (ou apenas modelo) e configuração da interface de administração do Django.

Continuar lendo

Anúncios

Exemplo em Django – parte 1

django-1_abertura

Desde a publicação da primeira parte do (recém corrigido) exemplo em Rails que eu estava com vontade de fazer também um exemplo com usando o Django. E foi assim que surgiu a “Agenda de Eventos”, um exemplo simples mas funcional de, claro, uma agendinha para se registrar eventos diários!

Nesta primeira parte um pouco de teoria e, claro, a configuração do ambiente e os passos necessários para a instalação do framework.

Continuar lendo

Instalação do WordPress com Vagrant

wordpress-1_abertura

Esta é uma configuração do Vagrant que preparei para automatizar a instalação do WordPress em uma máquina virtual rodando a versão 17.10 do Ubuntu, com as versões 2.4 do Apache HTTP Server, 7.1 do PHP, 10.1 do MariaDB, a última versão estável¹ do WordPress e outras dependências.

Na verdade não há mistério na instalação de todo este ecossistema, o problema está nos “pequenos detalhes” que podem te fazer perder algum tempo caso sejam esquecidos — e o serão quando se tem alguma pressa! 🙂

(¹) Por enquanto a versão é a 4.9.

Continuar lendo

Corrigindo o exemplo de Rails

am_correcao-1_abertura

A partir dos arquivos de manifesto no repositório, o GitHub consegue relacionar as dependências do projeto e, no caso dos módulos do RubyGems ou npm, verificar na  lista vulnerabilidades conhecidas do MITRE se as versões em uso apresentam alguma vulnerabilidade.

E como eu sei disto? Foi justamente foi o que ocorreu com a Agenda Mequetrefe, com uma notificação do GitHub sobre a existência de possíveis vulnerabilidades em componentes utilizados pela aplicação.

Continuar lendo

Internacionalizando programas em Python

locale-1_abertura

Quando escrevi a versão em Python d’O desafio dos monstros, acabei optando por utilizar as mensagens originais do jogo em inglês. Também citei ser possível traduzi-lo facilmente para o português, ou seja, procurá-las dentro do arquivo “monster_wrestling.py” e substituir cada uma delas.

Porém existe uma forma bem mais elegante e utilizando o suporte a internacionalização disponível no Python para tornar o programa facilmente adaptável para qualquer idioma e sem a necessidade de modificações extras no código.

Continuar lendo