JavaScript Programming: Pushing the Limits