CodeCast #5 – Frameworks

CodeCast #5 - Frameworks

Depois de uma longa espera, cá estamos nós novamente com mais uma edição do CodeCast! Dessa vez o assunto é Frameworks. Com a presença do Jader Rubini, falamos de tudo um pouco sobre PHP, Ruby, Python e JavaScript, e seus respectivos CakePHP, Rails, Django, jQuery e Mootools. Um bate papo bem interessante pra quem ainda não adotou alguma dessas ferramentas ou semelhantes.

Pesando 39MB, ultrapassando a marca dos 55 minutos, esperamos que gostem, enviem feedback, sigam nossas dicas, enfim. Também gostaria de agradecer muito ao Jader por aceitar nosso convite, que além de tudo rendeu um bate papo muito legal, do chimarrão ao pão de queijo, de Mootools a Django.

Até mais!

15 de junho, 2008

Frameworks: Por um PHP Menos Ruim

Frameworks - Por Um PHP Menos Ruim

O PHP não é a linguagem mais “cool” para se desenvolver para web no momento. Outras linguagens estão tomando o posto por serem mais compatíveis com o ambiente web que temos hoje. Um dos fatores que mais influencia nessa “tomada de território” é a agilidade no desenvolvimento que, aliado aos frameworks dessas linguagens, tornam o PHP quase obsoleto. Há como manter o PHP a pelo menos um nível competitivo com essas linguagens?

Apesar de todos os seus defeitos, o PHP ainda é a linguagem mais usada no mercado, embora venha perdendo espaço para novas tecnologias, como Ruby e Python. Aliadas a poderosos frameworks, essas “novas” linguagens (Ruby e Python são muito mais antigas que você imagina) tornam o desenvolvimento muito mais rápido. Só com o PHP, raça e vontade nunca será possível alcançar tais níveis de produtividade. A solução é seguir a mesma idéia: adotar um framework.

Não culpo o PHP por ser uma linguagem bem mais lenta em termos de desenvolvimento, a culpa é dos próprios desenvolvedores. Eles geralmente escolhem o lado mais difícil da coisa, recriando toda a estrutura para cada novo sistema. Poucos se preocupam em pesquisar por novas soluções que resolvam seus problemas de maneira mais rápida e automatizada. Ruby e Python, apesar de serem linguagens mais ágeis em minha opinião, só se tornaram “modinha” após o aparecimento dos frameworks. Por que os programadores PHP não escolhem o mesmo caminho?

Apesar de estar migrando, agora passo a acreditar que o que realmente importe talvez não seja somente a linguagem, mas sim as ferramentas que nos auxiliam com elas (leia-se frameworks), além dos próprios programadores. Pra que sofrer? Provavelmente alguém com mais tempo e conhecimento já tenha criado uma solução para determinado problema, bem melhor do que você mesmo poderia fazer, sem tempo e às vezes sem tamanho conhecimento.

Confesso que nunca havia usado um framework para PHP, embora já tenha sentido necessidade. Sempre praguejava a cada sistema iniciado, mas mesmo assim desenvolvia minhas próprias soluções para tornar o desenvolvimento menos doloroso. Isso durou até um mês atrás, quando me vi diante de um sistema bem complexo a ser desenvolvido na agência onde trabalho. Sem um framework, levaríamos meses para acabar. A única solução foi a adoção de um framework para PHP. Agora, o desenvolvimento do sistema flui rapidamente, e de maneira bem menos dolorosa, chata e sem graça.

A solução escolhida por nós foi o CakePHP, talvez o framework mais conhecido para PHP. Sem dúvida alguma, é uma ferramenta de grande poder na hora de desenvolver, principalmente na versão 1.2 (ainda beta, com documentação escassa até o momento, e que talvez dê algumas dores de cabeça até que esteja completa). Para mim, o tempo de desenvolver em PHP puro se encerrou para sempre.

Talvez você não goste tanto do Cake quanto eu, e prefira outras opções. Opções não faltam, há o Code Igniter, o Zend, o Symfony, entre dezenas de outros. Não importa qual seja o framework, desde que ele traga um ambiente mais rápido e agradável para desenvolvimento. Pra falar bem a verdade, uma das maiores razões para eu ter escolhido um framework em lugar de criar minha própria biblioteca de funções foi a implementação de orientação a objetos nesses frameworks, que pra mim dão muito mais sentido à programação.

