Colin Steele's Blog

See, see!  A trend!  And I’m part of it!

RT @Kurt_Vonnegut: What do men want? They want a lot of pals, and they wish that people wouldn’t get so mad at them.

Calling a function with variadic “named argument” keyword destructuring using a flat sequence from a map

;; Problem: You have a fn which uses map destructuring to effect
;; "named argument" behavior, and that's nice for callers that want to
;; use it like (foo :a 1 :b 2).  But, what if you want to stage up the
;; arguments using a map, and then call foo at your convenience.  You
;; have a map now, not an array of args.  Here's how you call that
;; variadic named-argument function with your map:

(defn foo
  [& {:keys [a b] :as opts}]
  (prn-str "you said: " opts))

;; How you'd call it "normally"
(foo :a 1 :b 2)

;; How you call it with a map in hand.
(apply foo (apply concat (vec {:a 1 :b 2})))

hotelicopter is hiring - again!

Once again, I’m a trying to hire badass programmers for the team at hotelicopter.  I’m looking for software craftsmen (or women!), and I know there are more of you out there in Charlottesville (and NoVA and Richmond and Blacksburg).  Really, really good and interesting things are happening at hotelicopter.  You definitely want to get on this ride.

Note from the Trenches (of a seller in Charlottesville) | RealCentralVA.com - Life in the Central VA real… http://t.co/H5LWIMz

Life in the Central VA real estate market.

[Flash 10 is required to watch video]

Asleep at the wheel

Wtf?

Wtf?

Congratulations to Henley Middle School & the Albemarle County School Board process http://t.co/6c8OyED

I said, “If love is a crime, put me in jail.” That was my first mistake.