Total agree. Since building one from scratch would be doing AJAX programming for the login form, (hashing, check hashing, encrypting, etc.) Then java perhaps for GUI design and then javascript and one other thing for the background connections. Real time messaging and what not. It's all fun!!!