Para programadores de outras linguagens, o mesmo princípio se aplica: não importa qual solução se use, desde que ela traga benefícios. Me direcionei para PHP pois é onde mais trabalho no momento e, por ironia, a linguagem que menos gosto. Os frameworks foram algo que me fizeram tomar um pouco mais de gosto pela linguagem. E se você não utiliza nada para ajudar no desenvolvimento, está na hora de rever seus conceitos…

14 de junho, 2008

Lançada a Mootools 1.2

E foi lançada a nova versão da Mootools! E juntamente com isso, várias novidades: um novo visual do site, nova documentação, muitas funcionalidades interessantes. Nem mesmo o blog oficial não anunciou a nova versão (inclusive está “fora do ar”, como diz a página inicial, assim como os demos), mas tudo bem.

Mootools 1.2

Dentre as novidades, podemos citar o Swiff (plugin para integração com Flash), Element Storage, entre várias outras, como foi anunciado na versão beta (que eu não testei, diga-se de passagem).

Pelo visto, mais coisas interessantes para descobrir nessa biblioteca que eu acho simplesmente incrível, e agora facilitando nossas vidas como nunca! Vai lá, faça o download, teste, e garanto que você vai gostar!

12 de junho, 2008

Backup: Um Salvador de Vidas

Quanto tempo você leva desenvolvendo algum projeto, trabalhando em um freelance, mantendo um blog? Não muito pouco, creio eu. E quanto tempo você pode levar para perder tudo isso? Uma “catástrofe” pode acontecer a qualquer momento, levando todo seu trabalho embora. Não teria sido muito mais fácil manter um backup?

Ninguém está livre de um desastre. A qualquer momento seu HD pode queimar, seus arquivos podem ser infectados por algum vírus, algum raio pode cair em cima de seu computador, ou até mesmo o seu servidor de hospedagem pode explodir (pergunta, vai!). Esse é o tipo de coisa que ninguém espera, e não há como dizer “hoje vou perder todos meus arquivos, é bom fazer uma cópia”. O destino é cruel e impiedoso, principalmente com os descuidados.

A maneira mais eficaz, e também mais sensata, é sempre manter um backup de seus dados importantes. É bom sempre fazer isso com uma certa regularidade. Backups diários podem ser custosos e até impraticáveis em certos casos, então realizá-lo uma vez por semana já parece suficiente. Por pior que seja a catástrofe, você sempre terá para onde correr.

Mantendo cópias regulares, com certeza em pouco tempo você terá uma quantidade enorme de dados armazenados. Aí o jeito é organizar! Manter uma lista dos arquivos copiados, data de gravação, enfim. Não adianta TER os dados e não saber onde encontrá-los. Pode acreditar, essa sensação é ainda pior.

Por que esse texto estilo sermão? Eu explico. Semana retrasada, uma explosão no data center H1 do The Planet derrubou uma montanha de servidores (e três paredes, segundo me consta), e eu estava em um deles. Antes que eu ficasse sabendo de mais informações, se abateu o pânico: eu não tinha um backup. Por sorte não houve perda de dados, mas já foi o suficiente para abrir o olho, e ser um pouco mais cauteloso. Nem mesmo armazenados remotamente nossos dados estão seguros.

Um pequeno esforço que pode salvar muito retrabalho, e até sua vida, dependendo de quão dependente ela seja de seu trabalho. E você, mantém um backup? Nem que seja mensal, apenas de trabalhos correntes, ou o que quer que seja importante para você guardar?

11 de junho, 2008

Servidor Fora do Ar

Desde sábado à noite, até a metade da tarde de hoje, meu servidor apresentou problemas e provavelmente ninguém tenha conseguido acesso. Peço desculpas pelo inconveniente, data centers, mesmo o The Planet, explodem, e não temos controle sobre isso.

Também peço desculpas pelo que eu deveria ter postado nesse tempo fora. Como é conteúdo temporal, vai ficar de fora dessa vez. Obrigado pela compreensão. Até mais!

Update: o servidor caiu novamente, ficando o blog mais um dia fora do ar. Malditos data centers que pegam fogo!

02 de junho, 2008