subject
Intro

Coursera: Introduction to Programming with MATLAB

 with  Akos Ledeczi, Michael Fitzpatrick and Robert Tairas
Class Central Course Rank
#2 in Subjects > Programming > Programming Languages

HIGHEST RATED MOOC

This course is a Top 50 MOOC of All Time based on thousands of reviews written by Class Central users. It's guaranteed to be good!

Check out the rest of the Top 50 here.

This course teaches computer programming to those with little to no previous experience. It uses the programming system and language called MATLAB to do so because it is easy to learn, versatile and very useful for engineers and other professionals. MATLAB is a special-purpose language that is an excellent choice for writing moderate-size programs that solve problems involving the manipulation of numbers. The design of the language makes it possible to write a powerful program in a few lines. The problems may be relatively complex, while the MATLAB programs that solve them are relatively simple: relative, that is, to the equivalent program written in a general-purpose language, such as C++ or Java. As a result, MATLAB is being used in a wide variety of domains from the natural sciences, through all disciplines of engineering, to finance, and beyond, and it is heavily used in industry. Hence, a solid background in MATLAB is an indispensable skill in today’s job market.

Nevertheless, this course is not a MATLAB tutorial. It is an introductory programming course that uses MATLAB to illustrate general concepts in computer science and programming. Students who successfully complete this course will become familiar with general concepts in computer science, gain an understanding of the general concepts of programming, and obtain a solid foundation in the use of MATLAB.

Students taking the course will get a MATLAB Online license free of charge for the duration of the course. The students are encouraged to consult the eBook that this course is based on. More information about these resources can be found on the Resources menu on the right.

Syllabus

Course Pages


The MATLAB Environment
We will learn how to start MATLAB and will familiarize ourselves with its user interface. We will learn how to use MATLAB as a sophisticated calculator. We will learn about syntax and semantics. We will see ways in which MATLAB provides help. Finally, we will learn how to create plots in MATLAB.

Matrices and Operators
The basic unit with which we work in MATLAB is the matrix. We solve problems by manipulating matrices, and operators are the primary means by which we manipulate them. We will learn how to define matrices, extract parts of them and combine them to form new matrices. We will learn how to use operators to add, subtract, multiply, and divide matrices, and we will learn that there are several different types of multiplication and division. Finally, we will learn MATLAB’s rules for determining the order in which operators are carried out when more than one of them appear in the same expression.

Functions
Functions let us break up complex problems into smaller, more manageable parts. We will learn how functions let us create reusable software components that can be applied in many different programs. We will learn how the environment inside a function is separated from the outside via a well defined interface through which it communicates with that outside world. We will learn how to define a function to allow input to it when it initiates its execution and output from it when it is done.

Programmer's Toolbox
MATLAB has useful built-in functions and we will explore many of them in this section. We will learn about polymorphism and how MATLAB exploits it to change a function's behavior on the basis of the number and type of its inputs. Because random numbers play an important role in computer programming, we will learn how to use the MATLAB random number generator. We will learn how to get input from the keyboard, how to print to the Command Window, and how to plot graphs in a Figure window. Finally, we will learn how to find programming errors with the help of the debugger.

Selection
Selection is the means by which MATLAB makes decisions about the order in which it executes its statements. We will learn how to use the if-statement, which is the most important method of selection. We will learn how to use relational operators and logical operators. We will learn how to write polymorphic functions and how to make functions resistant to error.

Loops
Loops give computers their power. We will learn how to use both of MATLAB's loop constructs: the for-loop and the while-loop. We will learn how the break-statement works, and we will use nested loops. We will learn how to make loops more efficient. We will learn about logical indexing and will see how to use it to produce implicit loops that are efficient and easy for a user to understand.

Data Types
Computers operate on bits, but humans think in terms of numbers, words, and other types of data. Like any good language, MATLAB organizes bits into convenient data types. We will study those types in this section. We will learn that there are ten types of numbers and that there are conversion functions to change one type into another. We will learn much more about strings and how the characters in them are encoded as numbers. We will learn how to produce heterogeneous collections of data via structs and cells.

