Skip to content

Instantly share code, notes, and snippets.

View caferrari's full-sized avatar

Carlos A. Ferrari caferrari

View GitHub Profile
@caferrari
caferrari / Sftp.php
Last active August 29, 2015 14:02
File Uploader
<?php
namespace Console\Uploader\Strategy;
use \Console\Uploader\Exception\ConnectionFailedException;
use \Console\Uploader\Exception\InvalidCredentialException;
class Sftp implements StrategyInterface
{
@caferrari
caferrari / ProbabilityQueue.js
Last active August 29, 2015 14:02
An probability queue in Javascript
var ProbabilityQueue = (function() {
var obj = function() {
this.objects = [];
this.priorities = [];
this.max = 0;
this.length = 0;
}
obj.prototype.enqueue = function(chance, object) {
@caferrari
caferrari / Resolver.php
Last active August 29, 2015 14:00
Dependency resolver
<?php
class Resolver
{
protected $data;
protected $queue = [];
protected $loaded = [];
public function __construct($data)
@caferrari
caferrari / prefs.json
Created March 19, 2014 10:35
Sublime 3 Preferences
{
"color_scheme": "Packages/User/Monokai (SL).tmTheme",
"ensure_newline_at_eof_on_save": true,
"fallback_encoding": "UTF-8",
"highlight_line": true,
"shift_tab_unindent": true,
"translate_tabs_to_spaces": true,
"trim_trailing_white_space_on_save": true
}
<?php
function permutate($array) {
$current = array_shift($array);
$result = array();
if ($array) {
foreach (permutate($array) as $permutation) {
foreach ($current as $value) {
'use strict';
var Translator = function() {
this.dict = 'ka,tu,mi,te,ku,lu,ji,ri,ki,zu,me,ta,rin,to,mo,no,ke,shi,ari,chi,do,ru,na,mei,fu,ra'.split(',');
};
Translator.prototype.parse = function(str) {
var that = this;
return str.split('').reduce(function(r, c) {
var chr = c.toLowerCase().charCodeAt(0) - 97;
@caferrari
caferrari / AbstractParser.php
Last active January 4, 2016 06:08
Strategy Pattern translator
<?php
require_once 'Parseable.php';
abstract class AbstractParser implements Parseable {
public function parse($str)
{
$dict = $this->dict;
return array_reduce(str_split($str), function ($r, $c) use ($dict) {
<?php
$argc != 2 && exit('Use: php japaname.php yourname' . PHP_EOL);
$dict = explode(',', 'ka,tu,mi,te,ku,lu,ji,ri,ki,zu,me,ta,rin,to,mo,no,ke,shi,ari,chi,do,ru,na,mei,fu,ra');
$japaname = array_reduce(str_split($argv[1]), function ($r, $c) use ($dict) {
$chr = ord(strtolower($c)) - 97;
return $r . (array_key_exists($chr, $dict) ? $dict[$chr] : ' ');
});
@caferrari
caferrari / blockchain.php
Created January 8, 2014 20:11
An extremely simple example of what is bitcoin mining and the blockchain
<?php
class Block {
public $prefix;
public $microtime;
public $trash;
public $dificulty = 0;
public $hash;