TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: What is your experience with Scala?

73 pointsby wsierocialmost 9 years ago
Hello,<p>what is your experience with Scala language? Do you like it? Would you use it for your next project? Are you thinking of something else?<p>Cheers, Wiktor

27 comments

allengeorgealmost 9 years ago
I wouldn&#x27;t use it again. While I appreciate the concision and the strong collections API I&#x27;m not pleased with the ecosystem:<p><pre><code> * Neither IDEA or Eclipse are particularly great (I routinely get types that can&#x27;t be introspected, and both require inordinate amounts of RAM to work well) * SBT is a productivity sink to do anything beyond the basics with * The compiler is slow (and yes, it does matter) * The compiler&#x27;s error messages are poor * I find the code in many Scala libraries impenetrable (which matters a lot while debugging). </code></pre> Moreover, I notice a lot of &quot;WTF&quot; moments with the language. Often, this means that the effect of the code you&#x27;re looking at isn&#x27;t always obvious.<p>The unexpected side-effects and the library situation frustrates me the most: I feel like I&#x27;m always dealing with &quot;code in progress&quot; written by people who&#x27;re enamored with the features Scala provides over building something robust and easy to understand.<p>Obviously, my opinion. There are plenty of people out there who love Scala.
评论 #11838627 未加载
评论 #11838262 未加载
评论 #11837933 未加载
评论 #11839767 未加载
评论 #11837989 未加载
rvensealmost 9 years ago
I&#x27;ve used Scala for a few years, at work designing and implementing a backend REST API.<p>The language has well-documented warts. I don&#x27;t like all parts of the Play framework that we use. It&#x27;s slow to compile and sometimes the error messages are weird. If you miss a close-curly brace you&#x27;ll sometimes just get a completely impenetrable type error, things like that.<p>But honestly, all that I can live with. Case classes, sealed traits, function types, generics, monadic error handling... So much application logic can be expressed at the type level where it gets mechanically checked. The only errors that get past the compiler are in JSON parsing and database interaction. Everything else just works after it compiles. I&#x27;ve refactored and redone abstractions that touch all other components of the code, and I&#x27;ll do it and deploy on a friday afternoon and go home without worrying. I trust the code, even after changing it. I have integrations tests that spin up the backend with a real database and send it HTTP requests, but nothing like complete test coverage. I&#x27;d like to add that out of principle, but it doesn&#x27;t feel necessary.<p>Scala has warts. But it works well and it has static types without the verbosity of Java. I can&#x27;t imagine going back to an untyped language plus tests again.
kev009almost 9 years ago
I used it exclusively on top of the Playframework for web development from 2011-2014 full time, and occasionally thereafter (job switch). I find it a very sturdy way to build web applications, and the time penalty of initial development is quickly paid off during refactor and extension.<p>If you are a one language trick, you might have a bad time, but if you have been exposed to multiple languages (like a typical CS education) it shouldn&#x27;t be too hard to be productive and even fairly idiomatic code in a couple months.<p>Overwhelming pros:<p>* Type system is awesome, massive time saver once a project is underway<p>* Operator overloading very well done. Infix, postfix, prefix operators can allow for very readable, concise DSLs. Apache Spark being a great example but also many DB libs.<p>* Excellent frameworks like Playframework, Apache Spark to build on top of<p>* Being stacked on the JVM - you have access to tons of production worthy libs for just about anything<p>* ScalaJS.. really awesome if still young project to unify web development in a much more reliable way than weak JS and $backend.<p>Overwhelming cons:<p>* Compile time is quite bad<p>* Operator overloading can cause some really bizarre syntaxes like SBT. SBT is probably better than the mainstream Java build systems, but it&#x27;s often a head scratcher.<p>* Being stacked on the JVM - you soon desire native Scala libs for everything<p>In 2016 I would also heavily consider Java 8 for the same team usage vs when I started using Scala in 2011. I think Java 8 really slowed the adoption of Scala down which may be worrisome for long term market share.
评论 #11838393 未加载
评论 #11838455 未加载
评论 #11838037 未加载
ryanobjcalmost 9 years ago
Been and seen two serious production apps in it. It&#x27;s a mixed bag imo. People are very excited about the language features, but don&#x27;t talk about the complexity. People talk about how great the JVM platform is, but don&#x27;t talk about GC problems and excessive garbage generation in Scala. (eg: You can&#x27;t use the map data structures without generating temporary tuples)<p>I think that for &quot;programming in the large&quot; that Scala is not going to be a winner here. I&#x27;m talking about a single code base with hundreds of engineers with a big eye towards maintainability. Because lets face it, for a 1 person small project, it doesn&#x27;t matter what language you use as long as it provides single developer productivity. But once you talk about large team projects, things get very difficult. Scala only compounds this imo.
评论 #11837949 未加载
评论 #11837736 未加载
评论 #11837707 未加载
runT1MEalmost 9 years ago
I&#x27;ve used it for a while, and overall I love it. Easily my favorite language by a large margin I&#x27;ve been paid to use.<p>We use it exclusively on the server side at Verizon Labs, and it&#x27;s quite beloved by all. We lean hard on the functional side of things and make heavy use of what some people call &#x27;advanced features&#x27;, but because of our micro services infrastructure even the teams new to Scala can be productive in a less functional style, and refactor later to be more idiomatic.<p>I do think large teams need to have enough language experts to help from making some bad design decisions, but I have plenty of productive coworkers who are new to the language and learning as they go.<p>I really don&#x27;t agree about the &#x27;maintainability fears&#x27; or &#x27;write only&#x27; language criticisms. &#x27;Bad&#x27; Scala is still so much better than bad java, and good scala is phenomenal to work with. <i>Because</i> of the type system, I have a high level of confidence when working with unfamiliar code and making minor changes.<p>Smart folks with no exposure to functional programming are picking up the &#x27;advanced&#x27; features very quickly with the right training and guidance. I would <i>not</i> recommend it to a team who has on one with any experience in the language, but if a team can hire those who have experience with the language, even if it&#x27;s just a fraction of the overall team, I&#x27;d be confident they could succeed.<p>There are real downsides:<p>* slow compile times<p>* IDEs can struggle with advanced libraries (Scalaz)<p>* some language features are &#x27;sharp&#x27; (implicit conversions)<p>* finding developers who know scala<p>We&#x27;re overcoming the first one by the fact that we&#x27;re already a microservices shop.<p>The IDE issue doesn&#x27;t affect me, I&#x27;m on Vim, many coworkers on Sublime&#x2F;Ecmacs.<p>If you go crazy with implicit conversions it can cause issues, but again we try to mitigate this with some training and having enough advanced users of the language&#x2F;code reviews to show everyone how to relegate using conversions for syntactic sugar or typeclass conversions.
评论 #11838946 未加载
photon_offalmost 9 years ago
This is coming from me being most comfortable with OOP and dynamic languages.<p>If you want to write Scala to actually get things done, you will find that it&#x27;s a miserable language to learn and that you will need to invest significant amounts of time, energy, and sanity to learn it. Furthermore, there are no shortages of Scala apologists who are so utterly enamored with the cleverness of the language that they will not concede how much of a pain in the ass it is to learn. They will claim it is easy, and then they will have no empathy for your plight. It is actually quite shameful.<p>The attitude in Scala-land is that <i>you</i> are the problem, and not Scala. When you do encounter a roadblock to a seemingly simple problem, which will be quite often, you&#x27;re lucky if you find a 20 paragraph explanation on StackOverflow. Otherwise, you can hopefully find a lengthy blog post about something closely related. In either case, the attitude is that it is _not_ Scala&#x27;s fault that solving problem XYZ requires you to understand several chapters of advanced concepts -- it&#x27;s _your_ fault for not already knowing it.
评论 #11840031 未加载
0xfadedalmost 9 years ago
Scala is a superpower, the language features are rich and flexible enough that boilerplate can be eliminated and per LoC productivity integer times increased. You get all the benefits of a compiled language, and compile time is nothing compared to restarting an interpreter.<p>But it&#x27;s difficult to master and therefore difficult to sell to others without a scala background. You&#x27;re also competing with the finance industry and salaries for decent practitioners easily top 200k.<p>So my verdict is good for an individual contributor, bad if you need to convince others to use it.<p>Also, scalajs is awesome and just works, with the exception of some reflective calls. Otherwise normal scala compiles to good JavaScript, and interop is as good as coffeescript (i.e. perfect).
aaron-santosalmost 9 years ago
5+ years here writing Java professionally in the video surveillance industry and I switched to writing geospatial systems in Scala six months ago. I&#x27;m past the initial Scala learning curve and am at least as productive in Scala as I was in Java. I&#x27;ve also been writing personal projects at home in Clojure for 4 years.<p>My initial impressions of Scala:<p>1. There is an unavoidable learning curve when onboarding. My personal experience with Clojure lowered the curve a noticeable amount. While I was tackling learning a new syntax, my team mates were struggling with syntax + functional concepts. People with exposure to functional concepts will have an easier time.<p>2. Our experience was made more difficult in that there were no in-house Scala experts&#x2F;mentors to whom we could ask questions and get answers. Bootstrapping Scala knowledge takes some time and I admit that while I&#x27;m productive writing Scala, I know I&#x27;m not at the level where I can analyse design trade-offs, extol best practices, or use my language knowledge to pre-empt and avoid problems like I can in Java. We had a good experience with a consultant + videos + books + online articles, but it isn&#x27;t the same as having a mentor colleague.<p>3. I write a LOT less boilerplate. Both my Java work and Scala work involve consuming and producing JSON data. In Java-land I used Jackson to annotate classes and used builders to build that as the data classes themselves were made to be immutable. It was a lot of repetitive code and mind numbing to write. Now you could argue that the code should be generated automatically, and you&#x27;re not wrong. But it feels like something is broken in the language if this is the best solution.<p>In Scala, I find myself using case classes and spray-json and typically write two lines of code for a JSON-serializable class definition. (1 for the case class, and one for the implicit JsonFormat definition. Occasionally I have to break out RootJsonFormat and write more code, but it&#x27;s short and concise and non-boilerplaty. I like writing Scala much more than Java and I&#x27;m because I like it I&#x27;m more productive.<p>4. Some of the libraries feel like a force multiplier. Specifically Spark, and to a lesser extent Akka let me do things I wouldn&#x27;t consider trying in Java. Sure, they can be used outside of Scala, but the way they are presented in Scala is beautiful and makes the programmer feel powerful because when using them, the are.
edkoalmost 9 years ago
I have used it for 5 years, as my primary development language. At the beginning, it was exclusively for back-end stuff, and now, with ScalaJS, it truly has become a full-stack language. The recent announcement of Scala-Native, which is already available as pre-release, and will also target iOS and Android, makes it even more exciting.
jacobnalmost 9 years ago
I&#x27;ve used it for years and love it. Came from a C, C++, Java, Ruby (on Rails), and Delphi background. I&#x27;d describe it as a love child of Ruby and Java that turned out great. It offers great flexibility, which means you can definitely shoot yourself in the foot, and some libs have definitely done that, but I prefer to restrict myself rather than have the language force me.<p>We&#x27;ve created several in house DSLs and used them to great effect.<p>Compiler is slow, though it has gotten better over the years.<p>Very much looking forward to DOT (next gen of compiler and language, union types will be awesome).<p>Use it on four production websites, about to transition a Ruby on Rails site to it soon.
pnathanalmost 9 years ago
Hi,<p>Disclaimer: I spent some time December 2014 over a Christmas break whacking away at a small Play app. I&#x27;ve not been back since due to a number of &quot;hygiene&quot; factors.<p>* I loved having type-safe templates.<p>* I found that object and class distinctions were weird and the multiple namespaces (iirc) didn&#x27;t make a great deal of sense.<p>* The language felt very grab bag: things didn&#x27;t seem to &quot;fit&quot; logically together well.<p>* Scala still has null.<p>* The tooling is <i>slow</i>. The tooling is <i>fat</i>. The tooling didn&#x27;t run on my (few years old) laptop with 4Gigs of ram. More on this below.<p>* High-class documentation about the language is hard to find. The Java (and scala) ecosystem is filled with really ignorant people and really low-level docs.<p>* And implicits were stabbing me in the face because they are unusual and technical descriptions of what they are were hard to find.<p>* The compiler error messages are hard to scrute. This is definitely less of a problem than above. (I&#x27;ve used C++ templates, so after that, it&#x27;s hard to complain too much).<p>Regarding the bloat.<p>I have Haskell, OCaml, Lisp, Java, Clojure, Python, Ruby, Rust, and ... others on my machine. Of these, exactly one has ever had a problem for my home machines: Rust, years ago, when self-compiling would alloc more than 3 gigs of ram - and my 3 gig machine would reap the process. Only Scala has presented the memory and speed issues I encountered. Given that its ecosystem is kind of designed to use an IDE, this is terrible.<p>My takeaway from building this (small) web app well over a year ago is that Scala probably works well in a team with the funding to buy hefty machines and the ability to maintain an operative knowledge of the Scala Lore. If you <i>need</i> the JVM, and you <i>need</i> advanced type systems, it&#x27;s the only choice. Otherwise Java 8 is probably adequate.<p>Eating my own dogfood - I&#x27;m working on another well-typed smaller web app at home, and my ordered preference list from top to bottom looks something like this: [OCaml, Java 8 (9?), Rust, Haskell, Scala].
airless_baralmost 9 years ago
Yes, Scala is great. Way ahead in terms of providing developers with useful tools compared to most other languages. (It&#x27;s not the usual run-of-the-mill language which takes Java and adds some syntactic sugar, so some effort in learning and understanding the language is required.)
mindcrashalmost 9 years ago
Java is great for doing backend work. Scala only makes it better due to the fact that you can apply functional principles if the problem you are trying to solve requires it besides having a great set of OO features aswell (but never, ever mix the two within a monolith architecture, because that will end with tears.). Nice plus is Scala.js which can transpile Scala to JavaScript so you can write Scala code both for frontend and backend purposes.<p>A great contender to Scala is starting to rise though, in the form of Clojure and ClojureScript. Clojure is starting to become pretty great for backend work and once you start using ClojureScript and topple it off with a framework such as Om or Reagent for building React based reactive UIs you will never look back.
评论 #11837896 未加载
jcadamalmost 9 years ago
I got into using Scala a few years ago and initially loved it (took a couple of Coursera courses on it (FP using Scala and Reactive Programming)). The problem is most other devs I&#x27;ve worked with haven&#x27;t been interested in learning to use anything other than Java. My current lead in particular has flatly refused to consider it (&quot;I want a pure Java system!&quot;). He&#x27;s also told me that since Java 8 has introduced some &quot;functional&quot; features it&#x27;s a moot point anyway (Java 8 lambdas suck. Java 8 streams really suck. The hacked-on functional interfaces really, <i>really</i> suck).<p>Now, I have been able to use Scala along with Akka on some smaller projects at work (usually where I&#x27;m working solo), not that I bothered asking for permission or anything :) At home, I&#x27;ve started using Clojure on a side project and I generally find it to be a more pleasant language to use than Scala (but Scala is still vastly superior to Java, of course). But it leans more toward FP than Scala does, so I know if Scala is a no-go at work, Clojure isn&#x27;t even worth asking about :)<p>So, yea, if I&#x27;m ever in a position to select languages&#x2F;technology stacks for a new project (hasn&#x27;t happened yet) I&#x27;d definitely lean toward Clojure for a true &#x27;greenfield&#x27; project. If I needed to integrate with an existing Java codebase, Scala might be a better choice.
评论 #11838753 未加载
mafribealmost 9 years ago
I&#x27;ve been using Scala as my main development language since 2011. I came from a strong functional programming and C++ background, consequently learning Scala wasn&#x27;t hard for me, and I find all claims about Scala&#x27;s complexity overblown.<p>I&#x27;d say Scala, used pragmatically (e.g. avoiding advanced stuff like Shapeless or Scalaz), is currently the best mainstream programming language, meaning it offers the best <i>compromise</i> between language power, maturity of implementations and library eco-system.<p>My main criticism has always been the slow compiler which was eyewateringly terrible in 2011. With SBT&#x27;s incremental compilation and faster machines the situation has become bearable.
wpietrialmost 9 years ago
I took Odersky&#x27;s online course and used it for one project. It runs my home lighting system. My experience was definitely mixed.<p>I liked the language for its ambition. I think the notion that OO and functional approaches are complementary worked very well for me. There were a lot of interesting ideas in the language and the ecosystem.<p>However, there were a number of downsides. I came across a couple of bugs that were well known and apparently people were just expected to work around them. As others have said, compile times were terrible, and the tooling wasn&#x27;t great. And at a one day Scala unconference one of the prominent Scala community members was a flaming asshole to me, which definitely didn&#x27;t help.<p>What really put me off, though, was what Bruce Eckels described: &quot;I’ve come to view Scala as a landscape of cliffs – you can start feeling pretty comfortable with the language and think that you have a reasonable grasp of it, then suddenly fall off a cliff that makes you realize that no, you still don’t get it.&quot; <a href="http:&#x2F;&#x2F;bruceeckel.github.io&#x2F;2015&#x2F;08&#x2F;29&#x2F;what-i-do&#x2F;" rel="nofollow">http:&#x2F;&#x2F;bruceeckel.github.io&#x2F;2015&#x2F;08&#x2F;29&#x2F;what-i-do&#x2F;</a><p>This was backed up for me by a talk by Paul Phillips, a major contributor to the Scala compiler: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=4jh94gowim0" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=4jh94gowim0</a><p>So in the end, I&#x27;m likely to look elsewhere. The next language I&#x27;m trying out is Kotlin:<p><a href="https:&#x2F;&#x2F;kotlinlang.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;kotlinlang.org&#x2F;</a><p>It&#x27;s from the IntelliJ IDEA people, who I trust a great deal, and I just got done working through their nice in-browser IDE tutorial:<p><a href="http:&#x2F;&#x2F;try.kotlinlang.org&#x2F;" rel="nofollow">http:&#x2F;&#x2F;try.kotlinlang.org&#x2F;</a><p>So far it seems to have all of the things I like about Scala plus a number of improvements. E.g., fast compile times were a clear goal, and I didn&#x27;t come across anything that struck me as language astronautics.
评论 #11848905 未加载
gexlaalmost 9 years ago
How do people stumble across Scala? It seems to me that the best programming languages for any given developer is that which sort of emerges into your life by luck of the draw. Probably the first was through your first job or your on-ramp into gig work. Then you may pick up more as you land on other projects. Sure, it&#x27;s good to pick up ideas by learning other programming languages, but you can only get so far into the learning curve before you start cutting into time that could better be spent elsewhere. Is Scala (with its steep learning curve) the sort of language you would pick up just to improve your programming skills?<p>I would think the answer to the original question would be that if you have to ask then probably it&#x27;s not the right direction for you. This is especially the case if you are looking for something for your next project. You have a big learning curve before you even get started.<p>Start at the end and work your way backwards. What&#x27;s the fastest way you can get from point A to showing off your project? Even better. What&#x27;s the fastest way to get from point A to making a dollar?<p>Pick up something that&#x27;s already on your shelf, throw up a sketch of something finished on your wall and then get to THAT as fast as possible. No project should start with &quot;learn Scala&quot; unless you&#x27;re being paid to learn it.
bajsejohannesalmost 9 years ago
I&#x27;m a huge fan of functional programming, but Scala didn&#x27;t cut it for me. It didn&#x27;t feel like it fit the underlying runtime well. For example, you have both an option types and `null`, and libraries being inconsistent in which they pick.<p>I&#x27;d rather stick a functional language built from ground up without the baggage. Or even straight Java. You can do pretty nice functional stuff with Java 8 streams, but it&#x27;s not trying to be something it&#x27;s not.
评论 #11849217 未加载
评论 #11838616 未加载
fishnchipsalmost 9 years ago
I don&#x27;t have any production experience with Scala but I played around a little bit. It&#x27;s a thoroughly modern language which can use all these Java libraries produced over the years so what&#x27;s not to like.<p>The only reason I&#x27;m not using it is that my professional Java-related tasks tend to be small enough that pulling in an extra dependency is an overhead.<p>Mind you, I haven&#x27;t looked at Clojure or Kotlin, both of which offer the same benefits I find attractive in Scala.
trengrjalmost 9 years ago
I&#x27;ve used Scala mainly for Apache Spark applications and do enjoy it.<p>Pros:<p><pre><code> * The type system * Being able to mix functional and OO design coherently * Less verbose than Java * Utilise existing Java libraries </code></pre> Cons:<p><pre><code> * Huge amount of syntax to learn * Fragile and slow package managers * sbt uses Ivy and so downloads package files in a single thread. In Australia this is horrible * too slow for scripting due to JVM boot time</code></pre>
chokmaalmost 9 years ago
I&#x27;ve been using it for a couple of months for Apache Spark - it allows me to create succinct big data jobs running on a Hadoop cluster. Short code which does not try to be too clever for its own good is really great at making the algorithms be more comprehensible.<p>One problem I have is sbt - our projects are all defined in Maven, and for many library &#x2F; dependency problems, Google leads me to sbt solutions which are hard to understand. Guess I will have to learn another build system.<p>I would like to use Scala again in a larger project, but there are so many existing Java frameworks out there that can solve the problems we have. So it is hard to define a business use case that requires experienced Java developers on the team to switch to Scala and use libraries and frameworks that are not as thoroughly tested and supported compared to the already known ones.<p>Tooling: The Scala plugin for IntelliJ is getting better, but it had some bugs like suggesting to remove required imports which broke classes. I like the easy navigation between Java and Scala libs - sure, you get &quot;null problems&quot; from using Java, but you can use almost all your existing Java code (Just don&#x27;t try to use commons.StringUtils.join instead of Scala .mkString ;) ).
kafkaesqalmost 9 years ago
There have been many, many discussions about Scala generally over the years. You might want to try the unofficial search engine (<a href="http:&#x2F;&#x2F;hn.alogolia.com&#x2F;" rel="nofollow">http:&#x2F;&#x2F;hn.alogolia.com&#x2F;</a>) and ask again about something more specific, or more current.
brianbarkeralmost 9 years ago
Some data scientists I work with prefer Julia or Erlang, but the real interest is now Spark. Since Scala works with Spark and is more of a datsci&#x27;s type of language (similar to Julia, Erlang, functional languages), people are moving to it. Spark made Scala relevant and interesting.
评论 #11838388 未加载
probinsoalmost 9 years ago
I have used a lot of programming languages, and Scala is stylistically interesting. What I did find though is unless you have a lot of experience with the Java ecosystem, the tooling is very distracting. You can think a lot of time in to build systems, and figuring out where or how you are supposed to install languages to support your ides.<p>My favorite thing about Scala is how well it supports DSLs , and it being the base language for a probabilistic programming language called Figaro.<p>The biggest problem with the language, is that it is huge. There are a lot of language features, like implicits, that run the risk of being abused. Additionally many Scala developers don&#x27;t write code like salad of Elders but rather like Java developers trying to learn functional programming.
dskrvkalmost 9 years ago
I have used it for about 2 years total, in two production projects.<p>The first project used Spark, so Scala was a natural choice. One big-ish issue at the time was that our team didn&#x27;t have anyone with experience in the language, so the code base ended up being very Wild West-like, with different styles mixed and heavy usage of implicits. However, none of my teammates had much difficulty becoming productive in Scala (not being an expert, but just being able to produce sane code, quickly), even though they came from mostly non-functional backgrounds (Java, C#). I did struggle with the type system initially - needed some time before it all &quot;clicked&quot;, e.g. when to use &#x27;flatMap&#x27; instead of &#x27;map&#x27;, things like that.<p>The second project uses Akka, which is by itself pretty neat. This time however, I&#x27;m the only engineer with experience in Scala and writing production code in general. I feel like the type system provides a lot of protection against silly mistakes that newbies sometimes make (especially with the poor test coverage, such as it is), and the code is much more concise that Java would&#x27;ve been, so yay smaller code reviews! The rest of the team is familiar with traditional C-like syntax, so it&#x27;s easy for them to get started. I try not to push too hard for the functional features initially, instead showing people how their imperative code could be rewritten in a more clear and concise way.<p>One major problem is the IDE support. It&#x27;s 2016, yet IntelliJ is still slow as hell with Scala, and I&#x27;ve abandoned Eclipse long ago.<p>I do notice that the language seems to promote in some people a certain tendency to write esoteric code and use some very cryptic features just for the sake of it, but I haven&#x27;t been bitten by this in the libraries we use, and try to be pragmatic in our own codebase.<p>Lastly, the value of the infrastructure - the JVM, the rich set of libraries for Scala and Java, Scala itself with stuff like Scala.js and Native - should not be underestimated by anyone who considers the language for production use.<p>Oh, and I do have some comments about Clojure as well, if anyone&#x27;s interested.
mindcrimealmost 9 years ago
I&#x27;ve gone as far as writing &quot;Hello World&quot; and that&#x27;s about it. My initial impression of Scala is somewhat favourable, but I am a little concerned by all the optional syntax. I keep thinking that Scala is going to turn out to be a &quot;write only&quot; language as a result, although I&#x27;d be interested to hear more data on that point from people who have actually used it extensively.<p>Would I use it? Maybe. I don&#x27;t know it well enough to do anything substantial yet, and lately I&#x27;ve been more focused on learning R, Octave and brushing up on Python. But there is a new Scala specialization that just showed up on Coursera that has me intrigued...
aswansonalmost 9 years ago
I&#x27;ve been meaning to play around with scala for a while now. Can anyone recommend a starter project for a seasoned dev to target with it, as a learning exercise?