wp_enqueue_script before wp_head

Enqueue mechanics and suggested ways to use them serve flexibility and interoperability. Simply put consider what would be the easiest way for third party code to modify mechanics of yours?

Hardcoding things in template often makes editing that template the only viable option. Manipulating hooks is typically more convenient and less problematic than that.

On larger scale there are different opinions and approaches on balance of things between templates and hooks, however enqueue is strongly recommended to be used via hooks in all cases.