Instantly share code, notes, and snippets.

View dynamic_supervisor_example.ex
defmodule Worker1 do
def start_link() do
Task.start_link(fn ->
Stream.repeatedly(fn -> :rand.uniform(1000) end)
|> Stream.each(&:timer.sleep/1)
|> Stream.each(fn _ -> IO.puts("worker 1") end)
|> Stream.run()
end)
end
end
View mjr2webm.sh
#!/bin/bash
set -e
function error {
>&2 echo $1
exit 1
}
# set defaults
ffmpegParams="-strict -2"
View mjr2mp4.sh
#!/bin/bash
set -e
function error {
>&2 echo $1
exit 1
}
# set defaults
ffmpegParams="-strict -2"
View carl_hewitt_actor_model.md

Carl Hewitt on Actors

Actor - Fundamental unit of computation, a computation model - not just a form of concurrency

An Actor has three essential elements:

  • 1 - Processing - you have to get something done
  • 2 - Storage - you have to be able to remember things
  • 3 - Communication
View gist:88546abb2c1511a82702f0a87003fa0c

From Out of the Tar Pit:

The key problem with testing is that a test (of any kind) that uses one particular set of inputs tells you nothing at all about the behaviour of the system or component when it is given a different set of inputs. The huge number of different possible inputs usually rules out the possibility of testing them all, hence the unavoidable concern with testing will always be — have you performed the right tests?. The only certain answer you will ever get to this question is an answer in the negative — when the system breaks.

This is a strong argument for some form of generative, simulation, or property-based testing.

View libnice.rb
class Libnice < Formula
desc "GLib ICE implementation"
homepage "https://wiki.freedesktop.org/nice/"
url "https://nice.freedesktop.org/releases/libnice-0.1.7.tar.gz"
sha256 "4ed165aa2203136dce548c7cef735d8becf5d9869793f96b99dcbbaa9acf78d8"
depends_on "pkg-config" => :build
depends_on "glib"
depends_on "gstreamer"
View fix_bad_fstab.txt
sudo mount -t tmpfs -o size=512M tmpfs /any_existing_dir_path
cd /any_existing_dir_path
cp /etc/fstab fstab
vi fstab
# Remove wrong fstab entry
sudo mount -T fstab -o remount,rw /dev/xvda1 /
sudo vim /etc/fstab
reboot
# Done
View install_janus.sh
brew install jansson libnice openssl libusrsctp libmicrohttpd libwebsockets cmake rabbitmq-c sofia-sip opus libogg glib pkg-config gengetopt
wget https://github.com/cisco/libsrtp/archive/v1.5.4.tar.gz
tar xvf v1.5.4.tar.gz
cd libsrtp-1.5.4
./configure --prefix=/usr/local/libsrtp
make
sudo make install
git clone git@github.com:meetecho/janus-gateway.git
View setup.md
  • RHA MA750i (My daily driver)
  • ATH M50x (Listen sometimes at Home)
  • SONOS PLAY:1 (Regularly use it, mostly for Apple Music streaming, Beats 1 Radio)
  • FiiO A1 Portable Headphone Amplifier (Use it but not so frequently)
  • FiiO E11K (A3) Kilimanjaro 2 - (Use it with M50X but not so frequently)
  • Sony HT-RT3 5.1ch Home Theatre System with Bluetooth® (Use it actively with Apple TV [4th generation] & Sony PS4)
  • Sony NW-A35 Walkman (Got it recently and heavily using it)

I have collection of FLAC & 24bit music. I have almost complete A.R. Rahman FLAC collection, along with many other albums.