Recent News

Chegou o Meu “Repensando a web com Rails”!

Postado por elomarns em 22/02/08 às 10:34

repensando_a_web_com_rails_min.jpgHoje chegou a minha cópia do Repensando a web com Rails, que é o primeiro e ainda único livro com conteúdo original sobre Rails publicado no Brasil, sendo o Fabio Akita o autor do livro.

Há tempos eu queria lê-lo, já que sempre ouvi falar muito bem do livro. Se bem que eu não tinha muitas esperanças, já que ele estava fora de circulação desde o fim do ano passado, uma vez que a sua tiragem inicial de 1000 cópias foi totalmente vendida e a editora não tinha intenção de imprimir uma segunda tiragem.

Mas, para minha sorte, a editora voltou a vendê-lo através do seu site há algumas semanas atrás. Sendo assim, eu finalmente vou poder saciar a minha curiosidade a respeito do livro, e, ao fim da leitura, irei publicar aqui uma resenha sobre o livro.  Aguardem!

Nova Manutenção dos Transmissores

Postado por elomarns em 17/01/08 às 5:52

fora_do_ar.PNGEu sei que ultimamente não tenho postado com muita frequência, e, pra ser sincero, isso não vai mudar, pelo menos não nos próximos dias. Esse post é mais pra avisar que eu irei viajar daqui a algumas horas, e, como sou um blogueiro muito responsável, não deixei nada pronto para ser postado enquanto estiver fora, portanto o marasmo vai continuar batendo ponto neste blog por mais um tempinho.

Contudo, assim que voltar de viagem, o que irá acontecer no dia 11 de fevereiro, eu prometo voltar a dar a atenção que este blog merece, o que inclui, entre outras coisas, terminar a série de posts sobre o SQLite 3.

Sendo assim, até não tão breve.

Java é Uma Droga

Postado por elomarns em 14/01/08 às 15:10

Calma pessoal, esse título é mais uma brincadeira. Eu não acho Java uma droga, pelo contrário, durante um bom tempo foi a minha linguagem de programação preferida, embora tenha perdido este posto para Ruby/Rails há alguns meses.

O motivo deste título é que eu descobri recentemente que há algumas pessoas chegando a este blog ao pesquisar no Google por “java é uma droga”. Sendo um pouco mais específico, quando alguém faz essa pesquisa, o Google apresenta como primeiro resultado o post Look at Yourself, onde eu menciono o polêmico post Top 10 Reasons Why Java Sucks Ass, do Obie Fernandez, citando 10 Razões Porque Java É Uma Droga como uma tradução livre do título do post do Obie.

No entanto, o que me surpreendeu foi o fato do Google ter me apresentado como primeiro resultado para esta busca em particular, já que, pelo que eu sei, as páginas são classificadas de acordo com o número de links que recebem, e esta página certamente não teria condições para estar em primeiro lugar, considerando este critério. Além disso, confesso que também fiquei curioso pra saber quem é esse pessoal que anda pesquisando por isso no Google.

De qualquer forma, não estou reclamando desta situação. Na verdade, estou até achando divertido ser o primeiro resultado do Google para esta busca. Só achei o fato curioso, e decidi compartilhá-lo aqui, além de aproveitar pra dizer que não acho o Java uma droga. No início do meu contato com o Rails eu confesso que passei a pensar isso, até porque eu estava bastante empolgado com a simplicidade do Rails, e como o Java EE é o extremo oposto, foi uma reação natural negá-lo inicialmente. Mas hoje o Java voltou a ser uma linguagem que eu gosto, mesmo não sendo mais a minha preferida.

SQLite 3: Visão Geral e Instalação

Postado por elomarns em 4/01/08 às 13:25

O SQLite 3 é um SGBD(Sistema de Gerenciamento de Bancos de Dados) open source incrivelmente leve, e que funciona sem nenhuma configuração. Além disso, ele não possui um processo servidor, existindo assim apenas um processo responsável por ler e escrever os dados, sendo estas operações feitas diretamente no sistema de arquivos local.

