Skip to content

Instantly share code, notes, and snippets.

View rdsubhas's full-sized avatar

Subhas Dandapani (RDX) rdsubhas

View GitHub Profile
@rdsubhas
rdsubhas / gist:5546071
Last active December 17, 2015 03:49
RapidFTR Addon
# This is a marker for all addons, be it ExportTask or anything else
# All these will become class methods, and not instance methods
module Addon
def enabled?
@@enabled
end
def enable
@@enabled = true
end
@rdsubhas
rdsubhas / data.json
Created May 19, 2014 14:31
sample_data
{
"first_name" : "first",
"last_name" : "last",
"gender" : "M",
"birthdate" : "1990-01-01",
"father_name" : "father",
"mother_name" : "mother",
"caregiver_name" : "caregiver",
"caregiver_relationship" : "aunt",
@rdsubhas
rdsubhas / gnc-js-api
Last active November 28, 2021 14:27
GeekNight Javascript API
{ "products": [{ "id": 1, "name": "Apple iPad", "description": "Discover the world of iPad. Introducing iPad Air and the iPad mini with Retina display.", "price": 123 }, { "id": 2, "name": "Galaxy S5", "description": "Samsung Galaxy S5 smartphone with 5.10-inch 1080x1920 display.", "price": 234 }, { "id": 3, "name": "Moto X", "description": "Moto X is ready when you are. It responds to your voice—no touching necessary.", "price": 444 }, { "id": 4, "name": "iPhone 5S", "description": "With a new fingerprint identity sensor, a 64-bit A7 chip and better iSight camera", "price": 555 }, { "id": 5, "name": "HTC One", "description": "HTC One (M8) smartphone with 5.00-inch 1080x1920 display", "price": 287 }, { "id": 6, "name": "LG G3", "description": "LG G3 smartphone with 5.50-inch 1440x2560 display and 2.46GHz processor", "price": 321 } ] }
@rdsubhas
rdsubhas / pngout.rb
Created August 10, 2015 13:43
homebrew pngout
require 'formula'
class Pngout < Formula
url 'http://static.jonof.id.au/dl/kenutils/pngout-20150319-darwin.tar.gz'
homepage 'http://www.jonof.id.au/kenutils'
sha256 'ff7905970457ee5c96776b94e0bf8a22b41fe05fc0cededb16da1c2c0aa5c65d'
version '20150319'
def install
prefix.install Dir['*']
@rdsubhas
rdsubhas / callbacks.js
Last active October 1, 2015 18:12
es6-blog-callbacks.js
var request = require('request');
var url1='http://httpbin.org/', url2=url1, url3=url1, url4=url1;
function foo(finalCallback) {
request.get(url1, function(err1, res1) {
if (err1) { return finalCallback(err1); }
request.post(url2, function(err2, res2) {
if (err2) { return finalCallback(err2); }
request.put(url3, function(err3, res3) {
if (err3) { return finalCallback(err3); }
@rdsubhas
rdsubhas / promises.js
Last active October 1, 2015 18:11
es6-blog-promises.js
var Promise = require('bluebird');
var request = Promise.promisifyAll(require('request'));
var url1='http://httpbin.org/', url2=url1, url3=url1, url4=url1;
function foo() {
return request.getAsync(url1)
.then(function(res1) {
return request.postAsync(url2);
}).then(function(res2) {
return request.putAsync(url3);
@rdsubhas
rdsubhas / generators.js
Last active May 2, 2017 19:32
es6-blog-generators.js
var Promise = require('bluebird');
var request = Promise.promisifyAll(require('request'));
var url1='http://httpbin.org/', url2=url1, url3=url1, url4=url1;
function* foo() {
var res1 = yield request.getAsync(url1);
var res2 = yield request.getAsync(url2);
var res3 = yield request.getAsync(url3);
var res4 = yield request.getAsync(url4);
return "whew all done";
@rdsubhas
rdsubhas / request_spec.js
Last active October 1, 2015 18:11
es6-mocha
var Promise = require('bluebird');
var assert = require('assert');
var request = Promise.promisifyAll(require('request'));
var url1='http://httpbin.org/', url2=url1, url3=url1, url4=url1;
describe('context', function() {
it('should kill callbacks', Promise.coroutine(function*() {
// Use destructuring since "request" returns multiple values
[res1] = yield request.getAsync(url1);
@rdsubhas
rdsubhas / await.js
Last active May 2, 2017 19:38
es7-async-await
var Promise = require('bluebird');
var request = Promise.promisifyAll(require('request'));
var url1='http://httpbin.org/', url2=url1, url3=url1, url4=url1;
async function foo() {
var res1 = await request.getAsync(url1);
var res2 = await request.getAsync(url2);
var res3 = await request.getAsync(url3);
var res4 = await request.getAsync(url4);
return "whew all done";
@rdsubhas
rdsubhas / Dockerfile
Last active October 2, 2015 22:04
docker-alpine-runit
FROM alpine:3.2
EXPOSE 8118 9050
RUN echo '@edge http://nl.alpinelinux.org/alpine/edge/main' >> /etc/apk/repositories && \
echo '@testing http://nl.alpinelinux.org/alpine/edge/testing' >> /etc/apk/repositories && \
apk --update add privoxy@edge tor@testing runit@testing
COPY services /etc/service/
CMD ["runsvdir", "/etc/service"]