[ Content | View menu ]

E se você fizer sem paixão?

27 de agosto de 2008

A Paixão

Hoje o Vinícius da Improve It colocou um artigo explicando porquê ele deixou a consultoria de mão e começou a trabalhar produzindo seus próprios produtos.

E tudo se resume a uma só palavra, pequena, mas que faz todo o diferencial entre uma pessoa para outra:

PAIXÃO

Você pode desenvolver, você pode namorar, você pode ser pai, mas se não existir isso na sua vida, realmente nada faz sentido!

Mas e se você fizer sem paixão? Provavelmente as coisas não serão fáceis para você, e você terá muitos desafios e quase todos eles não trará satisfação e você será sempre uma pessoa frustrada. Se você já sabe sua paixão invista nela, faça acontecer se ainda não encontrou procure, quando menos você esperar estará fazendo as coisas por simples e pura paixão!

Até a próxima!

Carreira, Off-topic - 0 Comentários

Por que os desenvolvedores PHP são preguiçosos?

26 de agosto de 2008

A comparação que eu faço é com Ruby, não sei das outras linguagens, mas por que os desenvolvedores PHP são tão preguiçosos?

Eu estou de saco cheio das listas PHP do Google Groups porque 98% das mensagens são sobre duvidas idiotas que em menos de cinco minutos da para se resolver em uma simples busca no Google.

Pior do que isso são as pessoas que só procuram um “scriptizinho”. Ninguém PENSA em como solucionar os problemas, mas pensam em usar um scriptzinho para tal.

#prontofalei

PHP - 2 Comentários

Lançado a versão final do PHPUnit 3.3?

23 de agosto de 2008

Aparentemente sim. Quem acompanha o Sebastian Bergmann pelo Twitter já sabe da notícia, para quem ainda não sabe:

Sebastian Bergmann no Twitter
Agora é aguardar para saber quando vai estar disponível!

Até a próxima!

PHP, PHPUnit - 0 Comentários

Materiais sobre Metodologias Ágeis

21 de agosto de 2008

Algumas pessoas entraram em contato comigo procurando materiais sobre metodologias Ágeis.

O material mais atualizado em português é o da Improve It. Você vai encontrar tudo relacionado ao XP e alguma coisa sobre Scrum. Outro lugar sobre XP é o Extreme Programming e aqui você vai encontrar cerca de 8 milhões de páginas sobre Extreme Programming ;)

Sobre Scrum e tudo mais relacionado a Metodologias Ágeis, sugiro a leitura dos seguintes blogs:

Eu tenho uma tag no Google Reader chamada Desenvolvimento, nessa tag eu armazeno todos os blogs que eu considerado interessantes :D

Até a próxima!

Metodologias de desenvolvimento, Scrum, XP - 1 Comentários

Git Cheat Sheets

Está muito aperreado com o Git? Aqui tem um Git Cheat Sheets, muito bom por sinal!

Desculpa por artigos curtos e rápidos, mas estou trabalhando a mil e fico sem tempo para procurar coisas interessantes para blogar :D

Eu aceito dicas sobre novos artigos por email ou pelo formulário de contato ;)

Até a próxima!

Gerenciadores de Versão, Git - 0 Comentários

Screencasts sobre CodeIgniter

19 de agosto de 2008

Nubes prueba Screencast para AFALI

Olá para quem quer iniciar neste framework, ou aprender mais alguns truques, vocês podem dar uma olhada nesses screencasts!

Até a próxima!

CodeIgniter, PHP - 0 Comentários

Aprendendo Rails!

18 de agosto de 2008

Nonconformist 12 - Why the Lucky Stiff by Christian Metts

Sabe por que eu gosto da comunidade de Ruby e do Rails? Por que as pessoas se unem para ajudar umas as outras, e sempre sai coisas boas da comunidade!

E uma dessas iniciativas saiu, o Aprendendo Rails! É a união dos iniciantes de Ruby e Rails para aprender, divulgar e trocar ideias e materiais sobre Ruby e principalmente sobre Rails. O material que vai ser gerado vai ser bom. Vai sair um E-commerce, e muito material para as pessoas aprenderem a caminhar nessa linguagem e nesse framework.

Eu estou lá, agora é você quem deve fazer parte! Vamos lá, vamos nos unir, e mudar o mundo com Ruby e com Rails!

Até a próxima!

Rails, Ruby - 1 Comentários

PHP é uma linguagem de programação Ágil?

14 de agosto de 2008

Hoje eu li um artigo bastante interessante, PHP é uma linguagem de programação Ágil?

