Skip to content

Instantly share code, notes, and snippets.

View avinassh's full-sized avatar

Avinash Sajjanshetty avinassh

View GitHub Profile
@avinassh
avinassh / introrx.md
Last active January 25, 2018 17:39 — forked from staltz/introrx.md

The introduction to Reactive Programming you've been missing

(by @andrestaltz)

So you're curious in learning this new thing called (Functional) Reactive Programming (FRP).

Learning it is hard, even harder by the lack of good material. When I started, I tried looking for tutorials. I found only a handful of practical guides, but they just scratched the surface and never tackled the challenge of building the whole architecture around it. Library documentations often don't help when you're trying to understand some function. I mean, honestly, look at this:

Rx.Observable.prototype.flatMapLatest(selector, [thisArg])

Projects each element of an observable sequence into a new sequence of observable sequences by incorporating the element's index and then transforms an observable sequence of observable sequences into an observable sequence producing values only from the most recent observable sequence.

@avinassh
avinassh / The Technical Interview Cheat Sheet.md
Last active May 20, 2018 05:49 — forked from tsiege/The Technical Interview Cheat Sheet.md
This is my technical interview cheat sheet. Feel free to fork it or do whatever you want with it. PLEASE let me know if there are any errors or if anything crucial is missing. I will add more links soon.

Studying for a Tech Interview Sucks, so Here's a Cheat Sheet to Help

This list is meant to be a both a quick guide and reference for further research into these topics. It's basically a summary of that comp sci course you never took or forgot about, so there's no way it can cover everything in depth. It also will be available as a gist on Github for everyone to edit and add to.

Data Structure Basics

###Array ####Definition:

  • Stores data elements based on an sequential, most commonly 0 based, index.
  • Based on tuples from set theory.
@avinassh
avinassh / Contract Killer 3.md
Created September 23, 2015 17:28
The latest version of my ‘killer contract’ for web designers and developers

Contract Killer

The popular open-source contract for web designers and developers by Stuff & Nonsense

  • Originally published: 23/12/2008
  • Revised date: 15/12/2013
  • Original post

@avinassh
avinassh / git-loglive
Created October 14, 2015 16:24 — forked from tlberglund/git-loglive
Log Live Git Command
#!/bin/bash
while :
do
clear
git --no-pager log --graph --pretty=oneline --abbrev-commit --decorate --all $*
sleep 1
done
@avinassh
avinassh / voices.sh
Created October 21, 2015 08:34 — forked from AndrewRayCode/voices.sh
All Mac computer voices. Some are funny, some are disturbing!
COLOR_LIGHT_RED=$(tput sgr0 && tput bold && tput setaf 1)
COLOR_LIGHT_CYAN=$(tput sgr0 && tput bold && tput setaf 6)
COLOR_RESET=$(tput sgr0)
say -v ? | while read line; do
voice=`echo $line | awk '{ print $1 }'`
phrase=`echo $line | sed -E 's/^.+# //'`
echo "${COLOR_LIGHT_RED}say -v ${COLOR_LIGHT_CYAN}${voice}${COLOR_RESET} $phrase"
say -v $voice $phrase
done
@avinassh
avinassh / ls.rst
Created October 25, 2015 12:09 — forked from amitsaha/ls.rst
How does `ls` work?

How does ls work?

I wanted to be really able to explain to a fair amount of detail how does the program :command:`ls` actually work right from the moment you type the command name and hit ENTER. What goes on in user space and and in kernel space? This is my attempt and what I have learned so far on Linux (Fedora 19, 3.x kernel).

How does the shell find the location of 'ls' ?

@avinassh
avinassh / container.xml
Created October 27, 2015 05:38 — forked from anqxyr/archived
Create EPUB files with Python
<?xml version='1.0' encoding='UTF-8'?>
<container xmlns="urn:oasis:names:tc:opendocument:xmlns:container" version="1.0">
<rootfiles>
<rootfile media-type="application/oebps-package+xml" full-path="content.opf"/>
</rootfiles>
</container>
@avinassh
avinassh / bobp-python.md
Created November 8, 2015 07:32 — forked from sloria/bobp-python.md
A "Best of the Best Practices" (BOBP) guide to developing in Python.

The Best of the Best Practices (BOBP) Guide for Python

A "Best of the Best Practices" (BOBP) guide to developing in Python.

In General

Values

  • "Build tools for others that you want to be built for you." - Kenneth Reitz
  • "Simplicity is alway better than functionality." - Pieter Hintjens
@avinassh
avinassh / clipx-homepage.md
Created November 25, 2015 05:01 — forked from captn3m0/clipx-homepage.md
Home Page copy

I want the home page copy to be of a similar style to that of Papa Parse. Basically, there will be a primary hook followed by a QA-style explanation of what ClipX is. This document will hold those QA and other home-page copy till we are ready to commit it to the repository.

What is ClipX?

Its a content syndication service

That was not at all clear.

ClipX archives and stores everything you want to save on the internet. If you've used ifttt, think of it as ifttt for content.

So you store everything I visit? >No. We store whatever you want to. For eg, you may add an article to pocket, or tag it on Feedly, post a link on your facebook wall, or even star it on twitter. ClipX recognizes all these actions and saves the corresponding link into our database.

Keybase proof

I hereby claim:

  • I am avinassh on github.
  • I am avin (https://keybase.io/avin) on keybase.
  • I have a public key whose fingerprint is 1D2E 27B3 57DC 4A82 E811 5760 05D1 EE9B D243 C385

To claim this, I am signing this object: