Proramming Techniques in JavaScript