Skip to content

Instantly share code, notes, and snippets.

View vu3rdd's full-sized avatar

Ramakrishnan Muthukrishnan vu3rdd

View GitHub Profile
@vu3rdd
vu3rdd / dht.txt
Last active April 27, 2023 02:16
consistent hashing papers
Thesis on consistent hashing: http://dspace.mit.edu/handle/1721.1/9947
Chord: http://pdos.csail.mit.edu/papers/chord:sigcomm01/chord_sigcomm.pdf
Kademlia: http://pdos.csail.mit.edu/~petar/papers/maymounkov-kademlia-lncs.pdf
Coral: https://www.cs.princeton.edu/~mfreed/docs/coral-nsdi04.pdf
S/Kademlia: http://www.tm.uka.de/doc/SKademlia_2007.pdf
IPFS: http://static.benet.ai/t/ipfs.pdf
http://highscalability.com/paper-consistent-hashing-and-random-trees-distributed-caching-protocols-relieving-hot-spots-world-wi
http://www.tom-e-white.com/2007/11/consistent-hashing.html
Freenet
@vu3rdd
vu3rdd / url-chatgpt.md
Last active December 5, 2022 05:59
What happens when you type a url into the browser and press enter (chatGPT version)

What happens when I type a URL into the browser?

When you type a URL into your browser, your computer sends a request to the server associated with that URL. The server then responds by sending the web page back to your browser, which displays it for you to view. The exact process can vary depending on the type of browser you are using and the specific details of the request, but that is the general idea. Is there anything specific you would like to know?

tell me in more detail

When you type a URL into your browser and hit enter, your computer sends a request to the server associated with that URL using the internet protocol (IP) address associated with the domain name. The server, which is a powerful computer that stores and manages the website's content and files, receives the request and uses it to determine which web page to send back to your browser.

Once the server has found the requested web page, it sends it back to your browser over the internet. Your browser then receives the response and b