Por se tratar de um SGBD sem um processo servidor, o SQLite 3 é auto contido, podendo assim ser distribuído junto com as aplicações. Na verdade, devido a sua natureza, este é um cenário de uso ideal para ele, principalmente quando a aplicação em questão não requer um SGBD mais robusto.

Instalação

A versão mais atual do SQLite 3 é a 3.5.4, sendo que a sua instalação depende do sistema operacional utilizado. Tendo isto em vista, abaixo estão as instruções para instalação nos 3 sistemas operacionais mais usados:

Windows: baixe o programa em linha de comando que acessa e modifica os bancos de dados no SQLite 3, justamente com a DLL da biblioteca do SGBD. Feito isso, descompacte os dois arquivos baixados, obtendo assim os arquivos sqlite3.exe e sqlite3.dll. Por fim, coloque estes dois arquivos no diretório bin da sua instalação do Ruby, sendo este diretório provavelmente estará localizado em C:\ruby\bin.

Linux: existem várias formas de se instalar programas no Linux, dependendo de várias fatores como distribuição utilizada. Sendo assim, irei considerar aqui apenas distribuições baseadas no Debian, como o Ubuntu. Essas distribuições possuem o gerenciador de pacotes apt-get, o que significa que basta executar o comando sudo apt-get

Mac OS X: o SQLite 3 já vem integrado ao Mac OS X desde a versão 10.4(Tiger), portanto, a menos que você esteja em uma versão anterior, não é preciso fazer absolutamente nada para ter ele instalado no seu ambiente. Mas, caso você esteja em uma versão anterior do Mac OS X, basta usar o DarwinPort, digitando o comando sudo port install sqlite3 em uma janela de comando. Dessa forma, o Daw

Instalando o gem

Embora tenhamos instalado o SQLite 3, ainda não podemos utilizá-lo em aplicações Rails, uma vez que ainda falta o adapter necessário para a conexão. Sendo assim, temos que baixá-lo através do RubyGems, o que é feito digitando o comando gem install sqlite3-ruby em uma janela de comando.

Uma Rápida Introdução ao SQLite 3

Postado por elomarns em 2/01/08 às 1:15

O SQLite 3 passou a ser o banco de dados padrão no Ruby on Rails 2.0.2, sendo que este lugar até então era ocupado pelo MySQL. Isto significa, entre outras coisas, que ao executar o comando rails minhaapp, o arquivo config/database.yml será gerado para ser usado pelo SQLite 3, e não mais pelo MySQL.

Tendo isto em vista, eu decidi conhecer o SQLite 3 um pouco mais, e considerando o fato de que ele não é exatamente um SGBD muito popular, eu achei interessante documentar aqui o resultado desta minha breve exploração. Sendo assim, em breve eu irei publicar 3 ou 4 posts bem curtos e diretos sobre alguns aspectos básicos do novo SGBD padrão do Rails.

Espero que gostem.

Ruby 1.9.0

Postado por elomarns em 26/12/07 às 4:37

Parece que nesse Natal tivemos um presente especial do Matz: o Ruby 1.9.0. Abaixo estão as URLS de onde você pode baixar a nova versão:

ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.0-0.tar.bz2

407cc7d0032e19eb12216c0ebc7f17b3

ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.0-0.tar.gz

b20cce98b284f7f75939c09d5c8e846d

ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.0-0.zip

78b2a5f9a81c5f6775002c4fb24d2d75


E como eu fiquei sabendo dessa notícia através do blog do Akita, nada mais justo do que linkar diretamente para o post original, até porque dessa forma a informação estará mais completa, já que até o momento eu sei muito pouco sobre esta nova versão. Portanto, para maiores informações, leia o post do Akita sobre o Ruby 1.9.0.

Vídeos da RejectConf SP’07

Postado por elomarns em 23/12/07 às 2:49

Recentemente foram liberados pelo pessoal da Improve It alguns dos vídeos que eles gravaram na RejectConf SP’07, que foi realizada no dia de 17 de novembro. Veja abaixo os links para os vídeos disponíveis:

