[MUSIC] Welcome to Computer Programming with MATLAB. This is lesson one, Introduction to MATLAB. My name is Mike Fitzpatrick, and I'm coming to you from Vanderbilt University in Nashville, Tennessee. I'll be your lead instructor, but this course is a team effort. There are many people involved Including the co-creator of this course, Akos Ledeczi, who both directs the course and handles student evaluations. Akos and I are members of the faculty of Vanderbilt's School of Engineering, and we designed this course to teach computer programming to students who have little or no experience with programming In fact, we're aiming particularly at those of you who've never even been introduced to programming. And for that reason, Coursera's title for this course is "Introduction to Programming with MATLAB". The level is targeted at first-year college students and high school seniors, but really this course is suitable for anybody who wants to learn programming from high school to grad school to retirement. The length of the course is nine weeks. And that includes eight weeks of video lectures plus an extra week for a final homework submission. Throughout that time, we teach one programming language--called "MATLAB". And because of that, this course has also turned out to be handy for people who already know how to program but who want to learn MATLAB from the ground up. MATLAB makes it especially easy to learn programming. So if you follow along with us, repeat all the examples that you see me do on the screen, take the quizzes, and do the homework, then at the end of these nine weeks, you'll be able to programm a computer. You'll be good at it! And you should have fun doing it. To program a computer, you have to use a programming language. The first languages were complicated affairs of strings of ones and zeroes, or cryptic code words and numbers. And then in 1954, all that changed. A language was invented that was much more like a human language. It was called FORTRAN. Its purpose was to make programming easier, especially for solving numerical problems. Since then, hundreds of such languages have been developed. And in the 1970s, a new wave of them began. The most successful of these were C, C++, Java, and C#. And they're still heavily used languages. They're used especially for writing very large programs, by which I mean programs with hundreds of thousands or millions of statements in them. These programs are the "shrinkwrapped" products used by non-programmers, things like word processors, spreadsheets, web browsers, games, operating systems, and the like. In the midst of this new wave, another language appeared called MATLAB. And that's the language we're going to use in this course. MATLAB's purpose was to make programming easier, especially for solving numerical problems. But you may have noticed that was exactly the purpose of FORTRAN. So, have we come full circle? No, because MATLAB is far easier to program than FORTRAN. I know. I've used them both. So where did MATLAB come from? Well, it sprang from the mind of one person, an expert in FORTRAN, by the way, named Cleve Moler. Professor Moler was teaching students at the University of New Mexico to solve numerical problems with FORTRAN. And they were spending way too much trouble struggling with the language. So, he invented MATLAB. And it soon became so popular that Moler teamed up with an engineer outside academics named Jack Little to form a company to make it available to the world. They named the company the MathWorks. It was formed in California in 1984 and it had one product, MATLAB. Well, that company is alive and well today in Natick, Massachusetts 3,000 miles from California. And today, it has 100 products, all based on MATLAB, and over 1 million users worldwide. And it's taught in 5,000 universities, including Vanderbilt. MATLAB is clearly having a big impact on the world. In 2012, the Institute of Electrical and Electronic Engineers recognized that impact by giving Dr. Moler its Computer Pioneer Award. They give this award out once a year. And they named it for improving the quality of mathematical software, making it more accessible, and creating MATLAB. And that brings us to this course. Computer programming with MATLAB is our effort to add to the impact of Moler's creation by using it to make computer programming more accessible to you. There's no required textbook for this course, but there is a recommended one. As you can see, the title is the same as that of the course. And Akos Ledeczi and I are the authors. So it's no surprise that it's the one we're recommending. This is an ebook, no paper is involved. It's been used at Vanderbilt since 2013, and previous versions of it were used since 2000. The book is organized into three major parts, which in the iBook style are called chapters. This course covers Chapter One and Two. The remaining chapter, Three, covers subjects that are beyond the scope of this course, but you'll be able to continue through that chapter on your own after you've completed this course. The book is available online at cs103.net. You'll find two versions there: an iBook for Apple's iPads and Macs, and a PDF for any other device. And it costs $9.99 each. To make our textbook and our course more effective, we approach MATLAB programming as part of the discipline of computer science. Computer scientists have spent over 50 years developing a concise set of concepts and a consistent vocabulary to describe all aspects of computer programming. And in both this book and this course, we use those concepts and that vocabulary to introduce you to computer programming. This approach will give you an idea of how computer scientists think, and it'll make it a lot easier to learn MATLAB. Well, let's take a look at the iBook. I'm going to show it on this MacBook here, but the iPad has the same features. The only difference is that instead of clicking a mouse, you touch the screen on the iPad. So after you've purchased it and downloaded it, it should be in your iBooks collection. Let's find it here. There it is, I've got it under Computer Programming. And if we double-click it, it opens up, and then it takes you to this page. Now we see down at the bottom a scrollable list of pages. There's pages at the front, here's the Preface, here's Getting Started, Procedural Programing, Advanced Concepts. I'm not going to click on those. I'm going to go up here and click this table of contents here. Let's click this little arrow next to Getting Started. This is chapter one. And we see section one of chapter one and two, Introduction to MATLAB, Matrices and Operators. We'll spend a lot of time near the beginning of this course right here in Matrices and Operators. So let's go there. At the bottom, we see we're on page 33. Let's go to page 34. You look around here, you'll notice some lowercase words in blue type. If we click one of these, let's click Matrix, we see a definition. A two-dimensional rectangular arrangement of numbers, also known as a two-dimensional array. And there's two links. One says Glossary; one says Dictionary. Let's click the Glossary. That's the glossary of this book. And these are the, you might say, official definitions that will help you the most as study aids when you're trying to understand programing. And here's a link that takes you to the first occurrence or the defining occurrence of the term in the text, right back here where we were. There are other special study aids, including setting bookmarks. Just click at the top up here, right on that little bookmark icon. It turns red, indicating that this page is now bookmarked. Let's bookmark a few more pages. I'll go forward a bit and bookmark this one. And maybe we're done. Now if you go up here and click on this little arrow just to the right of the bookmark, you see a list of your bookmarks. 41, 37, let's go to 37, okay? Let's go to 34. Hm, that's where we started. Highlighting and annotating are both easy too. Just click and hold the mouse while you slide over what you want. And maybe I wanted to put a note. I want to try this in MATLAB. And down here, I'm going to highlight that in pink. To see all your highlights and annotations collected together, click up here at the top of the window on this page icon here. The section called Notes shows up. They're exactly the two highlights we just did, and it shows what page they're on. If you want to delete one of these, you just go to the one you want to delete, click on it. You can remove the whole thing or remove part of it. One last standard iBook study feature is found by clicking the Study button up here on the left corner. It'll give you the annotations like that. You can click here, then we get to glossary terms. Flip the card and it tells you the definition. And you can go to one after the other and, and try them. Clicking Done will get us back to the book. And if you want to close the Notes section, just click this little page icon again, and it's gone. Okay, that's a look at generic iBook study features, but there's one essential study technique that we've left out, practicing what you're learning by working problems. Let's go to the table of contents again. And Loops. Let's click Practice Problems down here. There, and you see these little question marks here. Well, those are where the answers are. So for example, problem 21 over here, if I click this little question mark, I find the answer. I'll close that. There's one last thing I want to show you about the iBook. It includes animation. Somewhere in this book is an example called surface plot animation. Well, up here in the right corner, we see a little search icon. Let's click that. I'm going to search for that surface plot animation. Hey, it showed up right there. Let's go there. There's a play button here. Let's click that. Now that's kind of cool. Okay. Enough with the preliminaries, it's time to get down to business here. After you've picked the textbook and downloaded it, downloaded MATLAB and installed it on your computer, you're ready to go. So what's next? Let's run MATLAB. [MUSIC] [SOUND] [APPLAUSE]