Scala: After one week

Phone rings…..: Hey segun is that you….yes its me….look lately I’ve been playing around with scala, I will send some docs to you now, go thru them and by monday, I want you to start converting XXXXXX to scala…..but today is friday, I was hoping to rest this weekend….(laughs)my bad, see you on monday

So begins my journey with scala. This friday makes it a week. You will darn say its too early for me to start commenting right? well I will comment anyway.

When I picked Ruby up 2 years ago(I dumped it after a month), I have the same feelings I am having with scala now. These languages should just stop comparing themselves to java. Java is an old language, (we all know so please stop reminiding us) but so are old girlfriends, they may not be as beautiful as they were wen u met her, but u know all the curves, the voice, you know your way around, how to make her smile, how to annoy her etc.

One, scala is un-neccessary complex for an average developer. And the docs around aint helpful either. There is this guy who is never done java before, after we sat in the same office together for about a month, he can write a SOAP application with Java. I gave him a book on Haskell and till date, he is still having fun. He tried scala, and his comments about the language is bad(I reserve it pls).
What da heck, I learned VB.NET in one week and say 2 days. After then I was able to write a Remote Webcam Manager with it.
C# even took me less

In one week with erlang, I was able to write a client-server chat application

They say scala is close to java. One of the things I do often is this

while((ch = is.read() != -1) {
sb.append((char) ch);
}

I hope scalac should just compile this code(I actually have it in like a zillion files)

But No it doesnt

simple cast like that is done like this in scala

ch.asInstanceOf[char]

The best I can achieve so far is write java codes and compile them with scalac. This is after one rigorous week of experimenting. I wasn’t paid to experiement, I was paid to get the job done. If a new language can’t be grasped in one week to the extent that you can at least do something with it(I have a bunch of servlets written in scala, but like I said those are merely java codes compiled with scalac.), then I am afraid its way beyond me.

Scala lacks one thing…A good book or a good documentation…In as much as I love experimenting with new languages, I was really disappointed that the hype around scala was all noise.

This is however my view. Maybe I am gone past the age when the genius in me could pick up a programming language in one week,

Maybe if I dig for one more week…but I read somewhere about a guy who said he devoted 2.5 months and he didnt get a better view that I did.

Maybe the langugage is for super programmers on steroids, and I just dont belong in that class

ciao

Advertisements

10 Comments »

  1. Ismael Juma said

    Hi,

    Fortunately there is a good book available:

    http://www.artima.com/shop/programming_in_scala

    The paper version is not yet available, but the estimated publish date is soon (“on or around September 30, 2008”).

    If it helps, some of us had an easy transition from Java, so don’t assume that it’s hard for everyone.

    Ismael

  2. I think you might enjoy Scala more if you take a look at *why* it doesn’t seem optimised for the cases you wish it was. E.g., generally casting is unsafe, so it’s not particularly optimised for. You might like the book “Programming in Scala”, which is soon to be published, but is available now as a PrePrint PDF, for some dollars.

    Incidentally, 65.toChar gives ‘A’, which might help with the code you posted.

    I agree that the language could be simpler, and that the documentation could be much better, but there is simply more to learn in Scala than there is in C# or Erlang, so it’s bound to take longer.

    About super programmers on steroids – I like Scala and it seems to like me, and I’m just a programmer on coffee, no steroids around.

  3. I was lead here by NetBeans because of your tag…. this isn’t quite about NetBeans, is it?

  4. @matt Ingenthron sorry I have not been blogging about netbeans of late. The reason for that is bcos I have not had time to explore it as I used to of late. Anyway, version 2 of froggle is coming out soon. Get it (http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=10173). The git repo of source code is here (http://gitorious.org/projects/froggle).

    @others
    The pdf’s I have on my computer that I have not read are over 4 gigg in size. I think the real book works for me better. I’ll wait and buy the book. Meanwhile to speed up learning process of it, I have decided to write a web-server with scala(not a tall dream, but at least it will help me know the language more)

    @Ricky
    maybe I should try the coffee too. Tell me what store you bought ’em from lol just kidding

  5. I also prefer real books, but there’s no guarantee that they will make the predicted date (they have postponed the date a couple of times in the past). If you’re planning to buy the paper version anyway, you might want to go for the PDF/Paper combo which would make the PDF available now, allowing you to refer to chapters as required.

    Scala By Example is also useful (in case you haven’t seen it):

    http://www.scala-lang.org/sites/default/files/linuxsoft_archives/docu/files/ScalaByExample.pdf

    Writing code is a good way to get familiar with the language, but if you intend to write idiomatic Scala code instead of Java code in Scala, it helps to read a bit about it before or while you’re writing the code.

  6. Paul King said

    You might want to check out Groovy. It is principally dynamically typed, gives you many of the advantages of Scala and is much closer to Java syntactically.

  7. Paul,

    The advantages of Scala are its syntax and its type system.

    So Groovy gives us Java’s syntax instead (a disadvantage) and no type system.

  8. JavaNovice said

    can u please reply why my post was moderated?
    didn’t you find it usefull?
    Please respond via the given email, thx.
    And i thought i gave you some really good advice :/

  9. JavaNovice said

    I hope now that works- here are my tips for you:
    1. http://www.codecommit.com/blog/category/scala
    Besure to check the “Scala for Java Refugees”
    And for the following pick some posts of your interest

    2. http://horstmann.com/sjsu/cs152/schedule.html
    Check this course its IMO very nice and easy to understand( starting with recursion , lists and closures and then putting that together in examples. This worked very comprehensive for me.

    3. http://oldfashionedsoftware.com/feed/
    Also some nice examples which “worked” actually for me. Be sure to check : “a post about nothing”!

    4. http://www.drmaciver.com/2008/08/functional-code-not-equal-good-code
    Also remember although Scala aids you in writing function code that doesn’t necessarily mean that this is actually “good” code…

    5.http://www.javaworld.com/podcasts/jtech/2008/061008jtech.html
    Listen to this podcsat, its really worth it since it explains why java developers should care about scala. And why “in one week” won’t work 😉

  10. @JavaNovice: Sorry dude, its wordpress moderating you not me.:) I was not on desk, I got your comment on my mobile, but for some gkw reason I couldnt approve it from my mobile. Good comment though, very useful I appreciate it so much. Thanks

RSS feed for comments on this post · TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: