Marcio Trindade

Artigos

Finalmente Gitorious

Finalmente conseguimos migrar os nossos projetos (apenas os novos) para dentro do Gitorious A novela foi longa mas teve um final feliz, muito feliz diga-se de passagem.

Bom o título acima já diz tudo!

A algum tempo atrás nós estávamos trabalhando com SVN e achamos isso muito bom. Felizmente começamos a utilizar o GIT, tudo bem que ainda estávamos criando os repositórios na mão com o famoso git --bare init (ainda bem que não vamos mais precisar fazer isso). Quando tomei conhecimento do Gitorious procurei seguir o tutorial do Akita para colocar em produção em nosso servidor. Infelizmente isso não foi tão fácil e o pior não deu muito certo por que a porta do servidor não era a padrão. Depois de muita batalha acabamos deixando isso de lado por um tempo. Ontem dia 02 de Dezembro procurei reaver este projeto junto com o Dookie. conseguimos a liberação da porta e configurar quase tudo, faltava apenas uma coisa, conseguir liberar as ssh keys que estavam sendo gravadas, mas não autorizavam.

Acabei dormindo com dor de cabeça de tanta confusão com essa história, mas hoje pela manhã consegui junto com o Cesar debugar praticamente quase tudo o que o Gitorious faz quando você tenta fazer um push e encontramos o problema que nós mesmo havíamos criado (era apenas configuração).

Bom o que tenho a deixar aqui pra vocês é que o projeto pode até ser um pouco complexo na hora de configurar e deixar tudo funcionando, mas vale e muito a pena! Hoje vou dormir mais tranqüilo e muito mais feliz!

Abraços e todos e utilizem sempre GIT com Gitorious



Cake Upload

Hoje resolvi falar um pouco sobre o meu primeiro componente decente que fiz para quem utiliza CakePHP o nome dele é Cake Upload e como o próprio nome diz serve para facilitar o upload de arquivos para quem utiliza o CakePHP como framework.

Eu sei que o CakePHP tem a sua padaria própria mas como estou empolgado com o GIT resolvi colocar o código no github até mesmo por que na minha humilde opnião é onde os códigos deveriam ficar (demorou para o core do CakePHP migrar pra lá também).

Eu não vou explicar muito como ele funciona até mesmo por que o README que criei serve pra isso. Tudo bem que ele está em inglês e o meu inglês não é lá essas coisas, mas se alguém encontrar algo errado por favor me reportem que eu irei atualizar o quanto antes.

O link do projeto no github é: http://github.com/marciotrindade/cake_upload/

Espero que ajude alguém.


Spree

Bom vamos ao que parece ser o ponto final nesta história de ecommerce.

Depois da aventura com o cakePHP e os cinco projetos feitos com ele resolvemos criar uma nova estrutura com o intuito de ser melhor, mais fácil de manter e implementar. Foi então que junto ao time da DBD resolvemos fazer o novo projeto em Rails, utilizando o Spree como base da aplicação. O líder deste projeto foi o Ricardo Yasuda. Parabéns por mais este projeto.

O projeto foi concluído em 2 semanas, e está melhor do que o nosso projeto feito com cakePHP Tudo bem que foi usado metodologia ágil, mas tivemos toda programação e interface HTML feita em 2 semanas e ainda com a aprovação do cliente e revisão do time :)

Então fica mais uma dica utilizem Rails e procurem sempre por projetos open sources para fazer o que vocês precisam. Provavelmente você vai encontrar algo bom, prático e rápido.

Como o projeto terminou hoje ainda não tenho a URL final, mas assim que tiver posto aqui pra que todos possam conferir.


Problemas com ecommerce

Logo que terminamos o ecommerce do artigo anterior já haviam mais alguns ecommerce para fazermos. Foi então que tentamos de uma forma simples apenas replicar tudo o que tinha sido feito antes para facilitar o nosso trabalho. No início tudo certo, conseguimos acertar o ecommerce em questão de uma ou 2 semanas, ainda não era o objetivo final mas já estava muito melhor do que o Chaz Dean onde levamos mais de 2 meses.

Quando implementamos o nosso ecommerce dentro do projeto Culture Colective encontramos mais um problema, nosso ecommerce estava muito simples e para esta loja precisaríamos colocar o sistema de estoque, para controlar quantos produtos tem disponível de cada um dos atributos. Isso quer dizer eu tenho 2 camisetas azuis do tamanho P e por ai vai. Para cada atributo novo que o cliente adiciona no sistema aumenta a variável para estoque, o que faz o sistema muito mais complexo.

