Skip to content

Instantly share code, notes, and snippets.

View rubeniskov's full-sized avatar
:octocat:
decrypting matrix

Rubén López Gómez rubeniskov

:octocat:
decrypting matrix
View GitHub Profile
var push = function(arr, val, cmp) {
var low = 0,
high = arr.length;
var mid = -1,
c = 0;
while (low < high) {
mid = parseInt((low + high) / 2);
c = cmp(arr[mid], val);
if (c < 0) {
low = mid + 1;
function parseArgs(args, nargs, reverse) {
var argv = Array.prototype.slice.call(args),
argf = new Array(nargs | 0).fill(undefined),
diff = argv.length - argf.length;
return argf.map(function(value, index) {
return argv[reverse === true ? (argv.length - 1 - (index + diff)) + diff : index + diff];
});
}
@rubeniskov
rubeniskov / rasberrypi_backup_and_restore_img.sh
Created January 18, 2017 08:36
RasberryPI Backup and Restore img
# Change /dev/rdisk2 for your sd card listed by command
diskutil list
# Backup
sudo dd if=/dev/rdisk2 bs=1m | gzip > ~/Desktop/pi.gz
# Restore
gzip -dc ~/Desktop/pi.gz | sudo dd of=/dev/rdisk2 bs=1m
@rubeniskov
rubeniskov / promise_waterfall_sync_all_spread.js
Created January 20, 2017 13:33
promise_waterfall_sync_all_spread
function waterfall(resolvers, cdeferred) {
let deferred = cdeferred || q.defer(),
promise, resolver;
return (function loop(index) {
((resolver = resolvers[index]) &&
typeof(resolver) === 'function' &&
(promise = resolver()) &&
promise.then &&
promise.then(function() {
loop(index + 1)
function parseJwt (token) {
return token.split('.')
.map((base64Url) => {
return base64Url.replace('-', '+').replace('_', '/');
})
.map((base64) => {
try {
return JSON.parse(window.atob(base64));
} catch (ex){
return base64
{
"$schema": "http://json-schema.org/draft-06/schema#",
"definitions": {
"CountryCodes": {
"type": "string",
"enum": [
"AF", "AL", "DZ", "AS", "AD",
"AO", "AI", "AG", "AR", "AM",
"AW", "AU", "AI", "AZ", "BH",
"BD", "BB", "BY", "BE", "BZ",
@rubeniskov
rubeniskov / FFMPEG-GifENC
Created December 11, 2017 21:17
gifenc.sh
#!/bin/sh
#SOURCE: http://blog.pkh.me/p/21-high-quality-gif-with-ffmpeg.html
palette="/tmp/palette.png"
filters="fps=15,scale=320:-1:flags=lanczos"
ffmpeg -v warning -i $1 -vf "$filters,palettegen" -y $palette
ffmpeg -v warning -i $1 -i $palette -lavfi "$filters [x]; [x][1:v] paletteuse" -y $2
@rubeniskov
rubeniskov / macos-curl-ssl-installation.md
Created April 11, 2018 21:40
Macos Curl with SSL support Installation

Install OpenSSL

./Configure darwin64-x86_64-cc --prefix=/usr/local/openssl

make
sudo sh -c 'security find-certificate -a -p /Library/Keychains/System.keychain > /usr/local/openssl/ssl/cert.pem'
sudo sh -c 'security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain >> /usr/local/openssl/ssl/cert.pem'

Install Curl with SSL

@rubeniskov
rubeniskov / gist:108ba2073a3858641e0f6497c0259cb0
Last active April 13, 2018 22:51
docker-service-proxy.sh
docker run -v /var/run/docker.sock:/var/run/docker.sock -d --restart=always --privileged -p 2375:2375 --name docker-sock-proxy docksal/socat
@rubeniskov
rubeniskov / print_stdin_table.awk
Last active May 14, 2022 17:03
awk -v argv="Column1%20 Column2%3"
#!/bin/awk
function max(a, b){
return (a > b) ? a : b
}
function draw_splitter(column_sizes){
for(i = 1; i <= length(column_sizes); i++) {
str_splitter=sprintf("%"column_sizes[i]"s", "");
gsub(/ /, "-", str_splitter);