Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
sink
Sep 10, 2005

gerby gerb gerb in my mouf
Edit: Thank you for making a new thread!

triple sulk posted:

The shortest answer for this is that it isn't worth it for companies to bring on developers who don't already know Scala incredibly well. It's not a language worth using in 2015 and you'd be better served by sticking with C# or trying out one of F#, Haskell, or Clojure.

I don't agree with this. I'm seeing many more companies adopt Scala or begin to dabble in it. Scala's whole strategy for enterprise adoption is that it integrates well with Java (versus Clojure) and has made compromises in language design for that accommodation. There is an easy ramp up path for large organizations with a lot of legacy Java. And a lot of large companies are realizing that if they don't want dim-witted cubicle dwellers as employees, they need to start using the new JVM hotness.

Scala is the functional enterprise language. F# or Haskell might be better functional languages. But if you want a corporate job somewhere writing more functional code, then Scala is something you absolutely should get familiar with. It's an easy gateway drug.

sink fucked around with this message at 04:01 on Feb 6, 2015

Adbot
ADBOT LOVES YOU

sink
Sep 10, 2005

gerby gerb gerb in my mouf

Mr Shiny Pants posted:

I don't know if scala is the better enterprise language than F#. F# has the complete .Net ecosystem behind it.

I get the sense that corporations are making more strong bets on the JVM than the CLR. I don't have numbers to prove that, but this is my reflection from job hunting in NYC and SF. Although I do run into a a surprising number of .NET shops here and there. Stackoverflow and Zocdoc being two headliners. Do you know if they are jumping into F#?

sink
Sep 10, 2005

gerby gerb gerb in my mouf
Is akka-http usable right now (both client and server) or should I stick to Spray?

sink
Sep 10, 2005

gerby gerb gerb in my mouf
Slick can be very good, especially if you use it with the code generation features. The documentation is ... a bit of a mess.

If you're looking for a typesafe query language that understands that SQL does not always map to objects, and your project will be around long enough to warrant you investing the time in understanding Slick, then it will stand up to the job admirably.

If you need to hack together some queries and pretend to be scala-like with some functors or monads or poo poo in there and hey why not concatenate some strings to form queries before you interpolate them, I wrote a filthy little hussy cowl of a library around JDBC that hides all the JDBC awfulness away away from your pure, lifted functional programming hands here:

https://gist.github.com/lazyvalue/09a72f1ac5461578a2ea

It's served me well for many ETL jobs when I just need to quickly dump parts of a data base I barely know anything about. It's useful and fairly hackable, but strongly in the 'roll your own category'

sink
Sep 10, 2005

gerby gerb gerb in my mouf
More on the Slick / SQL in Futures discussion, Sefan Zeiger is talking about Reactive Slick at Scaladays Tomorrow:

quote:

Scoping database sessions correctly and configuring a connection pool in an efficient way were already non-trivial in blocking JEE-style applications, but if you try to fit the inherently blocking JDBC API into a Play or Akka app, it gets even harder. In the newest version of Slick, Typesafe's database library, we provide a different way of sequencing database actions, based on the ideas of Haskell's IO monad. This talk will show you how to use this new API to safely compose and execute database calls, returning Futures and Reactive Streams from them. Bridging the gap between the blocking JDBC API and your non-blocking applications also requires a very different threading model and connection pool configuration than in a blocking app.

http://event.scaladays.org/scaladays-sanfran-2015#!%23schedulePopupExtras-6554

I'm going to a different talk in the same timeslot though.

Also if anyone else is at the conference it would be great to say hi

sink
Sep 10, 2005

gerby gerb gerb in my mouf
I wonder if that's their intermediate step toward getting off Ruby.

sink
Sep 10, 2005

gerby gerb gerb in my mouf
Virtually every operator has an alpha alias. I'm inclined to agree with you in that I don't particularly care for symbolic soup, but I think it's fairly subjective or contextual. I would rather see a method named ~> than naturalTransformation.

sink
Sep 10, 2005

gerby gerb gerb in my mouf

KernelSlanders posted:

Cake pattern is terrible. I don't understand why anyone would chose it over constructor injection.

Agree.

sink
Sep 10, 2005

gerby gerb gerb in my mouf

I'm sorry that project was so hosed up, even from the start. And it never really got much better. The codegen stuff helped with a lot of the suffering though.

sink
Sep 10, 2005

gerby gerb gerb in my mouf

loinburger posted:

That was a fun project, it's just a shame we never got to finish it

Hey you don't have PMs, can you please email me? scott at thereceptor dot net

You gotta sign your doc

sink
Sep 10, 2005

gerby gerb gerb in my mouf
how embarrassing for them: https://www.lightbend.com/blog/typesafe-changes-name-to-lightbend

i understand this is about surviving as a company and thus catering to enterprise clients who are Java first, but stepping back from Scala is a little disheartening. the copy on that lovely website has also become completely impenetrable

Adbot
ADBOT LOVES YOU

sink
Sep 10, 2005

gerby gerb gerb in my mouf
Akka-HTTP is superior to Play. It's not great, but at least it's a true library that makes reasonable design decisions so that you can build anything you need on top of it.

There's some stuff in it that is insanely obtuse and I blame the influence of akka-streams, which I have mixed feelings about.

I like the idea of typed actors with backpressure and a bunch of prebuilt shapes. The Akka streams design just seems obtuse.

  • Locked thread