¿Cuáles son algunas buenas ideas de proyectos para un curso de CS de segundo semestre con Scala?

Un cliente de línea de comando Twitter firehose sería un siguiente paso interesante. El uso de twitter4j hace que la autenticación y el manejo de la red sean bastante sencillos. Si les pide que creen una aplicación de conteo / búsqueda de términos, podrán utilizar algunas de sus habilidades en la estructura de datos, así como conocer la concurrencia y el procesamiento del trabajo (si así lo desean). Si quieren lanzarle una GUI, también puede hacerlo. Lo configuraría como

  • escribir un procesador de línea de comando que lea un conjunto de términos para rastrear
  • escribir código que se conecta a la secuencia con el conjunto de términos de seguimiento y escribe tweets en una cola de bloqueo vinculada
  • escribir código que extraiga elementos de una cola de bloqueo vinculada y los organice por término
  • escribir código que periódicamente escribe estadísticas de términos en stdout
  • bono, muestra esto en una GUI