View question1.clj
;; Hardcode the input data here as `data`
(def data `({:content "Message from User 2"
:from {:id 2 :name "User 2" :type :user :updated "2000-03-05T16:49:56.845Z"}
:to {:id 22 :name "Group 22" :type :group :updated "1991-10-19T00:57:39.527Z"}
:type :message}
{:content "Message from User 1"
:from {:id 1 :name "User 1" :type :user :updated "1980-07-21T18:56:27.379Z"}
:to {:id 3 :name "User 3" :type :user :updated "1984-05-16T19:57:44.739Z"}
View ref_consistency_multithreaded_test.clj
;; Question 2
;; 1. Create a unit test that reproduces the problem
;; 2. Explain what is going wrong
;; 3. Fix the bug
;; 0. Start with the ref a, ref b and the advance-* functions
(def a (ref 1))
(def b (ref 1))
View test
Algorithmia = require("algorithmia");
const request = require('request');
exports.apply = function(input, cb) {
let url = 'http://104.196.34.244:80/' + input;
request(url, function (error, response, body) {
if (!error && response.statusCode == 200) {
out = body
View gcdatastore.js
const gcloud = require('gcloud');
const _ = require('lodash');
const cache = require('./cache');
const log = console.log;
const config = {projectId: process.env.GCLOUD_PROJECT || 'brydge-api'}
const ds = gcloud.datastore(config);
View publish_elixir_lib_cheatsheet
1. In mix.exs, create
defp package do
[
files: ["lib", "mix.exs", "README", "LICENSE*"],
maintainers: ["Your Name"],
licenses: ["Apache 2.0"],
links: %{"GitHub" => "https://github.com/fteem/some_app_name"}
]
View Create PEM file
ssh-keygen -t rsa -b 2048 -v
cat server.pub >> .ssh/authorized_keys
# rename server server.pem
# Distribute server.pem to login.
View gitconfig
[alias]
co = checkout
ci = commit
st = status
br = branch
hist = log --pretty=format:\"%h %ad | %s%d [%an]\" --graph --date=short
type = cat-file -t
l = log --oneline --decorate
ll = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat
ls = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate
View mac-deals-scrapper.clj
(ns mac-deals-checker.core
(:require [reaver :refer [parse extract-from text]]))
(def deal-url "http://www.apple.com/sg/shop/browse/home/specialdeals/mac")
(defn latest-deals-info
[]
(-> deal-url slurp parse (extract-from ".product" [:spec :price] "td.specs" text "span.current_price span span" text)))
View gist:c4f793e953f7d8623acb
var safeImageURI = function(s) { return encodeURI(s).replace(/\-/g, "%2D").replace(/\_/g, "%5F").replace(/\./g, "%2E").replace(/\!/g, "%21").replace(/\~/g, "%7E").replace(/\*/g, "%2A").replace(/\'/g, "%27").replace(/\(/g, "%28").replace(/\)/g, "%29"); }
View gist:6208758
This is all you need to know about Clojure’s namespace declarations:
(ns my-project.core
; :require Clojure libs
(:require clojure.core.async
[compojure.core :refer [POST routes]]
[compojure.handler :refer :all]
[ring.adapter.jetty :as jetty]
[clojure.edn :as edn :refer [read]])
; :import for Java classes