Free Online Course on Interacting with the System and Managing Memory

Free Online Course on Interacting with the System and Managing Memory
Certificate fee scholarship is available for this course.

Institution: Duke University
Start Date: April 16, 2018

The Duke University would like to announce a free online course entitled as “Interacting with the System and Managing Memory”. This course is for learners who have an interest in learning how to program or for people with no programming experience.

In this course you will learn more sophisticated uses for pointers, such as strings and multidimensional arrays, as well as how to write programs that read and write files and take input from the user. The course will start on April 16, 2018.

Course Summary

  • Duration: 4 weeks
  • Commitment: 4 weeks of study, 6–8 hours/week
  • Subject: Computer Science
  • Institution: Duke University
  • Languages: English
  • Price: Free
  • Session: Starts on April 16, 2018
  • Requirement:  None
  • Certificate Available: Yes

Who Developed the Course

Duke University has about 13,000 undergraduate and graduate students and a world-class faculty helping to expand the frontiers of knowledge.

Target Audience

This course is for learners who have an interest in learning how to program, for people with no programming experience or for people with some experience who would like to gain solid fundamentals and a deeper understanding of how to program effectively.

Where Could This Lead You

After completing this course, you can apply for jobs in the given fields:

  • System Administrator
  • Active Directory Administrator

Get Extra Benefits

If you pay $59 USD for this course,

  • You will have access to all of the features and content you need to earn a Course Certificate.
  • If you complete the course successfully, your electronic Certificate will be added to your Accomplishments page – from there, you can print your Certificate or add it to your LinkedIn profile.
  • Note that the Course Certificate does not represent official academic credit from the partner institution offering the course.

How to Join This Course

You can register yourself here.

Course Format

  •  WEEK 1
    Module 1: Interacting with the user and system-So far, our programs have had a rather limited interaction with the user or rest of the system, printing some results to standard output (typically to the terminal).
  • WEEK 2
    Module 2: Dynamic allocation- So far, most of the memory we have used has been located on the stack. Dynamic memory allocation gives a programmer much more flexibility, in that it allows you to request a specific amount memory to be allocated on the heap, so that it will not disappear with the stack frame of the calling function.
  • WEEK 3
    Module 3: Programming in the Large-So far, focused exclusively on programming in the small—designing the algorithm for a small-sized task, implementing it, testing it, and debugging it. This module discusses three main differences that “real” programs exhibit. 1) They tend to be much larger than those we have written. 2) More than one person works on them, sometimes teams of hundreds to thousands. 3) Real software has a long life-span during which it must be maintained
  • WEEK 4
    Module 4: Poker Project-In this module, you will complete the Poker Project! Now that you know about dynamic memory allocation, user input, and how to program in the large, you can write the final parts of the program. You will write code to read in a file with a hand of cards and code to choose unknown cards from a shuffled deck.

Learning Outcomes

By the end of this course you will understand:

  • Dynamic memory allocation will allow your programs to perform complex tasks.

Who Will You Learn With?

  • Andrew D. Hilton: Assistant Professor at the Duke University
  • Anne Bracy: Senior Lecturer at the Duke University
  • Genevieve M. Lipp: Adjunct Professor at the Duke University


  • Importance of Course: At the end of this course you will understand powerful new programming techniques for interacting with the user and the system and dynamically allocating memory.
  • Importance of Certificate: By the Certificate of Achievement you will be able to prove your success when applying for jobs or courses. You can display it on your LinkedIn or CV.

Detailed Information

For more information about the course, you may visit the Website.

Apply Now


Comment and Discuss.

Cookies and Privacy