Jan 28 2009

Apresentação e Screencasts sobre Sinatra

Category: Ruby,SinatraTailor R. Fontela @ 9:26 pm

Mais uma dica sobre dois excelentes materiais que encontrei sobre Sinatra, o primeiro é bastante recomendável e mesmo que você não tenha lido ou praticado alguma coisa sobre o assunto anteriormente assista, já o segundo material é a série de Screencasts iniciados pela Pragmatic Programmers, este tem um objetivo mais didatico e é igualmente interessante, acredito que esta série irá colaborar para que mais pessoas conheçam Sinatra, ambos materiais são em inglês.


RubyConf 08: Lightweight Web Services
Adam Wiggins e Blake Mizerany apresentam os projetos Sinatra e RestClient na RubyConf 2008. A palestra aborda detalhes sobre filosofia e reflexões no uso de Sinatra em aplicações reais.

Classy Web Development with Sinatra
Adam Keys iniciou recentemente esta série de screencasts sobre Sinatra. Os dois primeiros episódios são respectivamente sobre a criação de uma pequena aplicação web e a criação de um serviço REST. Cada episódio é cobrado o valor de cinco dolares.

Até a próxima.

Tags: , , , , ,


Jan 06 2009

Utilize sinatra-gen para criar suas aplicações Sinatra

Category: Ruby,SinatraTailor R. Fontela @ 1:59 am

O sinatra-gen cobre um aspecto que inicialmente senti falta no framework Sinatra, que era o de ter um esqueleto básico da aplicação gerado automaticamente sem muito esforço, isso talvez devido ao fato de eu já estar mal acostumado com o Rails.

Antes de iniciar a brincadeira:

 sudo gem install quirkey-sinatra-gen -s http://gems.github.com

Usei direto do github porque só “sudo gem install sinatra-gen” não funcionou por aqui.

No meu caso foram necessárias também as gems newgem e rubigen, talvez pra você também seja necessário:

sudo gem install newgem rubigen

Após instalado, utilize então o sinatra-gen para gerar sua primeira aplicação sinatra:

sinatra-gen myapp --tiny

E lá estará a seguinte estrutura:

myapp-sinatra-gen1

Gerando apenas a estrutura mínima com arquivo da aplicação, rakefile e rakup (lembrando que esses dois últimos não são necessarios, o verdadeiro mínimo necessário seria apenas o app.rb).

Se quiser:

 ruby app.rb

Ira rodar a aplicação que estará disponível em http://localhost:4567

Para criar um ponto de partida “um pouco” mais elaborado do que a anterior, com algumas rotas já criadas, testes para as rotas utilizando seu framework de teste favorito e escolhendo o seu padrão favorito para as views, será então algo parecido com isso:

sinatra-gen myfirstapp get:/ post:/:id put:/:update delete:/:clear --test=shoulda --views=haml

Isto irá lhe gerar a seguinte estrutura:

tree_myfirstapp_sinatra

Praticamente tudo pronto para começar a festa, arquivos de config, arquivo da aplicação, arquivo de módulo da aplicação, arquivos de view .haml, um esqueleto inicial de testes com as rotas indicadas já criadas.

Opções disponíveis:

-v, --version                Mosta a versão do sinatra-gen e finaliza.
-d, --vendor                 Copia a última versão do sinatra para vendor/sinatra
--tiny                       Cria somente os arquivos mínimos.
--init                       Inicializa um repositório git
--cap                        Adiciona no diretório de configuração o básico para capistrano em deploy.rb
--scripts                    Instala os scripts rubigen  (script/generate, script/destroy)
--git /diretório/do/git      Especifica um diretório diferente para 'git'
--test=test_framework        Especifica o framework de testes  (unit (padrão)/rspec/spec/shoulda)
--views=view_framework       Especifica o framework das views (erb (padrão)/haml/builder)

Se na sua opinião tiver alguma coisa ainda faltando, “fork it now” ;)

Tags:


Jan 05 2009

Video demonstrando simples aplicação em Sinatra

Category: Ruby,SinatraTailor R. Fontela @ 11:03 pm

Segue um video, em inglês, que encontrei demonstrando a construção de uma aplicação em menos de 10 minutos com a utilização do framework sinatra feito por faithfulgeek.

Ta certo que a aplicação é bem simples, mas chamo a atenção para o código fonte resultante que ficou bem enxuto e pequeno, apesar de eu não ter gostado daquela história de ter deixado tudo misturado no mesmo arquivo, valeu pela intenção do exemplo.


IsItCodeMashYet – Web app in under 10 minutes using the Sinatra web framework from faithfulgeek on Vimeo

Os códigos fontes estão disponiveis no GitHub.

Endereço do site criado no video: http://isitcodemashyet.com/

Tags:


Jan 02 2009

Tradução do “Learn you a Haskell for Great Good”

Category: Haskell,ProjetosTailor R. Fontela @ 3:00 pm

Para quem deseja aprender Haskell, estou trabalhando para disponibilizar uma versão em português do “Learn you a Haskell for Great Good!” ( traduzido como “Aprender Haskell será um grande bem para você!” ) que estará disponível em http://haskell.tailorfontela.com.br/

Pouco tempo atrás comecei a estudar sobre linguagens de programação funcionais e então cheguei a Haskell como uma das opção disponíveis e através de dicas recebidas no canal do Freenode acabei chegando no excelente material escrito por Miran Lipovača, disponibilizado sob licença Creative Commons.
O projeto ainda esta em versão Beta e o Miran esta acrescentando aos poucos mais alguns capítulos, porém todos que estão publicados até o momento já são muito bons e dão uma boa noção para quem é iniciante em Haskell.

A leitura é bem tranquila e o Miran se inspirou um pouco no famoso Poignant Guide to Ruby do Why the Lucy Stiff, leitura já conhecida e traduzida pela comunidade Ruby on Rails brasileira.

O Miran Lipovača é bacana pra caramba e inclusive já me passou o acesso ao repositório oficial do projeto para que eu possa sempre ter as últimas atualizações e também publicar possíveis correções de erros no projeto, ele também teve a gentileza e fez questão de fazer um desenho personalizado para a primeira página do livro em português.
O principal objetivo desse livro é passar uma boa noção da linguagem de uma forma simples e acessível sem muitas formalidades para iniciantes no assunto, servindo de preferência como uma das fontes a serem utilizadas para aprender haskell e não a única.

O projeto de tradução esta aberto para quem tiver interesse em contribuir, toda ajuda será bem vinda, seja traduzindo ou enviando revisões.
Endereço do projeto no GitHub:
http://github.com/taylorrf/learnhaskell/tree

Conforme forem surgindo novidades sobre o projeto irei publicar por aqui, espero que o trabalho seja concluido em breve para que todos interessados em descobrir a linguagem possam se beneficiarem dela de alguma forma, seja usando-a no seu dia-a-dia ou simplesmente ampliando seus conhecimentos e paradigmas em programação, afinal de contas conhecimento nunca é demais e nunca pesa.

Tags: