Picking colors is an interesting problem at the boundary of what can be done algorithmically with satisfactory results. For my latest side project, I needed sets of up to 5 colors that go well together but are sufficiently distant not too be confused. Since this is the task that palette generators typically set out to achieve, I tried a couple of them [1,2], as well as some "hand crafted" palettes found on design blo…
Mostly due to insufficient models of human perception of color. Our perception of color is not accurate, so picking complementary colors based on their actual wavelength will be less pleasing than picking complementary colors based on a perceptual model. I don't think any of the pickers you link to attempt this.
One attempt with libraries in a few common languages is HUSL: http://www.boronine.com/husl/syntax/#997061
A much older approach is described here: http://en.wikipedia.org/wiki/CIELUV
Learn more about color perception here: http://en.wikipedia.org/wiki/Color_perception
[Edit: just noticed this was referenced by this comment below: https://news.ycombinator.com/item?id=7562905]