File Input/Output
Files are named areas in permanent memory for storing data that can be used as input or output to MATLAB and to other programs. We will be introduced to MATLAB’s most important methods for reading and writing files. We will learn how to create, read from, and write into MAT-files, Excel files, text files, and binary files. We will learn how to navigate among folders with MATLAB commands.

186 Student
reviews
Cost Free Online Course (Audit)
Pace Upcoming
Institution Vanderbilt University
Provider Coursera
Language English
Certificates Paid Certificate Available
Hours 4-6 hours a week
Calendar 9 weeks long
Sign up for free? Learn how

Disclosure: To support our site, Class Central may be compensated by some course providers.

+ Add to My Courses
FAQ View All
What are MOOCs?
MOOCs stand for Massive Open Online Courses. These are free online courses from universities around the world (eg. Stanford Harvard MIT) offered to anyone with an internet connection.
How do I register?
To register for a course, click on "Go to Class" button on the course page. This will take you to the providers website where you can register for the course.
How do these MOOCs or free online courses work?
MOOCs are designed for an online audience, teaching primarily through short (5-20 min.) pre recorded video lectures, that you watch on weekly schedule when convenient for you.  They also have student discussion forums, homework/assignments, and online quizzes or exams.

Reviews for Coursera's Introduction to Programming with MATLAB
4.9 Based on 186 reviews

  • 5 stars 88%
  • 4 stars 10%
  • 3 stars 1%
  • 2 star 1%
  • 1 star 0%

Did you take this course? Share your experience with other students.

Write a review
  • 1
5.0 2 years ago
by Robert Mattera completed this course.
Below I'll post a private email I sent to Dr. Fitzpatrick telling him what I thought about the course:

My name is Robert Mattera and I'm a graduate student at Rutgers University in Plant Science. For years now I've been saying I wanted to program but just couldn't take the plunge because it seemed too difficult and kept putting it off.

Well, I just finished watching the last lecture for your online course and I would like to tell you that this has been the best college-level course I've taken in my time as a university student (both undergraduate and graduate). I am so glad I decided to take this course, not only because I finally learned how to program but also because how amazing this class was. I appreciate how clean, smooth and professional the videos looked and am very grateful that your explanations were very thorough and clear. The assignments were perfect and actually enjoyable to do (most of the time haha).

My favorite part of the cour
Read more
Below I'll post a private email I sent to Dr. Fitzpatrick telling him what I thought about the course:

My name is Robert Mattera and I'm a graduate student at Rutgers University in Plant Science. For years now I've been saying I wanted to program but just couldn't take the plunge because it seemed too difficult and kept putting it off.

Well, I just finished watching the last lecture for your online course and I would like to tell you that this has been the best college-level course I've taken in my time as a university student (both undergraduate and graduate). I am so glad I decided to take this course, not only because I finally learned how to program but also because how amazing this class was. I appreciate how clean, smooth and professional the videos looked and am very grateful that your explanations were very thorough and clear. The assignments were perfect and actually enjoyable to do (most of the time haha).

My favorite part of the course was not only your quirky remarks and nerdy (but hilarious) jokes but also that you made programming extremely interesting and you went about showing the material in a way that every video had an 'a-ha moment' for me. As few and far between as a-ha moments are for scientists this was a big deal for me. I'm truly grateful at how much effort and passion you and your team put into this course to make it engaging for the students. I am very sad that it is over.

The biggest thank you,

Rob Mattera
10 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Nisheet Patel completed this course.
Prof. Fitzpatrick is an excellent teacher. Apart from the fact that he delivered the subject matter in a crisp and concise manner, I love his sense of humour too. The style of presentation is really neat. The assignments were excellent too; they very nicely tested one's understanding of the subject and especially in programming, as Prof. Fitzpatrick mentions aptly, one doesn't learn without actually doing it. The automatic grader is quite lovely and rewards you with a beautiful "bwong" if you get a full score :D. I particularly liked the challenging questions - they were what kept me engaged. Profs. Ledeczi and Tairas, and the teaching assistant (Aatish) were all extremely helpful in the discussion forums.