Com a ajuda do Cesar Schneider conseguimos implementar mais esta funcionalidade e o sistema foi aprovado pelo cliente. Nos demais projetos Chimere, Guy Hepner e Chaudry não tivemos mais tantas complicações e o sistema consegui ser implementado em uma ou 2 semanas.

Como não canso de procurar novas soluções vou deixar o suspense até o próximo artigo para explicar como estamos tentando melhorar o sistema. Só posso dizer que resolvemos mudar o sistema como um todo e iniciar do zero novamente.


Ecommerce com cakePHP

Hoje vou falar sobre um projeto que desenvolvi na Dburns Design quando ainda estava programando.

Chaz Dean

Eu nunca havia trabalho em um ecommerce antes, então conversando com o Daniel no escritório achamos que seria uma boa tentarmos investir um tempo e desenvolver um sistema tão fácil de implementar como um MIVA como também fosse fácil customizar e adaptar. Então veio a oportunidade perfeita o projeto escolhido foi o Chaz Dean, um ecommerce simples porém com um layout um pouco diferenciado.

Trabalhei aproximadamente dois meses para desenvolver todo sistema porém o tempo não foi suficiente para terminar a integração com Paypal e Authorize.net pois surgiu a oportunidade para deixar de programar e começar a gerênciar a equipe, então o projeto foi finalizado pelo César Schneider. O resultado foi satisfatório porém sabia que ainda teria que trabalhar no código para deixa-lo performático e reutilizável.

Este foi o primeiro ecommerce que eu fiz e o primeiro feito com cakePHP do qual tenho conhecimento.


Casos de sucesso com jQuery

Hoje vou falar um pouco mais sobre jQuery, porém será um estudo de caso real apartir do trabalhos que foram realizados na DBurns Design.

Capri Apartments

Vou iniciar pelo Capri Apartments que foi um projeto bem simples feito com cakePHP e usei um pouco de jQuery para conseguir o efeito de navegação desejado pelo Murilo Ferreira um dos nossos designers. A técnica foi simples apenas escondi o conteúdo com hide() depois um animate() na largura do elemento que está aberto, animate() novamente do elemento clicado, fadeIn() para mostrar o novo conteúdo. Claro que para não ficar muito pesado ao carregar tive que trazer todo o conteúdo por ajax, tentei utilizar ajax com histórico para facilitar a navegação, porém não obtive êxito e o mesmo foi removido. Se alguém tiver interesse o código está disponível no arquivo default.js.

King Plutarco

Outro projeto que abusamos um pouco do usa da jquery foi o King Plutarco, para os comentários deste vou usar as palavras do próprio autor Philipe Casarotte que desenvolveu todo script para animar, eu só precisei dar algumas dicas e uma pequena correção no scroll.

ps. Em breve pretendo transformar o scroll que o Phil desenvolveu (parecido com jCarousel lite porém com algumas peculiaridades que foram necessárias para o projeto) em um plugin sem dependências para facilitar a implementação e distribuição do mesmo.

Por enquanto é só quando tivermos mais coisas legais feitas com jQuery volto a postar por aqui, no próximo artigo vou falar um pouco de ecommerce com cakePHP.


Arredondar imagens com javascript

Depois que conheci a Jquery resolvi tentar solucionar um problema que eu sempre tive, arredondar os cantos das imagens de uma forma simples e inteligente.

Procurei alguns plugins na época mas não fiquei satisfeito com nenhum dos que encontrei, foi então que eu resolvi fazer um que fizesse exatamente o que eu queria.

Assim nasceu a versão 1.0 do meu primeiro plugin open source o rounded, porém ele foi feito inspirado em um outro plugin que ao contrário do meu não ficou parado no tempo e hoje dando uma olhada vi que aparentemente está muito bom. Recomendo a todos que utilizem apenas o corner.js que é melhor e mais completo do que o meu.

Bom espero que isto resolva o problema das pessoas que sempre recebem o design com as imagens dinâmicas arredondadas.

PS. Esta semana no escritório fizemos um modulo com Rails para gerar a imagem com o canto arredondado, porém ainda não está concluído, quando estiver eu falo sobre ele.