other-languages

seancorfield 2022-06-24T00:18:27.746609Z

@takis_ "scala or java as extra language for someone that likes clojure?" -- it really depends on why you want an extra language? Employability? A challenge? As a second language? Third?

Takis_ 2022-06-24T00:19:01.470239Z

Employability i would be fine with clojure only, i was thinking about data processing

seancorfield 2022-06-24T00:19:26.078779Z

Do you find Clojure insufficient for data processing?

Takis_ 2022-06-24T00:20:05.610899Z

no but clojure jobs here in greece are so few, so i was thinking to learn one more language for safety

seancorfield 2022-06-24T00:20:32.263899Z

For Data Science in general, Python seems to be the main language but there are a lot of folks working on getting Clojure's Data Science story much improved.

seancorfield 2022-06-24T00:20:55.085819Z

Employability: I'd say Java is likely to be your best choice, assuming you want to stay on the JVM.

Takis_ 2022-06-24T00:21:05.009449Z

i was thinking about data engineer not data science

Takis_ 2022-06-24T00:21:23.643309Z

i saw spark, apache flink, i think i like those

Takis_ 2022-06-24T00:21:58.503369Z

and i dont know if they would allow me to use clojure in job, even if we have a library

seancorfield 2022-06-24T00:22:18.304909Z

I've used Java and Scala (and Groovy) in production, as well as Clojure, and I'd probably lean toward Scala for the level of expressivity, but it's a complex, fussy language and I hated all the breaking changes with every language upgrade (I last used Scala in the 2.7/2.8 days and when 2.9 came around we decided to jump to Clojure)

Takis_ 2022-06-24T00:23:03.267039Z

scala feels alot more functional? i like functional programming

seancorfield 2022-06-24T00:23:53.158809Z

Java is much improved these days, so a job where you get to use modern Java and don't have to deal with legacy Java could be bearable. I sort of wish I knew Kotlin better because I think I'd lean that way instead: it's "functional enough", it's simple and elegant (compared to Java and Scala, at least), and it has null-safety built into its type system 🙂

seancorfield 2022-06-24T00:24:48.249119Z

Scala can be functional -- or it can just be a "better Java". But the functional side of Scala has a lot of Haskell-wannabe types and stuff like ScalaZ is nasty enough that you might as well just give in and go use Haskell, IMO.

Takis_ 2022-06-24T00:24:50.472529Z

data engineer software, support java,scala,python in general so i want to pick one of the 3+clojure that i really like

Takis_ 2022-06-24T00:25:24.603449Z

i dont like types, i like dynamic languages also

seancorfield 2022-06-24T00:25:44.850439Z

I think Python's nice. Haven't used it in production but I learned it about a decade ago and liked it better than Ruby.

seancorfield 2022-06-24T00:26:31.684859Z

If you don't like types, you probably won't like Scala -- it has types dialed up to eleven 🙂

Takis_ 2022-06-24T00:26:51.106719Z

maybe python is the closest to clojure, because dynamic also, i dont know, thank you for helping me

seancorfield 2022-06-24T00:27:25.062029Z

Do you know if there are more Python jobs in your area than Java/Scala? In data engineering.

Takis_ 2022-06-24T00:27:36.594339Z

python is safe choice

Takis_ 2022-06-24T00:27:52.406719Z

many jobs

👍🏻 1
2022-06-25T19:39:19.576589Z

Personally after Clojure I like Kotlin best, and newer Java has become nicer, but still hate a lot of things about it, mostly the patterns people have grown accustomed to is what I don't like. Scala is my least favorite though, in practice I've never seen anyone who uses Scala know how to use it, code bases end up a weird OOP in Scala with random parts where people tried some more functional or type heavy tricks and it doesn't always work well haha.

2022-06-25T19:40:39.463729Z

And for some reason, Scala is too implicit for me, type inference and implicits really make it hard to find where things are defined and all that unless you load it all up in your IDE

Takis_ 2022-06-25T21:20:40.054039Z

i think i will just stay java+clojure like i was always, i don't feel like learning a new language that i dont like, at least java i used it long time, and we have a good clojure implementation on JVM