Latest Courses
Fundamental Data Analysis and Visualization Tools in PythonCheck course
Easy Widget Development: Code WordPress Widgets from ScratchCheck course
Python Basics for Software DevelopmentCheck course
How to Build a Java Spring Boot Web Application from ScratchCheck course
Blazor in 2020Check course
A Complete Guide to WebSocketsCheck course
React JS For Beginner Convert Any HTML Site To React JSCheck course
Visual C# with WinForms: Step by Step Projects for BeginnersCheck course
DigitalOcean Cloud Platform FundamentalsCheck course
Vue and Laravel AuthenticationCheck course
Fundamental Data Analysis and Visualization Tools in PythonCheck course
Easy Widget Development: Code WordPress Widgets from ScratchCheck course
Python Basics for Software DevelopmentCheck course
How to Build a Java Spring Boot Web Application from ScratchCheck course
Blazor in 2020Check course
Computer Science: Programming with a Purpose

Computer Science: Programming with a Purpose

Add your review
Add to wishlistAdded to wishlistRemoved from wishlist 0
Add to compare
9.5/10 (Our Score)
Product is rated as #2 in category Computer Science

The basis for education in the last millennium was “reading, writing, and arithmetic;” now it is reading, writing, and computing. Learning to program is an essential part of the education of every student, not just in the sciences and engineering, but in the arts, social sciences, and humanities, as well. Beyond direct applications, it is the first step in understanding the nature of computer science’s undeniable impact on the modern world. This course covers the first half of our book Computer Science: An Interdisciplinary Approach (the second half is covered in our Coursera course Computer Science: Algorithms, Theory, and Machines). Our intent is to teach programming to those who need or want to learn it, in a scientific context. We begin by introducing basic programming elements such as variables, conditionals, loops, arrays, and I/O. Next, we turn to functions, introducing key concepts such as recursion, modular programming, and code reuse. Then, we present a modern introduction to object–oriented programming. We use the Java programming language and teach basic skills for computational problem solving that are applicable in many modern computing environments. Proficiency in Java is a goal, but we focus on fundamental concepts in programming, not Java per se. All the features …

Instructor Details

Robert Sedgewick is the William O. Baker Professor of Computer Science at Princeton, where he was the founding chair of the Department of Computer Science. He received the Ph.D. degree from Stanford University, in 1975. Prof. Sedgewick also served on the faculty at Brown University and has held visiting research positions at Xerox PARC, Palo Alto, CA, Institute for Defense Analyses, Princeton, NJ, and INRIA, Rocquencourt, France. He is a member of the board of directors of Adobe Systems. Prof. Sedgewick's interests are in analytic combinatorics, algorithm design, the scientific analysis of algorithms, curriculum development, and innovations in the dissemination of knowledge. He has published widely in these areas and is the author of several books.

Specification: Computer Science: Programming with a Purpose

Duration 41 hours
Year 2019
Level Beginner
Certificate Yes
Quizzes Yes

35 reviews for Computer Science: Programming with a Purpose