Palestra do Fábio Akita
Palestra do Vinícius Manhães Teles sobre o projeto Lucidus
Palestra do Carlos Brando: Você está fazendo a sua parte?
Palestra do Carlos Villela sobre a ThoughtWorks e Rails lá fora
Palestra do George Guimarães sobre o seu site PageStacker, construído durante o Rails Rumble, e também sobre escalabilidade em aplicações Rails
Palestra do Felipe Giotto sobre Rails no Desktop
Entrevista com algum dos presentes no RejectConf SP’07

Estes vídeos dão uma ótima noção do que aconteceu por lá, portanto, vale a pena dar uma conferida, principalmente para aqueles que assim como eu não puderam comparecer ao evento.

Ruby on Rails 2.0.2

Postado por elomarns em 18/12/07 às 7:49

Temos mais uma atualização no Rails. Dessa vez, de acordo com o anúncio feito pelo David Heinemeier Hansson sobre o Ruby on Rails 2.0.2 no blog oficial do framework, esta versão apenas corrige alguns bugs menores, além de acrescentar algumas novas features.

Entre as mudanças, talvez a mais relevante seja o fato de que agora o MySQL não é mais o SGBD padrão quando executamos o comando rails sem especificar o SGBD utilizado, perdendo este lugar para o SQLite 3. Isso significa que todas as aplicações geradas com o comando rails no Rails 2.0.2 terá o arquivo database.yml configurado automaticamente para o SQLite 3.

Segundo o DHH, esta mudança no SGBD padrão se deve ao fato de que o SQLite 3 é mais simples do que o MySQL. Além disso, ele já vem instalado no Mac OS X 10.5, juntamente com o seu adapter, o Ruby e o Ruby on Rails. Sendo assim, com essa mudança, o Mac OX X 10.5 já vem pronto para o desenvolvimento Rails, sem que seja necessário baixar absolutamente nada.

Confesso que eu não abri o maior sorriso do mundo ao saber desta mudança, já que tenho um conhecimento praticamente nulo sobre o SQLite 3, além de gostar do MySQL. No entanto, percebi que negar o SQLite 3 apenas porque o desconheço, ou porque conheço melhor o MySQL, é o tipo de sentimento que nunca teria me levado ao Rails.

Além disso, o Rails sempre foi sobre aceitar certas convenções acreditando que elas facilitariam a nossa vida, e até agora ele tem cumprido perfeitamente este próposito. Sendo assim, apesar de dessa vez ter discordado inicialmente da direção que o DHH deu para o Rails, vou confiar no seu bom senso, e dar uma chance ao SQLite 3.

Mas, caso você não compartilhe desta visão, você pode, como sempre, mudar este padrão, criando assim uma aplicação Rails com o MySQL como SGBD padrão. Para isto, basta utilizar o comando rails da seguinte forma: rails -d mysql application.

Por fim, para atualizar sua versão do Ruby on Rails, digite o comando gem install rails em uma janela de comando. Caso este comando não funcione, o que pode ocorrer caso a nova versão ainda não tenha sido propagada, digite gem install rails –source http://gems.rubyonrails.org. Dessa forma, você fará o download diretamente do repositório do Rails.

Quanto Menos SQL Melhor?

Postado por elomarns em 17/12/07 às 7:57

Houve um tempo em que simplesmente não haviam opções quanto a manipulação do banco de dados, tinhamos necessariamente que incluir código SQL manualmente dentro do código das aplicações. Mas, felizmente, com o passar do tempo, surgiram soluções alternativas, incluindo os famosos frameworks ORM(Object-Relational Mapping), e graças a eles passamos a ter uma excelente opção para esta questão. No entanto, conforme adianta o título deste post, essa é a melhor solução possível?

Eu sempre acreditei que sim, e em parte ainda acredito. Inserir instruções SQL dentro de uma aplicação torna, ao meu ver, o código pouco elegante como um todo, uma vez que o SQL por si só não é exatamente uma linguagem bonita. Sendo assim, acabamos tendo parte do código com um nível de abstração satisfatório e a outra parte… bem, a outra parte é SQL. E mesmo se isolarmos o código SQL apropriadamente, o que, convenhamos, é o mínimo que temos a fazer, ainda assim fica feio.

