Skip to content

Instantly share code, notes, and snippets.

Carl Fyffe sixty4bit

Block or report user

Report or block sixty4bit

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@sixty4bit
sixty4bit / skuify_shopify.rb
Last active Aug 18, 2017
Assign SKUs to Shopify Products
View skuify_shopify.rb
require 'shopify_api'
API_KEY = 'enteryourkeyhere'
PASSWORD = 'enteryourpasswordhere'
SHOP_NAME = 'yourshopname'
shop_url = "https://#{API_KEY}:#{PASSWORD}@#{SHOP_NAME}.myshopify.com/admin"
ShopifyAPI::Base.site = shop_url
i = 11211316 # start with ab1234
product_count = ShopifyAPI::Product.count
View ruby_threads_forks.rb
batches = Queue.new
Order.select(:id).find_in_batches do |batch|
batches << batch.map(&:id)
end
cpu_available.times do
Thread.new do
while(ids = batches.pop)
pid = Process.fork do
Sunspot.index! Order.includes(:product).find(ids)
end
View ruby_fork.rb
cpu_available = 5
Order.includes(:products).find_in_batches do |batch|
batch.in_groups(cpu_available, false) do |group|
Process.fork do
Sunspot.index! group
end
end
Process.waitall
end
@sixty4bit
sixty4bit / SexyOrObscure.rb
Created Nov 2, 2014
Active Record with state.
View SexyOrObscure.rb
{ active: 'activate!', inactive: 'deactivate!', blocked: 'block!', suggested: 'suggest!' }.each do |state_name, trigger_name|
define_singleton_method(state_name) { where(state: state_name.to_s) }
define_method(trigger_name.to_sym) { update_attribute(state: state_name.to_s) }
end
View keybase.md

Keybase proof

I hereby claim:

  • I am sixty4bit on github.
  • I am sixty4bit (https://keybase.io/sixty4bit) on keybase.
  • I have a public key whose fingerprint is FF61 67DD BE84 A843 36F0 558C 04F8 F0CE DF1F 9DEB

To claim this, I am signing this object:

View twitter_search_example.rb
@stream = Twitter::Streaming::Client.new do |config|
config.consumer_key = ENV['TWITTER_CONSUMER_KEY']
config.consumer_secret = ENV['TWITTER_CONSUMER_SECRET']
config.access_token = ENV['TWITTER_ACCESS_TOKEN']
config.access_token_secret = ENV['TWITTER_ACCESS_TOKEN_SECRET']
end
keywords = ['sochi', 'olympics']
@stream.filter(:track => keywords.join(",")) do |object|
if object.is_a?(Twitter::Tweet)
puts "#{object.id} #{object.user.screen_name} - #{object.text}"
@sixty4bit
sixty4bit / oracle_1000_ids_test.rb
Created Nov 10, 2011
Oracle can't handle more than 1000 values in an IN clause
View oracle_1000_ids_test.rb
require 'rubygems'
gem 'activerecord', '3.0.4'
gem 'activerecord-oracle_enhanced-adapter', '1.4.0'
require 'active_record'
ActiveRecord::Base.establish_connection( :adapter => 'oracle_enhanced', :database => 'orcl',
:username => 'hr', :password => 'hr')
ActiveRecord::Base.connection.instance_eval do
drop_table :jobs rescue nil
@sixty4bit
sixty4bit / gist:867598
Created Mar 12, 2011
Iterative Improvement
View gist:867598
// Make all lines comments first
BufferedReader inputFile = new BufferedReader(new FileReader("input.txt"));
String line = null;
while((line=inputFile.readLine())!=null){
System.out.println("comment found: " + line);
}
// Now find email addresses
BufferedReader inputFile = new BufferedReader(new FileReader("input.txt"));
String line = null;
View gist:418570
class Object
# call send on nested objects.
# example: nested_send(blog_post, 'author.name') #=> 'Bob'
# returns nil if any call returns nil
def nested_send(method_name)
val = self
method_names = method_name.split('.')
method_names.each do |m|
return nil unless val
View commify-ruby.rb
class Numeric
# Usage: 1234.commify # => '1,234'
def commify
self.to_s.reverse.scan(/(?:\d*\.)?\d{1,3}-?/).join(',').reverse
end
end
You can’t perform that action at this time.