This week's giveaway is in the JDBC forum.
We're giving away four copies of Java Database Connections & Transactions (e-book only) and have Marco Behler on-line!
See this thread for details.
Win a copy of Java Database Connections & Transactions (e-book only) this week in the JDBC forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Devaka Cooray
  • Knute Snortum
  • Paul Clapham
  • Tim Cooke
Sheriffs:
  • Liutauras Vilda
  • Jeanne Boyarsky
  • Bear Bibeault
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Ron McLeod
  • Piet Souris
  • Frits Walraven
Bartenders:
  • Ganesh Patekar
  • Tim Holloway
  • salvin francis

Routes into Scala?  RSS feed

 
Bartender
Posts: 2407
36
Linux Oracle Postgres Database Python Scala
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
"Scala In Depth" is clearly aimed at giving readers a deeper understanding of Scala after they've worked through the early learning phase. From your experience, what is the most common - or the most effective - route into Scala? Are most Scala users migrating from Java, or are they coming from a wider background? To what extent do current Scala adopters already have a background in functional programming? How far can people regard Scala as just another tool in the toolbox for their next project, or is it still something that demands a lot of specialised preparation first?

And how long do you think it will be before people are routinely starting out in Scala without the usual JEE background i.e. when will Scala become a "native language" for developers, rather than a second language for people who may still feel more comfortable in Java?
 
author
Posts: 8
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

chris webster wrote:"Scala In Depth" is clearly aimed at giving readers a deeper understanding of Scala after they've worked through the early learning phase. From your experience, what is the most common - or the most effective - route into Scala?


I think the most common is coming from Java. But in the #playframework channel on Freenode, we also see a fair amount of PHP and Ruby developers that want to switch to a type-safe language like Scala, and find that Play matches their ideas about web frameworks. I also think that people that have some experience with functional programming are inclined to look for alternatives when working with Java. I don't think there's a specific 'most effective' way.

If you're introducing Scala to a team, we've seen it helps to have at least one experienced Scala programmer on board, that can guide those new to Scala and knows where they should stay away from for a while.

Are most Scala users migrating from Java, or are they coming from a wider background? To what extent do current Scala adopters already have a background in functional programming?


At my workplace a fair chunk of the people that adopted Scala in recent years did not have any functional programming background. It's also not necessary; you can start writing Scala in an imperative style and slowly adopt functional code when you get into that

How far can people regard Scala as just another tool in the toolbox for their next project, or is it still something that demands a lot of specialised preparation first And how long do you think it will be before people are routinely starting out in Scala without the usual JEE background i.e. when will Scala become a "native language" for developers, rather than a second language for people who may still feel more comfortable in Java?


I don't think that Scala needs other specialised preparation than other programming languages. But I don't think there's many people that use Scala as their first programming language yet; for beginners the visibility of Java, Ruby etc. are higher, and I don't think many introductory programming courses use Scala (yet). Not sure how fast that will change
 
chris webster
Bartender
Posts: 2407
36
Linux Oracle Postgres Database Python Scala
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks Erik. Interesting to hear there are people coming from PHP to Scala/Play - that's a big jump for anybody - while I guess the Rails people will find a lot of familiar ideas in Play.
 
Author
Posts: 11
5
Mac Scala
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Erik Bakker wrote:
I don't think that Scala needs other specialised preparation than other programming languages. But I don't think there's many people that use Scala as their first programming language yet; for beginners the visibility of Java, Ruby etc. are higher, and I don't think many introductory programming courses use Scala (yet). Not sure how fast that will change



I love Scala but honestly, I think it would be a brutal choice for first programming language.

  • The flexible syntax and optional declarations make it difficult to predict for someone who isn't already comfortable with language syntax.
  • The integration of object-oriented and functional styles leaves beginners unsure of which way to go. One can learn OO first, or learn functional first. Learning both in parallel is asking too much.
  • Image explaining co-variant and contra-variant types to a person who isn't familiar with object inheritance.
  • Many of the harder to understand choices in the libraries are driven by Java compatibility. For someone who doesn't know Java, that means a lot of WTF moments.


  • Heck, the table of contents for Scala in Depth can almost be read as an outline of reasons why it's not a good first language. I'll grant that Chapter 2 has a lot of points that would be good for a first language.
     
    Ranch Hand
    Posts: 10191
    3
    Eclipse IDE Mac PPC Ubuntu
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    I guess the goal of Scala is not to teach OOP concepts but rather it assumes to have OOP knowledge. It build on it to teach functional style of programming. Agreed that there is a very steep learning involved.
     
    Proudly marching to the beat of a different kettle of fish... while reading this tiny ad
    how do I do my own kindle-like thing - without amazon
    https://coderanch.com/t/711421/engineering/kindle-amazon
    • Post Reply Bookmark Topic Watch Topic
    • New Topic
    Boost this thread!