Recently I needed to try out some ideas around web scraping. The app was a regular web scraper that downloads some pages, extracts data and saves them to disk. I wanted to just occasionally run it from shell to gather output, without too much thinking on how to launch it.
Where I want to get
As always there is a choice of technology to be made and immediately bash/python came to my mind, as most of the tools are already installed on the system. On the other hand I needed to run a quick proof of concept, that I could later turn into an application. I have decided to revisit then what can be used to write Scala like shell scripts.
First solution that I have seen already a while ago is described at https://alvinalexander.com/scala/scala-shell-script-example-exec-syntax. It ...
Do you know that feeling when you find a tool that you need right at the time you need it? This happened to me when I discovered Scala Exercises. I already knew Scala, but was looking for examples of usage of functional programming libraries like cats or doobie, shapeless for type level programming.
Scala Exercises are like interactive documentation with lots of examples, where you can directly test your intuitions and understanding of the library.
There is no need to setup anything locally, everything happens on the internet, so starting with it is immediate.
Have a look at Scala Exercises. You may also be interested in checking out the website of the authors 47 degrees. They are very active in Scala community and it is worth checking their latest activity.
What works for me best when learning is to get a small project and start coding. Sometimes I like to start from a small existing project and play around it, change some things. It is good for me to learn grammar, see what already exists in the language libraries.
I like Scala Koans for its coverage of all topics and similarity to other language approaches - there are koans for other languages too! The setup is really straightforward and quickly you can start going through the language features. I would be very interested in hearing from people who never programmed if approach like Scala Koans gives enough introduction to programming.
For sure it is a good exercise for people who already programmed and would like to get familiar with a new syntax and concepts.
You can find Scala Ko...
I want to share several Scala resources that help learning it. You should find something for yourself independent of your programming background.
Today something about Coursera. This is my favourite "go to" learning resource since before it was created. I can recommend it to anyone and I did go through several courses. There is a high variety of course choices - not only in programming or STEM.
As for Scala, you can find the whole specialization Functional Programming in Scala Specialization. You can sign up to single courses, but I believe you can benefit from all of them and get certification.
I took the course "Functional Programming Principles in Scala" during one of the first installments. It was very popular and you will find many people in Scala community, who have taken it...