Skip to content

Instantly share code, notes, and snippets.

View rtacconi's full-sized avatar

Riccardo Tacconi rtacconi

View GitHub Profile
@rtacconi
rtacconi / rest-client-php.php
Created July 10, 2012 15:15
rest-client-php example
$res = $c->post(
'http://api.example.com/create', json_encode(array('name' => 'foobar'))
);
@rtacconi
rtacconi / compile_php5217_fcgi.txt
Created August 29, 2012 08:13
Compile PHP 5.2.17 for FCGI use
./configure --prefix=/usr/local/php5.2.17 \
--with-config-file-path=/etc/php5.2.17 \
--with-config-file-scan-dir=/etc/php5.2.17/php.d \
--enable-fastcgi \
--enable-discard-path \
--enable-force-cgi-redirect \
--with-layout=PHP \
--with-pear \
--enable-calendar \
--enable-bcmath \
@rtacconi
rtacconi / activerecord_ndb_default.rb
Created August 31, 2012 09:37
Set default Mysql engine to NDB for ActiveRecord
module ActiveRecord
module ConnectionAdapters
class MysqlAdapter < AbstractAdapter
def create_table(table_name, options = {}) #:nodoc:
super(table_name, options.reverse_merge(:options => "ENGINE=NDB"))
end
end
end
end
@rtacconi
rtacconi / php.rb
Created September 9, 2012 16:44
PHP 5.2 Formula for Homebrew
require 'formula'
def mysql_installed?
`which mysql_config`.length > 0
end
class Php5.2.17 < Formula
url 'http://ca2.php.net/distributions/php-5.2.17.tar.gz'
homepage ''
md5 '04d321d5aeb9d3a051233dbd24220ef1'
@rtacconi
rtacconi / meteor_update_dollar_error
Created December 9, 2012 08:38
meteor update error
Exception while simulating the effect of invoking '/documents/update'
Error
Error: can't append to array using string field name [$]
at Error (<anonymous>)
at Function.LocalCollection._findModTarget (http://localhost:3000/packages/minimongo/modify.js?e7f02f0df0bff9f0b97236f9548637b7ede1ac74:90:15)
at Function.LocalCollection._modify (http://localhost:3000/packages/minimongo/modify.js?e7f02f0df0bff9f0b97236f9548637b7ede1ac74:50:38)
at LocalCollection._modifyAndNotify (http://localhost:3000/packages/minimongo/minimongo.js?d21efb753206850b6ada27b1fc327307eb2f2b9c:428:19)
at LocalCollection.update (http://localhost:3000/packages/minimongo/minimongo.js?d21efb753206850b6ada27b1fc327307eb2f2b9c:394:12)
at m.(anonymous function) (http://localhost:3000/packages/mongo-livedata/collection.js?2240f86c7b1195971d25f481e4a6c31da43bc0c1:378:36)
at http://localhost:3000/packages/livedata/livedata_connection.js?ff27a501d94ef196d150a04e346edbcbdcccdb1a:537:25
@rtacconi
rtacconi / wsrep_cluster_size.rb
Created January 19, 2013 17:41
Nagios plugin to be executed with NPRE to check the number of clusters online, the number should be equal to the number of nodes you have. this script has the number of nodes hardcoded to 3. The script needs the Myql2 gem: gem install mysql2
#!/usr/bin/env ruby
#
# WSREP_CLUSTER_SIZE Plugin
#
# $ ./wsrep_cluster_size.rb -w 50 -c 75
#
require 'rubygems'
require 'mysql2'
punctuation = %w{; = - _ . , ? ! $}
letters = [('a'..'z'), ('A'..'Z')].map { |i| i.to_a }.flatten
"#{punctuation.sample}#{(0...10).map { letters[rand(letters.length)] }.join}#{rand(1000)}"
@rtacconi
rtacconi / gist:d007a23c453ad34ad70c
Created September 3, 2014 16:33
Install Development Tools
# just in case you work in a server were you do not have package groups defined. RHEL / CentOS
# yum groupinstall 'Development Tools'
yum -y install autoconf automake binutils bison flex gcc gcc-c++ gettext libtool make patch pkgconfig redhat-rpm-config rpm-build rpm-sign
@rtacconi
rtacconi / gist:b8cae8ddb23380b234c1
Last active August 29, 2015 14:09
return the number of combinations, of any length, that add up to that target_sum
def combinations(array)
m = array.length
(1...2**m).map do | n |
(0...m).select { | i | n[i] == 1 }.map { | i | array[i] }
end
end
def calculate_combinations(comb_array, target_sum=15)
combinations(comb_array).map {|a| [a, a.inject(:+)]}.select {|v| v if v.last == target_sum}
end
@rtacconi
rtacconi / gist:88f711f8120aa7ba33e7
Created February 6, 2015 11:58
Euler's predicate
a = 95800
b = 217519
c = 414560
d = 422481
a**4 + b**4 + c**4 == d**4 # => true