The Python programming language
Some simple algorithms
Testing and debugging
An informal introduction to algorithmic complexity
Data structures
This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features updated lecture videos, lecture exercises, and problem sets to use the new version of Python 3.5. Even if you took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning.
Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not \"computation appreciation\" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.
\n"},{"text":"\"> The course is a great intro to CS and provides problems that are of an appropriate difficulty but are still challenging. The course does teach using getters and setters in Python, which is frowned upon, but their introduction is good from an OOP standpoint.\n"},{"text":"\"> I was impressed by everything: quality of videos, test questions and the interactive grading system - all far better than the average class room experience. A lot of work has been done to use the features of the platform - video transcripts, multiple choice questions, coding examples. The EDX platform is impressive, and worked flawlessly for me, syncing the coursework across devices, and worked well on my phone, which was useful for travelling.\n"},{"text":"\"> This is an excellent course although it is difficult but very satisfying to complete. The videos are sometimes are a little slow and not as engaging as other courses however the content is amazing.\n"},{"text":"\"> Really good course. Recommend! It's not a programming language course. Instead, it is a very good intro course for computer science. The assignments or problem sets are really good. I can see the efforts that the professor put on these exercises. Thank you!\n"},{"text":"\"> The course content it prepared excellent if it existing his implementation.And really I need it this course.\n"},{"text":"\"> covers very important concepts of programming in a simple way, Professor Eric has done a very good job explaining every thing bet by bet, exercises was very helpful and the problem sets did a good work to emphasis the information I recommend it to everybody, who wants to start programming \n"},{"text":"\"> Like many others, this course changed my life!What started out as some basics for work, the course has inspired me to pursue CS full-time. It's a great foundation before taking on any language, or CS generally. It's in Python, but when I started learning C and Java (which I put off for years), because of this course I am much more comfortable taking on.I took this when it wasn't self paced, I much prefer moving in a group. Therefore, I highly recommend watching the lectures on MIT opencourseware as supplementary to edx.\n"},{"text":"\"> This course was a rigorous and detailed introduction to programming with Python. Before taking this class, I understood the very basics of the Python language. Now, I feel like I know the broader scope of what Python can actually do. I also feel much more comfortable coding in Python. This course also introduced the ideas of algorithms and algorithmic complexity, but didn't go into too much detail. Overall, it was a fantastic course and I would recommend it to anyone who is eager for a guided introduction into programming, but is willing to put in the necessary time and effort to comprehend the material.\n"},{"text":"\"> This course changed my life too. I was a music teacher by then, now a software developer employed full time. It all started there. Immense gratitude and respect for the teachers and creators of the course\n"},{"text":"\"> This is literally the first course on any education platform that I've finished successfully. Have been trying to finish similar courses on other platforms(Coursera, Udemy), but this one really stuck. Materials are laid out in a perfect cycle of "Learn the tools" - "Play with the tools" - "Bash your head in a couple of times in order to complete the assignment". The grind is real, but the payoff kept me committed. Highly recommend.\n"},{"text":"\"> This is an awsome course! My friend recommend this, to start learning programming, I had no previous experience. Professor has done a very good job, there were a lot of exercises to practice.Now I am learning full stack programming in a 18 week course, in other languages, but everything started here, I have learnt the basics in this course.I recommend it to everybody, who wants to start programming!\n"},{"text":"\"> I found this to be an extremely well done and comprehensive introduction. The only thing holding it short of perfection were a couple somewhat rushed sections, such as the section introducing functions, and the lack of exercise variety (particularly for the computational complexity section). Other than that; the instructor does an extremely competent job of explaining things, and the pacing of lecture videos, exercises, and projects (problem sets) is fantastic.\n"},{"text":"\"> Learner must enroll in the Verified Certificate option to be eligible for credit upon completion of the course. Learner must abide to all course and academic integrity policies throughout the entire course. Learner must receive a passing grade of a 65% or better in the course\n"},{"text":"\"> Although the lectures seem to be easy, the problems are challenging. If you want to get most of the course, try the problems. The professor is also good\n"},{"text":"\"> Course Content was great and Sir Eric is one of the best teachers i ever learnt from. Course material including assignments to test were excellent and this is the best place to learn python.\n"},{"text":"\"> Excellent class ! This is quite challenging but I learn a lot. If anyone does not have prior CS knowledge, I will definitely recommend this course. This is going to take time, be patient, and keep motivated. As I said before, it is pretty challenging but rewarding !\n"},{"text":"\"> This course looks very useful and It will be a precious experience For those who follow programming . This course was described by an experienced professor in general.\n"},{"text":"\"> Professor Eric Grimson is the best instructor! It is so much fun to learn from/with him. Quizzes and exams are very challenging which makes it even better. Community TAs and other students always help you when you're having hard time. Thanks for making this available to anyone who wants to learn Python.\n"},{"text":"\"> The course was always entertaining, never was I bored of what was taught. Professor Grimson is an excellent teacher. The problem sets were the most fun. I have completed this course within 2 week. It had become an addiction. I am planning to take the next part of this course very soon. So don't hesitate. This course is suitable for everyone and one to remember.\n"},{"text":"\"> I absolutely loved this course. I had no prior experience with programming or computer science, so it was very difficult the first time around but I learned so much. I took this class about 21 months ago and since then I haven't stopped learning.I'm proud to say because of this course and everything that followed, I just officially became a Data Scientist. It was a long journey that started right here with this course, and I'm forever grateful!Thank you so much to MIT and the edx team!!! You have no idea how happy I am!\n"},{"text":"\"> The best course for Python if you already have a former programming experience. It goes deep in computer science and make students think like programmers and not only users of Python. The instructor is the best and you can listen to him for hours. Excellent and clear lectures and many exercises are there to clarify the topics. For students with no programming experience I strongly recommend to take that course free-pace and simoultaneously attend another introductory course. After completing that course I felt more like a programmer than just a man to know some Python.\n"},{"text":"\"> I learnt this course with 13 days.I really appreciate MIT professor. I have already enrolled the second part. I will keep learning for ever.\n"},{"text":"\"> Fantastic course! Very well structured, clear explainations and examples. Excellent exercises to put the theory in practice and truly learn!Thanks for putting this together and offering it on EdX! \n"},{"text":"\"> I really wanted to like this course, and early on I really did liked it, 5+ stars all the way baby. Unfortunately for me very soon it became to difficult to grasp and write the code...\n"},{"text":"\"> I have no prior knowledge about computing and programming but one of my dreams that i w extremily want to reach is to be a successful programmer, these obove stated instructors i am realy respect them, one of the things make this course too fun is, the course providors are MIT development team , thank you so much\n"},{"text":"\"> I audited the course, because I got a late start on it. I believe the instructor was a huge contribution to the ease of learning the material of this class. He speaks clearly, he speaks in a way that anyone of any comp-sci level should be able to understand, he doesn't come off as intimidating and he has a great teacher-voice and smile. That actually encourage me to continue on with auditing the course to actually learn the material. The material for the most part was pretty good. It helped me actually understand and be able to work with the basics of several algorithms and data structures that I learned informally. It also helped me with becoming more comfortable with recursion and being able to write both inefficient recursive algorithms and more optimized versions. I will be taking the course again for a certificate and hope that part 2 comes soon.\n"},{"text":"\"> If you're only going to take one course from edx, make it this one. Amazing, clear, entertaining, challenging. \n"},{"text":"\"> One of the best course I had found if you want to start learning Python. The way instructor explains is pretty awesome, I think that's what mostly matters. Also loved the way how course starts from basic and gives you the approach to write bigger programs.\n"},{"text":"\"> The best introduction to computation and computer science. This is course has taught me how to face challenging problems systematically and how to think computationally. The instructor Prof. Grimson is really a great mentor and the course discussion forums are really awesome and fruitful. The course is very challenging, but once you solve those problem sets and coding problems, you will surely have that "aha!" moment and all the hours spent on them would be one of the best moments of your education life. \n"},{"text":"\">This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features updated lecture videos, lecture exercises, and problem sets to use the new version of Python 3.5. Even if you took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning.
Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not \"computation appreciation\" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.
\n"},{"text":"\"> A really use course for someone with absolutely no Computer Science or Programming background, who's looking to get start somewhere.\n"},{"text":"\"> Brilliant course. Complete beginner from the UK who wanted to learn some coding after having finished a physics degree with only experience of writing very basic for loops in TCL. Definitely recommend, even if you are a beginner just spend loads of time getting used to it and reading things online.\n"},{"text":"\"> This course showed me a new perspective of computer science and a new way of thinking! My gratitude to the staff@MITx, especially to Prof. Eric Grimson, who is very patient and to the point in his lectures! Also offering my thanks to fellow students who could not wait to help each other! You are great, guys!\n"},{"text":"\"> Excellent course! Concise presentation, clear explanations, good examples, thoughtful problems - everything was perfect. Professor Eric Grimson was fantastic, I hope he will teach more edX courses in the future! \n"},{"text":"\"> Absolutely, all 5 stars! It's such a great opportunity to understand the basics in Python language as well as computational theory. MIT is MIT, no more words necessary to explain. Prof. Eric Grimpson and other TAs and materials are great! It's sometimes painstaking to catch up the lecture, but you deserve it. I really appreciate MIT's lecture and materials. Thanks! \n"},{"text":"\"> I loved it, content is very useful,instructor 5 stars, platform without problems and intuitive. All the lessons and exercices were well explained and useful \n"},{"text":"\"> Course content is fabulous, instructor is awesome and MIT rocks. This course enlightened me and developed my love for python...it's been fun all through\n"},{"text":"\"> I highly recommend this course to anyone who has little or no knowledge of python nor computer science. Me myself has self-taught python with no prior computer science background from different online courses for just about few months before I found this course and this is one single course covers a lot more valuable knowledge than most courses I have learnt from combined. Most other python courses I have learnt assume that you have coded before and I found sometimes it's hard to understand why that has to be done in certain ways without computational thinking to back that up. This course covers not only the solid basic of python the language itself but also some computer science which I found super useful and open up my mind about the whole coding picture. Absolutely love this course. I give 10 stars out of 5. Highly recommended.\n"},{"text":"\"> This course is amazing. It has a blend of everything. As adage says, teacher will always leave you puzzling to learn more and Prof. has done it. I am looking forward for further to this course.Thanks Prof.\n"},{"text":"\"> Best course EVER (and Prof Grimson was amazing)!!!there's nothig else to say; don't be scared by the assignments: the fact that can be tough (to me the diffculty was just right) will make you more proud when you'll pass them\n"},{"text":"\"> If you have never coded, do not take this course, this is NOT a beginners course.They say the textbook is optional, but it is not, the textbook is crucial as not all the material in the quizzes are covered in the lessons. $45 may seem cheap, but it a fair chunk of change when your local currency is worth 1/14 of a dollar.\n"},{"text":"\"> I took this course last year and I cant thank the lecturers and MIT enough for what they are giving back to the community with such endeavors. I'm planning to do it again this term to challenge myself further. I have also secured a job as a programmer from my introduction to this course. Keep up the good work and god bless :) \n"},{"text":"\"> The course was amazing and the content was extremely relevant and up to date. I had to work a bit harder than most would as I had no programming skills when I first took this course. But this course has changed my views about Computer Science altogether. Highly Recommended. A bit on the more difficult side but fun none the less.\n"},{"text":"\"> The content is hard. The concepts are difficult. As a complete beginner, I had to put a huge amount of effort into this course. However...it's all worth it. The feeling achieved when something you have constructed actually works, first in abstract and then in code, is incomparably satisfying. The lectures are well paced, and the content is relevant to the problems encountered. While at times this course can be so, so, so frustrating in places, it just makes it all the more worth it when finished.Completing this course inspired me to continue learning other languages and CS concepts. I would recommend it to everybody.On a side note, I'm terrible at maths, and this only hampered me in one or two instances. Don't worry!\n"},{"text":"\"> Very good course. I just wish there were no multiple choice questions and only programming exercices especially for mid-term and finals because i prefer solving problems.\n"},{"text":"\"> A great course, trains your mind to solve problem you never faced before. Gave me a huge push to be more confident in myself, and be able to take other high quality courses.I think it is very recommended that you take the following course before 6.001, it is also a great MIT course:6-189: A gentle introduction to programming using pythonI just could not complete it in time, because I didn't study for it for 4 weeks, because of school, but in total I finished it in 8-9 weeks.\n"},{"text":"\"> Frankly, I thought this course kinda sucked. Is the material relevant? Well, of course. MIT is teaching it. Is the material DO-ABLE? - THAT should be what is reviewed. The answer to that depends on three things: 1) if you have had any exposure to programming prior to taking this course, 2) the amount of time you have to put in, and 2) how resourceful you are. To elaborate, in general, I found the lectures insufficient in terms of the level of knowledge provided by the profs. I followed the lectures just fine. But when faced with the practice problems, that's when it became clear that there was a HUGE leap from what was presented in the lectures and the level of knowledge required to complete the problems. I found I needed to supplement the lectures often with outside sources (background - I've never programmed in my life - this was my very first exposure to it, so I was a complete beginner. That said, I am good at math - I tutor HS math - so it's not as though I was trying to grasp something out of my league). While that was doable, it was annoying (call me old school, but I prefer having at least something at my fingers that I can learn what I need from - eg. a good text book, a good online source, whatever) and VERY time consuming. In relation to the former, what I found was that there really isn't a good place to go - anywhere - for truly introductory information about CS. I was able to find information online, but no one source was the "Bible" I was looking for. I got increasingly frustrated as the course went on, because the subject matter got more complex, but the lectures never increased content amount - you got the same one or two examples for increasingly complex subject matter (that, therefore, had a much wider range of applications and confusion points). So you became even less able to handle the practice sets and had to spend even more time teaching yourself with outside materials. If you're up for that, then by all means, go for it. I'm a working individual, so I just couldn't spend that kind of time on this class. I'm not saying this class can't be done or don't try it - I'm just giving a warning to people - especially those "absolute beginners" - that being successful at this class will require a LOT more time and effort than that prescribed by MITx (and since you have to supplement the material so much, I'd argue that MITx isn't really teaching you the class - they're more a resource you're using - along with a bunch of other resources - to learn something. As for EDx the platform, that's fine, but I think they should do more to provide supplemental materials that will help more people be successful - the forums are too inefficient to do that unless you enjoy reading reams of pointless chatter to find your needle in the haystack).\n"},{"text":"\"> The professor "Eric Grimson" is just awesome. I like the course's pace. He explains everything so clear and step by step that at the end of the course you have a concrete understanding of object oriented programming. I want to thank Eric and the edX team for this great course.\n"},{"text":"\"> really good class - This class is for beginners who are willing to work hard or whoever wants to test their skill - the videos are very good and cover a great deal of material. Prof Grisson does a really job explaining the material and if you have any question make sure to post it on the discussion board \n"},{"text":"\"> I loved this course and highly recommended it to people with some experience with programming and also for novices. I have a decent amount of programming experience and tend to be quite hard-working ... so I really enjoyed this course. If you are not willing to commit the time and intense attention required by the course, you may find the course challenging. I loved the finger exercises (short quiz style questions) which encourage one to think about the subtle issues. The problem sets are incredibly satisfying ... you have this huge sense of satisfaction when you solve some of the more challenging problems. The programs we write in the course are really interesting. The TA's are incredibly responsive and respond within hours of a question being raised.In terms of improvements, I did not like the fact that we had to wait around for the materials to be released each week. So I wish that for future sessions they will release all of the materials for the students so that those who wish to work ahead and finish up the course a little earlier may do so.The textbook which is optional is a fantastic resource. It's easy to read and quite entertaining.\n"},{"text":"\"> I started programming on my own decades ago but never had any formal grounding in CS beyond my own reading and experience. My career took me in a different direction but my passion for programming never died, so I enrolled in this course with the goals of getting a more formal grounding in computer science and also refreshing and improving my programming skills with a modern language in a modern programming environment. Looking at some of the other reviews here, I believe they are correct in noting that to succeed at this course, you will probably have to put in a lot more time than you anticipate. It's not an easy course. For me, I knew the basics of programming so the learning curve on writing basic code in Python was not steep. If you have no background in programming at all, you should expect to have to put in a lot of extra time and effort beyond the estimated completion times listed for each segment or exercise. You will also have to do a lot of independent reading to skill up on Python syntax (read the official documentation on python.org) and programming technique (stackoverflow.com is your friend). I don't think that should be a criticism of this course, however. It's first and foremost an introduction to computer science. You learn computational thinking and how to approach computational problems. Python is merely the tool through which we do that, but the fundamental skills can be applied to the use of any programming language. If you, as one reviewer put it, "thought this course kinda sucked" because you had to work at it, then learning computer science through MIT probably isn't for you. You only get out of something what you put into it. I work full-time, have a family to look after, and do other courses on the side, as well, but I still managed to get through this one. If you apply yourself, you can, too. And as I'll note below, you'll have plenty of help. Regarding the content and structure of the course, I think it was well organized and covered a lot of useful material in an order that made sense. The lectures were well presented and helpful, and the finger exercises, problem sets, and exams reinforced the material in a progressive way. Not everything was of uniform difficulty, so the course definitely does differentiate people who really know the material from people whose understanding is less thorough or complete. But that said, there is an active community of students taking the course with you, excellent TAs helping to administer the course, and the course works really well on the EdX platform. There are discussion threads for everything that easy to participate in, as well as to search and follow. As you might expect for an MIT course on computer science, they make great use of technology. In addition to learning new things and sharpening old skills, I also met a lot of really great people and it was an excellent motivator to help push me through the course. I do recommend getting the optional textbook. It reinforces the material well and you can continue to use it for the next course if you follow on to that. To offer a few tips for success, if you're having trouble getting your head around a particular lecture or concept, go through it once, take a break, then come back to it a second time. Work through the examples, play with the code, and ask questions of the TA and community where you need to. Do learn how to ask programming questions properly. You will get better responses when you ask your questions in the right way. Stack Overflow or the community guidelines for the Python groups on Reddit are good places to get a sense of how to do this.\n"},{"text":"\"> A really great course. All the concepts are explained in a very clear and concise way. The instructor makes the course all the more fun and exciting! Having had no prior experience in programming, this course provided me a wonderful first exposure to it. Thank you edX and MIT for making this possible! \n"},{"text":"\"> Excellent course. As my MIS undergraduate was more on the business side of tech, this really helped me fill in the gaps in my knowledge of computer science. This course will be difficult for true beginners but is doable if you augment your learning with other resources. Once you finish it though, you will have a nice knowledge base to lean on when going off to explore other parts of the field. \n"},{"text":"\"> Look no further. edX & MIT knows a thing or two about teaching and it shows. This is the most professional, effective and demanding online education I've experienced so far. The presentation is clear and precise, the courseware top functional and the interactions/tasks are very sophisticated.This is as close at it gets to quality live education. However, you will need a standard workstation (not mobile), time (well rested) and patience.Thank you for providing education at this quality for free!\n"},{"text":"\"> I found the course is challenging, but not beyond my abilities. I'd had almost no Python experience, but had experience in other languages (This might be harder for someone with no coding experience). The one significant negative: the website's "grader" (the place where you submit Python code for evaluation), crashed on several occasions, sometimes for nearly a day, making it difficult, sometimes to get assignments in by the due date.\n"},{"text":"\"> This course is incredibile. So much well thought. If all MOOCs were like this we wouldn't need traditional education anymore.\n"},{"text":"\"> The course is tough, and this shouldn't be a surprise, since the students have been warned about it. But is it a course for beginners? Frankly, I don't know what to say. I feel tempted to say no. Although I'm not quite a beginner, it has taken me a lot of time to follow the lectures and some problem sets have even given me headaches, but, on the other hand, I cannot exclude the scenario in which a gifted beginner could make their way through the course, gaining high scores. At the end of the day, here is what I can say about the MIT 6.00.1x:1) The course is feasible if you can afford to spend AT LEAST the amount of time specified by the MIT staff, i.e. about 15 or more hours per week on it. It's anything but a 'fast forward' course!2) The book of Professor Guttag helps, but it is not indispensable. All problem sets from 1 through 5 can be solved with the knowledge acquired in the lectures and with the online documentation from python.org. But for those interested in using Python in their daily job, a book primarily dedicated to the language itself becomes a must at some point.3) Previous programming experience helps, of course, but, as you get your way through Week 6, it would be even more helpful if you were acquainted with concepts of advanced mathematics, such as continuity and limits. The Why behind the prevalence of the dominant term when trying to determine the order of growth for an algorithm requires, at least, familiarity with functions behavior when the argument approaches infinity. So, in my humble opinion, this part of the course requires more than "high school algebra and a reasonable aptitude for mathematics", as staff indicated.4) Last, but not least, one should pay attention to the following quote from the "About section": '...For many people, this course (and the subsequent one, my note) will be their first and last computer science courses'. Damn true. Learning Computer Science and learning a specific programming language or a certain technology may differ in many ways. In this case, the computational thinking is the rock star, not the Python programming language. Although it touches on the basics of Python, this course could have been taught using any other modern programming language, Python being probably the language of choice due to its simpler syntax and to other aspects that make it suitable for beginners. You should consider this if you are more interested in learning practical programming than Computer Science.All in all, an interesting (and demanding) experience. Not to mention that Professor Grimson is a very good lecturer. Good luck with the next sessions!\n"},{"text":"\"> Awesome, never thought I would learn this much online, always hated programming, but the learning mothods really made me change my mind. Thanks MIT and edX for the support\n"},{"text":"\"> Taking the course right now, and it's the best course on edX! It's extremely challenging. Be prepared to spend a lot of time on it. You will love it though! The professors spent a lot of time organizing the material. It's worth every minute! \n"},{"text":"\">This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features updated lecture videos, lecture exercises, and problem sets to use the new version of Python 3.5. Even if you took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning.
Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not \"computation appreciation\" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.
\n"},{"text":"\"> Best course out there, if you want to start your Computer Science career. The course introduces some basic Computer Science and programming concepts like program counter, data types, conditional statements, for and while loops, functions, Object-Oriented programming.The problem sets are well thought out and easy to understand and so are the lectures of the course. Great work by Sir Eric Grimson.\n"},{"text":"\"> Fantastic and interesting course that I have no doubt would be of great use, but you really can't underestimate the required time and involvement to complete. Sad to say I had to drop purely because of that - would require hours of work every night just to keep on top - a full time worker just doesn't often have that kind of free schedule! Also a fully functioning ipad app is sorely lacking, how much easier it would be to catchup on lectures with that addition. Or podcasts? Would love to follow a self-paced equivalent or maybe take some time off one day and see how it goes.\n"},{"text":"\"> This was a wonderful course to take.I was challenged to keep up with a very intense work schedule. Having failed the first time, I came back and proudly hold a certificate having passed on my second attempt. Kudos to the team that got this working as I plan to acquire more knowledge as it becomes available.\n"},{"text":"\"> 2 key areas of difficulty for novices: The course is poorly executed with difficult to view graphics. The font used on-screen is so small that when zooming it obscures essential elements ( parentheses? bracket? curly bracket) and a cluttered execution screen is very difficult to follow as work is executed. Additionally, complexity of problems jumps far beyond lecture, requiring hours of unguided, independent online research. Not recommended for novice nor someone without availability of many additional hours of independent work.\n"},{"text":"\"> I really enjoyed this course and the professors. I didn't study computer science in school, and found this an amazing resource to learn the material. The forums are also extremely helpful. One of the best online courses I've ever taken. Thanks so much to the professors and MIT!\n"},{"text":"\"> This course changed my career . I did this course in my second year of Collage with just 2G internet ( I downloaded transcripts and read myself ).This will be my most memorable online course ever .it was really challenging\n"},{"text":"\"> This was my first MOOC and it literally shifted my knowledge from novice to a professional. The teaching and the python content is just awesome. \n"},{"text":"\"> Has taken this course about a year ago. It was a challenging experience, since there was Bachelor Thesis and several uni courses at the same time. But I managed. And now here to recommend this course for you, as one of the best courses throughout the Internet.The contents are well planned: first comes a profound but brief theory explanation, then simple exercises to feel and get used to the material and, finally, project-based assignments to test your skills on the field, solidify and sharpen them. It surely takes 15 hours a week, but these will be the 20% of efforts that bring 80% of result. Thank you very much for the people who make it possible to be involved in such a fantastic experience virtually for free. This I consider to be one of the miracles of our millennia. \n"},{"text":"\"> I took this course a year ago. This was an awesome experience. I can only speak of my own experience and yes, I had to invest more time than advertised. In the end, I completed the course successfully and the feeling of solving the problem at hand during challenging homework problems was so rewarding. The discussion forums are so important and I never had to wait long for a response. Keep in mind, you will no be given any answers! And rightfully so. But when the light comes on, you gain a much deeper understanding of what puzzled you. I recommend this course for anyone, not just people interested in computers. The problem solving skills you learn are relevant in many other areas of life.\n"},{"text":"\"> It can't be said enough. This course changed my life. Thanks to everyone who made this possible. I was expecting something very simples, but it was way much better!\n"},{"text":"\"> Excellent! This course is a must-take. It is a very comprehensive and great course in Python as well as computer science.\n"},{"text":"\"> The best introduction to programming course I could ever recommend.thanks to all who made this course possible and free.really great content and well taught.\n"},{"text":"\"> I'd like to thanks all the course stuff. I had no experience. Having finished the course now I have some experience and confidence about Python programming language. I recommend everyone how considers learning a programming language .\n"},{"text":"\"> This is introduction to intellectual of computer science, and I've to say this course helped me land my knowledge about computer science and giving me the opportunity to learn more about computer programming.challenging is the best way to solve the problem sets. \n"},{"text":"\"> This was indeed a rigorous course. I had tried to take it back in 2013 and was not able to finish (I got half way through) as I was working full time in addition to taking the course. This time I was able to devote the time required to understand and complete the course and it was very rewarding. Professor Grimson is a great lecturer. Doing the finger exercises is integral in processing the content from the lectures and gaining exposure to what will be in the problem sets so don't skip them. The textbook is good to have - but not necessary to complete/understand course content, I used google and python docs online more often than the book. The discussion forums are amazing and the Community TAs super useful - so if you are having issues with the content looking through the discussions is a must. They are very responsive (classmates and TAs). Really well done online course, I learned a lot.\n"},{"text":"\"> I found this course incredibly addictive and thoroughly enjoyed it! I have never done computer programming before and am intrigued to learn more. The lectures were really well explained. Unfortunately for me, with other work commitments which limited my time, I could not find the additional time required to do some of the exams. I did however stick at the course at the right pace. I have now written down 1.5 A4 books of notes which I will now go back through at my own pace. Thanks again!!\n"},{"text":"\"> Course is seriously good, but I have one ting to say. I was forced to drop the course due to the fact, that I was on holiday for 2 weeks, and when I started to catch up tith the lectures, (about 3 weeks to do) I missed the midterm. It is impossible to take midterm without taking all the lectures, and there was like 3 days for midterm. So when I got to the midterm it turned out that I can't even take it - so I can't go further - Because I won't pass anyway. That was one really unfair thing. Still gonna retake it when it appears.\n"},{"text":"\"> Great course. This is the first course I have finished on edx. The problem sets are funny and challenging for every fresh programming learner. Thx a lot to Prof Eric Grimson and 6.00.1x course team~~\n"},{"text":"\"> Excellent and well structured course, you have to put in some work to stay on track, but I found it easy to stay motivated. Very good introduction to all the basic concepts of programming. Professor Grimson is a top notch lecturer. Was very happy to have found his course!\n"},{"text":"\"> Really difficult, but rewarding. 15-20 hours a week on this course is likely in order to be successful. However, after struggling in this course, it slowly sunk in after completion and continued practice. I've written about 30 'scrapes' that retrieve data from the web, parse it, and upload into our database so our analysts can use it in their forecasts. I've singlehandedly saved hundreds of hours of labor, or allowed us to use data that was previously inaccessible.\n"},{"text":"\"> I was reading someone else's review about how this course changed their life, and I wanted to add that this course also changed mine. It was the first ever computer science course I'd taken, and I enrolled to see if I wanted to change careers to software development. Now, 1 RailsBridge weekend, 1 bootcamp, and 2 years later, I can't believe how this course enabled me to explore computer science and make a complete switch from a Gender Studies major at Wellesley College to now a Software Engineer. THANK YOU to all the professors, TAs, community members, and others who made this course free and available to the masses. YOU CHANGED MY LIFE!!!! <3\n"},{"text":"\"> I went to MIT for undergrad (not Computer Science), and I can assure potential students: this is the same course MIT students take. The assignments are recycled from the MIT class, so you get really challenging and engaging problems to solve. I think Prof. Grimson does a great job breaking down the concepts for people who are new to programming -- the way he explained recursion was incredibly easy to understand. I'm looking forward to doing the 2nd part of this course!\n"},{"text":"\"> I took this course last year, at the time I had few understanding of computer. It gave me the foundation of computer science. Now I am a data mining engineer and consider IT as my lifelong career. To some extend, this course change my life. Thank you all. \n"},{"text":"\"> I made many MOOC´s before, and I think this is the course is on top. For Python programming I think is indispensable. You can feel that they care very much all the details, the exercises are really interesting, there are a really good work behind it, and they have a great community. I am trying find something for improve but it´s hard :-D.In my opinion the course is not for complete beginners, it´s more useful when you have a bit experience. For example, make before codeacademy Python course, "Learn Python Hard Way" or "Python for Everybody" from Coursera are perfect introduction courses. Take some khanacademy classes for missed high school maths can be a perfect complement that can help you very much.I´m feel really lofty for finished this course and add it in my curriculum, I´m waiting for starts 6.002. Thanks all. \n"},{"text":"\"> I highly recommend this course. It's very complete and the difficulty level it's just right.The teacher explained the contents at a very good pase and with very good diction, so for a non native english speaker it was a big plus.\n"},{"text":"\"> It's comprehensive course to see what do you want to solve real problem by coding everyday. marvelous course.Thanks for anyone who helped me to take this course.\n"},{"text":"\"> This course was challenging but it taught me the material thoroughly and I am now a competent programmer able code efficiently and solve problems algorithmic ally in Python. This is an excellent introduction to Computer Science.\n"},{"text":"\"> Awesome course. I took this course half year ago and it was my first programming course. It gave to me a really strong basic knowledge of programming. I wish to do an other course like this one. Totally recommended to who wants to start coding and understand computer science.\n"},{"text":"\"> This is an excellent course for any beginner, there's no prior knowledge expected but this course expects you to have some aptitude for math. The course covers a lot of topics including a short introduction to Algorithmic complexity, trees and data structures. While some lectures aren't really self contained you may have to rely on some outside resources. The good TAs at 600x.01 has provided a long list of extra material on the course Wiki. The lectures are fast paced, and you may certainly feel that it is not enough, therefore it is crucial that you do your own self study and make your own effort to really master the concept. And lastly do not leave problem sets for the last minute, start working on them as soon as they get released. This is a life changing course, and it will really open you new avenues, I would strongly recommend this course for anyone interested in computers and programming in general.\n"},{"text":"\">This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features updated lecture videos, lecture exercises, and problem sets to use the new version of Python 3.5. Even if you took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning.
Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not \"computation appreciation\" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.
\n"},{"text":"\"> I took this course when there were only 3 courses on edx, it was my first course and the best one. Great lectures, interesting homework,\n"},{"text":"\"> That MOOC is the one that got me into online self learning, and boy what it made me discover. I had a little experience with coding before, and i can say that even with being a little frustrating at first, it is something that one should definitelly do. The worload per week is tougher than most other MOOCs, but i think that an online course should have at least a 10 hour workload if it is to be worth taking. 2-4 hours workload/week MOOCS are not worth taking for me, cause you cannot take them seriously and because the time is no enough for to learn things. I think you should try this one, its one of the best MOOCS out there and dont be daunted by the workload, after a point you WILL want new material to be released every week.\n"},{"text":"\"> This is the best course I have ever taken including the once I have taken offline. The content was perfectly designed to make the students the basic concepts of programming. The best part about the course is professor Eric Grimson. He is the best programming instructor I have ever encountered. This course not only taught me python, but also the basic disciplines of programming that I had got wrong. The course has opened a lot of windows and changed my life. A respectful solute to Professor Eric Grimson and EDX. \n"},{"text":"\"> +After this course you really feel that you have done some programming +Assignments are VERY MUCH interesting.!!!+Course is very rigorous.!!! +Eric Grimson not only teaches how to program but also teaches you in and out and why and how of python programming !!!+World Best course for beginners :)\n"},{"text":"\"> This is the class that started it all for me. Professor Grimson know's how to teach those who know nothing about programming, like me, very well.\n"},{"text":"\"> although it is marked as an introductory course , it is extremely difficult for a student without programming experience . the lectures are often short as if you already know the concepts and the exercises are really difficult . so if you do not know about programming at all it is not recommended.\n"},{"text":"\"> It was my first MOOC(2012) and the best! I was addict at the first video.It's not just a CS course, it's much more! Hope you'll have fun with it too.\n"},{"text":"\"> Excellent course. This is the course that sets the bar in my opinion. THe lectures are concise and entertaining. The examples are simple enough for teaching, but real enough to be useful.\n"},{"text":"\"> This course isn't about Python, it's about computer science and how can we resolve (real) problems using computers. Congratulations, Eric Grimson and staff, by the best course available on EDX platform.\n"},{"text":"\"> This was a really good course. The instructor has an excellent way to teach. The pace is certainly not for a complete newbie to programming. If you are new to programming, I would strongly suggest going to codecademy or some other similar self paced site to learn the basics of Python before attempting this course. You will get a lot more out of it if you have the basics coming into this course.\n"},{"text":"\"> Simply the best computer science introduction out there. I learned a ton. Thank you MIT and edX for making this material available!\n"},{"text":"\"> This is the best course for those have little experience in python but have ambitions. Thanks professors that they provide us such a brilliant course with a lot of fun. Hope you enjoy it too.\n"},{"text":"\"> THIS COURSE IS BY FAR BEST AVAILABLE COURSE IN Edx AND AS BEGINNERS I THINK THIS COURSE PROVIDES A WHOLE LOT OF INFORMATION.THE CONTENT IS GOOD FOR UNDERSTANDING AND DEVELOPING OWN PROGRAMS USING PYTHON\n"},{"text":"\"> Basic yet complete and friendly Introductory course to Computer Science. I really like the content. Interesting as well as challenging problems. \n"},{"text":"\"> This course's team has put a lot of effort to deliver a great course. You have to complete finger exercises and progressively more difficult weekly assignments that help you learn and retain the material. You will need around 20 hours per week for the course but at the end you will be greatly satisfied for what you have learned. \n"},{"text":"\"> A very good course for novice programmers. I recommend this to learners who want to gain confidence in their CS skills as this course provides lessons that have good balance of theory and practice. \n"},{"text":"\"> For all those of you considering taking this course, I would highly recommend you to enroll in a VERIFIED CERTIFICATE option. Although, this is a intensive course, it is worth your efforts. Professor Eric delivers what is promised in this course : Introduction to python, simple algorithms and their complexity. The course materials are excellent and lecture videos are clear and easy to understand. Finger exercise, Problem sets, Quizzes and Exams test and complement your understanding of the lectures. At the end of this course, I am sure that people will be interested in taking the sequel to this course.By far, this is one of the best course available on edX!\n"},{"text":"\"> This course provides a good introduction to computer science and programming.The course is well structured and the content quality is very good for most sections.Completing the course does require one to put in significant effort.Many in-lecture questions and interesting problem sets ensure that the concepts are thoroughly understood.I will definitely recommend taking this course.\n"},{"text":"\"> Excellent course, much better than Harvard's CS50 course. This course makes sense, is concise and teaches real programming skills.\n"},{"text":"\"> The course contents were pretty much hard and tricky, especially the quiz and final exam, yet they seemed fruitful and makes you realise that programming can be fun and enjoyable. Those who have no prior experience in programming, I definitely urge you all to give this course a try. The instructor seemed logical and instructed the course at ease, but should try to deliver lectures at a steady pace. Overall the course was awesome and fun.\n"},{"text":"\"> Such an amazing course... Thank you so much MIT for providing me with an opportunity to learn from the world's best university! And thank you so much Professor Grimson for such clear explanations with practical best-suited examples... Thanks a lot... One day I will be at MIT... I am only in Grade 8, so some years left for me to gear up!\n"},{"text":"\"> I am an Electrical Engineer with little programming experience. Whenever I had to deal with programming in courses like Computer Architecture, Embedded Systems and Digital Signal Processing, I found myself lagging. This course has given me confidence in programming and I can already notice that I am finding it much easier to read and write code than before. Thank you MIT !\n"},{"text":"\"> good course, forces you to think. be ready to spend a lot of time on some assignments. I had intro class in my college last fall, which was way worse (easier) than this one. You will learn basic use of general python during this course. GUI wasn't covered((.\n"},{"text":"\"> Excellent course, I would recommend to anyone interested in an introductory course in Python and computer science. I am not new to programming but I still learnt a ton from this course!!!\n"},{"text":"\"> I have taken quite a few online courses through both edX and Coursera. Many have been excellent, but this is the first course where I have not sped up the videos. Professor Grimson is as concise as a well written piece of Python code! I was expecting to speed up the videos for this course in particular, because I already know some Python, but he minces no words and the pace is perfect. Great course, I am learning a lot so far, thank you!\n"},{"text":"\"> Really helpful and thought through course design makes this not only enjoyable but easy for anyone no matter your programming experience.\n"},{"text":"\"> I suspect that after I signed for the class I started getting bunch of spam emails I have not received before.\n"},{"text":"\"> Challenging and rewarding. Your hand won't be held through this course but you'll learn to teach yourself.\n"},{"text":"\"> This was my first MOOC and I have to say the experience was awesome. I didn't miss even a single lecture even when I knew the topic because the explanation provided by the instructor was worth listening.Also, the problem sets and exam questions were really challenging. Great course to learn python and some important computer science concepts for a beginner as well as someone with informal exposure.\n"},{"text":"\">This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features updated lecture videos, lecture exercises, and problem sets to use the new version of Python 3.5. Even if you took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning.
Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not \"computation appreciation\" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.
\n"},{"text":"\"> My first college-level programming course. The online platform is very much utilized, though CS50 is a bit more fun. After I took this course, I was able to conduct a thesis study using Python. Up to now that I am working in an engineering consultancy firm, I still use Python.\n"},{"text":"\"> This is a challenging, but very well designed course. The projects are interesting, with a medium to high level of difficulty. I have a BS in computer science, but wanted to learn Python. This course and the companion course in data science provide an excellent introduction to programming with Python.MIT has it's finger on the pulse of modern computing. This is a good course for people who want to bring their knowledge up to date. Eric Crimson and John Guttag are both clear communicators and excellent teachers, who have designed a unique and interesting course. I do have one problem with the course. Students can get credit through Charter Oak State College, which requires a grade of 80%! In this course, a score of 80 percent is an "A" and students should not have to ace the course to be eligible for credit. The usual standard for academic credit is a passing grade (55% = C). \n"},{"text":"\"> This course is a challenging, information-rich, and fascinating introduction to computer science and Python. It will demand a lot of your time, especially if you have little or no programming experience, but you will learn a lot. If you ever get stuck, the TAs and your classmates will often be able to quickly offer you some help (if you clearly explain what the nature of your problem is). Highly recommended!\n"},{"text":"\"> Sounds are very unclear. Sometime slow and sometime loud. Very uncomfortable for ear. Although, I'm taking this course, I'm not happy yet. I will post next review after finishing the whole course. \n"},{"text":"\"> Wonderful courser for learning python \n"},{"text":"\"> Learner must enroll in the Verified Certificate option to be eligible for credit upon completion of the course.Learner must abide to all course and academic integrity policies throughout the entire course.Learner must receive a passing grade of a 80% or better in the course\n"},{"text":"\"> My personal thanks to Prof. Eric Grimson for this course. I feel it is a privilege to be in his class.\n"},{"text":"\"> Best course in cs for beginners. Lots of maths (Most interesting part). Not criticizing but better than CS50(All that glitters is not gold).\n"},{"text":"\"> You **REALLY** want to learn Python and foundations of CS and have no prior profess. coding experience. Expect a demanding work; get ready: (1) Start on the 1st day, w/o delay, (2) Pay $49 for your chance to earn the certificate - motivation comes handy when you feel you're giving up, (3) schedule enough time (I need more than 10hrs/wk [I only work 4 days/wk to have time to study]), (4) possibly have a backup notebook / PC, get a ball to sit on and stuff to exercise with. You're gonna sit a lot in the 9 weeks. I proudly I earned my certificate 11 2015 and look forward 2 earn higher % & code hopefully all the difficult Problem Sets. --- 6.00.2x starts before 6.00.1x ends early in March. I want to be ahead of the curve in 6.00.1x\n"},{"text":"\"> I THINK IT COULD BE QUITE DIFFICULT ,BUT I NEED IT.SO I WILL ATTEND AND READ THE COURSE CLOSELY . \n"},{"text":"\"> This course is tough but very valuable! The assignments require more math than I would like, but it really put you into situations where the material is more realistic. I feel such a sense of accomplishment. Definitely one of the Muts Take edX courses for computer science. \n"},{"text":"\"> I have taken many computer courses on EDX, but this is by far the best. Everything is explained very well. The presentation is kept short and informative with good slides. Besides Python you get to learn many useful programming concepts. The exercises are interesting and fun to do. They help a lot to learn the course material. I highly recommend this course. There is a second part as well.\n"},{"text":"\"> Very good course, learned a lot, and had fun!The course provided various levels of exercises as well as material.This was my 4th python MOOC, but it offered really a lot, to get me hooked. I initially came to do the exercises to get extra practice, but then I started watching videos too, and they were very educational and pleasant to watch. So, it gave me a nice revisit of concepts I knew, and it also gave a quite a nice dose of new concepts. Thank you!\n"},{"text":"\"> MIT is one of the best institution in world, I believe this course has got the best instructors and I can not wait for the course to start.\n"},{"text":"\"> I think that its really important to know about analytical problems in the world and how to solve it . I really want to teach about this, its really interesting for me.\n"},{"text":"\"> When I enrolled in this course for the first time I really was with zero experince in programming, actually in computer science in general, so, the course was very very interesting to me,BUT, it was very difficult to keep in progress and solve all problem sets before duedates, difficult to understand all concepts properly (I used to watch each video many times to catch the idea), improve my problem solving abilites. Amazingly this year is my first year in faculty of computer science and I found that 2 or 3 weeks of this course equals the material of a whole semster in introductory course for programming in college ...So, I hope from my heart to make this course "self-paced"......PLEASE MAKE IT SELF-PACED..... \n"},{"text":"\"> This is superb course. Well-organized topics are communicated with clarity, utilizing Python, a popular scripting language. Lectures are quite refined, and the book amounts to a full set of course notes, which I continue to use for reference. The course that follows this one (6.00.2x) is even better. \n"},{"text":"\"> If you are a person interested in PYTHON programming language then, this course is for you. This course is a good package altogether.\n"},{"text":"\"> Great course, and instructor is very clear. Explains the major concepts and shows with examples. Great one. Thank you.\n"},{"text":"\"> the course is absolutely good and i believe that the provider have taking a real path in helping through this on line course. \n"},{"text":"\"> I had about six months of programming experience before. This class is absolutely phenomenal. Very good introductory computer science class. The course is tough, so 10 hours per week may be necessary to master the concept. \n"},{"text":"\"> One of best course for learning Python and beginning programming, good quality of assignments for beginners. Complement with OCW lectures if required.\n"},{"text":"\"> The course is absolutely simple, easy and great help for beginners. At some specific topic I personally feel that description should have been explained in more depth. Overall the course and instructor is at its best.\n"},{"text":"\"> This was a great deal of work but a valuable learning experience. Each week, more or less, there is a deadline, and each assignment is a commitment of several hours. However, the satisfaction upon completing them is all the greater for that, and I enjoyed doing them. They are hard, but achievable, using the tools we have been taught and are a great way to cement that learning. The greater part of them comprises coding problems.Professor Grimson provides clear explanations in the many videos. \n"},{"text":"\"> Excellent course. It's very challenging and may seem a little too difficult at times for students new to programming like me, but it's well-worth spending time on! Happy to have completed this course!\n"},{"text":"\"> Oh, what a fantastic course! It is clearly taught and it makes you do what you'll do in real-life coding: face a problem and figure out how to solve it using available tools. As the course overview states, it will take up to 15 hours of your time each week, but trust me, you'll come out of this course a positively changed wo/man!\n"},{"text":"\"> This course changed definitely my way of thinking about algorithm and more, helped me with Python programming. Thank you Mr Eric Grimson !\n"},{"text":"\"> It is an exhilarating course. I haven't learnt a programming language over the last 25 years though I had learnt a few earlier. I feel like my laptop did when it got updated to Windows 10! \n"},{"text":"\"> This is a useful course if you are a native English speaker. Else it is difficult to follow, especially to understand the description of Problems in Problem Sets and Quizzes. So there will be Problems that you simply won't understand what should you do. If you are not a native English speaker, don't pay for it, just learn as much as you can understand.\n"},{"text":"\">This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features updated lecture videos, lecture exercises, and problem sets to use the new version of Python 3.5. Even if you took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning.
Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not \"computation appreciation\" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.
\n"},{"text":"\"> This course is really amazing! The best material, best lecturer (occasionally boring though) and very good problem sets. The only issue I am facing is the due dates. I am a full time student in India and I always have quite a lot of work to do. Hence i find this course to be a little hectic but at the end of the day, it is amazingly worth it.It is a must for those who have ample of time. It is a must for those who dont have time also! What I mean to say is this is a perfect course for everyone. If you do not have time and you take up this couse, I'll ensure to you that you are going to forget your sleep and solve problems! Its THAT interesting!A big thumbs up to MIT 6.00.1X team!:-)\n"},{"text":"\"> Na niektóre proste zagadnienia po\u001awi\u001acone jest zbyt du\u001ao czasu, dlatego czasem mo\u001ana si\u001a nudzi\u001a. Poza tym wszystko jest na odpowiednio wywa\u001aonym poziomie. Zadania s\u001a wymagaj\u001ace, lecz bardzo przyjemne. Polecam. \n"},{"text":"\"> This course changed my life too. Python. Class. Think. Way of thinking.Soon I discovered Django (outside of this course) and automatically I realised that this is my path.The instructors were more than great. They use Python language for a tool to solve many different kind of problems (from probabilities to virus population rate!). They do not teach Python. They use Python to help you think more spherical and solve different kind of problems.What about EDX? EDX is great. With a great number of extraordinary courses from well-known universities. I never though I would be a (virtual) student of MIT. :)Best regards to all of you,Nikolas\n"},{"text":"\"> It is a great course. You have to work a lot, which is the best part because you learn by doing. The excersices were great and very well organized. Thanks!\n"},{"text":"\"> Having no previous programming experience, I initially found the course to be unnecessarily tedious and bothersome. It wasn't until a year after I took the course, when I actually began using python for some experiments, did I realize how well this course prepared me. The instructors waste no time in getting to the fundamentals of programming.\n"},{"text":"\"> Great course. Professor really drills down the computational thinking by elaborate examples. The assignments are challenging enough to keep you engaged and learn a lot. Waiting for the follow up module from the professor.\n"},{"text":"\"> Thanks for the opportunity to enroll in this course. So far the lectures are amazing with a lot of information and exercises to practice.I am dedicating three hours a day on the course.If you want to learn python this is the best course you can take.\n"},{"text":"\"> Great course for thinking computationally and learning to program correctly even if one is already an experience programmer,\n"},{"text":"\"> This course is the best online course I have ever enrolled into.Emerged with a Confidence boost by the end of the class although I couldnt complete the later sections of course.If you are not motivated to learning Programming, you would still take this course to experience funfilled Challenging Learning.\n"},{"text":"\"> Great course! Particularly adequate for those not familiar with programming. I recommend it to everyone.\n"},{"text":"\"> One of the best courses I have taken online. I did this back in the fall of 8th grade (I am in 11th now) and it provided the basics to "thinking" like a programmer. Be wary though, it takes a decent amount of time and you have a risk of throwing your computer against the wall, but keep in mind that I was in 8th grade when I did this, so your experience might be better. Even if you don't plan on having a career in programming, its a good skill set to have in my opinion. And also, Python is a much better platform to learn on than the popularized Java.\n"},{"text":"\"> One of the best courses I have taken online. I did this back in the fall of 8th grade (I am in 11th now) and it provided the basics to "thinking" like a programmer. Be wary though, it takes a decent amount of time and you have a risk of throwing your computer against the wall, but keep in mind that I was in 8th grade when I did this, so your experience might be better. Even if you don't plan on having a career in programming, its a good skill set to have in my opinion. And also, Python is a much better platform to learn on than the popularized Java.\n"},{"text":"\"> This is THE EXCELLENT python course available on internet I believe. I got hard time to complete this as found challenging at the same time.My suggestion to add more contents to OOP . I found class concept hard to get , may be more practical exercise after lecture needs to be add , also some more lecture videos will help for that.\n"},{"text":"\"> A great course and I would recommend it to anyone!The instructors are great and it covers all aspects of basic programming and computer science!It does take a lot of effort but it is definitively worth it, ranging from 16-30 hours a week depending on the subject.Take this course and it will set you off on the right path towards becoming a good programmer since it teaches you important aspects that are very useful in multiple situations!10/10 \n"},{"text":"\"> The course is excellent. Print outs are very good but could be a little more explicit. Rewiewing them without the talk may be a little difficultClear and excellent understandable wording (for non english fluent).edx structure is wery good and affordable. Very versatile way of usage, changing speed of talk, screen enlaging,... Tooling for translation when available is not workable. Do not expect to teake the course if you are weak in english.\n"},{"text":"\"> This was an excellent introduction to the foundations of programming using a more friendly language (Python). It requires dedication and determination. I would definitely recommend it if you are an absolute beginner, or want to start learning programming but do not know where to start. The instructor is very clear and gives great practical illustrations for almost every topic. I look forward to the second part of the series!\n"},{"text":"\"> What a MOOC! As the instructor pointed out at the end of the course, have a look at the beginning and you would notice how much you have learnt. This is the course anyone has to start with in order to understand how to think in terms of computer science and programming. But also it gives you the tool (Python) to put it on practice. Next session do not hesitate to enroll in this course. \n"},{"text":"\"> I had a great time taking this class. It was very rewarding to me and it took a heck a lot of my time. On average I spent 20 to 30 hours on it every week. Sometimes more than 30, sometimes less than 20. I had only completed Codecademy's Python tutorial before taking this class. I thought the first 3 weeks were the hardest. The class seemed to sail along after that. I think that is probably the time I got past the learning curve. I highly recommend this class. It is totally worth any time you put into it. \n"},{"text":"\"> First of all, let's just agree that this course is MARVELOUS!The content of the course is great; covers everything on an introductory level. The instructor, Prof. Eric Grimson, is talented and organized. Everything is Fantastic.BUT keep in mind that throughout this course, u'll most definitely be challenged (especially if this is ur first exposure to CS). However, by the end of the course u'll amazed by ur accomplishments. In a nutshell, don't pass up this precious opportunity, stay motivated and never give up on the course when it gives u a hard time. u'll thank me later ;) \n"},{"text":"\"> MOOCs from MIT are the pure meaning of parallel universe!!"600.1x" in one word >> (your programming experience will be raising in sharp exponential curve) about the content: it's very precise, the lectures are concrete and the most helpful part of them is the short exercises between the the lectures' segments.the lectures cover the most important algorithms, object oriented programming and simple data structures. the p-sets are the most powerful and motivating part of the course, you will implement simple programs, games like hang-man, encryption, classes and other complex programsthe instructor: professor ERIC will manage the whole course lectures.he is the best one you will see who can trade off explicitness against implicitness, you have to perfectly focus when you're lectured, one missed word from him can close all doors. if you're really interested in this course, GO ahead right now 'cause you're Gonna love it. \n"},{"text":"\"> A fantastic entry to python programming with very well though course and smartexercises that maximise how much you learn from each activity.Highly recommended course.\n"},{"text":"\"> For someone who is either refreshing their programming skills or someone who is new to programming altogether, this course is a nice albeit brisk introduction to programming methodologies and Python. I believe Python is a good choice: not as messy as Perl, has some structure (forces correct indentations), and almost instant feedback as opposed to writing and compiling in C or C++ (include iostream, main() etc etc -- just use the interpreter). Great Course.\n"},{"text":"\"> It required substantial effort to work through this course, but in the end, it was such an engaging experience. The programming problems were the highlight of the course and getting it done on time was in itself a rewarding experience that can raise one's confidence to an elevated level. Many thanks to Instructors for putting this up and for edx for offering a great platform to learn. Highly recommended!\n"},{"text":"\"> You need to dedicate good amount of time to be successful in this course but it is a real good course! The instructors did their best and showed the quality of MIT!!\n"},{"text":"\"> I previously had no experience with Python and no formal programming experience though I am experienced and exposed to coding in SAS and VBA.This course helped me gain better understanding of what I would be doing on a daily basis in the software I mentioned above and gives solid understanding of CS fundamentals and Python syntax. The fundamentals can also be used on other languages!Now I envy the ease of expressing your thoughts in Python and am looking at ways to add it to my work even though I am not nearly finished with the course.The fingers reinforce the understanding of the viewer through example and the task assignments give you a sense of urgency so you don't slack too much!\n"},{"text":"\"> The best introduction to programming course that you can imagine. After this course you would be able to easily write short to medium (few hundreds of lines) of Python programs.Professor Grimson is fantastic and manages to explain even difficult concepts in very easy way. The assignments are quite difficult but satisfactory.The downside? Well, I like Coursera interface better than edX one, and the discussion forums aren't that great. On the bright side, there was a facebook page for the course when some good discussion occurred.Highly recommended to anyone!\n"},{"text":"\"> This course as well as the 6.00.2x is the best introductory course into Computer Science. It gives an overview of concepts in an engaging and funny form.I really enjoyed it and will certainly follow all CS MIT courses, at least I'll finish the 6.00.x series.I would like to thank EDx and MIT for such a great experience! \n"},{"text":"\"> Brilliant course!!\n"},{"text":"\"> This has been one of the best Python Computer Science MOOCs I've taken. I'dsay it is a challenging course especially for someone with not prior Python orcoding experience. Prior to enrolling in this course it would benefit studentswith no programming background to complete the free Python course atcodecademy.com . Eric Grimson is fantastic and provides very intelligiblepresentations for the material. The assignments and exercises are mostly wellpresented with decent instructions until the final assignment where there is abig conceptual leap to put previous work into practice. The final assignmentgives little in the way of instructions and many things are left unclear. Thestudent is expected is expected to fill in the gaps of poor directions withlimited knowledge. This final step is a stumbling block that may causestudents to fail the course if they had not scored well up to that point. Onestudent pointed out this issue with the final assignment in the discussionboard; this was the response: "By kiwitrader COMMUNITY TA: If you want an easy course that doesn't requireyou to stretch for the assignments and want to be spoon fed every littleinstruction ... there are coursera courses run at Community College leveldesigned just for that. This course has already been watered down enough from6.00x. Check out the course philosophy to understand the objectives of thiscourse. People who do well in this course should be justifiably happy withtheir results." However, I wouldn't say this particular Community TA was representative of allthe Community TAs in the course. \n"},{"text":"\">This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features updated lecture videos, lecture exercises, and problem sets to use the new version of Python 3.5. Even if you took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning.
Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not \"computation appreciation\" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.
\n"},{"text":"\"> Great introductory course. Many exercises during lectures make sure you knowall of the material spoken of in class. Great and fun way to learn the basicsand Python.\n"},{"text":"\"> It was pretty difficult, i had never programmed before, this was my firstapproach to computer science, and it was very intense, a lot of time spent inthis course, but it was awesome. I changed my way of thinking, a little, butit will be useful in the future.\n"},{"text":"\"> I am not done with the course, but it is extremely challenging. I do know thatif I finish, this course will change my life.\n"},{"text":"\"> An excellent introduction to Computer Science concepts illustrated using the Python programming language. My only issue with this course is that the very high quality of the content and the teaching set the standard so high, that other courses appear much poorer than maybe they are.\n"},{"text":"\"> I enjoyed thoroughly the course and I'm glad that I had the opportunity totake this class from a world class institution that otherwise I wouldn't havebeen able to.\n"},{"text":"\"> Given MIT's reputation I was excited to learn about this course. UnfortunatelyI decided to drop it in disappointment. The audio quality of many of thevideos was so bad it was distracting. The questions at the end of several ofthe video lectures were on concepts alluded to or not even covered in thevideo. Many times it was difficult to even figure out what the instructor wasasking for. After the second week of the class I continued to see similarcomments and frustrations in the discussion areas from other class members. Idon't want to comment unfairly but it just seems this course was throwntogether with not much concern for quality it is delivery.\n"},{"text":"\"> I had no prior programming experience when I started this course. Theprerequisites were simply mathematical but I really struggled. I ended updropping out because of the lack of explanation. I am usually a very goodstudent and it killed me to drop out but I was simply frustrated because ofthe assumptions made by the course. This is not a beginner course at all. Onthe plus side, I did learn a few simple processes and the professor was veryinteresting to listen to, hence the three stars. I would not take this courseif you have no experience.\n"},{"text":"\"> I'm very excited to study computer science online, M.I.T is the school of mydreams and I'm very lucky to be apart of this.. BITA FROM CONGO.\n"},{"text":"\"> I'd like to do something that really can change my life,thanks for thiscourse,it will give me a lot interesting knowledge,I expect.\n"},{"text":"\"> The best course I've ever taken. If you are a begginer dive in and don't beafraid to push yourself.\n"},{"text":"\"> This was my firt course on CS and it seems rather hard in the beggining, butafter week 3 I've became so engaged that I would wait impatiently for newlectures and psets to apear. I can say for sure that this was the bestlearning experience I've had in my entire life (I'm in the 2nd year of collegenow).\n"},{"text":"\"> I expected to learn about the rudiments of modeling as it is applicable todata science. Being inclined towards scientific computing as the next step inmy career, I felt I needed a ring-side view of this world and this courseaptly provided me the same. Also, the choice of programming language, Python,turned out to be an interesting, a less intimidating and a valuable tool forme to enter in this area. I can without a doubt say that this course haskindled my curiosity and seeing my own progress from day one, gave me immenseconfidence that I am on the right track. I would like to see more in-depth andadvanced off-shoots of the course with focus on a subject area.\n"},{"text":"\"> One of the best CS courses I've seen till now. What I love about it is that ittouches so many areas where programming is useful. I'm studying analog circuitdesign but I find several occasions where applying what I learned here speedsthings up significantly.\n"},{"text":"\"> A few things in response to Laurie Nylund. I went to MIT and had never taken aprogramming course. We exist! Also, 6.00 is not the introductory course theMIT CS students take, so there's no need to be intimidated on that front. JohnGuttag, who taught 6.00 when I took it back in 2007, totally changed the mylife's course. Can't thank him enough for that. Invest the time and effort tolearn how to code; it may take you great places! Good luck!\n"},{"text":"\"> This course tremendously improved my ability to think computationally.Specifically, I learnt how to think recursively, solve graph problem, solvedice-rolling problem and many more. It improved my programming skill and hashelped me in helping other students here in Nigeria. It gave me the push tolearn more advanced concepts including artificial intelligence. I can't forgetthe Chancellor of MIT (Prof. Eric Grimson) and the amazing Prof. John Guttag(featuring in English, Math and now Computer Science/Elect Eng). It amazes mehow you could sacrifice this much despite your very busy schedule. Thanks alot.\n"},{"text":"\"> \n"},{"text":"\"> The course was good. There was rich amount of materials, a good instructor,and challenging problem sets. I would recommend this course to everybody,except for completely beginners.\n"},{"text":"\"> I have completed four MOOCs and this was the top one. This course can be verychallenging (it was for me) and I barely achieved a certificate despiteconstant effort. That's a GOOD thing; it forces you to try to understand theconcepts and invests you more fully in the material. I strongly believe thattaking this course was one of the main reasons I was able to secure a fullyfunded graduate assistantship. Now that I'm in my first semester, I am trulythankful I took this course, as the background knowledge has been invaluablefor my current coursework. Thank you Dr. Grimson and the edX team.\n"},{"text":"\"> I took this course 1 year ago and was a total stranger to programming. Now Isold my first Web-Application completely writen in Python.\n"},{"text":"\"> I've been looking for a proper course in computer programming and this courseby far has taught me how to think as a programmer than just learning aprogramming language unlike many other courses out there. What I really loveabout this course is the complexity and challenge the problem sets and fingerExercises provide which have really helped me to understand the concepts andtactics involved in programming with Python. If someone asked me I want tostudy CS, where should I start, I will definitely refer them to this course!Thank you very much for such an amazing course and I'm looking forward totaking other related 6.00.00 Xseries courses after this.\n"},{"text":"\"> I am not able to check my code if its correct or wrong in the quiz section Ineed to use it. his course changed my life. There's no better way to describeit and I would never be able to express the gratitude I owe to\n"},{"text":"\"> Absolutely the best online course I've ever seen. One of the best classes I'veever attended. I completed the old version of the class before it was split intoo. It was indeed a lot of work but worth every minute. Eric Grimson is aparticularly wonderful instructor. Couldn't possibly recommend more. I lovedit.\n"},{"text":"\"> I learned introductory programming, algorithm and its complexity, recursion .Overall its great :)\n"},{"text":"\"> This course is difficult for beginners and easy for somewhat experienced. Thisis the feeling that i got while struggling to complete the projects.Challenging is good sometimes but this course was not intriguing for me.\u001a wouldnt recommend it to a total beginner.\n"},{"text":"\"> I've tried Codeacademy, Coursera, EdxCS50, this course is the best! Two weeksin and I'm already amazed at my progress.\n"},{"text":"\"> By far the best course I've taken among other Python courses. The autograderwent down too frequently though. \n"},{"text":"\"> I am working in the field of Computational Fluid Dynamics and I need tounderstand the computational continuum mechanics models for Fluid-Thermalscience and hence I am looking forward to learning my fundamentals from thiscourse.\n"},{"text":"\"> \n"},{"text":"\"> Excellent course...topics covered thoroughly with lots of practice sets.\n"},{"text":"\">This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features updated lecture videos, lecture exercises, and problem sets to use the new version of Python 3.5. Even if you took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning.
Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not \"computation appreciation\" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.
\n"},{"text":"\"> This course is very well done. My advice to anyone doing this course is tofocus on the problem sets, lectures and lecture exercises. I would warn anyoneeven though this is marked Introductory, it is not a course for those who havenot done any CS work before.\n"},{"text":"\"> Excellent course with a fantastic teacher- seriously helped me learn to thinkcomputationally and use these thoughts for any programming project. Thiscourse is a must before trying to really learn any modern programming languagein depth.\n"},{"text":"\"> This was the best course on CS I have taken so far, and that includes in-person courses on my university. I left the course feeling I have theappropriate background to learn more about a lot of CS topics, which wasexactly what I was looking for.\n"},{"text":"\"> I was one of the first batch to take this course. I remember I spent the mostof my time in a custodial closet watching videos and doing all assignments onmy breaktime. Then I landed a job in a startup company later after the course.It made me jump-start to become a web developer. I am very grateful.\n"},{"text":"\"> I've tried, i really did, but for someone, who has no prior programming skillsand not a huge amount of time (and willpower!), its basically impossible topass this course.\n"},{"text":"\"> I had a small amount of knowledge of computer programming before I took thiscourse and wanted to consolidate the knowledge that I had whilst at the sametime expanding my skills. Wow, I was blown away by what this course taught me.Admitted, at times it was tough going, but if you put in the work you willcome out of the other end armed with some very useful knowledge. The courselectures are good, the notes are good and the homework and exams are wellthought out and planned. This is all backed up with great online support. Thisis the first MOOC that I have completed and has set a very high standard forall others that will follow. If you are interested in learning computerprogramming and are prepared to put in the hours, then this is the course foryou.\n"},{"text":"\"> A great course for beginners in programming. Professor Eric Grimson nicelyintroduces the concept of computational thinking using Python as theprogramming language. I found this course very challenging and equallyrewarding.\n"},{"text":"\"> I am working as a software developer in a software house and my objective totake this course is to refresh my knowledge and to learn a new programminglanguage. i found that course very interesting and like it. the track is finefor me but i think that is not for beginner as its pace is a bit fast forbeginners, but the lectures on debugging, efficiency and order of growth ilike the most\n"},{"text":"\"> Took this course with very limited prior experience on programming but noexperience with programming in Python. It's a fairly demanding course with ahomework assignment every week which took me between 4 to 10 hours each. Butit's the best way to learn to program, especially because you feel a sense ofachievement after each homework assignment.\n"},{"text":"\"> It's a very good course. * It's real introduction to computer science. *You'll learn about computer, algorithms and programming languages in general.* You'll learn best base practices of programming (testing, debugging,documenting, creating pseudo code). And it's really helpful for beginningprogrammer. And also it is a real pleasure for rigorous mind. * You'll learnPython. * You'll learn great programming paradigm - OOP. * You'll begin tolearn how to solve _computational_ problems. I've completed also Udacity'sIntro to Computer Science. Udacity's course is more fun and more close toeveryday life. MIT course is first of all about science, it looks deeper atsome specific issues. Take both if you can. Udacity's first, since it's moredetailed about the very first steps in Python.\n"},{"text":"\"> Seriously amazing course.Each and every programming concept was explained indetail and in an understandable way.Just loved the course.\n"},{"text":"\"> Incredibly fascinating material presenting in a logical, entertaining and easyto understand format. Additionally, the course book is written in relatablelanguage and gives relevant examples.\n"},{"text":"\"> I've completed 6.00.1x with 95%. It wasn't all that difficult, but I gave a"hard" rating because I think this course would be extremely difficult forsomeone without real programming experience. I think this is accurate becausethe course description did not include any hard prerequisites. Let's just saythat if this was the first course on the subject taken in undergrad, I wouldhave failed for sure! 6.00.1x taught me many areas of computer science that Idid not previously think about which I found quite nice. Some familiar topicsto me, like state variables and graphs came up but was presented under a muchmore abstract context which was quite interesting. The problem sets werethorough, and the structure of presentation and evaluation made it so that Ididn't slack off. Anyways, I have PhD from Berkeley where I have had to writea lot of "research-grade" code in environments like Matlab and LabView, andI've still found some of the concepts confusing and/or challenging. At times,I believe the confusion was simply due to a cursory explanation in thelectures and/or poor exercise design, but that was somewhat rare and I'm surethe course staff will iron that out as this course evolves!\n"},{"text":"\"> This was my very first course on edx. It is well prepaired, and outstandingcourse! It gives you good basics of object oriented programming. If you wnt tolearn OOP this is the best place to start. Moving to C++ or Java is then veryeasy.\n"},{"text":"\"> Some basics of programming. Ideas and problems not very original, butpresented in interesting way with corresponding examples. I knew some of thematerial from my university, but still had fun with lectures. Made with care.Great exercices.\n"},{"text":"\"> Fantastic introduction to programming and the world of computer science. Oneof the most rewarding courses I've ever taken.\n"},{"text":"\"> I can only say that this course was completely amazing and I'd recommend itblindfoldedly to everyone. I have taken more than 15 online courses and thisone was by far the best. Since I was only a beginner in programming, itrequired quite an effort from my side. But completing it, compensated 100% formy time. Many congratulations to Prof. Eric Grimson and all those whocontributed to this course!\n"},{"text":"\"> Great course, I'm actually a sys admin, not a developer but have some pythonscripting background. What I find is lacking is some god real-world examplesof when and how you'd decide to use a class vs "just a function". However,thanks to the course I do get the idea of a class and why it is useful. Idropped the course though as I started way late and it was impossible to catchup and do all the tests in time. Waiting for a new 6.00.1x to start so I canrepeat the class from the very beginning.\n"},{"text":"\"> A very solid introductory CS class. Prof. Grimson is a great teacher. Thereare two reasons I'm only giving this four stars. Firstly, I'm a recent covertto the HtDP school of thought, so I consider the lack of coverage offundamental design methods to be a drawback. Secondly, the coverage ofalgorithmic complexity theory does more harm than good. A more thorough exposeis needed, or students will leave class with dangerous misconceptions aboutthe method.\n"},{"text":"\"> I always wanted to learn programming at a deeper level, and this coursereached all expectations that I had. If you have a little or no experience inprogramming and are willing to put in the effort then this is the course totake you to the next level.\n"},{"text":"\"> In general, this is a good introductory course to programming. Although somematerial is not completely clear, it provides a good glimpse about whatsomebody is able to do with programming. I enjoyed this course speciallyproblem sets that I consider are challenging and very useful. I undoubtedlyrecommend this course for someone who wants to improve his/her knowledge atprogramming because it uses a really easy to learn programming language, i.e.Python, and it covers topics that are essential but fundamental into computerscience. However, it can result a little difficult for someone who has noprevious experience at programming.\n"},{"text":"\"> I don't think it is for absolute beginners as it is a little bit advanced. Itis full of information, but the lectures videos need to be more engaging,\n"},{"text":"\"> My background includes a BS in Aerospace Engineering with about 1 - 2 years ofexperience in various computer languages such as Python, Matlab, FORTRAN,C/C++ and Visual Basic. I never had any formal education or training incomputer science before this course. My only training before this course wasself-taught, and I only focused on programming language syntax instead ofcomputer science and problem solving abilities. Overall, I was very pleasedwith this course. Fortunately for me, I had reviewed most of the course'scontent through MIT's OpenCourseWare class "Intro to Computer Science andProgramming" (6.00SC). Most of the material on the MIT OpenCourseWare was verysimilar except for a few new topics such as trees. In my personal opinion, anintroductory background in Python and computer science is recommended for thiscourse but is not required. I easily spent 12+ hours per week on this course.Here are my thoughts about the PROS and CONS of this course: PROS: * Theprofessor, Dr. Grimson, is a fantastic lecturer and professor. Everything isexplained very well with visual representations, well-crafted notes andslides, and great examples. * The finger exercises (think of them as reviewquestions) are a great way for the material to be reviewed. You have unlimitedtries to get these correct and are useful for reviewing material. * Setup ofthe course in intuitive and easy to follow. * The homework assignments areboth rigorous and fun. They covered a wide range of topics such as RSS,encryption and object-oriented programming. * Course was free. Future courseswill still be free but will offer a ID verified certificate for a cost of $50.* Python is a great programming language for new computer programmers sinceits syntax is very easy to learn. Also, Python has become a very popularlanguage. * All the programming assignments and quizzes are graded instantlyso that you understand what you did right/wrong. * Grades are assigned as A(80 - 100), B (65 - 80), C (50 - 65). In my opinion, this lenient system wasvery useful for students because they focused less on their grades and more onlearning the concepts. This was also useful since the course was verydifficult. * Forums provided a useful mechanism for learning the material. *Teaching Assistants and Staff were great when it comes to addressing questionsor issues on the forums. They were very courteous, even when people werefrustrated and angry. * Book is inexpensive and serves as a very usefulreference for this course. CONS; * MIT underestimated the amount of studentsthat would take the course, and thus their grading servers crashed often.However, they are fully aware of it. I do not expect this to be a problem infuture courses. * As mentioned before, the MIT OCW course is extremely similarto this course. This would not normally be a disadvantage, however almost allthe homework assignments are the same. I had already completed most of thehomework assignments prior to taking this course so I was not fully challengedon all homework assignments. This would be tempting for other students tocheat and use the online MIT OCW solutions. * Trees, a form of a datastructure, were not covered adequately in this class as I would have liked.This was a new topic for this course and no homework assignments were given inthis topic. A lot of students, including myself, were unprepared for thissubject on the final exam. * Although I personally liked the pace of theclass, the fast pace schedule is not ideal for a broad audience. Homeworkassignments and exams had tight schedules. There were many students who missedthe deadline on the first assignment due to some confusion about the date andUniversal Time Code (UTC). MIT should consider having the schedule moreflexible to help people with busy lives. As mentioned previously, I reallyenjoyed this course. I would not recommend this course to people who arelooking for an easy course. If you feel like this course may be too difficultfor you, I would recommend getting prepared by taking a course on Udacity orgetting an Intro to Python book. This course is meant to challenge you and istaught by one of the best universities in the world. Best of luck to all whotake this!\n"},{"text":"\"> Took this course to gain an introduction to python programming. Specificallyinterested in how python can be applied to data cleaning, analysis, andvisualization. I had already taken an introductory CS course (Java) and work abit with programming in my current job. Overall, I would say - this is a greatcourse. Challenging but well-paced. PROS \\- I really liked the frequency andcontent of finger exercises, I thought they complemented the lectures reallywell. \\- I found the problem sets challenging but not defeatingly hard. Theinstructions did a really good job of walking us through the programming stepsin order to let us actually program interesting things (e.g. hangman, RSS feedparser). \\- I liked the mix of CS theory and python examples. It felt appliedwhile also giving a good intro to higher-level challenges in the subject. \\-Buy the textbook, it's cheap, an excellent supplement, and literally a 1:1match to the lectures. I was very glad I had this to reinforce the lecture asI learn better reading than I do listening. \\- Definitely a good class to takein a group. I enjoyed seeing how others' code and style differed from my own,and it was nice to have people with whom to ask questions/discuss. CONS \\-Sometimes finger exercises asked questions which were not covered in thelecture, which was frustrating - the TAs seemed to correct this by addingnotes to the assignments pretty quickly, so there was a slight advantage towaiting a few days after the assignments were released before completing them.\\- It is not an easy course. It really did take a lot of work and I found theexam schedule slightly stressful (since I work full time, and the exams weretimed anyway from the minute you started, it would have been nice if theycould have given a larger/more flexible date range over which to take them).GOOD TO KNOW \\- This is not a quick introduction to a wide range of pythonsyntax and libraries in a way that you'll be up and running in 8 weeks. As thetitle notes, the course is an intro to CS using python as a vehicle, NOT anintro to python per se. Thus while intellectually interesting, if you have aconcrete goal that you want to complete using python code I think you'd bebetter served by an online tutorial. I am looking forward to the second halfof the course as I do think that will be more project-based and applied. \\-The examples are very heavily grounded in math. For the most part you shouldbe able to complete the code without knowing the mathematical concepts, but Iwas still glad I had a decent math background going in. Personally I wouldhave been interested in seeing more programming challenges/problems with asocial science twist, but I assume as an MIT class this course is designed totrain engineers in the first place, so who am I to complain? Overall, highlyrecommended for those who are ready to make a serious commitment. You probablydo want to have taken at least one or two college-level math or engineeringclasses at a US university (or the international equivalent) to be able tokeep up with the pace and example content, though.\n"},{"text":"\"> A very nice introductory course in programming and particular in python. Imust say that i was very familiar with programming before taking thiscourse,so perhaps i am not the best to judge it as an introductory course. Butanyway here is my two cents. This is not the easiest introductory course ihave seen.This is an MIT introductory course.This mean you have to try hard tocomplete it.I was familiar with python and it took me 3-4 hours at least perweek to complete the homeworks.I suppose that guys with no prior knowledgewould need even a full day every week. Begins frot start and ends up with themost part of python explained. If you want to try hard and challengeyourself,definately take this course. If you are not familiar with programmingand you don't have a lot of time every week,then maybe there are otherprogramming courses more suitable for you than this. Day of Completion : Endof December of 2013 Pros \\- Almost no prereqs(some basic math). \\- MIT Coursefrom great professors. \\- Challenging Course. \\- Short period,only 6 weeks. \\-You can get verified Certificate with 50$ donation or more for this course.Cons \\- Not easy and needs a lot of time every week. \\- Not slow pace forbeginners. \\- Some video lectures are old and not best quality.\n"},{"text":"\"> This course will teach you some fundamentals of programming like OOP andrecursion and some more sophisticated things like generators. But it's onlyfirst part of the course. The second part is about applications to engineering- Monte-Carlo etc. and data-structures like trees. You'll get carefullycrafted projects for some real-life problems for example in genetics androbotics. There is a good book bu John Guttag. I also recommend to watch hislectures on YouTube. It's rather difficult course and I'd say MITquintessential.\n"},{"text":"\"> MITx has now split its introduction to computer science and programming intotwo consecutive seven-week courses. This first installment teaches basicprogramming skills and algorithmic thinking using the popular Python language,taking students through the rudiments of program design, Python semantics, anddebugging. More advanced topics treated toward the end of this course segmentinclude tree structures and a serious introduction to object-orientedprogramming. The course is extraordinarily well designed, beginning with thetextbook – John Guttag’s “Introduction to Computation and Programming UsingPython” is well-written, eminently understandable, and filled with sample codesequences that make the rubber meet the road. Prof. Grimson’s lectures areclear and well-organized, although they sometimes recapitulate rather thansupplement or clarify the textbook’s presentation. The video segments arebroken up by progressive “finger exercises” that have you turn what you’veread and heard into working knowledge. Each week also includes a problem set,which is usually a programming task that creates something entertaining – agame or, most challengingly, a web “scraper” that retrieves news stories basedon combinations of keyword triggers. The programming assignments are alsoprogressively organized so that you’re writing code modules that performspecific tasks within a template, not an entire program from scratch. Theautograders are excellent, providing feedback that helps you find the bugs.The introductory nature of the course notwithstanding, it isn’t easy, nor iseverything you need always in the materials provided; you may sometimes findyourself searching the web for techniques or resources (of which there areplenty out there). I didn’t spend much time on the discussion boards, but fromwhat I saw, staff support seemed disappointingly minimal. Overall, though, thepositives far outweighed any negatives in this superb entry-level course.\n"},{"text":"\"> I thought the class would be easy because it has no prerequisites, is an"introduction to", and because I have a lifelong background in technology,with some (very ancient) college programming classes. Turned out to be harderthan I thought...by a lot. I spent the 12 hours per week on average, and spenta lot of time on the problem sets and quiz. While I definitely enjoyed thechallenge and successfully completed the course, somewhere in the sign upmaterials there should probably be an admonition of the general type that wasexpressed by the TAs in the discussion forums: '...this is an MIT-levelcourse...'. The theme, when one of the largest discussion topics was about howhard the course was, seemed to be 'take a look at the SATs, GPAs, and other'average' credentials of an MIT undergraduate; that's the level of studentthis course is aimed at'. I rate the course and the concept of 'MIT-level-courses' high; my only suggestion is a more explicit explanation of that levelof expectation in the course description.\n"},{"text":"\"> Finished this course with 88%. Hardest course I have ever taken. This courseneed good concentration and well developed logic. It really teaches how tosolve hard problems like real computer scientist. Disassembling problems intosmaller problems. Build good test suits think about almost every possible bestor worst cases of problem. It was real challenge!\n"},{"text":"\">This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features updated lecture videos, lecture exercises, and problem sets to use the new version of Python 3.5. Even if you took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning.
Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not \"computation appreciation\" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will.
\n"},{"text":"\"> This is my first Computer Science course and it is a great experience. Itteaches you the principles of programming and computational thinking apongwith some Python. Overall it is a great experience especially with edXinterface. I love the excercises after each lecture although sometimes theyare require knowledge not yet taught in the previous lectures.\n"},{"text":"\"> The course is quite difficult and assignments are challenging for a beginner.I could complete this course only because I completed Fundamentals ofprogramming from University of Toronto. Otherwise I would be lost from thevery first lecture. The lectures and explanations of the material could beclearer and deadlines could be less strict.\n"},{"text":"\"> This was an excellent course, half of a first course in computer sciencecovering basic algorithmic thinking, functions, loops, recursion, debugging,searching and sorting, orders of growth, object-oriented programming andtrees. This is less of a programming course than it is a computer sciencecourse, because a lot of programming details (syntax, built-in functions, etc)is only briefly mentioned and you're expected to do some research yourselfusing the Python documentation, etc. This was a nicely difficult course thatincluded interesting problem sets where you build something step by step.CONS: \\- There were a few errors in the lectures and some very ambiguouswording in the problem sets, but most of the time the course staff took anattitude of "we're always right and you're probably just doing it wrong"towards the students. I can't blame them, though, as there were also a lot ofunjustified complaints by students. \\- I have to mention it again: some of theproblem sets, exams, exercises, etc. had very poor (sometimes contradictory)wording, such as a problem concerning family trees on the final exam. As aresult, a lot of people made mistakes not because they didn't understandcourse concept, but because they were wrestling with how the specificationswere worded, trying to guess what the grader was looking for. \\- During thefirst run of this course, edX graders frequently crashed during exams. Thecourse staff would move deadlines to get around this, but it was inconvenientfor many people with a tight schedule who could only take the exam during asmall window of time. With that said, I hope that the next offering of thiscourse cleans up errors instead of just recycling everything. This was anexcellent and rewarding course to take, but it definitely leans more towardsthe theoretical, math-heavy side of computer science.\n"},{"text":"\"> I took the 6.00 class earlier this year but had to drop it due to my timeconstraints. Now they appear to have chopped the class into two parts (perhapswith some additional material). The class is as well taught as last time. Idefinitely recommend it. The homework problems are fun. Sometimes creatinglittle games.\n"},{"text":"\"> I would like to know how much the course costs please. How many modules are in each course and an advise of how to take the course. \n"},{"text":"\"This is an excellent course that will teach you some Python, but more importantly will teach you algorithmic thinking and how to break down large problems into simpler ones. I came into it with some self-taught Python knowledge and found it challenging but manageable. Absolute beginners may want to first try Google's free Python course or some other quick introduction to the language.The problem sets are very hard, but also the best part of the experience: they drive home the lecture concepts and completing them successfully makes you feel accomplished. Some examples: we had to write programs that could monitor news feeds over the internet, simulate the behavior of a Roomba vacuum, model the growth of viruses in a sick patient, and determine the best path between nodes on a graph. You always have two weeks to complete a problem set, which is enough to give you some flexibility yet still allows you to stay on a steady schedule.There were some logistical difficulties with the course: the last problem set wasn't released on schedule, and so the concepts I learned towards the very end of the class felt a little rushed and untested. But I imagine that these wrinkles will be smoothed out in the future.In short: it's a challenging class for CS beginners, but definitely recommended.\",\n"},{"text":"\"I'm taking this class as a refresher and as a way to dig into some sorting algorithms that I haven't used in awhile but if I was new to coding\\/python, I would find this class to be very confusing. The lectures aren't presented very clearly. The slides are disorganized, often times with the professor making random, nonsensical scribbles that are more distracting than helpful. When you do see the code example screen, there's old code, unused code, and sometimes superfluous code that would be extremely confusing to a beginner. Topics in the first few weeks don't seem to build on one another in a very logical manner. The exercises seem to be very pedantic in nature. The tests that run against your solutions to the exercises require the solution to be entered in an exact format. So for example, if you enter in \\\"1,2,3,4\\\" your solution will be rejected since the tests is looking for \\\"1, 2, 3, 4\\\". There's a bit of irony in that a class on programming doesn't have a test capable of parsing out the solution you input. Maybe I'm not paying as much attention as I should, but I swear there are exercises that ask you to use concepts you wouldn't know about from just having watched the lectures. In addition to these issues, there are some community TA's that seem to be almost combative in the class discussion forums. I'm really hoping that this class improves the deeper in you get. I'd imagine that a lot of people take this class purely based on the prestige associated with the MIT name but if you're new to coding you'd do yourself a favor by either taking Harvard's CS50 or grabbing the topics in the course and finding one of the hundreds of bootcamp blog posts that cover these same topics. \",\n"},{"text":"\"This is a well-crafted, fast-paced introduction to Computer Science, though a little dry at times. I think it's based on the introductory 'CS for non CS majors' course at MIT.The pace, relative complexity of some of the subject matter* and difficulty of a few of the exercises - I'm not a gifted programmer and I found a couple fairly challenging despite some background - might make it better suited as a second (or third) course for some, despite using Python (perhaps the easiest programming language to pick up). Rice's IIP or Udacity's CS101 - which I'd both done earlier - would both be good preparation (or fallback options, if you try this and find it too hard).I just completed the final exam, which is untimed (you get a long weekend to complete it) & accounts for 25% of the grade). I seemed to test a pretty representative selection of the material, at a level comparable in difficulty to the homeworks. *It includes introductory material on object orientation (including inheritance), recursion, data structures (trees) and algorithms (including big O notation, tree search).\",\n"},{"text":"\"I just finished this class. It was much harder and moved much quicker than any other MOOC I have taken. I learned a lot, but it was a lot more work than I had really anticipated. I am a complete novice with no programming experience, so perhaps that was my fault. I did finish (just this second) and did get a good grade, but I put far more time and effort into the class than I had expected. Be prepared!As an example the first 3 'week' projects are due 4 days apart (Thurs, Tue, Fri due dates) so the 'week' concept was a bit misleading. Again, I really enjoyed and learned a ton, but I hope others know their expectations.Also a lot of the work is self taught. You need to go out and find the answer far more than expect the answer to be in the videos or exercises.\",\n"},{"text":"\"This was probably the best introduction to computer programming I have ever seen. The professors are engaging and the lectures are short and to the point. Finger exercises between lectures really drive home the points that the professors were trying to make. The programming assignments were challenging enough to make you feel like you have accomplished something, but the specifications were generally enough to get you through it. The forums were invaluable to completing the assignments and were full of very bright students with excellent questions. The Midterms were very challenging, especially the first one. I liked how once the fundamentals of Python were covered, the focus moved to solving real world engineering problems, but I still feel that there is a lot more to learn about Python. I'd take another class from this MIT group in an instant.\",\n"},{"text":"\"Great course! But you have to work a lot, not get frustrated and be ready to think out of the box and get out of the comfort zone to solve the problems. One of the things to take away from this course for me was that coding of complex programs is not done alone. Brainstorm with some one else if the approach you are taking to solve the problem is on the right track. Pseudocodes are important. Another thing I learnt in this course is that they make you work hard on the Problem sets so that you are well prepared for the Finals. You may have difficulty winning the battle but you will win the war because you are well prepared for it. At the end of it, it's real power when you tell the computer what you want it to do and it does that!\",\n"},{"text":"\"I came to this course after taking some parts of Harvard's CS50x (a really good course), another Intro to CS course, so I couldn't help but compare. This isn't to say which one \\\"did it better\\\"(since you really shouldn't compare since they have difference scopes) but just to show you how they are different, and to help you choose depending on what you're looking for.They take different approaches. CS50x explains a lot of what goes on \\\"under the hood\\\" and teaches programming using C (a low-level language in comparison to Python), and also touches on a lot of other CS topics besides programming. It's a more comprehensive introduction. MITx6.00.1x actually seems to avoid mentioning what goes on under the hood, because the focus is on abstraction and modularity, and uses Python to teach programming. Compared to CS50x, 6.00.1x lectures are more \\\"bite-sized\\\", discussing one or a few topics at a time then testing your understanding with finger exercises immediately afterwards.The lectures in 6.00.1x can be somewhat dry at times. The problem sets are sufficiently engaging. They can be difficult while you're starting out, but they become more manageable as you learn more about the language. In summary, if you're choosing between CS50x and this course, the points to consider (imo) are: the approach (\\\"under the hood\\\" vs \\\"abstraction and modularity\\\"), the scope (programming + touching on more vs just programming hence shorter), the language used (C vs Python), and length of lectures (1hr+ each vs ~10min lectures with fexes in between). Overall, 6.00.1x did well the things that it set out to do.\",\n"},{"text":"\"The many practice quizzes are very useful and I could follow the first half of the course but when I encountered a problem with an exercise around the middle of the course I couldn't solve it and since I was too busy to find other help (e.g. books\\/resource persons), I was stuck and gone off track with the course schedule. So I had to drop this course. I'd recommend this course if you have someone around who already knows programming because as with other computer stuffs, sometimes a small thing can get you stuck and you can look at it a million times and still can't see where the problem lies.\",\n"},{"text":"\"The course moves very quickly and has required 20+ additional hours of work weekly beyond the instruction. The lectures are very contained in their scope, but the scope of the problems jumps far beyond the lecture and requires much unsupported research (really guessing, in many cases!). This problem could be easily rectified with a more gradual evolution of problems. (Bridging problems between the current short end-of-lesson questions and complex weekly problems.) On-screen the graphics are difficult to follow with a very small font making it hard to see key characters. The execution screen is full of past work and so that with the phrase \\\"Let's see what this does!\\\" it is unclear (and obscured) what was typed in and what resulted since you visually have to jump from the code screen to the execution screen in the midst of lines of text (and again, a very small font). And while this may not be the typical \\\"requirement\\\" of a college course, the examples of where and in what context a given code might be utilized is much better provided in other online courses. The course content on the whole is solid but half-baked in execution with poor visuals, pacing, and contextual application to the real world.\",\n"},{"text":"\"This course has been my best online 'tutorial'. Instructor approaches teaching from 'first principle' and for me that is the way to go. I was able to grasp the fundamentals of programming on the fly. I entered the course with the aim of getting first hand education on python programming to enable me write scripts for digital design as an architect but I chanced upon a requisite knowledge I never earlier imagined. Each lesson was modest in design, well defined in specific objective, and understandable information. It covered a wide range of lessons needed for computer programming and would recommend it for anybody who wants to learn computer science.\",\n"},{"text":"\"This course covers a lot of ground, so it may be demanding for a beginner. However, if you have some programming experience and just want to get all you knowledge into a system and learn some python it can be pretty manageable. Problems sets can be challenging, but not if you've solved similar problems in another language. So I recommend it to someone who has done at least a CodeAcademy course, so you wouldn't feel thrown into a deep end right away. Otherwise it's a great course. I personally enjoyed the instructor's sense of humour and barely contained enthusiasm for the subject. \",\n"},{"text":"\"Excellent introduction class for anyone wanted to learn Python either you are a beginner\\/student or a professional experienced engineer wanted to learn something new. The class is somewhat medium-to-hard to follow and requires quite an attention and regularity of attendance (it's an esteemed MIT after all) but presenters and authors MIT's Professors John V. Guttag, Eric Grimson and Ana Bell did an extraordinary job of making a learning curve as gentle and pleasant as humanly possible. Personally, to me it's the very Eric Grimson's teaching style which kept me going.\",\n"},{"text":"\"This is am amazing class. One of the best so far MOOCs I've taken so far. I not only learned python, but also computational thinking that expands the power of programming. As a non-cs major heading into a master's CS program, the exposure to this class gave me tremendous confidence in moving into the next level. the psets, coupled with exercises between lectures fortified my understanding of the materials seamlessly. I highly recommend this class to anyone interested in learning python, and programming in general.\",\n"},{"text":"\"Prior experience: 1 year of computer science education.This was my first MOOC, and up to this point, the most rewarding one. The way it approaches CS is the best I've seen so far, giving real examples of usage of all the concepts, it's really motivating.Regarding difficulty, it has the perfect balance: the challenges are demanding but not so hard that you feel frustrated or can't complete it.I totally recommend this one, but I advise you that if your only goal is to learn Python, maybe it is not the best choice, as you will use a lot of time on others subjects rather then just programming.\",\n"},{"text":"\"I thought this course was HARD. Devoted many more hours to it than I anticipated and barely got above the passing mark. That said, I learned a lot and found it to be of higher quality than several undergraduate courses I took as an enrolled student at a respected university. I am not a programming type and my brain does not naturally take to this kind of material. If you have a thick skin and are interested in the topic, this is the course you want. Many of the concepts helped me substantially in understanding how to use other programs like R effectively.\",\n"},{"text":"\"Okay, so for someone who has never coded, and wants to learn to program, you can safely assume this is the best course, yet the hardest out their. Even for someone who has programmed for a year or so, this course can be tough. So, if you are merely starting, don't feel belittled. This is a magnificent course, and even if you just complete it, without scoring good, trust me, you will take many things out of it for future. Will normally take around 12-15 hours a week, but if you are new might take long. \",\n"},{"text":"\"I really enjoyed this course. Prof. Grimson's lectures were a pleasure to watch. I had very little programming experience (just Python for Informatics on Coursera), so I found this course to be difficult, but very rewarding. I took it concurrently with the Rice python course on Coursera, and I found that the two courses complemented each other very well, though it was hard to find time to complete all the assignments for both courses.\",\n"},{"text":"\"An excellent introduction to thinking computationally. I liked the instructor, and the exercises and problems sets largely struck a nice balance, being challenging but not discouraging. The midterm and final, though, I found very difficult. The pacing of the class is also a little uneven: we lingered over the easier topics early on, but then sped through more demanding topics, such as object-oriented programming, toward the end of the course.\",\n"},{"text":"\"Really excellent one. Even without any prior exposure to the programming one can grasp all the fundamental ideas, presented in course, pretty easily. The other important characteristic is very active discussion forum, where it is possible to find support or get answers for a variety of questions. And, third, despite frequent claims to the contrary, automatic grader gets the job done - with a proper implementation throughout all the course I haven't managed to get any errors or incorrect behaviour from it.\",\n"},{"text":"\"In summer last year, I took this course as my first course to learn CS and I was satisfied with the quality and rigor of this course. I learned many CS concepts and did practice with tons of programming exercises. The professor's high quality lectures and active discussion forum were really helpful. I think the high quality of edX platform itself also contributed to my success in this course.\",\n"},{"text":"\"No bell and whistles, a classical approach and a wonderful professor, Eric Grimson.One advice, especially for student whose English isn't mother tongue: if you find yourself in troubles with tests, go back to the video lessons. They are dense. When I found myself in troubles, I often taught that something has not been explained, but I had always had to admit that it was my fault, since I lowered my attention during the view.\",\n"},{"text":"\"Excellent class. It is a very serious introduction to programming, beyond the usual college introductory level. It discusses some data structures and a good number of algorithms. Its programming assignments are challenging. The presentations are exemplary in their precision and rigor. There is not one minute wasted during the lectures.\",\n"},{"text":"\"I came to this course to see what Python is and why I should want to invest my time going down the Python path rather than Ruby, Perl, Java, C++ or a thousand other programming tools that I could find. Unfortunately, I found no description of Python or description of its real world usage or comparison to anything else. So I will just keep looking. I did watch the short intro video but found no guidance there either.\",\n"},{"text":"\"Challenging and rewarding introductory CS course. Downloading the Python interpreter is practically mandatory. If you can't install software on the machine you use, this may not be the course for you. My only complaint is that when they show the code he's working on in the videos, it is too small and fuzzy to read.\",\n"},{"text":"\"This course is hard like other MIT courses. Be prepared to work a lot to perform well. A good news that it's not that hard like previous course in functional programming. The second part is about scientific applications of python that is not very common for such courses but natural for MIT. Personally I was highly interested in Monte-Carlo simulations. \",\n"},{"text":"\"Very useful course, with plenty of practice exercises. Covers programming methods beyond just the python language. A very good introduction, that goes fairly deep into the concepts. I hesitated rating it intermediate, rather than beginner, for this reason: it's a more demanding course than that proposed by University of Michigan (Dr Chuck), for instance.\",\n"},{"text":"\"I don't consider this an introduction to Python. They expect you to solve some of the problems without giving you the information in the lectures. \",\n"},{"text":"\"Video and audio quality (thus far) is a little poor by 2015 standards but the course content is deep, engaging and applicable. Both easy and challenging problems are interspersed at just the right intervals to keep you attentive and learning.\",\n"},{"text":"\"This is an excellent introduction into Computer Science using Python. The instructor is very clear in his explanations and the assignments are challenging, while also good learning experiences. This is a top level MOOC - excellent.\",\n"},{"text":"\"For beginners, make sure to do extra reading and assignments outside of the course (but recommended by the course) in order to get the most out of it.\",\n"},{"text":"\"I think this is best introductory programming course for those who want to dive into Data Science. The lectures are well designed and the exercises are quite challenging.\",\n"},{"text":"\"Finished this course with 98%. Very interesting and useful, even though, I've done it on my fourth year studying CS at the university.\",\n"},{"text":"\"This is very good course,but I don't believe is suitable for absolute beginners This is not a learning Python course,this is an introduction CS using Python,as the title of course says.\",\n"},{"text":"\"Topics are covered rigorously, the exercises & quizzes are helpful in learning, the weekly coding assignments are very challenging. Overall a great learning experience.\",\n"},{"text":"\"Course is really good, maybe a little easy. I think it would be more difficult for a beginner which is the audience it is targeting.\",\n"},{"text":"\"This is a very good class, I'm currently taking it and maybe the pace of the course is kind of fast, but it's a very good course.\",\n"},{"text":"\"Real college course. Lot of hours of work, but good coverage\",\n"},{"text":"\"Excellent class. Professor Grimson is an excellent and very knowledgeable lecturer.\",\n"},{"text":"\"Excellent course. High workload. Intellectually rewarding.\",\n"},{"text":"\"Thank you, MITx and edX, for this amazing course!I've finished this course a few days ago and it was one of my first Python courses. Let me give you some insight. This course might seem a little boring or even intimidating to some. It's won't be an easy walk-through if you don't have any clue what Python or programming is about. So I wouldn't recommend taking it as your very first course. But after you get the general idea of the language and programming, jump right into it. It might be hard now and then but you'll learn a ton, you'll practice a lot and you'll have a much better idea to approach problems and apply your knowledge.You'll have a chance to learn and practice to better grasp things like recursion, object-oriented programming, Big-O and different algorithms.This really has helped to move forward and improve my problem-solving and coding skills. I'd strongly encourage everybody in their 1-2 month into the coding journey to take this course. It's definitely worth your time.Thank you.\",\n"},{"text":"\"There are no words to explain the amazing quality of MITx courses. When you take an MITx course you are guaranteed to have an MIT-level education. If you are looking for a CS course that provides a rigorous, challenging and very rewarding MIT-level introduction to this field, you are in the right place. This course will be worth your time and effort.This course teaches the fundamentals of programming and algorithms in a very rigorous, fun and exciting way. There are weekly problems sets and practices problems. You will learn skills that you can apply to other programming languages and the foundation to take more advanced courses.The forums are always a great way to ask for help if you need to ask your classmates or Community TAs any question.I love the community around this course. You truly feel supported through the experience.Don't think twice if you would like to learn CS! This is the right course for you!\",\n"},{"text":"\"The lectures and text book for this course are nearly worthless. The first couple of weeks are easy, because I knew some python coming in. But when the material gets difficult, you are essentially on your own. The exercises and the problem sets bear very little relationship to the lectures. The teacher seems sometimes more interested in showing tertiary level details than in explaining the main concepts. Not recommended.\",\n"},{"text":"\"Very well structured course from MIT. I guess,what makes this course even more interesting is that it's being taught by former MIT Chancellor Prof. Eric Grimson. He explains very lucidly and very calmly. Because of his well explanatory capabilities, he don't let his students to get lost in the middle of lecture. \",\n"},{"text":"\"Worst course for beginners. I found freecodecamp much more helpful if you are jist beginning to code. If you already have some coding experience and knowledge tgen it is quite useful. However since I was a beginner when I started this course on edX, I didn't find it helpful and my ratings are for beginners.\",\n"},{"text":"\"Very disappointed: video lectures are useless, the only thing you see is professor's face, discussions are in the comments below the problem set , to find the answer to your question you need to unfold comments to all posts. Add this time up to 12 hours of weekly work. If you're late with the homework submission, you cannot even check the correctness of it - NO check button after the deadline. At this point you either need to skip to the active lesson or you're on your own.\",\n"},{"text":"\"Of the 5 MOOC`s I have completed, this is the best one. A good system of quizes, assignments, midterm exam and final exam, push you through a fun and engaging learning-process. The lectures are informal and professional.\",\n"},{"text":"\"Very good introduction to computer science. Instructor was knowledgeable and thorough. Course pacing was very good. Assignments were challenging while still very achievable.\",\n"},{"text":"\"Pls. Make the certification cost free ,it's too costly for all so make it as udemy offers or sometimes free for all\",\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\"I'm unable to judge on quality, however comparing my learning experience to other MOOCs I've finished (on the same topic) I must say that this one was quite boring.\",\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"},{"text":"\n"}],"otherreviewssource":"Class Central","loaded":true,"edvicerpage":"coursedetailspage"}Certification
You will get a certificate on completing this course.
University
This course is not affiliated with any university.
Price
This course is costly - Rs. 5316/-.
Difficulty
62% of the students have found this course difficult.
Content
68% of the students have liked the content of this course.
Assignments
64% of the students have liked the assignments of this course.
Teaching
84% of the students have liked how the instructor has taught this course.
Satisfaction
86% of the students are overall satisfied with this course.
Edvicer's Rewards
You can get a cashback of ₹ 200 on buying this course.
Limited Time Discount Offers
Save your money with Edvicer. Check out our premium courses with discount offers.
Save your money with Edvicer. Check out our premium courses with discount offers.
Map your Career
Not sure which job profiles this course will open for you? Check out our AI based tool to get a complete personalized career map.
Not sure which job profiles this course will open for you? Check out our AI based tool to get a complete personalized career map.
Certification
You will get a certificate on completing this course.
University
This course is not affiliated with any university.
Price
This course is costly - Rs. 5316/-.
Difficulty
62% of the students have found this course difficult.
Content
68% of the students have liked the content of this course.
Assignments
64% of the students have liked the assignments of this course.
Teaching
84% of the students have liked how the instructor has taught this course.
Satisfaction
86% of the students are overall satisfied with this course.
Edvicer's Rewards
You can get a cashback of ₹ 200 on buying this course.
This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems. Some of the people taking the two courses will use them as a stepping stone to more advanced computer science courses, but for many it will be their first and last computer science courses. This run features lecture videos, lecture exercises, and problem sets using Python 3.5. Even if you previously took the course with Python 2.7, you will be able to easily transition to Python 3.5 in future courses, or enroll now to refresh your learning. Since these courses may be the only formal computer science courses many of the students take, we have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics so they will have an idea of what is possible when they need to think about how to use computation to accomplish some goal later in their career. That said, they are not computation appreciation" courses. They are challenging and rigorous courses in which the students spend a lot of time and effort learning to bend the computer to their will."
A Notion of computation
The Python programming language
Some simple algorithms
Testing and debugging
An informal introduction to algorithmic complexity
Data structures
Reviews from Class Central
"> <p class="p1">This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Togeth Read More ...
"> The course is a great intro to CS and provides problems that are of an appropriate difficulty but are still challenging. The course does teach using getters and setters in Python, which is frowne Read More ...
"> I was impressed by everything: quality of videos, test questions and the interactive grading system - all far better than the average class room experience. A lot of work has been done to use the Read More ...
"> This is an excellent course although it is difficult but very satisfying to complete. The videos are sometimes are a little slow and not as engaging as other courses however the content is amazin Read More ...
"> Really good course. Recommend! It's not a programming language course. Instead, it is a very good intro course for computer science. The assignments or problem sets are really good. I can see the Read More ...
Show more reviews
How to learn Python?
You can start with a basic Python course which covers everything in Python on a basic level like Complete Python Bootcamp: Go from zero to hero in Python 3 by Udemy. This can be followed by an advanced course in the fields you are interested in like Python Data Structures by Coursera for competitive programming, Applied Data Science with Python by Coursera for Machine Learning and Data Science.
Why learn Python?
Python is one of the fastest-growing programming languages right now. It is especially used for data science and machine learning endeavors. At present, there are more than a few opportunities for Python developers. Besides, it is very easy to learn.
Is Python a good language to learn first?
Yes. It is designed with simplicity in mind. The language has a smaller learning curve and supports a pseudo-English-like syntax. Hence, getting started with Python is ideal for anyone looking to embark on the programming journey.
Where can I learn Python?
There are so many places to learn Python. Popular choices include YouTube, Coursera, Udemy, and Pluralsight. You can get all the courses from these providers and more here on Edvicer. There are several great novice Python courses available that will help you build an ample understanding of the language and starting with the same. Also, there is no shortage of advanced Python courses.
How long does it take to learn Python?
Any programming language has two aspects; the syntax, and the library. While the former might require only a few days to learn, the latter is a life-long learning task. However, you can get started with Python professionally after 6 to 7 months of dedicated practice.
What are the top jobs that I can get from learning Python?
The top job profiles for Python developers are Analytics Specialist with an average salary of INR 15 LPA, Analytics Manager with an average salary of INR 19 LPA, and Machine Learning Engineer with an average salary of INR 10.38 LPA. Get your career map for your skills here.
What should I learn; Python or JavaScript?
Learning to choose among Python and JavaScript depends on the purpose you're learning them for. If you want to involve in data science and machine learning then Python is the ideal pick while JS is the go-to option when looking forward to web development. If you wish to simply learn one of them in order to get started with programming then Python might be the best bet. This is because it is beginner-friendly. JavaScript is not an easy programming language. Nonetheless, learning both gives better career advantages.
Can I learn Python without a programming background?
Yes, you can learn Python even without a programming background. However, it is surely a good thing if you first learn the basic programming terminology.
How long does it take to learn Django and Python?
Learning Python and Django are a never-ending process. However, to reach a level of being able to work with both Python and Django, at least 6 months are required.
Can I learn Python on my own?
Yes, definitely. You need to simply learn new Python concepts and then practice them to know better. Going through YouTube video lessons and the best Python tutorials might also help while self-learning Python.
What can I learn after learning Python?
After learning Python, the top skills you can learn to open highest number of job profiles for you are MySql, Data Analytics, and Web Analytics. The top skills that can get you jobs with highest salaries are Spring Boot,SAP, and Spring
Write your review of Introduction to Computer Science and Programming Using Python
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |