Effectively tail a file and serve it up via a browser:
socat -T0.05 -u FILE:/var/log/syslog,ignoreeof TCP4-LISTEN:12345,fork,reuseaddr
socat -T0.05 -u FILE:/var/log/syslog,ignoreeof TCP4-LISTEN:12345,fork,reuseaddr
name: inverse layout: true class: center, middle, inverse
apply plugin: 'maven' | |
apply plugin: 'scala' | |
apply plugin: 'signing' | |
def isMavenDeployable = hasProperty('mavenRepositoryUrl') && | |
hasProperty('mavenRepositoryUsername') && | |
hasProperty('mavenRepositoryPassword') | |
if (isMavenDeployable) { | |
signing { |
#!/bin/bash | |
dir="`dirname \"$0\"`" | |
dir="`( cd \"$dir\" && pwd )`" | |
cp=`echo $dir/*.jar|sed 's/ /:/g'` | |
exec scala -classpath "$cp" -savecompiled "$0" "$@" | |
!# |
I hereby claim:
To claim this, I am signing this object:
const I = x => x; | |
const K = x => y => x; | |
const A = f => x => f(x); | |
const T = x => f => f(x); | |
const W = f => x => f(x)(x); | |
const C = f => y => x => f(x)(y); | |
const B = f => g => x => f(g(x)); | |
const S = f => g => x => f(x)(g(x)); | |
const P = f => g => x => y => f(g(x))(g(y)); | |
const Y = f => (g => g(g))(g => f(x => g(g)(x))); |
{ | |
"routes": { | |
"/": "PROXY >> http://emojipedia-us.s3.amazonaws.com/cache/7e/d3/7ed33167cf938e40ad38bb89e21db802.png", | |
"?": "PROXY >> http://emojipedia-us.s3.amazonaws.com/cache/91/f0/91f0d2b3a93416f2aa77c285b2dfe031.png", | |
"github": "https://github.com/rockymadden", | |
"ip": "PROXY >> https://httpbin.org/ip" | |
} | |
} |
Let's move to a modern approach for our developer documentation and, generally, improve developer experiences by creating a focused developer portal. Let's unify our documentation efforts, use documentation to reduce customer success needs, use documentation to improve experiences, and create a one-stop-shop for anything a developer might need. Additionally, lets make it conceptually simple and easy to maintain and support. This idea is not new, in fact nearly every modern API company uses this approach:
trait Functor[T[_]]{ | |
def fmap[A,B](f:A=>B)(ta:T[A]):T[B] | |
} | |
trait Applicative[T[_]] extends Functor[T]{ | |
def pure[A](a:A):T[A] | |
def <*>[A,B](tf:T[A=>B])(ta:T[A]):T[B] | |
} | |
trait Monad[M[_]] extends Applicative[M]{ |
class A | |
class A2 extends A | |
class B | |
trait M[X] | |
// | |
// Upper Type Bound | |
// | |
def upperTypeBound[AA <: A](x: AA): A = x |