Sample Scala Project

22 views
Skip to first unread message

Tony Bibbs

unread,
Dec 21, 2010, 3:30:47 PM12/21/10
to iowa-scala-...@googlegroups.com
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?

--
Tony Bibbs
Phone: 515.259.0003
Twitter, Skype, Facebook: tonybibbs
Web: http://www.tonybibbs.com

Zach Cox

unread,
Dec 21, 2010, 3:38:32 PM12/21/10
to iowa-scala-...@googlegroups.com
I think that's an excellent idea Tony! It's bigger than any tutorials
out there, touches on multiple technologies (Lift, Akka, HBase),
solves a real problem, but isn't so big that scope would get too
large. I like the idea of meeting up to work on this too - everyone
involved would learn something I'm sure.

I'll volunteer the Pongr/BitMethod office space if we want to use it
for a meet-up.

Thanks,
Zach

Ben Metz

unread,
Dec 21, 2010, 4:46:00 PM12/21/10
to iowa-scala-...@googlegroups.com
Like it Tony.  I'd drive to Des Moines for that.

Tony Bibbs

unread,
Dec 22, 2010, 11:42:25 AM12/22/10
to iowa-scala-...@googlegroups.com
Zach/Ben, that'd be perfect!  Let me whip up some quick analysis and then we can start planning a time to pull this off.  Hopefully the other lurkers on this list will join us...

Ben Metz

unread,
Dec 22, 2010, 1:13:12 PM12/22/10
to iowa-scala-...@googlegroups.com
Koolio.  Looking forward to it.

Zach Cox

unread,
Dec 22, 2010, 1:31:13 PM12/22/10
to iowa-scala-...@googlegroups.com
What are we thinking in terms of a meet-up for this? Is an after-work
thing too short, especially considering Ben (and others?) would travel
from CF? Should it be a Saturday?

We've been talking about an Iowa Scala meet-up for awhile, maybe that
could piggyback on this?

mhelmore

unread,
Dec 22, 2010, 2:16:40 PM12/22/10
to Iowa Scala Enthusiasts
Tony,
Count me in.
Matt

On Dec 22, 10:42 am, Tony Bibbs <t...@tonybibbs.com> wrote:
> Zach/Ben, that'd be perfect!  Let me whip up some quick analysis and then we
> can start planning a time to pull this off.  Hopefully the other lurkers on
> this list will join us...
>
>
>
>
>
> On Tue, Dec 21, 2010 at 3:46 PM, Ben Metz <ben.m...@t8webware.com> wrote:
> > Like it Tony.  I'd drive to Des Moines for that.
>
> > On Tue, Dec 21, 2010 at 2:38 PM, Zach Cox <zcox...@gmail.com> wrote:
>
> >> I think that's an excellent idea Tony!  It's bigger than any tutorials
> >> out there, touches on multiple technologies (Lift, Akka, HBase),
> >> solves a real problem, but isn't so big that scope would get too
> >> large.  I like the idea of meeting up to work on this too - everyone
> >> involved would learn something I'm sure.
>
> >> I'll volunteer the Pongr/BitMethod office space if we want to use it
> >> for a meet-up.
>
> >> Thanks,
> >> Zach
>

Wade Arnold

unread,
Dec 22, 2010, 2:26:31 PM12/22/10
to iowa-scala-...@googlegroups.com
I read something about that NoSQL crap before. I am in on this! 

Wade
--
Wade....@T8Webware.com
CEO T8 Webware
877.884.3327 x105
900 Technology pkwy, Suite 200
Cedar Falls, Iowa
@wadearnold
linkedin.com/wadearnold

Tony Bibbs

unread,
Dec 22, 2010, 2:54:40 PM12/22/10
to iowa-scala-...@googlegroups.com
I think a weekend works.  I'd even be willing to mix in a social add-on if there is interest having beers afterwards.

On Wed, Dec 22, 2010 at 1:26 PM, Wade Arnold <wade....@t8webware.com> wrote:
I read something about that NoSQL crap before. I am in on this! 
 

Zach Cox

unread,
Dec 22, 2010, 2:58:50 PM12/22/10
to iowa-scala-...@googlegroups.com
+1 on beers

Byambatsogt Tumurkhuu

unread,
Dec 22, 2010, 2:59:14 PM12/22/10
to iowa-scala-...@googlegroups.com
I'd like to join

Regards
Byamba

Ben Metz

unread,
Dec 23, 2010, 11:17:10 AM12/23/10
to iowa-scala-...@googlegroups.com
+1 on social add-on... geeks/beer/scala, can't think of very many things that get better than that!

Tony Bibbs

unread,
Dec 23, 2010, 1:35:05 PM12/23/10
to iowa-scala-...@googlegroups.com
So one real quick reality check, I'm thinking of February timeframe.  This will give folks a chance to get through the holidays and give me time to whip up some documentation.  For those that said they are down with this, please send two or three Saturdays in February that work in priority order.

--Tony

Zach Cox

unread,
Dec 23, 2010, 3:59:17 PM12/23/10
to iowa-scala-...@googlegroups.com
19 Feb is the day after http://www.nescala.org so that may not work...

12 Feb is just a couple days before Valentine's Day...

Tony Bibbs

unread,
Jan 3, 2011, 11:21:30 AM1/3/11
to iowa-scala-...@googlegroups.com
So how is 2/6 or 2/26 looking for this sample URL shortener Scala/HBase thing-a-ma-bob?

I'd prefer 2/26.


On Thu, Dec 23, 2010 at 2:59 PM, Zach Cox <zco...@gmail.com> wrote:
19 Feb is the day after http://www.nescala.org so that may not work...

12 Feb is just a couple days before Valentine's Day...
 

Ben Metz

unread,
Jan 4, 2011, 1:46:19 AM1/4/11
to iowa-scala-...@googlegroups.com
2/26 worx for me

mhelmore

unread,
Jan 4, 2011, 5:27:45 PM1/4/11
to Iowa Scala Enthusiasts
The 26th works for me

On Jan 3, 10:21 am, Tony Bibbs <t...@tonybibbs.com> wrote:
> So how is 2/6 or 2/26 looking for this sample URL shortener Scala/HBase
> thing-a-ma-bob?
>
> I'd prefer 2/26.
>
> On Thu, Dec 23, 2010 at 2:59 PM, Zach Cox <zcox...@gmail.com> wrote:
> > 19 Feb is the day afterhttp://www.nescala.orgso that may not work...

Zach Cox

unread,
Jan 6, 2011, 2:18:57 PM1/6/11
to iowa-scala-...@googlegroups.com
I'm in for 26 Feb.

Tony Bibbs

unread,
Jan 14, 2011, 11:55:54 AM1/14/11
to iowa-scala-...@googlegroups.com
Attached an image of the first draft of the use cases for the Url Shortener. Please feel free to comment.  I don't think it is realistic to expect they are all implemented when we meet so after we discuss and lock down the use cases I'll try to prioritize them.  Once prioritized I'll add more detail (scenarios, high level requirements, etc).

As for how we'd work, I wanted to propose this idea.  I'd like to break up into groups of 4 or 5 developers with one being someone with decent Scala experience.  I think it'd be interesting to see the approach each group would take to the same problem and later on compare notes.  Another option would be to opt out of forming groups and try and tackle it as one team and knock as many of the use cases out as possible.  I think both approaches would work fine...

Thoughts?
UrlShortener.png
Reply all
Reply to author
Forward
0 new messages