Cairo Noleto

Lumine 1.0, mudanças chegarão!

| Comments

Eu comecei meu desenvolvimento profissional com PHP, e não faz muito tempo não, cerca de 6 meses. E com o PHP, eu comecei utilizado alguns frameworks, CodeIgniter, Lumine, Xajax, e dentre deles, um me chamou muito a atenção, o Lumine.

O Lumine é o equivalente, na minha humilde opinião, ao Hibernate do Java e ao ActiveRecord do Rails.

O que mais me chamou a atenção desse framework, é que ele é Brasileiro, feito pelo Hugo Ferreira da Silva, atualmente está na versão 1.0.

Eu comecei a utilizar o framework na versão passada, o grande diferencial do framework passado para esse, é a menor utilização de XML para configuração, mas ainda assim utilizando dessa linguagem CHATA para as validações dos campos.

Eu enviei um email para Hugo, pedindo mais explicações e se ele ia lançar uma versão totalmente em PHP, ainda, a unica parte que está utilizando XML é as validações.

O email retornado não foi assim “motivador” então resolvi eu mesmo escrever as validações em PHP.

Espero ainda essa semana, após todos os testes, lançar a versão alpha toda em PHP.

Quem se interessar sobre o framework, visite o site oficial e aguarde o lançamento da versão totalmente em PHP.

Até a proxima!

Porque utilizar Ruby on Rails

| Comments

Hoje na empresa me mandaram um artigo sobre Java, Ruby e PHP intitulado “Why Do ‘Cool Kids’ Choose Ruby or PHP to Build Websites Instead of Java?”, gostei muito do artigo (Pena que fala praticamente o poder do Java).

Resolvi buscar no google sobre “Porque utilizar Ruby on Rails” e um dos resultados foi esse, que são slides que foram apresentados pelo Júlio Monteiro na Campus Party Brasil.

Os slides falam sobre porque realmente se deve levar em consideração a utilização de Ruby on Rails, bem como fatores positivos e aceitação de empresas de porte mundial como a Sun, IBM, entre outras.

Tambem mostra a portabilidade de ruby para JVM através de jRuby.

Isso mostra que a linguagem Ruby, após o lançamento e utilização de Rails, vem tomando grande campo no espaço de desenvolvimento, e mostra que a linguagem vem crescendo dia após dia.

Eu estou no aguardo para fazer meu primeiro grande projeto em Ruby on Rails e ver o que dar.

Até a proxima!

Soluções e mais soluções

| Comments

Cada dia que passa, venho adquirindo mais e mais o senso de soluções.

Eu, que realmente não conheço de tudo, e que gosto de sempre estar antenado, percebi mais uma vez que mereço isso.

Hoje foi a vez de instalar e testar o TortoiseCVS. Cara, como sou muito tapado!

Há uns dias atras, no blog do Fábio Akita, eu vi um post sobre o GIT e como ele funciona, eu realmente fiquei sem noção do que se estava falando, não sobre o GIT, e sim sobre controle de versões. Eu percebi que realmente quase não uso o controle, simplesmente por quê eu só “comito” as coisas pro servidor, nunca parei pra fazer outra coisa.

E ainda não sei como proceder. Hoje olhando o código de um projeto, percebi que existe versões 1.24, 1.35, 1.2, queria eu saber como fazer um novo patch, e deixar essas coisas virarem 2.0. Na realidade, eu terei que fazer isso mais tarde, quando o projeto entrar em produção, e ali ter um divisor de águas.

Espero que se alguma alma caridosa poder, que me ajude. Sei que com o GIT aí, muita gente vai ficar reclamando de o porquê eu ainda utiliza-lo, ou o porquê de eu não ter usado o SVN, e que expliquei a algum tempo atrás nesse mesmo blog.

Até a proxima!

Estatísticas

| Comments

Ultimamente venho muito interessado sobre as estatisticas desse blog, a cada duas ou três horas venho ver as estatisticas de acesso.

E isso está se tornando um transtorno (OHAEoiEHA), claramente que quando escrevemos aqui, queremos que várias pessoas acessem e comentem em nossos artigos.

Eu, que quase sempre não tenho assunto (Como agora) pra compartilhar, fico na expectativa de que um ou outro post faça despertar um novo usuario vizualizando meu blog.

Enfim, espero que a demanda por essas minhas informações aumente conforme o tempo, e eu não quero fazer disto uma máquina de dinheiro!

Abraços,

Até a proxima!

“Eu programo em ruby”

| Comments

Hoje eu abri o Google Reader, a primeira boa noticia é que agora está em Portugues do Brasil, a segunda, que da o titulo ao post, é que ele me mostrou “As melhores recomendações” e o terceiro link foi do blog da Caelum, resolvi ler, e pra minha surpresa e admiração, vi um post do dia 02/11/2007, com o titulo “Quão intuitivo é aprender Ruby?”.

O post fala sobre a experiencia de alguem que assistiu a uma palestra “por engano” e que acabou gostando muito.

Eu gosto muito desse tipo de coisa, de pessoas que não tem experiência nenhuma com desenvolvimento e acaba gostando da coisa.

Alem de passar um ânimo a quem programa, é muito bom saber que não existe limites para inspiração de pessoas a fazer parte do “background” de um software.

Eu vejo muita gente falando que é facil fazer isso, facil fazer aquilo, e quando elas tem a oportunidade de ver realmente o quanto é trabalhoso, elas ficam admiradas por tanta coisa que se deve saber pras coisas ficaram funcionando do jeito que elas querem.

Até a proxima!

WordPress.org

| Comments

Eu queria muito utilizar o Google Analytics para analisar esse meu blog, e pra minha surpresa, o WordPress.com não aceita instalação de Plugins (Necessário para utilização do Google Analytics).

Resolvi fazer o download do WordPress.org para meu computador e testar. Gostei, mas achei falta do Mod-Rewrite (Se alguem souber as expressões regulares para o WordPress, por favor, deixe comentario).

Fora isso, foi muito rápido a utilização do mesmo.

Estou postando nele (Sim, localmente, e fazer a exportação aqui por WordPress.com) para não ter que bater varias horas com Tags que simplesmente viraram numeros. (Importei do WordPress.com).

Até a proxima!

Trabalho de diplomação

| Comments

Desde domingo que eu vejo comentários, noticias, e muito, mas muito blog comentando, participando e isso é muito bom!

E pra minha infelicidade (Ou não) estou acompanhando somente pela TV, e pelos blogs que tenho assinatura do feed, essa semana comecei minhas aulas, meu penultimo ano no curso de sistemas de informação e tenho a responsabilidade de desenvolver um trabalho de diplomação.

Por isso, estou focando meus horarios vagos em estudos, comecei por Ruby on Rails, agora vou estudar UML e começar a modelar uma aplicação. Que por varios motivos, acabei adiando a ideia de trabalhar com OLAP e Business Inteligence, talvez tendencia de mercado, talvez tendencia emocional (Mais forte), e agora quero desenvolver um sistema que seja usável (Sim, colocarei em produção, por isso deve ser algo a atender “massas”) e de preferência que seja algo do cotidiano de várias pessoas.

E quero fazer em Ruby on Rails, não importa o que meus professores e principalmente meu coordenador fale, irei faze-lo em RoR.

Até a próxima!

Controle de Versão

| Comments

Na empresa que eu trabalho (W7 Solutions) utilizamos do CVS pra controle de versão. Uma metodologia que eu implementei assim que cheguei na empresa (E por falta de conhecimento acabei escolhendo o CVS).

