I absolutely agree - Arabic is a beautiful language and a joy to learn, and it is particularly appealing for those who enjoy structure and regularity (e.g. CS and math folk!). Be forewarned, though - the significant differences between MSA (modern standard Arabic, the focus of most "Arabic" courses/material) and regional/national dialects (and the differences between those various dialects themselves) may make it a bit less practical than you'd hope (and a source of disappointment when you go to actually speak with people!).<p>Permit me to plug a pet project of mine:<p><a href="http://arabicreference.com" rel="nofollow">http://arabicreference.com</a><p>It's basically an online version of Hans Wehr, the de facto standard dictionary for students of Arabic. You can search by root or by word and provides form I vowelling, masadir (infinitives), broken plurals, and other useful information organized by form. I know there exist other good dictionaries out there, but I never found one I quite liked as a reference as much as I enjoyed Hans Wehr. I hope someone else finds it useful! (I've been neglecting it a bit recently, so I apologize for any bugs and for the lack of an SSL cert).