Skip to content

Instantly share code, notes, and snippets.

@mks-m
mks-m / fullnode.md
Last active November 13, 2023 14:26 — forked from romanz/fullnode.md
Bitcoin Full Node on AWS Free Tier

Bitcoin Full Node on AWS Free Tier

Provisioning

  • Launch one T2 micro instance, using Ubuntu 14.04 LTS AMI.
  • Open SSH and Bitcoin Protocol TCP ports: 22, 8333.
  • Attach 150GB EBS (General-Purpose SSD) volume for blockchain storage to /dev/sdf.

The pricing would be ~$15/month. See here for more details.

@mks-m
mks-m / tiny_redis.rb
Last active April 7, 2021 16:47
tiny_redis_client.rb
# Copyright 2017 Maksym Melnychok
# MIT License - https://opensource.org/licenses/MIT
#
# inspired by https://github.com/ptrofimov/tinyredisclient
require 'socket'
class TinyRedis
RN = "\r\n"
@mks-m
mks-m / d8.clj
Last active December 27, 2018 14:26
(ns d8)
(defonce d8-input (slurp "d8.txt"))
(defonce d8-input-list (read-string (str "[" d8-input "]")))
(defn read-node [[cn mn & data]]
(let [[ccol rest]
(loop [ccol [] rest data cn cn]
(if (= 0 cn)
[ccol rest]
(let [[node rest] (read-node rest)]
@mks-m
mks-m / encrypt_decrypt.rb
Last active June 19, 2018 12:17 — forked from wteuber/encrypt_decrypt.rb
Simply encrypt and decrypt Strings in ruby.
require 'openssl'
require 'base64'
# key and iv stored in configs, generated using:
# cipher = OpenSSL::Cipher::Cipher.new('AES-256-CBC').encrypt
# key = cipher.random_key
# iv = cipher.random_iv
def encrypt_id(key, iv, id)
cipher = OpenSSL::Cipher::Cipher.new('AES-256-CBC').encrypt
@mks-m
mks-m / keybase.md
Created July 4, 2017 11:09
keybase.md

Keybase proof

I hereby claim:

  • I am keymone on github.
  • I am keymone (https://keybase.io/keymone) on keybase.
  • I have a public key whose fingerprint is 7937 BF76 A931 9144 4FB9 7BB7 E30B 109F 55EC 7BA8

To claim this, I am signing this object:

@mks-m
mks-m / curlj.clj
Last active May 20, 2017 13:32
Convert curl command into http request
(def curl-opts
[["-A" "--user-agent AGENT" "User-Agent string"
:assoc-fn (fn [m _ v] (assoc-in m [:headers "User-Agent"] v))]
["-b" "--cookie DATA" "Cookie name=value"
:id :cookies :default {}
:assoc-fn (fn [m k v] (let [[kk & vv] (split v #"=")]
(assoc-in m [k kk] {:discard true
:path "/"
:value (join "=" vv)})))]
["-H" "--header DATA" "Header \"header: value\""
@mks-m
mks-m / cart_pole.py
Last active September 29, 2016 00:44
import gym
import numpy as np
import math
def atg01(x):
return 0.5 + math.atan(x) / math.pi
env = gym.make('CartPole-v0')
best = 1
create table mc (id int, member varchar(3));
insert into mc values (1, 'abc'), (1, 'pqr'), (2, 'xyz'), (2, 'pqr'), (3, 'pqr'), (3, 'abc');
Select id,count(*) as total from mc group by id having total=(Select count(*) from mc where id=1);
-- Result:
-- +------+-------+
-- | id | total |
-- +------+-------+
@mks-m
mks-m / speedtest.rb
Created July 16, 2012 12:50 — forked from equivalent/speedtest
ljust speed test
# just speed test for http://stackoverflow.com/questions/11502629/how-to-do-number-to-string-suffix/11502715#11502715
# if we properly test int<->str conversion the log_10 method is about 30% faster
begin
int = 5
a = Time.now.to_f
10_000_000.times { int.to_s.ljust(3, "0").to_i }
puts Time.now.to_f - a # => 1.3s
@mks-m
mks-m / graph.rb
Created July 11, 2012 14:59
puppet repo graph
# Generates infrastructure graph in DOT format
# Usage:
# $ find . -name '*.pp' | while read file; do cat $file; echo; done | \
# ruby graph.rb > puppet.dot
NODE = /^\s*(class|define|node)(\s+)([\w:]+)/
RELATION = /^\s*(require|inherits|include)(\s+)([\w:]+)/
USAGE = /^\s*([\w:]*[\w])(\s*)\{(\s*)/
IGNORE = %w{file package service cron exec Exec line plugin}