Skip to content

Instantly share code, notes, and snippets.

Sjors Provoost Sjors

Block or report user

Report or block Sjors

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
Sjors / bitcoin-pay.rb
Last active Sep 11, 2019
This script demonstrates how a bitcoin transaction is created and signed. Just pass in your own address and private key and it will prepare a transaction for you. You can then copy & paste that transaction into a webservice like Blockchain to send it. I wrote this mostly to understand better how it works. I sometimes had to "cheat" and look at t…
View bitcoin-pay.rb
#!/usr/bin/env ruby
require 'open-uri'
require 'JSON'
require 'digest/sha2'
require 'pry'
require 'bigdecimal'
require 'bitcoin' # Because I need to cheat every now and then
# Usage:
# gem install pry json ffi ruby-bitcoin
Sjors / gist:5356176
Last active Dec 16, 2015
Observe and notify user if app has moved
View gist:5356176
// Observe and notify user if app has moved:
[[NSNotificationCenter defaultCenter] addObserverForName:@"AppHasMoved"
usingBlock:^(NSNotification *note) {
// Check if we've already told the user recently
NSDate *appHasMoved = [[NSUserDefaults standardUserDefaults] valueForKey:@"AlertAppHasMoved"];
int interval = 7*24*60*60;
if (appHasMoved == nil ||
[appHasMoved compare:[[NSDate date] dateByAddingTimeInterval:-interval]] == NSOrderedAscending) {
View gist:5356100
NSNumber* appHasMoved = [JSON objectForKey:@"app_has_moved"];
if(appHasMoved != nil && [appHasMoved boolValue]) {
// Notify the user that the app has moved.
[[NSNotificationCenter defaultCenter] postNotificationName:@"AppHasMoved"
@"new_app_location" : [JSON objectForKey:@"new_app_location"],
@"app_has_moved_message" : [JSON objectForKey:@"app_has_moved_message"],
@"app_has_moved_title" : [JSON objectForKey:@"app_has_moved_title"]
View gist:5356032
'app_has_moved' : true,
'new_app_location' : "",
'app_has_moved_message' : "In order to stay current, please re-download the app from this location. Apologies for the inconvenience."
Sjors / Gemfile.lock
Created Apr 14, 2012
Gemfile on April 14
View Gemfile.lock
remote: git://
revision: 49bfed5d91b0afb06390fd50f4e058662f342907
flying-sphinx (0.6.4)
faraday_middleware (~> 0.7.0)
multi_json (>= 1.0.1)
net-ssh (>= 2.0.23)
rash (~> 0.3.0)
riddle (>= 1.5.0)
Sjors / robot_user_agents.rb
Created Aug 3, 2011
Recognize search engines and spammers using
View robot_user_agents.rb
require 'net/http'
require 'xmlsimple'
url = ""
xml_data = Net::HTTP.get_response(URI.parse(url)).body
data = XmlSimple.xml_in(xml_data)
agents = data['user-agent'].select{|agent| type = agent["Type"].first; type.include?("R") || type.include?("S")}
agent_names = agents.collect {|agent| agent["String"].first}
View Gemfile.rb
source ''
gem 'rails', '>=3.0.0'
gem 'rake', ">=0.9.2"
gem 'authlogic', :git => 'git://', :branch => 'rails3'
gem 'cancan', ">=1.3.2"
gem 'haml',">=3.0.9"
gem 'rails3-jquery-autocomplete', '0.3.2'
gem 'paperclip'
gem 'json'
Sjors / Compile output for contact.m for iCuke HTTP server
Created Feb 9, 2011
Output of compiling contact.m for the iCuke HTTP server
View Compile output for contact.m for iCuke HTTP server
Sjors-Macbook:modules sjors$ icuke-module 4 contact.m
xcrun -sdk iphonesimulator4.2 gcc -I. -I/usr/local/lib/ruby/gems/1.8/gems/iCuke-0.6.3/ext/iCuke/sdk4.2 -I/usr/local/lib/ruby/gems/1.8/gems/iCuke-0.6.3/ext/iCuke/sdk4.2/json -arch i386 -pipe -ggdb -std=c99 -DTARGET_OS_IPHONE -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -F/System/Library/PrivateFrameworks -D__IPHONE_OS_VERSION_MIN_REQUIRED=40000 -x objective-c -fobjc-abi-version=2 -fobjc-legacy-dispatch -c -o contact.o contact.m
xcrun -sdk iphonesimulator4.2 gcc -I. -I/usr/local/lib/ruby/gems/1.8/gems/iCuke-0.6.3/ext/iCuke/sdk4.2 -I/usr/local/lib/ruby/gems/1.8/gems/iCuke-0.6.3/ext/iCuke/sdk4.2/json -arch i386 -pipe -ggdb -std=c99 -DTARGET_OS_IPHONE -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -F/System/Library/PrivateFrameworks -D__IPHONE_OS_VERSION_MIN_REQUIRED=40000 -Xlinker -objc_abi_version -Xlinker 2 -dynamiclib -o contact-sdk4.2.dylib -undefined dynamic_l
You can’t perform that action at this time.