How to Code: Complex Data

Provided by:
9/10 stars
based on  8 reviews
Provided by:
Cost FREE , Add a Verified Certificate for $125
Start Date In Session

Course Details

Cost

FREE,
Add a Verified Certificate for $125

Upcoming Schedule

  • In Session

Course Provider

edX online courses
Harvard University, the Massachusetts Institute of Technology, and the University of California, Berkeley, are just some of the schools that you have at your fingertips with edX. Through massive open online courses (MOOCs) from the world's best universities, you can develop your knowledge in literature, math, history, food and nutrition, and more. These online classes are taught by highly-regarded experts in the field. If you take a class on computer science through Harvard, you may be tau...
Harvard University, the Massachusetts Institute of Technology, and the University of California, Berkeley, are just some of the schools that you have at your fingertips with edX. Through massive open online courses (MOOCs) from the world's best universities, you can develop your knowledge in literature, math, history, food and nutrition, and more. These online classes are taught by highly-regarded experts in the field. If you take a class on computer science through Harvard, you may be taught by David J. Malan, a senior lecturer on computer science at Harvard University for the School of Engineering and Applied Sciences. But there's not just one professor - you have access to the entire teaching staff, allowing you to receive feedback on assignments straight from the experts. Pursue a Verified Certificate to document your achievements and use your coursework for job and school applications, promotions, and more. EdX also works with top universities to conduct research, allowing them to learn more about learning. Using their findings, edX is able to provide students with the best and most effective courses, constantly enhancing the student experience.

Provider Subject Specialization
Sciences & Technology
Business & Management
22464 reviews

Course Description

As your program requirements get more complex, you will find that simple additions to the design method make it easy to write well-structured and well-tested code that is easy to maintain.

By learning how to capture common data and control structures using abstraction, your programs will get shorter and better tested.

Building on the core methods from How to Code: Simple Data, this programming course, part of the Software Development MicroMasters program, quickly expands to cover more complex programs on more complex data. Towards the end of the course, you will design programs that even experienced developers would find challenging.

You will also learn how to design search programs. You will design a program to solve Sudoku puzzles, and will be able to design many other puzzle solvers as well.

Learners who enroll in the Verified track will receive staff grading for the course project and increased interaction with the in...

As your program requirements get more complex, you will find that simple additions to the design method make it easy to write well-structured and well-tested code that is easy to maintain.

By learning how to capture common data and control structures using abstraction, your programs will get shorter and better tested.

Building on the core methods from How to Code: Simple Data, this programming course, part of the Software Development MicroMasters program, quickly expands to cover more complex programs on more complex data. Towards the end of the course, you will design programs that even experienced developers would find challenging.

You will also learn how to design search programs. You will design a program to solve Sudoku puzzles, and will be able to design many other puzzle solvers as well.

Learners who enroll in the Verified track will receive staff grading for the course project and increased interaction with the instructor and staff.

 


Learner Testimonial

"It's a great course and maybe one of the most important topics to master if you're a programmer (any level). This course will teach you how to design better, cleaner and faster programs." 
- Previous Student

How to Code: Complex Data course image
Reviews 9/10 stars
8 Reviews for How to Code: Complex Data

Ratings details

  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars

Rankings are based on a provider's overall CourseTalk score, which takes into account both average rating and number of ratings. Stars round to the nearest half.

Sort By
Anonymity Preferred profile image
Anonymity Preferred profile image

Anonymity Preferred