4.4 out of 5
29
4
1
0
1
Write a review
Show all Most Helpful Highest Rating Lowest Rating
  1. Avatar

    Hussain

    A very simple down to earth explanation on how to program from a very reputable university

    Helpful(1) Unhelpful(0)You have already voted this
  2. Avatar

    Bhavik B

    Excellent course, inface the best I found on any MOOC platform for a complete beginner to Java. Loved it. Would appreciate more coding assignments though. Only week 1 & 2 have those.

    Helpful(2) Unhelpful(0)You have already voted this
  3. Avatar

    Vinod S

    Beautiful course. I am a software developer with 10+ years of experience in programming and have never realized depth of actual MATH behind all that I do. Thank you Robert Sedgewick, you are the BEST.

    Helpful(2) Unhelpful(0)You have already voted this
  4. Avatar

    Aditya h

    Great refresher for JAva.

    Helpful(1) Unhelpful(0)You have already voted this
  5. Avatar

    Preston N

    Good over all, but the quizzes can be a little annoying.

    Helpful(1) Unhelpful(0)You have already voted this
  6. Avatar

    Saleh H

    Great course with emphasizing on computational thinking.

    Helpful(1) Unhelpful(0)You have already voted this
  7. Avatar

    Sayed K

    I appreciate your work and your services. Your classes are very valuable for whom new in the world of IT is. Thank you very much dear professor!

    Helpful(1) Unhelpful(0)You have already voted this
  8. Avatar

    Shuyuan D

    Good recap course for an experienced programmer

    Helpful(0) Unhelpful(0)You have already voted this
  9. Avatar

    Gilad B

    Good course on the whole. Quizzes and assignments often assume knowledge that has not yet been introduced or made clear. Checkers for assignments often require more than is officially stated (such as no “magic numbers”, which are not mentioned anywhere in the course materials or assignment directions, and API’s that are not specified for given questions). As such, I needed an iterative process of uploading an assignment, seeing why it failed, reverse engineering what the requirements are, and then fixing and uploading again.

    Helpful(11) Unhelpful(0)You have already voted this
  10. Avatar

    Song, W

    Thank you very much, gratitude to teachers and coursera.

    Helpful(0) Unhelpful(0)You have already voted this
  11. Avatar

    Deleted A

    Awesome course. Very challenging even for experienced programmer. Prof. Sedgewick and Kevin Wayne do a great job.

    Helpful(0) Unhelpful(0)You have already voted this
  12. Avatar

    Glen F

    Excellent course, Thank you Drs Sedgwick and Wayne. That said, this is not a beginners course: the assignments are not easy, but they teach you a great deal; there is very little ‘hand holding’ and you can expect to spend a good bit of time on Wikipedia in order to understand what you are trying to do before you get to writing any code. That is when you learn what the word ‘Purpose’ means in the title many subject area are covered in the practice code assignments i.e. real world examples. Also, it is easy to get to a (frustrating) place where your programs work on everything but the auto grader(A G), and A G feedback is sparse. Be sure to look at the exercises in the online book as there are many program examples/solutions that teach you a lot of programming techniques often useful in completing the practice programming assignments.

    Helpful(4) Unhelpful(0)You have already voted this
  13. Avatar

    Yi S

    fun homework assignments that keep me motivated to write efficient code

    Helpful(0) Unhelpful(0)You have already voted this
  14. Avatar

    Julie C

    I was a total and utter programming newbie (a smidge of self taught Python, and that’s it). I cannot BELIEVE what I can do now in Java. This course takes a LOT OF PATIENCE and tons, I mean TONS of perseverance. Google and Stack Overflow will be your new best friends as you try to piece together what to do at times. But it’s amazing what you learn if you stick with it. Interesting topics, and good lectures, helpful readings, and the programs you write are really challenging and cool. I can’t wait to take the second one!

    Helpful(2) Unhelpful(0)You have already voted this
  15. Avatar

    Lompar M

    I liked this course very much. Good materials and perfect lecturers. Good structured and well explained material and interesting exercises ranging from very beginner to challenging.

    Helpful(1) Unhelpful(0)You have already voted this
  16. Avatar

    Nick P

    This course was incredibly helpful. I’ve taught myself Python over the years for data analysis purposes, but I never had a solid understanding of computer science principles like you learn in this course. Learning Java along the way was a nice bonus, and it was helpful to compare and understand differences across different languages. The projects were of an appropriate difficulty, and I would strongly recommend completing them so that you can practice what you learn.

    Helpful(0) Unhelpful(0)You have already voted this
  17. Avatar

    Xu Y

    This is one of the best courses I had ever had.

    Helpful(0) Unhelpful(0)You have already voted this
  18. Avatar

    Wei P X

    very very helpful for beginners

    Helpful(0) Unhelpful(0)You have already voted this
  19. Avatar

    nglokting

    The course is awesome. It really teaches me the basics of Java programming. Now I know what an object is. The programming assignments are very interesting and really make you think. I like them very much.

    Helpful(0) Unhelpful(0)You have already voted this
  20. Avatar

    lxl1986

    elegant.

    Helpful(0) Unhelpful(0)You have already voted this
  21. Avatar

    Meysam A

    It’s a prefect starting point for those who want to learn programming or those who wants to refresh their knowledge.

    Helpful(0) Unhelpful(0)You have already voted this
  22. Avatar

    Xiaoyu Z

    This course is much more than fantastic! Professor Robert is one of the best teachers. I am so lucky to have a chance to learn those great materials. For me, the meaning of completing this course is way beyond the course itself. I am a CS graduate more than 15 years ago, and I’ve done some computer engineering work for a while. Then I took a different path other than software engineer, because at some point my interest is on other things. What I did after software engineering are financial analysis, business analysis and data analysis. Nowadays, I am doing data analytics as my daily work. But as time passed by, I found programming is way fun than I thought before, and that’s my real passion. So I decided to come back to software engineering field. But it’s difficult, very very difficult, for companies accepting me as software engineer again. I don’t know whether taking those CS courses and refreshing my knowledge will lead to the place where I want to be. But again, that’s my interest and real passion. I just love programming. I really really want to thank Professor Robert for his fantastic courses (his other courses are also great), which built up my confidence and gave me challenges and fun!

    Helpful(0) Unhelpful(0)You have already voted this
  23. Avatar

    Petar M

    This was great course with very enjoyable delivery. The reference to the Book was very helpful if you want to learn more. I liked the heavy inclusion of intersting extercies. I want to see the more in debt next levels taking place.

    Helpful(0) Unhelpful(0)You have already voted this
  24. Avatar

    Edison A R M C

    Excelente curso, muy concreto y excelente para iniciar en java y en computer Science

    Helpful(0) Unhelpful(0)You have already voted this
  25. Avatar

    Khayrat G

    Great Lectures and carefully prepared exercises. Thank you!

    Helpful(0) Unhelpful(0)You have already voted this
  26. Avatar

    Tassianna T

    This course is excellent; It provides a robust framework to build on programming practices.

    Helpful(0) Unhelpful(0)You have already voted this
  27. Avatar

    Philippe G

    Very effective course with automated and immediate students graduation

    Helpful(0) Unhelpful(0)You have already voted this
  28. Avatar

    Nathanael Y

    This is the 2nd course of Professor Sedgwick and Wayne that I enrolled, as expected it’s well designed and organized. The programming assignments are the most valuable part from my perspective. Some of them, especially week6 to week8, can be somewhat challenging and difficult, maybe tough for beginners, but they cover quite a lot of topics that is really important. I would highly recommend this course to those who want some challenging and meaningful exercises.

    Helpful(0) Unhelpful(0)You have already voted this
  29. Avatar

    Binliu Z

    1.Easily for Java beginner like me. 2. Much of math problems, try to develop mathematical models, using the computer to address math problems is funny. 3. Creative exercises are just like interview questions, also need more assignments or projects. 4. The very helpful FAQ of assignment from that I’ve learned many more things. 5. The auto grader of assignment is very useful, including check style and test. Using reversing engineering to meet the demand and get grade 100 became one of my goals.

    Helpful(0) Unhelpful(0)You have already voted this
  30. Avatar

    Petter S

    High tempo, definitely some difficult content, but overall I’ve learned a great deal

    Helpful(0) Unhelpful(0)You have already voted this
  31. Avatar

    Petar R

    Great intro to Java concepts

    Helpful(0) Unhelpful(0)You have already voted this
  32. Avatar

    Talgat I

    Nice introduction to Java programming!

    Helpful(0) Unhelpful(0)You have already voted this
  33. Avatar

    Vasile D

    Course states “Beginner Level”. Video tutorials are indeed for beginners. Assignments have nothing in common with the word “beginner”. You must do an assignment that is 1000 times harder than what you learned from the video tutorials and the other lecture supplements. More than that you have limitations to doing the assignments (you can’t use array in this one… conditionals and loops in that one… etc) The video tutorial teaches you a basic fundamental that a tyre is round and that you put it on your car. But for you to pass the assignments you must build a runflat tyre that goes 1000 km/h for an infinite ammount of time and do that without using your arms or legs…

    Helpful(2) Unhelpful(0)You have already voted this
  34. Avatar

    Abhinav S

    An awesome and interactive course <3

    Helpful(0) Unhelpful(0)You have already voted this
  35. Avatar

    William X

    The assignments are designed very well.

    Helpful(0) Unhelpful(0)You have already voted this

    Add a review

    Your email address will not be published. Required fields are marked *

    This site uses Akismet to reduce spam. Learn how your comment data is processed.

    Computer Science: Programming with a Purpose
    Computer Science: Programming with a Purpose

    Price tracking

    Register New Account
    Reset Password
    Compare items
    • Total (0)
    Compare