subject

Get started with custom lists to organize and share courses.

Sign up

Systematic Program Design

Learn a programming method that will allow you to develop programs that are clear, well tested, and

Earn a Certificate

  • XSeries via edX and The University of British Columbia
  • $150 for 3-4 months
  • 5 hours a week of effort
0 Reviews
Rating based on 0 student reviews.

Learn More

Title
Systematic Program Design
Rating
☆☆☆☆☆ (0 Reviews)
Overview
Learn a programming method that will allow you to develop programs that are clear, well tested, and easy for others to improve.
Credential Type
Provider
Cost
$150
Effort
5 hours a week
Duration
3-4 months

XSeries Program Overview

This XSeries presents a programming method that will enable you to produce well-structured programs — programs that tell a clear story about what they do, are well tested, and are easy for others to improve. This series differs from other online programming courses by focusing on a general design method, rather than how to program in a specific language.
 
The approach is practical and hands on; most of your work in these courses will consist of you writing programs using the design method. Part 1 begins with simple programs, which many programmers could easily write without using the design method. By the end of Part 1 you will have learned the core of the design method, and will be ready to apply it to more challenging problems. In Part 2 you will learn about more elaborate forms of data and you will begin to learn how to independently expand your understanding of the design method. And in Part 3, you will apply the design method to programs that would challenge even experienced programmers.
 
The series is designed for beginners who have never programmed before. But at the same time, many experienced programmers have taken these courses, and reported that it made them better programmers. So you can take these courses as an introduction to programming, or later in your career to enhance your skills.

This is a series of 3 courses that are best taken in order. If the current start dates are inconvenient, please check back often as they are always being added. 

What You'll Learn

  • To organize data and represent information effectively
  • Techniques for focusing each part of your program on one task
  • How to use examples to flesh out  program requirements
  • Approaches for simplifying program  structure to take advantage of common patterns
  • How to combine patterns in complex code
★★★★☆ (11) 61 weeks Self paced
<p>This programming course takes a unique approach, as it focuses on learning a systematic programming method rather than a programming language. This practical approach will help you channel your creativity so that you can program well in any language. </p> <p>This course, part of the <a href="https://www.edx.org/micromasters/ubcx-software-development">Software Development MicroMasters Program</a>, presents a core design method with a focus on numbers, strings, images and lists.</p> <p>You will learn techniques to:</p> <ul> <li>Develop program requirements</li> <li>Produce programs with consistent structure that are easy to modify later</li> <li>Make your programs more reliable by building tests as an integral part of the programming process.</li> </ul> <p>This course concludes with the design of a simple interactive game.</p> <p>Learners who enroll in the Verified track will receive staff grading for the course project and increased interaction with the instructor and staff.</p> <hr /> <p><strong>Learner Testimonial </strong></p> <p><em>"I have taken and completed tens of MOOCs on programming and computer science, I have even been and I am currently a TA in some of these courses. Among them are a few that deserve without hesitation the highest rate. But if I had to choose only one at the top of them it would be these two courses on systematic program design."</em> - edX Learner</p>
☆☆☆☆☆ (0) 53 weeks
<ul> <li> <p>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.</p> <p>By learning how to capture common data and control structures using abstraction, your programs will get shorter and better tested.</p> <p>Building on the core methods from <a href="https://www.edx.org/course/how-code-simple-data-ubcx-htc1x#!">How to Code: Simple Data</a>, this programming course, part of the <a href="https://www.edx.org/micromasters/ubcx-software-development">Software Development MicroMasters program</a>, 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.</p> <p>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.</p> <p>Learners who enroll in the Verified track will receive staff grading for the course project and increased interaction with the instructor and staff.</p> <hr /> <p><strong>Learner Testimonial</strong></p> <p><em>"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." </em><br />- Previous Student</p> </li> </ul>
★★★★★ (2) 53 weeks Self paced
<p>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.</p> <p>By learning how to capture common data and control structures using abstraction, your programs will get shorter and better tested.</p> <p>Building on the core methods from <a href="https://www.edx.org/course/how-code-simple-data-ubcx-htc1x#!">How to Code: Simple Data</a>, this programming course, part of the <a href="https://www.edx.org/micromasters/ubcx-software-development">Software Development MicroMasters program</a>, 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.</p> <p>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.</p> <p>Learners who enroll in the Verified track will receive staff grading for the course project and increased interaction with the instructor and staff.</p> <hr /> <p><strong>Learner Testimonial</strong></p> <p><em>"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." </em><br /> - Previous Student</p>
0 ratings
5
0
4
0
3
0
2
0
1
0
0 reviews
@

Systematic Program Design

Receive email notifications about this credential.
Follow Systematic Program Design

Class Central

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

Sign up for free

Never stop learning Never Stop Learning!

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