Author Archives: admin

Yii Framework

logo yii

Update (11/09/2012): Não tenho trabalhado mais com o Yii desde que mudei de emprego. Mas continuo acreditando que o Yii é um dos melhores full stack frameworks disponíveis.

Desde Março/2011 venho trabalhando com o Yii Framework nos projetos que tenho desenvolvido no trabalho e nos meus “freelas”.

O Yii é um framework MVC leve, “seguro” e bem programado a meu ver. Seu criador é o famigerado Qiang Xue, que foi um dos principais desenvolvedores do PRADO framework. Projeto este que serviu de base para o Yii depois do Qiang ter deixado o desenvolvimento do PRADO.

Elenco aqui alguns argumentos do porquê acho o Yii um framework completo:

  • Layouts hierárquicos
  • Relacionamentos entre models (HAS_ONE, HAS_MANY, MANY_MANY)
  • Lazy loading de relacionamentos, componentes, propriedades, praticamente tudo.
  • Possui um ótimo ORM
  • Migração de banco de dados
  • Validadores de formulários e models
  • Testes (Unitários, Funcionasis) com fixtures
  • Gerador de código (yiic shell – em desuso – e gii)
  • Suporte nativo a cache (de arquivo, memcached, apc)
  • Widgets extremamente úteis (CGridView, CMaskedTextField) utilizando o jQuery como biblioteca JavaScript
  • Totalmente modularizado
  • Extremamente Flexível

Em resumo, um framework completo para todos os tamanhos de projeto.

Essa é a minha opinião sobre o framework. E você, o que acha do Yii? Tem algum framework PHP de sua preferência que atenda a todas as suas necessidades?

Meu ambiente de trabalho em 7 itens

Ambiente de trabalho

Um ambiente de trabalho desses é um sonho

O @andrewsmedina me convocou a enumerar 7 itens do meu ambiente de trabalho. Atualmente trabalho com PZP e sites/sistemas com o framework Django. Apesar dos meus conhecimentos anteriores de linguagem de programação, tenho usado apenas o Python e o JavaScript das linguagens de programação conhecidas. Compartilho com vocês os 7 que eu creio que são os principais no meu ambiente de trabalho. Continue reading

cc1: error: unrecognized command line option “-Wno-long-double”

Estou começando no universo do Plone. Estava eu feliz e contente ao ter criado meu ambiente virtual, agora estava na etapa de instalar o ZopeSkel para desenvolvimento de Produtos para o nosso querido amigo Plone. Executei o seguinte código no shell:

easy_install ZopeSkel

Se a vida fosse assim fácil, eu estranharia. Me deparei com o seguinte erro:

cc1: error: unrecognized command line option "-Wno-long-double"
lipo: can't figure out the architecture type of: /var/folders/Ih/Ih8i2vVNH0q4i9eZGA5tzE+++TI/-Tmp-//ccsOvHcb.out
error: Setup script exited with error: command 'gcc' failed with exit status 1

Continue reading

Comprar hoje, pagar amanhã e ainda ter um rendimento

[update] Confesso que desde março/2010 não pratico mais esse método. Tive problemas com a migração da minha conta e desde então, estou fora do plano – mas isso não prova que não funcione! =p [/update]

Esse artigo está originalmente publicado aqui (original, de minha autoria também)

Já digo que o artigo não é integralmente igual ao postado no moneytrackin, pois como tudo na vida, a gente sempre pode melhorar um pouco as coisas. =)
Continue reading

[Screencast] Organização de diretórios no SVN

Ah, o SVN. Desde que o conheci, não trabalho mais sem ele! Porém, onde trabalho nem todos – quase ninguém – usam o SVN de forma correta. Todos alteram o trunk, ninguém faz branches nem tags, o que torna a organização e a maturidade o código desenvolvido eternamente em beta.

Quem sabe se, vendo esse screencast da KingHost – que disponibiliza o SVN em seus planos de hospedagem – as pessoas não aprendam a utilizar efetivamente esse recurso fantástico que é o controle de versão.

Só ignorem a parte da criação do repositório que é exclusivo do serviço de hospedagem.

#ficadica

Curso gratuito de C [UFMG]

Para quem não tem recurso pra pagar um curso ou mesmo quem mora em um lugar que não tenham boas escolas de tecnologia e quer aprender C (que, a meu ver, é das mais fantásticas linguagens de programação e que deveria ser ensinada em todos os cursos relacionados a desenvolvimento de software), A Universidade Federal de Minas Gerais disponibiliza, desde 1997, o seu curso de linguagem C. O curso te incentiva a utilizar alguma distro Linux (os exemplos de código, como compilar, entre outros estão em shell *nix), mas não é obrigatório. Ele é gratuito, e não te obriga a fazer cadastro. O que te poupa de ficar disponibilizando seus dados “pra geral”.

Curso

Definir um ambiente virtual (virtualenv) no Linux

Olha que organizado!!

Olha que organizado!!

Este post é inspirado no post do blog do Vinod Pandey. É quase uma tradução do que este escreveu. Para aqueles que tem uma bruta preguiça de ler posts em inglês, aí está a ajuda. Um passo muito importante para quem está começando a desenvolver em Python — como eu — é criar ambientes virtuais para que as bibliotecas instaladas não interfiram nas bibliotecas do sistema.

Como faz?

Primeiro, faça o download do virtualenv no repositório Pypi e descompacte o arquivo

cd $HOME
mkdir downloads
cd downloads
wget http://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.3.3.tar.gz
tar xzf virtualenv-1.3.3.tar.gz

Crie o ambiente virtual

cd $HOME
mkdir webapps
cd webapps
python2.4 ~/downloads/virtualenv-1.3.3/virtualenv.py --no-site-packages pythonapp

Diferente do post do Pythonologia — recomendo dar uma olhada lá, ele explica muito bem o processo de criação de arquivos do seu ambiente –, nós definimos logo no começo qual versão de python que o ambiente virtual usará — algo que achei mais fácil que criar um link simbólico.

Só isso?

Pois é, meu caro. Qualquer zé roela faria melhor. 🙂