Bom, adiantando, não existe linguagens Ágeis, existem linguagens que te dão um suporte maior para por em prática sua Agilidade. Ruby, Smalltalk, Java são as linguagens que eu considero que dão maiores suportes para Agilidade, PHP, bom, PHP ainda tem que evoluir bastante, principalmente na quantidade de ferramentas que ajudam nesse sentido.

Bom, boa leitura para vocês.

Até a próxima!

PHP - 1 Comentários

Diferença entre git merge e git rebase

13 de agosto de 2008

Olá, há alguns dias tive muitos problemas de conflitos ao usar o git, quando ia unir dois branchs. Sempre tinha um ou outro arquivo com conflito.

Então postei a minha dúvida na lista git-br e na do rails-br, então no rails-br me indicaram a usar o rebase ao invés do merge, com o rebase, diminuiu e muito a quantidade de conflitos.

Agora, qual a diferença entre o git merge e o git rebase? Eis a resposta ;)

Ao se fazer um git rebase se faz a união de dois branchs mas mantendo o histórico de commits:

Git Rebase

Enquanto que o merge apenas une os dois branchs e desconsidera o histórico:

Git Merge

Fazendo assim, o rebase mantem um histórico maior, assim gerando menos conflitos.

Por um lado, isso aumenta o número de commits e patchs por outro lado diminui bastante o índice de conflitos já que ele segue uma cronologia entre os branchs.

Eu prefiro manter o histórico de revisões é bem mais fácil de gerenciar.

Até a próxima!

Gerenciadores de Versão, Git - 0 Comentários

Criando testes com PHPUnit

12 de agosto de 2008

Desenvolver orientado a testes não é simples, principalmente por que TDD é uma técnica e nem todos estão aptos a aprender. É preciso disciplina para programar assim, e inicialmente não se tem muitos benefícios e a velocidade para quem está começando é baixa.

Mas os benefícios a longo prazo são incontáveis como códigos mais simples, códigos cobertos por testes, e integração contínua. Além disso fica mais fácil novos desenvolvedores saberem do que se trata toda a aplicação apenas lendo os testes e vendo por que eles foram escritos. Desenvolvimento orientado a testes trazem muitos benefícios e é uma boa prática de desenvolvimento.

Eu já postei aqui como se instala o PHPUnit no Windows e no Linux usando o PEAR. Agora vou demonstrar como por onde você pode começar a desenvolver orientado a testes de uma maneira simples, sem muitos rodeios. Já postei como integrar o PHPUnit e o PHPSpec ao CodeIgniter e muita gente me perguntou “Mas como testar?”, espero responder algumas perguntas neste artigo.

No artigo, eu indiquei para incluir arquivos como Base5.php, Commons.php entre outros, mas eu não fiz isso sem base, primeiro escrevi uma base de testes:

require_once 'config.php';
require_once 'PHPUnit/Framework.php';

class IncludeFilesTest extends PHPUnit_Framework_TestCase {
	public $tasks;

	public function testIncludeBaseClass() {
		ini_set('include_path', ini_get('include_path') .':/home/cairo/workspace/chkList/system/codeigniter/');
		$this->assertEquals(1, include_once('Base5.php'));
	}

	public function testIncludeControllerClass() {
		ini_set('include_path', ini_get('include_path') .':/home/cairo/workspace/chkList/system/libraries/');
		$this->assertEquals(1, require_once('Controller.php'));
	}

	public function testIncludeTasksClass() {
		ini_set('include_path', ini_get('include_path') .':/home/cairo/workspace/chkList/system/app/controllers/');
		$this->assertEquals(1, require_once('tasks.php'));
	}

	public function testIncludeCommonFunctions() {
		$this->assertEquals(1, require_once('Common.php'));
	}

	public function testPossibleCreateTasksControllerObject() {
		$this->tasks = new Tasks;
		$this->assertType('Tasks', $this->tasks);
	}
}

Após todos esses testes estarem funcionando corretamente, é que escrevi o arquivo ‘config.php’ :).

A lógica é essa, escreva testes, faça-os falhar, refatore seu código, refaça os testes e refatore seus códigos até os testes passarem. Não inicie codificando, inicie pelos testes, teste sempre, teste tudo!

Eu demorei muito tempo para colocar esse artigo no ar, principalmente pela falta de tempo que tive ;), vamos testar todo os nossos códigos.

Até a próxima!

Metodologias de desenvolvimento, PHP, PHPUnit, TDD - 0 Comentários