So I've had a great idea for a learning exercise for Scala and/or HBase and I was hoping to do it here at work but finding time's been difficult so I thought maybe this would be a good exercise to meet-up on for a couple of working sessions.
The idea is a URL shortener. Yes, I know, there are already a million of them. The one I'm interested in, however, would focus on shortening .gov, .us, .mil and .edu addresses (all configurable of course). The idea is the shortener would do the work of shortening addresses for those top level domains. For anything outside of those top level domains it would use one of the other shorteners (e.g.
bit.ly). The idea here is we don't want people going to multiple shorteners, rather go to one that will do them all. While MySQL would be fine, I think this would be a great one to also do in HBase. So the things that could be learned here is:
1) Scala: Lift for the web piece, Scala RESTful web service and possibly Akka.
2) Hbase
3) Eventually a browser plugin or two to support it.
I'd be willing to draw up the use cases and all if there is enough interest in meeting once or twice to geek out on it. I think the size of this also makes it a great candidate to allow remote participation (e.g. meet via Skype, etc). The output would be a useful, open source project. Anyway, I thought this was a great idea because it has a small, well defined scope and I think it exercises a lot of the important pieces of what I'm interesting in learning about Scala and, possibly, HBase.
Thoughts?