Muitos Projetos

Olá pessoal, sei que estou muito sumido e a um bom tempo não escrevo. Tenho estudado muitas coisas e as vezes estou meio sem tempo para escrever… creio que não tenha dito por aqui mas a uns 9 meses estou trabalhando na Globo.com, com pessoas, ferramentas e projetos fodas. Estou muito feliz e tb não trabalhava tanto em uma empresa a muito tempo.

Algumas das coisas que vou escrever por aqui, ou melhor, no dominio novo do Coisas Comuns (que está em fase de construção e importação de dados) vão ser sobre.

  • Metodologias Ageis
  • Sinatra
  • Haml e Sass
  • Ruby (que ainda é minha linguagem preferia e tenho tentado aprender mais sobre ela a cada dia)
  • Python, Django e afins 🙂

Faltaram alguns itens aqui que meu amigo Max lembrou

  • Vou continuar tentando escrever sobre Jquey
  • Scrum
  • Mono
  • e muitas outras coisas 🙂

Bom pessoal, é muito assunto mas os novos posts vão ser no novo dominio, aqui vou sempre colocar um link para os novos posts.

Abs e obrigado por essa visita.

Rafael Martins


Meu primeiro plugin para jquery : toJsObjects

Olá pessoal, bom na última semana eu tive um problema no trabalho em que eu tinha que serializar elementos HTML em JSon, e estamos usando jquery, então a coisa mais comun foi buscar um plugin que atendese minha necessidade, e para meu espando eu não achei, tudo bem vou confessar que não procurei muito, mas vamos a novidade, com esse problema na cabeça, hoje (15/02/2009) na parte da manhã eu decidi escrever meu primeiro plugin para jquery, e ai nasceu o toJsObjects, para facil uso e sem moderação.. rsrsrsr

Vamos ao que importa, eu ouvi um “Como funciona ???”

É muito simples, vamos supor que você tenha uma DIV de ID = “comments” e dentro desta div, elementos de parágrafos , P, onde cada P tem um id igual ao id do comentário que está dentro do parágrafo.

E dentro deste cenário você quer retornar objetos que representrem os paragrafos, então é só fazer assim :

