Sobre o Spaghetti*

Errando nossa equipe aprendeu muito sobre desenvolvimento Web. Nosso ambiente hoje é divertido e produtivo, e entregamos serviços com qualidade. Depois de tanto tempo de acertos e erros, nos demos conta de que a nossa solução também poderia funcionar com outras equipes, inclusive a sua.

Por muitos anos o desenvolvimento Web sofreu uma fase de imaturidade. Apesar do desenvolvimento tradicional - de software desktop - já ser bastante maduro, com avançadas metodologias e design patterns, até há pouco fazíamos Web da maneira mais trabalhosa. O fluxo de trabalho sempre nos impôs prazos curtos, além da tradicional regra básica do desenvolvimento Web: a de que o cliente vai mudar de idéia.

Porém, durante todo esse tempo não éramos capazes de suportar o fluxo de trabalho e, ao mesmo tempo, manter qualidade de código. O resultado, na maioria das vezes, era uma verdadeira sopa de tags misturando HTML e scripts de servidor. O grande problema dessa maneira de desenvolver é que tínhamos que evitar o inevitável: que o cliente mudasse de idéia.

Mudanças, naquela época, traziam medo. Medo de que o que já funcionava quebrasse com as mudanças, medo de que um desenvolvedor sobrescrevesse o trabalho do outro e medo de ter que desfazer algo e não ter mais uma versão antiga do código. Medo de ter que dar manutenção em algo antigo, ou medo de dar manutenção no código do colega.

Felizmente o tempo trouxe maturidade para o desenvolvimento Web e, com ele, várias das metodologias antes aplicadas apenas ao software tradicional começaram a ser aplicadas na Web.

O Spaghetti* é um framework que estimula a adoção dessas boas práticas, como controle de versão para o seu código, a criação de soluções simples para problemas complexos, a divisão da aplicação em camadas e a simplicidade na escrita do código.

O desenvolvimento em camadas, também presente no Spaghetti*, é importante para fazer com que as equipes trabalhem melhor. Enquanto o designer implementa sua interface, o programador faz as coisas funcionarem. Um trabalha sem atrapalhar o trabalho do outro. O resultado é um workflow otimizado, apto a receber mudanças sem que isso afete tudo o que já foi feito.

Além disso, desenvolver Web do jeito certo é divertido, pois trabalhamos com a consciência tranqüila, sem nos preocupar com alterações, correções e erros. Erros sempre acontecem, afinal somos seres humanos. Porém, o que mudou é que hoje já estamos prontos para lidar com esses erros sem grandes custos.

O Spaghetti é o framework que tem ajudado a nossa equipe a ser mais produtiva e a alcançar uma qualidade muito maior, e que tem feito o nosso dia-a-dia mais prático e divertido. Por isso resolvemos compartilhar essa ferramenta com a comunidade: sabemos que se nós sentíamos essas necessidades, outros desenvolvedores também podem senti-las hoje.