News by Twitter: Github, simpleform, html+css, screencasts, aplicações desktop com Ruby e muito mais

Este é o primeiro post da mais nova série do blog: News by twitter. Será o resumo das twittadas que achei interessante.

GitHub com novos planos e features

O GitHub esta com uma nova forma de administração das contas. Existe agora a opção de Organização onde pode-se estar centralizando repositórios, pagamentos e administração de permissões. Confira o post Introducing Organization.

SimpleForm: forms de uma maneira simples

O pessoal da Plataforma lançou uma nova gem para auxiliar a produção de forms. O README do SimpleForm diz que a principal meta é não interferir na forma como é produzido o layout do seu form e boa parta da DSL provêm do Formtastic. Confira o post SimpleForm: forms made easy.

95 Cartões de Visitas

Quer ter inspiração para os seus novos cartões? Confira o post 95 Beautiful Business Card Designs

24 Artigos de HTML + CSS

Ótimos artigos que cobre RGBA, CSS Animations, CS3, HTML5 e mais. Confira o site 24 Ways to imperss your friends

Screencast pagos no AkitaOnRails.com

O Fábio Akita agora esta com screencasts pagos. Gostei muito da idéia pois trará suporte necessário para se continuar o ótimo trabalho que ele vem fazendo. O seu piloto é o Entenda Software de Forma Correta que foi uma de suas palestras ministradas e transformadas para o formato de screencast. O valor é muito bom também, apenas R$4,99. Confira o post [Screencast] Entenda Software da Maneira Correta.

Aplicações Desktop com Ruby

No encontro do guru-sp, o Fernando Ribeiro fez uma apresentação rápida (lightining talk) sobre o shoes na Caelum. Confira o post Desenvolvimento de interface para aplicações desktop

Pomodoro Technique é com o PomoDo

Para quem já conhece a técnica é só baixar o PomoDo e começar a produzir. Para quem quer apreender é só conferir o post Seja produtivo consumindo tomates

Não percam a leitura:

Eu quebrei o código.

Podcast #8 – Entrevista Com Aniche sobre TDD

Que ferramentas você vai usar na hora de programar?

Sobre comprometimento como buzzword

40 Creative 404 Error Pages to Inspire You

Conheça o Ruby

O Ruby é uma linguagem que nasceu em 1993 no Japão por Yukihiro Matsumoto, ou Matz como é conhecido no ocidente. Este será uma série de posts sobre a linguagem Ruby e seu framework Rails, onde tem como principal biografia:

Para que você possa instalar o Ruby em sua máquina deverá:

  • Windows : Entrar no site http://www.ruby-lang.org/pt/, baixar o instalável e executá-lo.
  • Linux: yum install ruby (ou apt-get install ruby ou zypper install ruby, a depender da sua distribuição)
  • Mac: port install ruby

Nos sistemas UNIX (Mac e Linux) o Ruby já vem instalado por padrão, na sua grande maioria. Após a instalação iremos ao console e digitaremos irb para abir o console do Ruby.

No Ruby tudo é um objeto, uma instância de uma classe:

"123".class          # String
1.class              # Fixnum
999999999999.class   # Bignum
1.1.class            # Float
true.class           # TrueClass
false.class          # FalseClass
[].class             # Array
{}.class             # Hash
false.class.class    # Class

Se tudo é um objeto, então tudo são métodos:

1 + 1     # 2
1.+(1)    # 2

Devido a sua característica de metaprogramação podemos inserir e modificar métodos durante tempo de execução.

1+1                      # 2
1.class                  # Fixnum
class Fixnum
  def + outro_numero
    self - outro_numero
  end
end                      # nil
2+1                      # 1

Como puderam perceber o método + foi modificado e o seu retorno agora é a subtração de dois números.

O Ruby não necessita de tipagem de variável. Ele é espero suficiente para entender que ao receber determinado valor a variável é tipada com a classe de seu valor. Isto não significa que Ruby é uma linguagem de baixa tipagem, pois ao ser determinado valor a variável apenas responde aos métodos de sua classe.

var = 1         # 1
var.class       # Fixnum
var = "123"     # "123"
var .class      # String
var + 1         #TypeError: can't convert Fixnum into String
                #from (irb):5:in `+'
                #from (irb):5
                #from :0

O Ruby não possui escopo de variável, isso é feito por meio de símbolos.

  • nome =  Variável local
  • @nome = Variável de instância
  • @@nome = Variável de class
  • $nome = Variável global