Writing, Running, and Fixing Code in C

  • 4.3
Approx. 20 hours to complete

Course Summary

Learn the fundamentals of writing, running, and fixing code with this course. Discover best practices and techniques for developing clean, efficient code that is easy to maintain.

Key Learning Points

  • Understand the importance of writing clean code
  • Learn techniques for debugging and fixing errors in your code
  • Develop skills for running and maintaining your code in a production environment

Job Positions & Salaries of people who have taken this course might have

    • USA: $75,000 - $125,000
    • India: INR 5 - 10 lakhs
    • Spain: €30,000 - €50,000
    • USA: $75,000 - $125,000
    • India: INR 5 - 10 lakhs
    • Spain: €30,000 - €50,000

    • USA: $50,000 - $90,000
    • India: INR 3 - 7 lakhs
    • Spain: €20,000 - €35,000
    • USA: $75,000 - $125,000
    • India: INR 5 - 10 lakhs
    • Spain: €30,000 - €50,000

    • USA: $50,000 - $90,000
    • India: INR 3 - 7 lakhs
    • Spain: €20,000 - €35,000

    • USA: $65,000 - $100,000
    • India: INR 4 - 8 lakhs
    • Spain: €25,000 - €45,000

Related Topics for further study


Learning Outcomes

  • Develop a strong understanding of the fundamentals of coding
  • Gain practical skills for writing, running, and maintaining code
  • Learn techniques for debugging and optimizing code

Prerequisites or good to have knowledge before taking this course

  • Basic understanding of programming concepts
  • Access to a computer with a code editor

Course Difficulty Level

Beginner/Intermediate

Course Format

  • Online
  • Self-paced
  • Video lectures
  • Hands-on exercises

Similar Courses

  • Introduction to Programming
  • Programming Foundations with JavaScript, HTML and CSS

Notable People in This Field

  • Martin Fowler
  • Robert C. Martin

Related Books

Description

Building on the course Programming Fundamentals, this course will teach you how to write code by first planning what your program should do—an important approach for novice and professional programmers. You will learn how to compile and run your program, and then how to test and debug it. This course builds on the Seven Steps you have already learned and provides a framework for systematically testing for problems and fixing them, so you can find and fix problems efficiently.

Outline

  • Writing Code
  • Introduction to Writing Code
  • Intersection of Two Rectangles
  • Translating the Intersection Algorithm to Code
  • Introduction to the Programming Environment
  • Editing Files with Emacs
  • More about Git
  • Planning
  • Revisiting Step 1
  • Revisiting Step 2
  • Step 3: Generalizing Values
  • Step 3: Repetitions
  • Step 3: Conditional Behavior
  • Revisiting Step 4
  • Translation to Code
  • Translating Algorithm Components
  • Completed Rectangle Intersection Code
  • Top-down Design and Composability
  • Stars Example
  • Introduction to the Programming Environment
  • Instructions for Learners Upgrading from a Previous Course Version
  • Solutions to a Few Common Problems
  • UNIX basics
  • More UNIX Commands
  • Emacs
  • Git
  • [Optional Reference] Help me fix...
  • Next Steps
  • Steps 1–4 Review
  • Step 5 Concepts
  • Compiling and Running
  • Now We Need to Compile
  • "Hello World"
  • Planning isPrime
  • Generalizing isPrime
  • Translating isPrime to Code
  • Comparing Output with diff
  • Build Tool: make
  • Compiling with a Makefile
  • Compiling Overview
  • Compilation Process
  • Preprocessing
  • Getting Help: man Pages
  • More about Macros and Header Files
  • The Actual Compiler
  • Compiler Errors
  • Assembling
  • Linking
  • Make
  • Fancier make Options
  • Running Your Program
  • valgrind
  • Compiler Options
  • Compiling
  • Compilation Process
  • Make and Valgrind
  • Prototype: Assignment 06 Practice Quiz
  • Testing and debugging
  • Testing Means Finding Bugs
  • Test-driven Development
  • Code Review
  • Finding Problems with Valgrind
  • Gathering Information with gdb
  • Advice from a Duke Software Engineering Student: Don't Give Up!
  • Black Box Testing
  • Practical Tips for Designing Test Cases
  • White Box Testing
  • Generating Test Cases
  • Asserts
  • Code Review
  • Step 7: Debugging
  • The Scientific Method
  • Accept or Reject Your Hypothesis?
  • Intro to gdb
  • Getting Started with gdb
  • Investigating the State of Your Program
  • Controlling Execution
  • Watchpoints
  • Signals
  • Testing
  • Debugging
  • gdb
  • Project
  • Introduction to the Poker Project
  • Poker Project Roadmap
  • Rules of Poker

Summary of User Reviews

This course on writing, running, and fixing code has received positive reviews from users. Many users appreciated the practical approach of the course that helped them improve their coding skills.

Key Aspect Users Liked About This Course

Practical approach

Pros from User Reviews

  • The course offers practical examples and exercises that help users improve their coding skills.
  • The instructors are knowledgeable and experienced in the field of coding.
  • The course is suitable for beginners as well as experienced programmers.

Cons from User Reviews

  • Some users found the course content to be too basic.
  • The pace of the course may be too slow for some users.
  • The course does not cover advanced topics in coding.
English
Available now
Approx. 20 hours to complete
Andrew D. Hilton, Genevieve M. Lipp, Anne Bracy
Duke University
Coursera

Instructor

Andrew D. Hilton

  • 4.3 Raiting
Share
Saved Course list
Cancel
Get Course Update
Computer Courses