Well, you're asking a bit of a loaded question here. On one hand, HTML5 date picker implementation is really easy:
<input type="date" name="user_date" />
But, most browsers have no idea how to interpret that (they essentially treat it like text). If you happen to be viewing an input of type="date" in a browser that supports it nicely (say, Opera 9), then you'll get a nice date picker. For every other browser, you'll get nothing but a text input.