Cross-disciplinary projects in machine learning, computational linguistics, and programming