$(“#comments p”).toJsObjects([‘id’]);

Como retorno dessa chamada você vai ter um vetor de objetos contendo dois atributos, o ID e o Index, e ai você se pergunta, eu só passei o ID, como tem dois atributos ???

Por padrão o plugin adiciona um atributo Index, que é a posição do elemento retornado pela busca do jquery.

Endereço do projeto no github, toJsObjects.

ps 1: toJsObjects recebe como parametro os attributos que você que estejam dentro do objeto

ps 2: os parametros devem ser passados por vetor, mesmo sendo um único parametro.


EXTRA EXTRA – Mono 2.0

Mono 2.0

Mono 2.0

Olá pessoal, estou aqui só para informar que a versão 2.0 do Mono saiu, com várias atualizações como:

  • Compatibilidade total com ADO.NET, ASP.NET, Windows forms e outras APIs
  • Compatibilidade com C# 3.0 com suporte total a LINQ
  • Atualizações das bibliotecas do Mono

leia a notícia completa em

Mono 2.0


jQuery para uso diário – O que vocês querem ver ?

Olá pessoal, tudo blz ?

Minha idéia é a seguinte:

Vou deixar esse post para vocês possam dizer o que vocês querem, exemplos, de como pode se usar jQuery.
Coisas do tipo, quero ver um pop-up igual ao do site tal ou o efeito igual al site do fulano, na medida do possivel eu faço o tutorial e coloco aqui.

Só espero que essa idéia de certo.

vlw galera, abs – Rafael


js.Class – Uma forma diferente de se escrever js.

[Post escrito originalmente para o TBBGE, mas foi eu mesmo que escrevi.]

Olá pessoal.

O js.Class é um framework onde se pode escrever javascript de uma forma parecido com Ruby, usando classes, modulos, meta-programação e etc, implementando várias coisas que Ruby tem de bom.

js.Class

js.Class

Creio que esse framework tem um foco diferente dos atuais como jQuery, Prototype, entre outros. Pois o js.Class tenta lhe prover maior pode de desenvolvimento, e não maior facilidade de lidar com elementos e efeitos visuais (como jQuery ), com o crescimento do uso de Ajax e o aperfeiçoamento das máquinas virtuais de javascript (vide google V8 e novas implementações das mesmas pelas equipes do WebKit e da Mozilla), cada vez mais vamos ter aplicações totalmente desenvolvidas do lado do cliente, e esse tipo de framework vem sempre para ajudar.

<momento_jaba>

Não deixem de visitar o TBBGE

</momento_jaba>

abs – Rafael


jQuery e suas mágicas para uso diário

Bom pessoal, acho que já deu para perceber como eu gosto de jQuery, então vou mostrar como fiz um brincadeira simples e útil.

Quem nunca necessitou de mostrar um descrição de um campo em um formulário, como a imagem abaixo, então vou dar um exemplo que não levou mais de cinco minutos e ficou muito fácil de usar.

Imagem tirada do desevolvimento do CriandoRPG

Imagem tirada do desevolvimento do CriandoRPG

A um bom tempo eu faço meus formulários com listas (é UL e LI mesmo) seguindo o seguinte modelo:

Estrutura básica para formulários

Estrutura básica para formulários

Bom, para conseguir a descrição tive que adicionar um pequeno item no html, que assim tenhamos lugar para colocar a descrição do campo, então a nova estrutura ficou assim:

Formulário com descrição

Formulário com descrição

Bom, mas como nem só de Html é feito o mundo, abaixo segue o css, mas prestem atenção a um fato, o position está colocado como absolute e esse é um detalhe muito importante, é por essa fato que quando colocamos o margin-left a descrição fica ao lado da caixa de texto, e por cima do conteúdo da direita se houver.

Código CSS

Código CSS

Vamos agora para o código do jQuery, vou explicar com muitos detalhes, para que nada passe em branco.

JQuery

JQuery

Vamos lá, é bom se acostumar com o fato de jQuery trabalhar com funções como parâmetro, é estranho no começo. Vamos a explicação:

  • A linha 1 serve para que esse código seja carregado sempre quando uma página inicia sua execução, por isso o parâmetro para o jQuery é document.
  • Na linha 3 é usado um parâmetro usando uma notação CSS que diz o seguinte. Para cada LI, que está dentro de cada UL com o atributo classe com valor igual a formulario.
  • Ainda na linha é usado uma função chamada EACH, que vai executar o trecho de código dentro dela, para cara item encontrado, baseada na expressão CSS.
  • Na linha 5, estamos definindo que no mouse ouver vai acontecer algo.
  • Na linha 6, estamos buscando algum elemento que tenha a CLASSE igual a DESCRIPTION, e estamos exibindo esse elemento.
  • nas linhas 8 e 9 estamos dando continuidade ao comportamento, definindo que no MOUSEOUT o elemento que a CLASSE igual a DESCRIPTION vai ficar escondido.

Bom pessoal, acho que dessa fez foi um artigo grande… rsrsrs

Espero o retorno de vocês, se gostarem prometo que escrevo mais sobre jQuery e suas mágicas para uso diário.

até depois, Rafael Martins.


Colaborando em outro blog….

Olá pessoal tudo blz ?

Sei que estou a um bom tempo se escrever por aqui, mas aceitei colocar com um blog formado pelo pessoal do trabalho, que é o TBBGE

Bom eu já escrevi duas matérias lá que são as seguintes

Então é isso pessoal, toda vez que eu escrever lá, eu posto aqui, e visitem o TBBGE

abs – Rafael Martins


Desenvolvendo de qualquer lugar do mundo com Rails, Heroku.com

Olá pessoal, hoje vim falar sobre um projeto que eu acho muito FODA, com todas as letras, no meu emprego eu trabalho com dot net, e todo uma arquitetura windows, essa semana eu consegui adiantar muito o projeto em que estou trabalhando, e fiquei com dois dias de sobra, então decidi trabalhar um pouco no CriandoRPG, mas antes de continuar vou explicar um pouco o que será o CriandoRPG.

O CriandoRPG é uma idéia que nasceu com Phill, onde as pessoas vão poder expor seus sistemas e cenários de RPG, para que assim possam compartilhar com o mundo suas criações.Bom o Phill tinha a idéia, e eu sou desenvolvedor Web, e adorei a idéia, mostrei para o Marcelo que é Design e também é jogador, e ele fez o layout (outro projeto que o Marcelo fez o layout é o Frazz),bom ai eu começei a trabalhar no site.

Bom e como eu queria algo para começar a trabalhar rápido, sem que eu necessita-se ficar baixando e instalando gems e plugins, eu decidi trabalhar em no Heroku, que é uma ferramenta para desenvolvimento web, na web, como Heroku você não necessita instalar nada para desenvolver é só logar no site e começar a programar, ele tem funções de Rake, console Rails, Banco de Dados, e aceita a instalção de plugins e gems, diretamente pelo site, basta eu buscar a gem ou plugin que eu quero, ou apontar uma url, que ele vai lá a instala, é tudo muito fácil.

<música de comercial>E ainda não acabou</música de comercial>, o pessoal do Heroku ainda liberou uma gem, onde você baixar o seu projeto, e trabalhar off-line, e usango Git para o versionamento e depois subir as modificações.

Então fica a dica.

abs – Rafael


JQuery e suas mágicas

Bom pessoal, faz muito tempo que não escrevo, e desta vez não vou ficar dizendo que vou voltar a escrever… eu já disse isso algumas vezes e não consigo manter a promessa. Mas decidi seguir a risca o nome do blog, quando eu criei esse nome, não imaginei o impacto que teria, já que a principio o blog era para falar de mono e desenvolvimento web, mas muita coisa aconteceu, eu passei a usar Ruby e Rails, e últimamente tenho trabalhado bastante com JQuery, e como o nome do blog é “Coisas Comuns”, essas coisas comuns devem se remetar ao meu dia a dia como desenvolvedor, então vamos a um artigo sobre JQuery.

Bom, eu nunca gostei muito de javascript… ainda mais quando tinha que escrever tudo na mão, comecei a conhecer algumas bibliotecas, como Prototype, mas juro que a mesma não me agradou muito, então um dia eu esbarrei com JQuery, e quando eu vi que sua sintax é baseada em CSS eu fiquei louco, acho melhor explicar como funciona primeiro…

Vamos a um exemplo simples.

$(‘#texto’).click(function(){ alert(‘vc clicou no texto’) });

Nesse simples exemplo, estamos adicionando um comportamento ao click de TODOS os elementos que tenham o ID igual a ‘texto’, algo muito importante aqui é o TODOS, tudo bem, eu sei que ninguém vai colocar o mesmo ID em mais de um elemento HTML, mas o exemplo foi feito assim de propósito… ai alguém pergunta.

Eu posso então usar uma classe ?

Sim, vc pode, e ai está a mágica… você pode definir o comportamento do elemento pela rica sintax do CSS, pode adicionar comportamento padrão por classe e muito mais, fora a quantidade de efeitos já prontos e plugins.

Bom pessoal fica ai a dica, depois eu volto explicando melhor e com alguns exemplos.

abs – Rafael


Não existe falta de tempo. Existe tempo mal utilizado !

E ai pessoal, faz muito tempo que não escrevo né… bom eu não consigo somente escrever, tem que haver paixão, motivação e tem que haver tempo. Alguns podem até dizer – Mas você disse que não existe falta de tempo!

Bom isso é uma verdade, o que acontece é quando é que muitas das vezes não conseguimos organizar nossas tarefas, muitas vezes conseguimos organizar, mas não conseguimos priorizar, para min essa é a palavra chave.

Prioridade, uma palavra que os clientes ficam malucos quando escutam, ainda mais quando escutam dentro da seguinte frase :

  • Qual é a ordem de prioridade dessas tarefas ?

Eu até entendo quando o cliente quase ranca os cabelos para realizar essa decisão, e creio que está é a segunda palavra que vai fazer o seu tempo render, além de fazer sua vida andar.

Então pessoal, fica uma proposta de reflexão para todos, parem, pensem, e reflitam, tomem decisões e definam prioridades, mas não pensem que essas escolhas são verdades universais, pois a cada dia aumentamos nosso conhecimento do cotidiano e de nós mesmos, e dessa forma nossas decisões mudam de parametros e nossas prioridades podem mudar.

E por último, não tentem tornar esse tipo de escolha mecanica, pois ela deve se tornar natural. Eu mesmo vou pensar mais um pouco sobre essas idéias e de como eu as aplico e volto aqui para contar.

ps: Eu não tenho clones e nem um relógio de 36 horas 😉