These are field notes gathered during installation of website search facility for the ElasticSearch website.
You may re-use it to put a similar system in place.
The following assumes:
These are field notes gathered during installation of website search facility for the ElasticSearch website.
You may re-use it to put a similar system in place.
The following assumes:
| trait Enum { //DIY enum type | |
| import java.util.concurrent.atomic.AtomicReference //Concurrency paranoia | |
| type EnumVal <: Value //This is a type that needs to be found in the implementing class | |
| private val _values = new AtomicReference(Vector[EnumVal]()) //Stores our enum values | |
| //Adds an EnumVal to our storage, uses CCAS to make sure it's thread safe, returns the ordinal | |
| private final def addEnumVal(newVal: EnumVal): Int = { import _values.{get, compareAndSet => CAS} | |
| val oldVec = get |
| #################################### | |
| # BASIC REQUIREMENTS | |
| # http://graphite.wikidot.com/installation | |
| # http://geek.michaelgrace.org/2011/09/how-to-install-graphite-on-ubuntu/ | |
| # Last tested & updated 10/13/2011 | |
| #################################### | |
| sudo apt-get update | |
| sudo apt-get upgrade |
| import random | |
| for i in range(0, 100): | |
| if not i % 15: | |
| random.seed(1178741599) | |
| print [i+1, "Fizz", "Buzz", "FizzBuzz"][random.randint(0,3)] |
| Hello scala, my old friend | |
| I've come to take you home again | |
| Because a feature slowly creeping | |
| left me plagued with doubts and weeping | |
| and the version that was tagged in the repo | |
| just has to go | |
| it lacks the signs of soundness | |
| On sleepless nights I hacked alone | |
| applying ant and other tools of stone |
| ;; let's create a simple protocol that just returns a number | |
| user> (defprotocol NumberP (number [_])) | |
| NumberP | |
| ;; now we'll create an implementation that always returns '1' | |
| user> (deftype One [] NumberP (number [_] 1)) | |
| user.One | |
| ;; unsurprisingly, this type only has a single static value, which wraps the '1' | |
| > (-> One .getDeclaredFields seq) |
| (ns n01se.externs-for-cljs | |
| (:require [clojure.java.io :as io] | |
| [cljs.compiler :as comp] | |
| [cljs.analyzer :as ana])) | |
| (defn read-file [file] | |
| (let [eof (Object.)] | |
| (with-open [stream (clojure.lang.LineNumberingPushbackReader. (io/reader file))] | |
| (vec (take-while #(not= % eof) | |
| (repeatedly #(read stream false eof))))))) |
| (defn debounce | |
| ([c ms] (debounce (chan) c ms)) | |
| ([c' c ms] | |
| (go | |
| (loop [start nil loc (<! c)] | |
| (if (nil? start) | |
| (do | |
| (>! c' loc) | |
| (recur (js/Date.) nil)) | |
| (let [loc (<! c)] |
| Write a program that does what it’s supposed to do | |
| Write idiomatic code | |
| Debug a program that you wrote | |
| Debug a program someone else wrote | |
| Debug the interaction between a system you wrote and one you didn’t | |
| File a good bug report | |
| Modify a program you didn’t write | |
| Test a program you wrote | |
| Test a program you didn’t write | |
| Learn a new programming language |