mQINBEr2+wwBEAC4ccFU5Zfbwk674AD3YF89MzcZWMIdRW0whgpx4xXB5mBMn/p2zhmCEIIcByTV
8iQz9ZUl27j6ccCSIyzGhErkaAWUVKyd+qHZmGrzqVCsTz5qecoI0MLj7p4X+iewqpcDpyk3L4CR
6/NN70lQLZ/IK9O/3JNViuN6UeWUlt1nr6EcnflsuhlbpmtcowfEWgxTpMt5tc8JifzRMs1P0hwi
Ux4Wgq86hfUdRwDBiTMHj17Ql2ydH4JPd8SScFKIAhhTHJiFQLF6kd+zSBs4JSUN8J86Majz9TpP
+3by9CoKn3zh3Orxu3SmmSyvRFJFkkdS5ohHo+6kqonc9akjQ1/O+nexTnpG8KCS+m67/VFPox70
TL5OeaOkC9CKUOCslJoP6/FybhsM5Cl8CrN5oZd6QuEG2uGUtsMfcmQEN1Jh2wmy8JuPhaDqiwsm
ApgTHXPT+te+ItLNrnpkdR5loJXrRiUw5YC2aIKdpYL9+9UJPNMQSsml6YnM3sPUwSdoZ7Syb+VK
CYriYfrNwkX0pXGAigAhpEioIOwBmosmIAUmP8D6LpkBIRAwEKAdtxlQ9HEPvfnftnrtKwcP70il
OnSRAlzStEvERfZMEyt/7A8MpsfmBRJYODTXljZPPRx9/OibcXlercuaI2OeLAbmwaZzxqnj9iJL
eEHJq5L3ebfBkQARAQABtDFSYW1ha3Jpc2huYW4gTXV0aHVrcmlzaG5hbiA8cmtyaXNobmFuQGRl
@vu3rdd
vu3rdd / mobius.sh
Last active March 4, 2021 06:52
Quick and dirty bash script to create a pdf with mobius double sided printing
#!/bin/bash
# https://byorgey.wordpress.com/how-to-print-things/#m%C3%B6bius-double-sided
# https://mathlesstraveled.com/2016/01/08/a-new-way-to-read-and-print-double-sided-paper/
# https://shreevatsa.net/mobius-print/
if [ $# -eq 0 ]; then
echo $#
echo "usage: $0 pdf_file"
exit
@vu3rdd
vu3rdd / papers.markdown
Last active February 13, 2019 06:01
List of Papers for Bangalore PL/CS paper reading group

Context

This tweet explains it all.

I have a huge pile of papers on my computer waiting to be read. Often I read parts of it immediately after I see the paper, but I forget about it until someone points on another article, how awesome that paper is. I then remember to read it more carefully.

One way to fix it is to work with like minded people and have serious (non-hand wavy) discussion around the paper.

The list below will grow. My hard disk has more papers than I can count. I have carefully chosen a list of very readable papers in the list below. Special thanks for the authors for publishing their great ideas.

@vu3rdd
vu3rdd / dbg.h
Last active January 23, 2019 02:16
A simple C debug macro (needs a version of gcc compiler which supports the C11 standard)
/* Copyright 2019 Ramakrishnan Muthukrishnan
*
* To the extent possible under law, the author(s) have dedicated
* all copyright and related and neighboring rights to this software
* to the public domain worldwide. This software is distributed without
* any warranty.
*
* You should have received a copy of the CC0 Public Domain Dedication
* along with this software.
* If not, see <http://creativecommons.org/publicdomain/zero/1.0/>.
@vu3rdd
vu3rdd / tahoe-lafs-install.txt
Created September 30, 2014 17:29
getting a personal tahoe-lafs grid going
0. Get a VPS machine running Debian on it.
1. apt-get install tahoe-lafs
2. Create an introducer.
mkdir tahoe-introducer
cd tahoe-introducer
tahoe start .
cat private/introducer.furl #note down the long furl string
3. Create a storage node on the same VPS machine
tahoe create-node
edit ~/.tahoe/tahoe.cfg
@vu3rdd
vu3rdd / cs173-practice.rkt
Created September 2, 2012 17:41
map, filter, flatten in racket
#lang racket
(require rackunit)
;; map :: (a -> b -> c) -> [a] -> [b] -> [c]
(define (map f . xs)
(match xs
[(list (list) ...) (list)]
[(list (list x xs ...) ...) (cons (apply f x) (apply map f xs))]))
(check-equal? (map sqr '(1 2 3)) '(1 4 9))
@vu3rdd
vu3rdd / p9-and-port.txt
Last active April 22, 2018 16:57
plan9port links
A few plan9port (plan9 from userspace) links:
1. http://dikutal.dk/blog/jlouis/acme-editor
2. https://github.com/jlouis/plan9-setup
3. http://9fans.net/archive/2007/11/120 (Russ Cox's post about his setup. Jlouis's setup is based on this setup)
4. https://forums.freebsd.org/viewtopic.php?&t=29736 (Nice post of a guy with handle mvatten on his setup in FreeBSD. He uses rio as his window manager)
5. https://forums.freebsd.org/viewtopic.php?&t=25487 (Nice post by blstuart)
6. https://groups.google.com/forum/#!topic/comp.os.plan9/Q0SJTXv9PgE (Evoluent mouse)
7. https://groups.google.com/forum/#!topic/comp.os.plan9/MhOeFT0hkhs (9vx)
8. https://groups.google.com/forum/#!topic/comp.os.plan9/0tzNmiJF6Xg (sending/installing 9atom patches)
@vu3rdd
vu3rdd / wat-py.txt
Created October 23, 2012 09:58
Python scoping..
Some notes on the python scope:
Python has a weird scoping problem, which stems from its intention to create a nice
surface syntax and perhaps to satisfy the imperative programming paradigm. This
affects the semantics of the Python programs in unintuitive ways.
Consider the following code:
A.