Why Is Javascript So Difficult