Scalatron: Learn Scala with a programming game
From the homepage:
Scalatron is a free, open-source programming game in which bots, written in Scala, compete in a virtual arena for energy and survival. You can play by yourself against the computer or organize a tournament with friends. Scalatron may be the quickest and most entertaining way to become productive in Scala. – For updates, follow @scalatron on Twitter.
Entertaining and works right out of the “box.”
Well, remember the HBase 8080 conflict issue, so from the Scalatron documentation:
java -jar Scalatron.jar -help
Displays far more command line options than will be meaningful at first.
For the HBase 8080 issue, you need:
java -jar Scalatron.jar port int
or in my case:
java -jar Scalatron.jar port 9000
Caution, on startup it will ask to make Google Chrome your default browser. Good that it asks but annoying. Why not leave the user with whatever default browser they already prefer?
Anyway, starts up, asks you to create a user account (browser window) and can set the Administrator password.
Scalatron window opens up and I can tell this could be real addictive, in or out of ISO WG meetings. 😉
Scala resources mentioned in the Scalatron Tutorial document:
- Twitter Scala school: http://twitter.github.com/scala_school/ – this is awesome. Consider starting here.
- Book by the inventor of Scala: “Programming in Scala”, 2nd Edition, by Odersky, Spoon, Venners. 879 pages. Nice for offline reading. Available in PDF format online: http://www.cs.uwaterloo.ca/~brecht/courses/702/Possible-Readings/scala/ ProgrammingInScala.pdf
Other Resources
- The main Scala web site: http://www.scala-lang.org
- Scala style guide: http://www.codecommit.com/scala-style-guide.pdf
It’s a bit close to the metal to use as a model for a topic map “game.”
But I like the idea of “bots” (read teams) competing against each other, except for the construction of a topic map.
Just sketching some rough ideas but assuming some asynchronous means of communication, say tweets, emails, IRC chat, a simple syntax (CTM anyone?), basic automated functions and scoring, that should be doable, even if not on a “web” scale. 😉
By “basic automated functions” I mean more than simply parsing syntax for addition to a topic map but including the submission of DOIs, for example, which are specified to be resolved against a vendor or library catalog, with the automatic production of additional topics, associations, etc. Repetitive entry of information by graduate students only proves they are skillful copyists.
Assuming some teams will discover the same information as others, some timing mechanism and awarding of “credit” for topics/associations/occurrences added to the map would be needed.
Not to mention the usual stuff of contests, leader board, regular updating of the map, along with graph display, etc.
Something to think about. As I tell my daughter, life is too important to be taken seriously. Perhaps the same is true about topic maps.
Forwarded by Jack Park. (Who is not responsible for my musings on the same.)
[…] Scalatron #topicmaps #scala #games #bots #programming – http://t.co/0zUk2L9t… […]
Pingback by Scalatron « Another Word For It | Scala frameworks and tools | Scoop.it — July 12, 2012 @ 2:46 am