In extreme programming you do a quick programming exploration of an issue when, as a programmer, you don't know how to estimate something (this is a spike). “Quick” means minutes to hours, to perhaps a couple days. A spike is a skinny, minimal solution in throw-away code.