One comment that I'd like to make is that if you're familiar with the basics of programming, it might seem a little slow to you and you might want to pick up coding in MATLAB on your own, since the language is very intuitive. However, Prof. Fitzpatrick gives brilliant in
Read more
Prof. Fitzpatrick is an excellent teacher. Apart from the fact that he delivered the subject matter in a crisp and concise manner, I love his sense of humour too. The style of presentation is really neat. The assignments were excellent too; they very nicely tested one's understanding of the subject and especially in programming, as Prof. Fitzpatrick mentions aptly, one doesn't learn without actually doing it. The automatic grader is quite lovely and rewards you with a beautiful "bwong" if you get a full score :D. I particularly liked the challenging questions - they were what kept me engaged. Profs. Ledeczi and Tairas, and the teaching assistant (Aatish) were all extremely helpful in the discussion forums.

One comment that I'd like to make is that if you're familiar with the basics of programming, it might seem a little slow to you and you might want to pick up coding in MATLAB on your own, since the language is very intuitive. However, Prof. Fitzpatrick gives brilliant insights to code much more efficiently by exploiting the matrix functionality, in turn saving lots of lines of code. Those bits, I believe, could even help mildly experienced programmers.
7 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Aditya Govardhan completed this course, spending 3 hours a week on it and found the course difficulty to be medium.
Lectures: Brilliant. Prof. Fitzpatrick is an experienced programmer and he is very well accustomed to thinking processes of students. At times he is funny too and keeps you quite engaged in the lecture. I have watched the lectures twice and found equally interesting and informative both the times.

Assignments: This is the best part of this course. The assignments are detailed, precise and challenging enough to impress yourself. You would truly think in an algorithmic manner and would surely arrive at answers if you don't quit. The assignments get interesting every week.

Community and TAs: This is one thing worth notice. I found the TAs very helpful and active. They even provide appropriate hints when you are stuck in assignments.

