Chevron Left
Back to Programming Languages, Part A

Learner Reviews & Feedback for Programming Languages, Part A by University of Washington

4.9
stars
1,305 ratings
370 reviews

About the Course

This course is an introduction to the basic concepts of programming languages, with a strong emphasis on functional programming. The course uses the languages ML, Racket, and Ruby as vehicles for teaching the concepts, but the real intent is to teach enough about how any language “fits together” to make you more effective programming in any language -- and in learning new ones. This course is neither particularly theoretical nor just about programming specifics -- it will give you a framework for understanding how to use language constructs effectively and how to design correct and elegant programs. By using different languages, you will learn to think more deeply than in terms of the particular syntax of one language. The emphasis on functional programming is essential for learning how to write robust, reusable, composable, and elegant programs. Indeed, many of the most important ideas in modern languages have their roots in functional programming. Get ready to learn a fresh and beautiful way to look at software and how to have fun building it. The course assumes some prior experience with programming, as described in more detail in the first module. The course is divided into three Coursera courses: Part A, Part B, and Part C. As explained in more detail in the first module of Part A, the overall course is a substantial amount of challenging material, so the three-part format provides two intermediate milestones and opportunities for a pause before continuing. The three parts are designed to be completed in order and set up to motivate you to continue through to the end of Part C. The three parts are not quite equal in length: Part A is almost as substantial as Part B and Part C combined. Week 1 of Part A has a more detailed list of topics for all three parts of the course, but it is expected that most course participants will not (yet!) know what all these topics mean....

Top reviews

YZ

Dec 03, 2016

I'm just a beginner for CS or SE classes, and find this course really concise and challenging. It opens a door for me to get deeper into programming language. No wonder it got so high average score.

AL

Mar 22, 2017

Great course!\n\nI think this course has just the right balance of theoretical background, formal definitions, and actual examples to make "just right".\n\nThanks Dan, and everybody else involved!

Filter by:

76 - 100 of 366 Reviews for Programming Languages, Part A

By Abhishek V

Mar 11, 2020

Absolutely mind-blowing course. This is a must do specialization for anyone who in interested in Programming in general. Can't thank enough Prof Dan for putting this together. I really really really wish he does a complete specialization on Haskell now.

By Бунта А В

Aug 23, 2017

Excellent course. Best of all I've studied here. An interesting presentation of the material, well-planned homework. Also got a great motivation :) And, I hope I became a better programmer than I was :)

I will be glad to continue my studies in Part B

By Visual J

Jul 28, 2017

I really think it a wonderful course that I've never experienced before, thanks to the instructor, Professor Dan, I've learnt a lot about PL and FP, which seems opening another new window towards another new programming world.Strongly recommended!

By Greg G

Dec 03, 2017

A challenging but awesome course that teaches a lot about functional programming. Really needs 6-8 hours per week though. Has great PDF lecture notes, homework structure and you can easily use the learned concepts in other programming languages.

By Anurag S

Nov 20, 2016

An interesting introduction to functional programming. This course can be a little more challenging compared to other MOOC's if you do not have prior programming experience. You will learn a lot about the concepts behind programming constructs.

By Julian H

Oct 10, 2016

The best introduction to functional programming I've seen. The course lectures make for a smooth learning experience and the exercises in the assignments range from simple to moderately challenging and are a good complement for the lectures.

By Shiyang L

Nov 13, 2016

This course is literally amazing! I haven't finished so far, but I can't wait to give it a 5-star review. The course is well organized and it really opens my mind to think of programming language in a different way. Thanks Prof. Dan!

By David S B

Aug 31, 2016

Great review of core concepts of computer science and also a handy approach of how to learn new programming languages. I recommend it to anyone which is starting to handle the multi-environment of programming languages of nowadays.

By Du L

May 12, 2018

Definitely one of the best programming courses. Challenging yet beginner friendly. Dan explains every concept with passion and care. I really appreciate Dan putting this course online. This course makes the world a better place!

By Muhammad S

Feb 22, 2018

Probably the best course I have ever taken about programming languages. I am hoping that wrapping my head around fundamental languages concepts will prove to be a long term investment in my career ahead. Thanks Dan and Coursera.

By Krishna A

Jun 12, 2017

This is a must for every person wishing to become better at programming. It gives all the insights behind the design choices of Programming Languages design and change your perspective of looking at code and making sense of it!

By Nathaniel D

Feb 10, 2017

just awesome. maximizes discovery of concepts. each video is an aha moment. highly recommend to anyone who'd like a deeper understanding of programming. if it does not come through that i'm raving about this course, i am raving.

By Gergö L

Jun 26, 2017

Clear explanations, a good, fresh, functional view on programming for somebody with a heavy C background like me :) The homework also have a good level of challenge, and help solidify the concepts learned about in the videos.

By Nana K A

Apr 11, 2020

Very Excellent course. We uncovered some intricacies in functional programming, and how to think about a programming language from fundamental principles. This course definitely enhanced my skills in procedural programming.

By Bruce W

Apr 22, 2020

This course focus on programming thinking than just symple syntas of language. You can migrate it to the learning of all kinds of programming languge. It teaches you how to think and than what to do. Really useful course.

By Wu Z

Aug 07, 2019

This is my first course on Coursera and it's really rewarding! I've been programming for several years, but this course still gives me quite a lot surprises. I think this course is suitable for programmer at all levels.

By Frank G

Apr 02, 2017

Fantastic course. Prof Grossman is an excellent teacher and he has done a great job assembling the subject matter. The course will help you become a more thoughtful programmer, no matter where you are in your career.

By Matt K

Mar 21, 2019

Very approachable with minimal CS background but incredibly insightful with a prior CS education. Sheds light on many forgotten yet important topics and gives any programmer a new lens to view their code though.

By Jayadev

May 11, 2018

pedagoically great course!

Dan really gets to the point right away and it's nice to take his classes.

Still i dont see much use of the course except to do challanging programming assigments...

Thank you Professor!

By Josh G

Feb 25, 2018

This was a great course. I feel like I can better understand the F# and Elm languages now as a result of studying SML. The sections on recursion and pattern matching were particularly interesting and rewarding.

By Iris H

Sep 29, 2019

Excellent course. Very interesting and well-presented material with a lot of thought put into building up the conceptual framework for functional programming and language concepts. I look forward to Part B!

By Matias A

Nov 18, 2019

Eye opening! You will learn a lot about the theoretical aspects of programming languages, good programming style, and especially how to write simple and elegant code to solve seemingly complex problems.

By Yuchong P

Oct 09, 2016

This course focuses mainly on Standard ML, which provides a great perspective for a PL learner. Something I find most interesting is a comparison between Standard ML and other languages like Java and C.

By Zhixia L

Sep 28, 2019

Perfect course. The professor is very enthusiastic and welcoming. The material is well-organized. The homework is just at that point, not too easy, not too difficult, but still remaining challenging.

By Denis K

Mar 24, 2018

A very good introduction to functional programming. I especially liked how precisely (although not formally) lexical scoping, semantic, evaluation rules, types checking algorithm of SML were defined.