(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
| #!/bin/bash --debugger | |
| set -e | |
| BRANCH="master" | |
| if grep -q BCM2708 /proc/cpuinfo; then | |
| echo "RPI BUILD!" | |
| RPI="1" | |
| fi | |
| [ -n "$1" ] && BRANCH=$1 |
| // A small SSH daemon providing bash sessions | |
| // | |
| // Server: | |
| // cd my/new/dir/ | |
| // #generate server keypair | |
| // ssh-keygen -t rsa | |
| // go get -v . | |
| // go run sshd.go | |
| // | |
| // Client: |
| // Gulp 4 | |
| var gulp = require('gulp'); | |
| var using = require('gulp-using'); | |
| var grep = require('gulp-grep'); | |
| var changed = require('gulp-changed'); | |
| var del = require('del'); | |
| var coffee = require('gulp-coffee'); | |
| var less = require('gulp-less'); | |
| var coffeelint = require('gulp-coffeelint'); | |
| var sourcemaps = require('gulp-sourcemaps'); |
| // | |
| // Copyright (c) 2014 Sean Farrell | |
| // | |
| // Permission is hereby granted, free of charge, to any person obtaining a copy | |
| // of this software and associated documentation files (the "Software"), to deal | |
| // in the Software without restriction, including without limitation the rights | |
| // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
| // copies of the Software, and to permit persons to whom the Software is | |
| // furnished to do so, subject to the following conditions: | |
| // |
| # | |
| # Makefile to perform "live code reloading" after changes to .go files. | |
| # | |
| # n.b. you must install fswatch (OS X: `brew install fswatch`) | |
| # | |
| # To start live reloading run the following command: | |
| # $ make serve | |
| # | |
| # binary name to kill/restart |
| // | |
| // Tests if regular expression matches all valid ES6 import syntaxes. | |
| // | |
| // ES6 Language Specification Reference: | |
| // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-imports | |
| // | |
| const ES6_IMPORT_REGEX = /\bimport\s+(?:.+\s+from\s+)?[\'"]([^"\']+)["\']/g; | |
| const VALID_ES6_IMPORT_SYNTAXES = [ |
| // | |
| // Copyright (c) 2014 Sean Farrell | |
| // | |
| // Permission is hereby granted, free of charge, to any person obtaining a copy | |
| // of this software and associated documentation files (the "Software"), to deal | |
| // in the Software without restriction, including without limitation the rights | |
| // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
| // copies of the Software, and to permit persons to whom the Software is | |
| // furnished to do so, subject to the following conditions: | |
| // |
| package main | |
| import ( | |
| "log" | |
| "bufio" | |
| "time" | |
| "os" | |
| "fmt" | |
| "io" | |
| "net" |
| package main | |
| import ( | |
| "flag" | |
| "io" | |
| "log" | |
| "net" | |
| "net/http" | |
| "strings" | |
| ) |