Short thoughts for Scala!
Read a new article which posted today The Death of Hype: What’s Next for Scala from active Scala developer Haoyi, generally he is good at Python and Java too. From his article that he mentioned Scala’s hype was gone, on another side maybe, as he said it’s a sign for a language to become mature. For me Scala is beautiful and terse, for its sugared syntax, mathematical logic, and usage for big data system Spark. I have only used Spark with Python, for its Python API, well, I think using with Scala would be cooler and getting better for understanding distributed system, in general.
*note: above cited article’s image is used as cover image of this post.
Scala is growing and its communities have different focuses too, as far as I joined some on Slack or Gitter. So at this moment, I’m an observer.
In general, what Scala improves me (aka. what I feel about Scala),
- Type inference from its type system, quite robust, which helps me build mental model to write strict types in Python and understand why
- FP, in general is to compose functions and objects, which helps me to practice myself to write function
pure
- Learning category theory, helps me abstract thinking
- Start to use Scala for Spark, yeah!
Recently when I bike, sometimes I think about Scala. To me, Scala is like virtual activities, just like itself, which talks about What
, while the other group of OOP languages which are more physically, it talks about How
and When
. Logics and virtuality are hard, not popular as physical activities, which objects can operate it more naturally.
I don’t know why FP language is not popular as OOP language, but I do hope some FP languages Scala and Haskell will be widely and appropriately used. I’m not saying any Set(language(s)) is better than any Set(other(s)), just a little hope for a new language I chose will have a better community support.
For Scala, I feel more delightful than using Python. Python for sure is a good fit for DS (except tradeoff for perf and side effects), I’m still practicing myself for using Python, so much libraries I haven’t yet used and clean code I haven’t written. Compared to Python, the only reason Scala is more joyful, when I started to learn Python, which is not as much math and theory bind as Scala. I guess that is the why
, and the fun
one language can provide for me. It just like reading masterpiece book The Art of Computer Programming from Donald Knuth, or the Category Theory from Bartosz Milewski, which is about thoughts.
So it’s not about which language, it’s about the meaning of life! I guess that is the root reason why this language is more attractive to me than Python. But as Richard Feynman once said,
Nearly everything is really interesting if you go into it deeply enough.
So just keep exploring for something I feel curious about!