Além do fato do SQL não ser mesmo uma linguagem bonita, a raiz deste problema repousa na mistura do modelo relacional com o paradigma orientado a objetos, supondo que está sendo utilizado estes dois modelos, que são, respectivamente, os mais populares para SGBDs e para linguagens de programação.

A propósito, ao contrário do que muitos pensam, o maior benefício dos frameworks ORM é justamente abstrair o modelo relacional, permitindo assim que nós trabalhemos unicamente com objetos. É um erro comum pensar que eles foram criados primariamente para possibilitar trocas de SGBDs, já que esse tipo de coisa está longe de ser comum.

Mas, apesar do SQL inegavelmente piorar estaticamente o código de um sistema, temos que considerar que estamos falando do melhor dos cenários. Há casos em que simplesmente não é possível usar um framework como Hibernate ou ActiveRecord ou qualquer outra solução que abstraia o modelo relacional, seja por problemas relacionados a performance ou por limitações da estrutura organizacional, dentre outros fatores limitantes.

Um exemplo de um cenário com tal limitação foi apresentado no Rio on Rails. Lá, o Eduardo Rocha, criador do site O Curioso, revelou que devido a problemas que afetavam consideravelmente a performance do site, teve que incluir algumas instruções SQL diretamente, ao invés de usar o excelente suporte oferecido pelo ActiveRecord. Portanto, neste caso, foi preciso abdicar da conveniente e amigável interface oferecida pelo framework ORM, no caso o ActiveRecord, em prol de uma melhor performance no site, uma vez que isso sim afeta diretamente os usuários.

Sendo assim, respondendo a minha própria pergunta, eu acredito sim que quanto menos código SQL uma aplicação tiver, melhor. Melhor para ela e para os desenvolvedores que a manterão. E se essa quantidade signigicar nenhum código SQL, melhor ainda.

Entretanto, no mundo real, como vimos acima, nem sempre isso é possível, e como desenvolvedores de software nós temos que identificar estes cenários que constituem uma exceções. Até porque, no fim das contas, o nosso foco é criar software que resolva problemas, e para isso as vezes temos que criar software feio do ponto de vista do código fonte. Até porque, o problema mais importante a ser resolvido não é o nosso, e sim aquele que originou o desenvolvimento do software em questão.

Um Breve Lembrete: Rails for Kids 2007

Postado por elomarns em 14/12/07 às 5:07

rails_for_kids_2007.gifAmanhã, dia 15 de dezembro, teremos mais um evento Rails: o Rails for Kids 2007.

Este evento está sendo organizado pelo Carlos Eduardo, dono da e-Genial, e será totalmente online, sendo realizado através do Treina Tom.

Ao todo serão apresentadas 10 palestras, tendo entre os palestrantes vários nomes importantes da comunidade Ruby/Rails do Brasil, incluindo Fabio Akita, Carlos Brando, Vinicius Manhães Teles, Demetrius Nunes, Ronaldo Ferraz, entre outros.

Além deles, contaremos também com um convidado internacional, o Carl Youngblood , que é um gerente de projetos Rails na consultoria americana Surgeworks.

A inscrição para o evento custa R$20, sendo que este valor será integralmente doado a uma instituição de caridade chamada Cotolengo.

Para maiores informações sobre a programação das palestras, ou sobre a instituição Cotolengo, basta acessar o site oficial do Rails for Kids 2007.

Enfim, trate-se de uma iniciativa altamente válida, pois além de ser uma ótima oportunidade para aprender com aqueles que efetivamente trabalham com o Ruby on Rails, poderemos ainda ajudar alguém. Portanto, aproveitem que hoje é o último dia e se inscrevam!

P.S.: Eu sei que eu já havia dito tudo isso antes, mas, como a causa é boa, não custa reforçar.


Comentários Recentes | Posts Recentes


designed by: Website Builder | Coded by: Blog Directory | Provided by: Wedding photojournalism chicago
bottom