Resolvi instalar um controle de versões no meu laptop, e pra ver como funciona e pra sempre ter todas as versões de codigos, instalei o Subversion (on Windows) e apanhei muito pra fazer funcionar no Apache (Retrocedei no tempo e estou utilizando a versão 2.0, antes usava a 2.2). E instalei o TurtoiseSVN, que achei muito bom a integração com o windows, sem a necessidade de uma IDE (Pro CVS, utilizo o Eclipse, se tiver como fazer a mesma integração de um cliente CVS com windows, por favor, deixa nos comentários).

Outra coisa sobre Controle de versão, eu deixei um comentario no blog do Carlos Brando pedindo para comentarem no próximo Rails Podcast Brasil a diferença entre os controles de versão mais usados e o novo feito pelo proprio Linus Torvalds.

Até a proxima!

Test-driven development on Rails

| Comments

Comecei um projeto pessoal, que já vi um muito bom rodando, Spesa, feito pelo Nando Vieira (sempre queria saber quem tinha criado o spesa, e por acaso descobri) e outro no rails-br bem interessante, em AJAX.

Após isso, tambem resolvi fazer o meu gerenciador financeiro! Assim como o Nando Vieira, irei colocar todas as regras de negocio realmente no negocio, evitando deixar tudo em Stored Procedures.

Nesse projeto, resolvi usar utilizar esta técnica, e segui um tutorial rapído do Nando Vieira.

Depois de implementar 12 testes, tive problemas com dois, e achei uma coisa estranha, fiz passar, mas eu acho que tem alguma coisa errado, e não é no codigo implementado.

O método MD5.hexdigest() retorna uma hash MD5, e para o teste, faço a comparação da String que estou criado pro objeto user com a mesma string passando direto pelo método.

1
assert_equal(Digest::MD5.hexdigest("caironoleto"), user.password)

Só que a MD5 esperada é diferente da MD5 que é passada, mesmo sendo os mesmos métodos, e mesmo sendo a mesma String.

Para resolver, antes de salvar o objeto, atribui o valor a uma nova variavel, assim criando a MD5 correta.

1
2
3
4
5
6
def test_of_password_in_new_user
  user = create(:password => "caironoleto")
  expected = user.password
  user.save
  assert_equal(Digest::MD5.hexdigest(expected), user.password)
end

Se algum railer ver, por favor, deixa comentario e explica o que está acontecendo.

Até a proxima!

UPDATE:

Realmente tem uma coisa estranha! E a pior das coisas, ela está entre o computador e a cadeira! (HoiahoiehAOIEHaO).

Simplesmente o código estava errado, nem métodos, ou nada disso, e sim o que estava fazendo.

Simplesmente por que quando utilizo o método create, ele realmente cria, aplicando assim a validação que passei pelo modelo e já salvando o objeto no banco de dados. E depois, eu mandava ele “salvar” repetindo a mesma coisa. Só que fazendo a MD5 da MD5 que já estava lá, gerando erro quando tentava comparar a MD5 direta pelo método Digest::MD5.hexadigest("caironoleto").

O que eu tava fazendo aí em cima dava certo, por que ele está armazendo em expected a MD5 que foi criada.

Agora sim respiro aliviado!

Até a proxima!

E - TextEditor

| Comments

Eu tenho assinatura do grupo rails-br, e essa semana vi uma discussão sobre editores e IDEs para Ruby on Rails. Foi mais uma das milhares de discussões sobre editores que existe por aí.

Mesmo assim, li, e descobri que existe um editor pra windows que é muito parecido com o TextMate, o e-TextEditor.

O e-TextEditor é um software comercial e muito bom. Agora eu sei por que os TextMate maniacos idolatram o editor.

Descobri a granda fama do TextMate, por causa dos Bundles, funcionam como os helpers do Rails, mas dentro do editor, e funcionando pra varias linguagens (As mais famosas, e ainda varias que eu nunca tinha ouvido falar).

Só tem um defeito, não tem code completion, mas mesmo assim, ele é muito bom. Vou começar a usa-lo em meus projetos e falo mais dele aqui. Outra coisa boa, é que eu já vou me acostumando ao “TextMate” (Em breve terei um MacBook).

Até a proxima!