Oct 09, 2016
Really good explanation by the instructor. Good assignments. The assignments gave a good insights into functional programming. I loved the way the problems were decomposed into neat smaller functions.
Sep 14, 2018
It took me much longer than expected to finish the course and sometimes it made me feel stupid and helpless. Diving into functional programming was a mind bending experience, totally worth time spent!
교육 기관: Tom Y•
Dec 27, 2018
The course was quite good all in all, and even though I'm already experienced with many of the aspects involved in software engineering in general and in functional programming in particular, I've followed it with much interest and gained some new perspectives. And it's been a great introduction to Scala (a language I had not written code in before).
The teaching is very good! Prof Odersky's explanations are very clear and go into the right level of detail, and the exercises and assignments are interesting and seem to be well thought out.
I personally would have liked the course to be deeper, both in explaining functional programming (e.g. the monad pattern) and in covering more advanced features of Scala (e.g. the less trivial parts of the type system), but I guess the given course is OK as an introduction and I can also go look for the stuff I'm missing in other courses and/or outside Coursera.
Two minor things that damaged the experience to a little extent and which I would recommend to improve for the future: 1. The technical introduction was good enough to get me started, but did not cover some problematic aspects which had me stuck for a long while (it was also very difficult to solve by googling, and a colleague of mine - who's also taking the course - ended up solving it by chance). Specifically I'm talking about worksheets not working properly unless created within a package directory, and for some things unless set to a certain mode of execution (non-REPL). Disclosure: I haven't looked for solutions in the course forums; it's possible that this was asked and answered, or that I could have asked and gotten an answer there. 2. The videos were poorly edited: some bits repeated, some clips were obviously recorded for a specific week number but then given in another week, some parts had obviously been there originally (and other parts referred to them) but then they didn't make the final cut... It's a pity that an otherwise very well made course suffers from such small technical problems, which, while not too grave, cause confusion and increase the mental load the learner has to cope with - which is already laden with challenging stuff - with such non-important and easily avoidable distractions.
교육 기관: Pere M B•
Jan 06, 2019
Really well explained, with thoughtful examples and labs that make your brain actually comprehend all the lessons.
교육 기관: David F•
Jan 14, 2019
The course in general is kind of theoretical. Some of the homeworks are fairly challenging. I found it a useful companion to the Programming in Scala book, which I'm working through at the moment.
교육 기관: Scott L•
Jun 04, 2016
I am a statistician who works primarily with R, with some Python for the things Python is better for. I know how to program, but I explicitly note I am not a computer science student. I have only limited experience with the command prompt. I was very excited when I heard about this course, but the amount of work and frustration just to get started programming in Scala has been obscene. I am very, very glad I decided to check out the course for free before paying for the specialization.
The course has a lot of required software. The tutorials to get this software often involve "You need this, but so save time we're going to skip showing you how to get it. If it doesn't work, you need to install it." There is a lot of variability in OSs. Many errors are often encountered. There is no help.
Among the things the course requires are two (three?) IDEs for Scala (I note the video tutorials says you just need some sort of IDE... but you need IntelliJ, and Eclipse to submit...). The guides show how to get started on a Mac. The software is not the same on Windows, and so 'step by step instructions' become a guessing game, because many options or menus are missing or different.
There are many better and more friendly guides on the internet. I may return to the transcripts of the course content here, but I won't be submitting any coursework. I'm going to warn my colleagues away as well. Forget Coursera - I'll just buy a book and work through it like everyone else I know.
교육 기관: Joe H•
Sep 05, 2018
Generally excellent! Reading around other online introductory resources the difference in clarity from the creator of the language, Martin Odersky in this course is very clear. I feel I have a good base to continue my learning from. To make it even better as an introduction I would have liked 3 things. Firstly more examples and exercises. along with the more challenging ones, more correct vs incorrect examples exercises, to reinforce the theoretical understanding that is so clearly present. This would translate more quickly into practical coding skills. Secondly some more tips on the development environment, specifically how to get the debugging tools working. Lastly, updating the code base to the lastest versions of Scala and SBT, so there are no deprecation warnings when building. Having said all that, I'm really happy to have found this course and excited now I've completed it to continue my learning of Scala.
교육 기관: Darren B•
Aug 13, 2017
This course helped me significantly. There is very little in the way of AFFORDABLE Scala Education out there. This is a problem. There are endless educational resources for Python. Scala has a lot to offer programmers if only they knew where to find adequate educational Resources for Scala.
Make learning Scala easy enough for a 12 year old to learn and you will see it explode.
Make Scala, Easy ! Make Scala, Fun ! This is essential to opening the young minds interested in Computer Programming.
Why isn't there a native Graphic Scala Lib like Python's Tkinter?
Not everybody wants to be a "Big Data" Mining Engineer.
If Scala can produce graphics from the Java Swing library and experimental ScalaFX graphics lib, then isn't it time for Scala to have it's own native Graphic Library that is at the least as capable as Tkinter for Python.
There is no better feeling than the liberating emotion you get from creating programs, games and Apps on your own PC. Let the Power of Scala out.
Make it easy enough for Kids to learn and get out of the way!
교육 기관: Diego•
Sep 29, 2017
Very interesting course, it totally changes your mindset from imperative programming. Basically it teaches you to think in terms of recursion instead of loops. Although some assignments can be difficult (and take several hours), they are helpful to understand the concepts and challenging as well so they keep you engaged to the course. Besides, the lectures are very clear and designed to give some hints on the assignments. Since Scala is based in Java, previous knowledge of Java is an advantage, but not a must. However, previous programming knowledge is a must in my opinion.
All in all, a very recommendable course to take.
교육 기관: Aneesh D•
Sep 23, 2017
A great course. Functional programming really is a different way of thinking about programming and this course does justice to all of its core concepts. The assignments are very well structured and teach all the best practices of the paradigm.
교육 기관: Pritam B•
Sep 28, 2016
I have never worked with Scala before. But this course has not only given me, basic level introduction but also taught me advanced concepts and how to apply those concepts in real world problems.
교육 기관: Bogdan P•
Aug 04, 2019
It's brilliant in rewiring a mind from OOP to functional thinking.
교육 기관: Ivan P•
Jun 29, 2019
The course was awesome, but some tasks(llike huffman encoding) are really hardcore. Also, there are not that much information on implicits
교육 기관: Mets V•
Dec 11, 2018
Great course! Martin is good at explaining the concepts and the exercises are though but doable. Now how can I download the certificate?
교육 기관: Sushmitha v•
Nov 26, 2018
교육 기관: Lucas R A•
Nov 26, 2018
Excellent course to start learning funcional programming and Scala, Martin Odersky is an amazing professor.
교육 기관: Bellhops•
Nov 25, 2018
The structure of the scala projects could be updated but that aside this is a wonderful introduction to functional programming and the language itself.
교육 기관: Виталий•
Dec 13, 2018
HIghly recommended for newbie in functional programming and Java switchers
교육 기관: Taufeq R•
Dec 16, 2018
I really enjoyed learning from first principles of functional programming in this class with Prof. Martin Odersky. The direction from start to end is really well suited to beginners of functional programming and also well suited to students new to programming. This goes on show the genius Prof. Odersky is at teaching and developing an elegant language with his students.
교육 기관: Xiaoxuan W•
Dec 17, 2018
This is my all time favorite MOOC! Thanks Professor Ordersky!
교육 기관: nanaji•
Dec 16, 2018
Excellent course. explained every topic nicely and he covered everything in more detailed way.Thanks.
교육 기관: Nagesh L•
Dec 03, 2018
Very nice course to learn the scala programming language. Especuially who want to start and learn funtional programming like me. The instructor is very knowledged (he is a professor and an author of book). I am fully satisfied with this course. The assignments were challenging and had fun while doing this course. Whoever want to take, please don't think - just enrol and enjoy!
교육 기관: Jude O•
Jan 09, 2019
Absolutely amazing course, I've never enjoyed learning a new programming language as much as through this course. The programming assignments are challenging and interesting too.
교육 기관: Germán A H G•
Dec 26, 2018
It was a GREAT course!
교육 기관: Truptimayee R•
Dec 28, 2018
The structure of the course was good . Concepts were explained nicely .
교육 기관: Prasanna N•
Dec 29, 2018
Thanks for this great course.
Martin explained all the concepts clearly.
I learned a new language and more importantly, some new functional programming concepts!