Quantum machine learning: from physics to software engineering