Chevron Left
Back to Programming Languages, Part A

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

4.9
1,132 ratings
318 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.

VA

Mar 05, 2018

Very interesting course! Superb teaching and homework assignments. If you are interested in functional programming or in programming languages in general, this should be one of the must take MOOCs

Filter by:

201 - 225 of 313 Reviews for Programming Languages, Part A

By Alejandro M

Nov 21, 2016

Excellent!

By Thassilo H

Sep 20, 2017

One of the best Courses I have taken so far: Fantastic and interesting content, highly engaging instructor, and great assignments. The course has a lot of content, and you really get to learn the basic ideas of functional programming and not just the syntax of a new programming language. Looking forward for Part B!

By Konstantinos O

Jan 22, 2018

A great course, covering a wide range of topics in programming languages. Very well paces and Dan Grossman is an amazing teacher! Must watch for every programmer, beginner or experienced.

By Sergey Z

Apr 03, 2017

Great course!

One of the few courses I actually finished on Coursera.

Though I think it could be made longer to have less lectures/homework, but that's probably a general issue with Coursera for me.

By Pablo A

Jun 25, 2017

Best programming course I have ever taken in person or online. Dan Grossman has to be one of the most enthusiastic and clear computing science professors. The material on Part A was far more effective to learn principles of functional programming than the many books and talks I have read and watched. Thanks!

By Jan H

Dec 27, 2016

I took this course about 10 years off the college, and it was excellent refresher on the topics I don't use on a daily basis. Absolutely great lecturer, great videos and study materials!

By Evgeny N

May 27, 2018

Very good course.

By Deleted A

Aug 24, 2016

Great course on writing concise functions.

By Noah P

Sep 14, 2016

Excellent class, teacher, and material. Fun learning ML, thanks

By Jiayi L

Oct 08, 2016

Great Course. Unlike other MOOC courses, it provides sufficent practices which helps me to understand the content a lot. Looking forward to take part B

By Dennis E H

Sep 05, 2017

The lectures in this course are extraordinary, especially the ones that explain motivations and how the material was chosen.

By Johnathan F

Jan 14, 2018

Courses I've taken on programming languages often focus on one language. You learn the different concepts for that one language but don't understand why the language chose those concepts and what the alternatives are. By covering three languages, this course integrates the concepts and their alternatives to give you a solid understanding of how languages work.

By Brian W

Nov 30, 2016

Best course available on Coursera!

By Stanislav K

Mar 24, 2017

An excellent course! Make sure you really have enough time to take this course. There are a lot of videos, but they worth watching. I'd recommend this course to everyone involved in programming.

By Michel A S

May 17, 2018

I've worked in industry for several years, and took this course as a refresher. I've not used ML languages much before so some of the concepts are genuinely new, but overall this course really exceeds my expectation - it's a really good (re-)grounding in programming language concepts.

By Yu Z

Jul 29, 2017

This course is fantastic. Taking this course is a very rewarding experience. A great investment for sure! Thank Dan and his team!

By Yusong S

Feb 12, 2017

Learn many fundamental concepts about functional programming! Course material is challenging but rewarding.

By Anderson R

Oct 02, 2016

Awesome!

By Dante F

Jan 07, 2017

A litle fast but with a lot of many important concepts inside. Thanks Prof. Grossman

By Oscar

Aug 24, 2016

A fantastic course with a great instructor.

By Luiz C

Jul 22, 2018

A fantastic Course. Before this Course I thought I knew how to Code. Now I know I still have to learn a lot

By Gleb L

Jul 25, 2018

All three parts are amazing. Dan is a great computer scientists and a teacher. He have very clear way of explaining ideas. Material covered in courses is highly relevant. Concepts covered in functional parts can be seen in many "fresh" languages (Scala, Swift, Nim). Deeper grasp of OOP and its relation to functional programming helps understand core differences and similarities.

I cant recommend this three part course enough for anyone who don't just want to know one programming language, but to be a better computer engineer.

By Kurt

Oct 14, 2018

very nice course, content explained clearly

By Walker

Aug 11, 2018

很赞,学到了很多实用的基本概念和方法。

By nikofeyn

Aug 11, 2018

Take this course. Many modern languages are still slowly stealing features from Standard ML, even decades later. Dan Grossman is passionate about this material. This course is arranged in such a way that it slowly builds you up in skill and knowledge, and the pacing is quite good. The homework assignments are very useful in reiterating the material, and the peer-grading really works if you commit and put work into it.

Learning functional programming is a great way to expand your skills as a software developer and programmer. The thinking required is much more principled than in something like Python, and so you begin to understand how this approach could be useful in the real world.