10/10 starsCompleted
1 year, 2 months ago
I continued this course after finishing How to Code: Simple Data and the same, high standard for the prerequisite is being kept in this course. The previous course filled a large knowledge gap after coding for over a year (self taught), this course develops on those basics and touches on many of the programming paradigm that I have been using but haven't given much thoughts about. The first half of the course should be very easy for those who have coding experience and have done the How to Code: Simple Data (including the practice problems). The second half touches on more "complex" algorithms that are commonly used—but because of how well organised and structured the course is, everything just basically falls into place and seemingly complex algorithms can all of a sudden be built with Lego-block like templates/ideas. While I can see the merits of Racket, I must admit that I'm still not entirely comfortable with the languag... I continued this course after finishing How to Code: Simple Data and the same, high standard for the prerequisite is being kept in this course. The previous course filled a large knowledge gap after coding for over a year (self taught), this course develops on those basics and touches on many of the programming paradigm that I have been using but haven't given much thoughts about. The first half of the course should be very easy for those who have coding experience and have done the How to Code: Simple Data (including the practice problems). The second half touches on more "complex" algorithms that are commonly used—but because of how well organised and structured the course is, everything just basically falls into place and seemingly complex algorithms can all of a sudden be built with Lego-block like templates/ideas. While I can see the merits of Racket, I must admit that I'm still not entirely comfortable with the language by the end of the course—but that could be a side effect of going through both course in a very short period of time. In any case, the course is highly recommend to people who have had some coding experience and never considered building complex algorithms from basic building blocks.
Was this review helpful? Yes1
 Flag
Tyler Miller profile image
Tyler Miller profile image
8/10 starsCompleted
  • 8 reviews
  • 8 completed
7 months, 3 weeks ago
Excellent course. The instructor speaks well and the content holds students' attention. The course would really benefit from automatic marking rather than self-assessment.
Was this review helpful? Yes0
 Flag
Candaş Ünal profile image
Candaş Ünal profile image
10/10 starsCompleted
  • 2 reviews
  • 2 completed
1 year, 4 months ago
This course really helped me with how to handle complex data structures and their functions. It builds you up by going step by step through the course, therefore by the end of the course it is quite a surprise that you can do what you learned.
Was this review helpful? Yes0
 Flag
student profile image
student profile image

student

10/10 starsCompleted
1 year, 4 months ago
one of the best MOOCs I have ever had so far. the content is well organized and the course curve increase slowly that you take a lot of information without feeling overwhelmed. I like how prof. Gregor explains the topics and the design recipes helps me greatly. I totally recommend this course.
Was this review helpful? Yes0
 Flag
Howard Ageson profile image
Howard Ageson profile image
10/10 starsCompleted
  • 1 review
  • 1 completed
1 year, 6 months ago
The material is presented in a logical progression with excellent pacing and just enough repetition so that when a more difficult assignment came up I was surprised to find that I had the tools! This course teaches a method, that if applied, simplifies the task of software design and therefore development. The method takes all the guesswork and artistry out of it (which is a good thing). This brings an engineering discipline and mindset to software development. Excellent course!
Was this review helpful? Yes1
 Flag
Anonymous Anonymous profile image
Anonymous Anonymous profile image

Anonymous Anonymous

10/10 starsCompleted
1 year, 11 months ago
The design of this course is just amazing. They have clearly put a ton of research into it. They have literally trained my brain to think about problems systematically and the reason why this is important becomes clear by the end of this course. I can't wait to start the next one. I can't express how grateful I am to the entire How to Code team specially to Prof. Gregor and Erika, who (acc to what I know) is responsible for starting this course.
Was this review helpful? Yes0
 Flag
Nick Flaotw profile image
Nick Flaotw profile image

Nick Flaotw

10/10 starsCompleted
1 year, 11 months ago
This course is great I learned so much about coding. I just started going back to school again and with the knowledge, I gained from this course and simple data. I feel I have a huge leg up. I feel things would be much much harder for me at my Univerity if I hadn't taken the time to with courses first. looking forward to Data Abstraction.
Was this review helpful? Yes0
 Flag
Andres Ramirez profile image
Andres Ramirez profile image

Andres Ramirez

10/10 starsCompleted
2 years, 1 month ago
The course is amazing. I learnt a lot about encapsulation, abstraction and some other useful techniques to write more efficient code and easy to change. All this without mention the introductory lesson about uninformed search to solve sudokus and some other puzzles.
Was this review helpful? Yes0
 Flag

Rating Details


  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars

Rankings are based on a provider's overall CourseTalk score, which takes into account both average rating and number of ratings. Stars round to the nearest half.