Skip to content

Instantly share code, notes, and snippets.

View tjackiw's full-sized avatar

Thiago Jackiw tjackiw

  • San Francisco Bay Area
View GitHub Profile

Keybase proof

I hereby claim:

  • I am tjackiw on github.
  • I am tjackiw (https://keybase.io/tjackiw) on keybase.
  • I have a public key ASBDkutB_ZhyEBiv8XHeWwPGBUz_-h5cVm362W9E0N9-uQo

To claim this, I am signing this object:

@tjackiw
tjackiw / gist:4335648
Created December 19, 2012 09:57
Design Patterns: Observer Pattern in Ruby
car = Car.new(2300)
car.log(100)
=> "The car has logged 100 miles, totaling 2400 miles traveled."
car.log(354)
=> "The car has logged 354 miles, totaling 2754 miles traveled."
car.log(300)
=> "The car has logged 300 miles, totaling 3054 miles traveled."
=> "The car needs to be taken in for service!"
@tjackiw
tjackiw / gist:4335632
Created December 19, 2012 09:51
Design Patterns: Observer Pattern in Ruby
class Notifier
def update(car, miles)
puts "The car has logged #{miles} miles, totaling #{car.mileage} miles traveled."
puts "The car needs to be taken in for service!" if car.service <= car.mileage
end
end
require 'observer'
class Car
@tjackiw
tjackiw / gist:4335615
Created December 19, 2012 09:47
Design Patterns: Observer Pattern in Ruby
class Notifier
def update(car, miles)
puts "The car has logged #{miles} miles, totaling #{car.mileage} miles traveled."
puts "The car needs to be taken in for a service!" if car.service <= car.mileage
end
end
@tjackiw
tjackiw / gist:4335614
Created December 19, 2012 09:46
Design Patterns: Observer Pattern in Ruby
class Car
attr_reader :mileage, :service
def initialize(mileage = 0, service = 3000)
@mileage, @service = mileage, service
end
def log(miles)
@mileage += miles
end
@tjackiw
tjackiw / gist:4335345
Created December 19, 2012 08:43
Using a Graph Database with Ruby. Part II: Integration
$ ruby neo4j_example.rb
@tjackiw
tjackiw / gist:4335319
Created December 19, 2012 08:37
Using a Graph Database with Ruby. Part II: Integration
require 'rubygems'
require 'bundler/setup'
require 'neo4j'
Neo4j::Transaction.run do
me = Neo4j::Node.new(:name => 'Me', :age => 31)
bob = Neo4j::Node.new(:name => 'Bob', :age => 29)
mark = Neo4j::Node.new(:name => 'Mark', :age => 34)
mary = Neo4j::Node.new(:name => 'Mary', :age => 32)
john = Neo4j::Node.new(:name => 'John', :age => 33)
@tjackiw
tjackiw / gist:4335305
Created December 19, 2012 08:34
Using a Graph Database with Ruby. Part II: Integration
require 'rubygems'
require 'bundler/setup'
require 'neo4j'
Neo4j::Transaction.run do
me = Neo4j::Node.new(:name => 'Me', :age => 31)
bob = Neo4j::Node.new(:name => 'Bob', :age => 29)
mark = Neo4j::Node.new(:name => 'Mark', :age => 34)
mary = Neo4j::Node.new(:name => 'Mary', :age => 32)
john = Neo4j::Node.new(:name => 'John', :age => 33)
@tjackiw
tjackiw / gist:4335297
Created December 19, 2012 08:32
Using a Graph Database with Ruby. Part II: Integration
require 'rubygems'
require 'bundler/setup'
require 'neo4j'
Neo4j::Transaction.run do
# our code here
end
@tjackiw
tjackiw / neo4j_example.rb
Created December 19, 2012 08:23
Using a Graph Database with Ruby. Part II: Integration
require 'rubygems'
require 'bundler/setup'
require 'neo4j'
Neo4j::Transaction.run do
me = Neo4j::Node.new(:name => 'Me', :age => 31)
bob = Neo4j::Node.new(:name => 'Bob', :age => 29)
mark = Neo4j::Node.new(:name => 'Mark', :age => 34)
mary = Neo4j::Node.new(:name => 'Mary', :age => 32)
john = Neo4j::Node.new(:name => 'John', :age => 33)