This gist is part of a blog post. Check it out at:
http://jasonrudolph.com/blog/2011/08/09/programming-achievements-how-to-level-up-as-a-developer
| (ns om.next.spec | |
| (:require [cljs.spec :as s])) | |
| (s/def ::ident (s/and vector? (s/cat :ident keyword? :value #(not (coll? %))))) | |
| (s/def ::join-key (s/or :prop keyword? :ident ::ident)) | |
| (s/def ::join (s/map-of ::join-key ::query)) | |
| (s/def ::union (s/map-of keyword? (s/map-of keyword? ::query))) | |
| (s/def ::param-expr |
| I like LYAH as a reference and cheat-sheet but I found it a little slow for | |
| learning Haskell. | |
| Here's my recommended order for just learning Haskell: | |
| http://yannesposito.com/Scratch/en/blog/Haskell-the-Hard-Way/ 80% completion | |
| here is fine if you feel your attention waning, the next thing will address | |
| hammering in things like functors and monads via typeclasses. | |
| https://github.com/NICTA/course/ this will hammer in the lessons in a very |
| <head> | |
| <script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script> | |
| <style> | |
| div.tile {height: 70px; width: 35px; border-radius: 7px; float: left; margin: 10px;} | |
| div.tile, div.bar {border: 2px outset #444;} | |
| div.pips {height: 30px; width: 35px;position: relative; margin-top: 2px;} | |
| div.pips div {border-radius: 5px; height: 4px; width: 5px; background: #333; position: absolute; border:2px inset #444;} |
| my_chpwd() | |
| { | |
| if [[ -s "$PWD/.set_env" ]] ; then | |
| source "$PWD/.set_env" | |
| echo '(automatically sourced .set_env)' | |
| fi | |
| } | |
| add-zsh-hook chpwd my_chpwd |
This gist is part of a blog post. Check it out at:
http://jasonrudolph.com/blog/2011/08/09/programming-achievements-how-to-level-up-as-a-developer
| <script type="text/javascript"> | |
| var queueBytesLoaded = 0; | |
| var queueBytesTotal = 0; | |
| var myQueue = null; | |
| var queueChangeHandler = function(queue){ | |
| // alert('Uploading Started'); | |
| myQueue = queue; | |
| // console.log("COLLECTION CHANGE!"); | |
| var list = document.getElementById('file_todo_list'); |