Inference: The course sticks to its name. It is an introduction to programming with MATLAB. And if it benefits your career, you would fall in love with MATLAB environment. (They even provide a limited period academic lice
Read more
Lectures: Brilliant. Prof. Fitzpatrick is an experienced programmer and he is very well accustomed to thinking processes of students. At times he is funny too and keeps you quite engaged in the lecture. I have watched the lectures twice and found equally interesting and informative both the times.

Assignments: This is the best part of this course. The assignments are detailed, precise and challenging enough to impress yourself. You would truly think in an algorithmic manner and would surely arrive at answers if you don't quit. The assignments get interesting every week.

Community and TAs: This is one thing worth notice. I found the TAs very helpful and active. They even provide appropriate hints when you are stuck in assignments.

Inference: The course sticks to its name. It is an introduction to programming with MATLAB. And if it benefits your career, you would fall in love with MATLAB environment. (They even provide a limited period academic license of latest MATLAB version too!) A great course for aiding a career which requires MATLAB as a skill.
3 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
Anonymous audited this course.
This is an excellent course. I had already used Matlab in the past for Linear Algebra and Numerical Methods in university but this was a long time ago and I wanted to refresh my knowledge about it. Initially when I saw course topics I thought this is just the like 5% of what I did in the past and in some way it was, because it is not focused on mathematics, but just on programming. But I realized I never been well introduced in Matlab in the past and I learned many new aspects of it that I never used before. Because of my prior knowledge and experience with programming I had a major advantage doing this course. But even with that I sometimes initially didn't immediately knew how to tackle some of the assignments. But this is a good thing because if it would have been easy all the way I wouldn't have learned anything. For people without any programming or mathematics background this might be quite a challenge though. I assume many have dropped out because of it. But overall this is a
Read more
This is an excellent course. I had already used Matlab in the past for Linear Algebra and Numerical Methods in university but this was a long time ago and I wanted to refresh my knowledge about it. Initially when I saw course topics I thought this is just the like 5% of what I did in the past and in some way it was, because it is not focused on mathematics, but just on programming. But I realized I never been well introduced in Matlab in the past and I learned many new aspects of it that I never used before. Because of my prior knowledge and experience with programming I had a major advantage doing this course. But even with that I sometimes initially didn't immediately knew how to tackle some of the assignments. But this is a good thing because if it would have been easy all the way I wouldn't have learned anything. For people without any programming or mathematics background this might be quite a challenge though. I assume many have dropped out because of it. But overall this is a perfect course.
3 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
Anonymous completed this course.
I am a Speech-Language pathologist whom started to work with brain image data analysis. I came across Matlab in this journey and got interested in learning the basics of programming to better understand the script written by my collaborators.

Then, I found this course at Coursera and took the chance. It wasn't easy. Several times I thought about giving up. But, each question I got right in the assignments motivated me to keep going (so did a friend that is a great programmer).

I totally recommend this clas - everything is so detailed (video lectures, transcripts, book) that makes it easier to learn. The discussion forums were also great: answers from the TAs came in minutes, always!

I finished the course feeling that I still have a long way to go before call myself a programmer. BUT, I feel much more empowered and knowledgeable to move forward in my brain image analysis using MATLAB.
2 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Scott Siclari completed this course.
This course is the epitome of a perfect online course; everything from the lesson plan, lesson formats, video formats, homework formats and grading. This course does establish you with the basic programming concepts you'll need as a programmer as well as the programming functionality of MATLAB. The professors and assistants of this course definitely know the material, but also know how to teach, as well as how to present the materials. The homework problems tend to be non-simplistic and personally I have found that in order to truly learn anything proficiently you have to challenge yourself.

Also, I truly would like to thank Vanderbilt University, especially for their work in developing this type of online/video learning method. Additionally, COURSERA to me is a revolutionary idea realized and i thank its founders immensely.
2 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Dmitrijs Kass is taking this course right now, spending 3 hours a week on it and found the course difficulty to be medium.
I'm on the 3rd week of the course. Wow, the course is fantastic! The instructor is among the best I've seen:

1. You'll see from the start - an instructor is ultra-professional in both programming AND teaching.

2. Difficulty goes gradually from low to high and the pace is just optimal.

2. Every example shows some specific and important aspect. As a result, each example teaches something important.

3. Many aspects and pitfalls are explained by using examples where errors are made on purpose. The instructor attempts braking the standard rules and shows what happens then.

4. The instructor uses humor, which keeps my smiling and enjoying the course!

That's my impression during the Week 3.
4 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Mackenzie Endres completed this course.
This was my first experience with an online course and my first real programming course. That being said, I was impressed with the quality of the videos and assignments. I learned a lot more than I expected from this course, but I had to work hard. Dr. Fitzpatrick did a wonderful job keeping the videos engaging with a delightful sense of humor. The examples helped with assignments without giving them away, and the cTAs for the course were very responsive and helpful. I would recommend this course to anyone looking to learn or brush up on their programming skills. If you are new to programming (like me), the course is challenging. I would plan on spending a good amount of time on this to build a solid foundation.
2 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Kwame Oppong Hackman completed this course.
The course was amazing and I enjoyed every part of it; the video lessons by Prof Fitzpatrick are excellent. The many years of Prof Fitzpatrick's extensive experience is visible in the course through his command over the material and his humorous statements; any time I felt I was getting bored there was a statement from the good professor that made me laugh again. The other professors (e.g. Akos) and the TAs, especially Aatish Kumar were greatly helpful. The course is too great; it's hard to drop out. I'm not a computer science student but I completed it successfully! All thanks to the everyone who supported in putting the course together.
3 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Simon Buchholz completed this course.
The video lectures are very good and interesting. The homework is very challenging and takes it time but it's very satisfying when it's done. A highlight is that you get MATLAB free for the time of the course and a few weeks after that. It's probably a good promotion for them too because people want to buy a full version afterwards to not get out of training... But luckily I'm a student and I get the student version for less. In conclusion i must say that it was a very great course and if I had known how much work it would be I'd probably bought a verified certificate too.
4 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Pooya Daravi completed this course, spending 8 hours a week on it and found the course difficulty to be medium.
This course provides a great starting point for learning MATLAB Programming.

Although slow at some points, the lectures are very well explained. The accompanying textbook is also a great resource and is priced very reasonably.

The course does not delve into the graphical capabilities of MATLAB or other specific features for that matter. My guess is that the instructors probably wanted to cover only the most basic syntactic components of MATLAB and leave further specific investigation to the students.
3 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
Anonymous partially completed this course.
Excellent course! The organization was perfect with clear, high quality videos and homework sets. The discussion board was constantly monitored by one or more teaching assistants who gave great hints without giving away the answers.

As a novice, the class time and homework was probably closer to 12 hours per week for me. I got through week 5 before the demands of grad school swept in and couldn't complete the rest. If offered again, I will definitely repeat it.

The professor's videos are excellent!
1 person found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
Anonymous completed this course.
This course help me out tremendously in understanding how MATLAB works and providing basic MATLAB skills. I joined a lab that requires writing algorithms to control data acquisition of many hardware components. This course gave me the fundamental skills that will make my life a little easier when beginning to program and navigate though MATLAB. This course was a time-saver. I am very grateful for the instructors, TAs, fellow classmates, and everyone else who made this course possible. Thank you.
1 person found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
Anonymous completed this course.
I am not a programmer by profession, so as a dabbler in programming I would say that this course was very informative, brief and precise. Professor Mike is quite an excellent professor, he knows how to explain difficult concepts and I loved his puns in between the lectures. The assignments do test your understanding of the concepts pretty well and give you that sense of self confidence when you are done with them.

I would recommend this course to anyone trying to put their hands on Matlab.
1 person found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Pradeep Kumar completed this course.
A great course by Prof. Fitzpatrick . The lecture presentation was straightforward and clear with a touch of humor to keep you involved with the lectures. The assignments are fairly good and focus of fortifying the concepts taught in the lectures and also helped enhance the programming mindset.

I would love to thanks everyone who supported in putting the course together and special thanks to Prof. Fitzpatrick for all his wonderful insights into effective programming.
1 person found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
Anonymous completed this course.
Great course, fantastic learning experience, wonderful instructors...

Mike Fitzpatrick's perfect pronunciation makes it easy to understand what he says for

non-native people. He has great knowledge in the area, which the course covers with complete, but easy explanations.

If you are able to complete the assignments, you have a really good level of understanding the matter.

Thanks to all the staff for this challenging adventure.
2 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
Chike D. Okechukwu completed this course, spending 10 hours a week on it.
This course is excellent for anyone who has never used MATLAB before or who has never even written a computer program before. The course materials; videos and textbook are awesome. The instructor's style of delivery puts one at ease and in the frame of mind to learn and want to learn more. I would definitely recommend this course to anyone looking for a head-start in MATLAB programming and computer programming in general.
2 people found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Miguel Ángel Bueno Sáncehz completed this course.
All thel basics of MATLAB are very well explained in the video lectures. Smooth and clear. Subtitles in english available and if you want to go fast throught the video at some points because you already learnt for-loops at school you can do it by changing the video speed. I must say the assignments might be quiet difficult for a non-experienced programmer, but some of them are nice to solve. Highly recommend to course to everyone who want to get started on MATLAB.
1 person found
this review helpful
Was this review helpful to you? Yes
5.0 2 years ago
by Renso Rojas completed this course.
This course is wonderful: the professors have been intent on helping us all fall in love with MATLAB, and; my particular case, they have succeeded. The exhibits in the videos are masterful, aid in the forums .., many details that make this course, but the best, one of the best.

Thank you very much, Mike Fitzpatrick, Robert Taira, Akos Ledeczi and Vanderbilt University.

The partners contributed a lot in the forums.

Excellent course!
1 person found
this review helpful
Was this review helpful to you? Yes
4.0 3 years ago
Anonymous completed this course.
I liked the course. The professor explains the concepts clearly and he demonstrates them on screen. The programming assignments were sometimes challenging but doable if you put in the time.

I don't recommend keeping the programming assignments for the last minute or you might not make the deadline.

Overall a very good course, enjoyable and get the job done of teaching you Matlab.
2 people found
this review helpful
Was this review helpful to you? Yes
  • 1

Class Central

Get personalized course recommendations, track subjects and courses with reminders, and more.

Sign up for free