C Programming
C from first programs to systems and embedded work: pointers and memory, data structures and algorithms, build tools and debugging, secure C, Linux systems programming, concurrency, networking and microcontrollers.
- Years
- 2
- Courses
- 19
- Credits
- 57
- Ready now
- 5
This program follows the structure of a two-year associate of applied science in computer programming with a systems and embedded focus, taught in C. Each course is free and earns a certificate of completion; courses marked "In development" show their planned lessons and open as they are written.
Year 1
Fall term
| Code | Course | Cr | Status |
|---|---|---|---|
| NET-101 | IT Fundamentals: Hardware, Software and Support | 3 | Ready |
| NET-103 | Linux Administration | 3 | Ready |
| CPRG-101 | C Programming I | 3 | In development |
| PYTH-110 | Developer Tools and Version Control | 3 | Ready |
Spring term
| Code | Course | Cr | Status |
|---|---|---|---|
| CPRG-102 | C Programming II: Arrays, Strings and Functions | 3 | In development |
| CPRG-110 | Pointers and Memory Management in C | 3 | In development |
| CPRG-120 | Structs, Files and Modular C | 3 | In development |
| CPRG-130 | C Build Tools and Debugging | 3 | In development |
| NET-110 | Networking Fundamentals | 3 | Ready |
Year 2
Fall term
| Code | Course | Cr | Status |
|---|---|---|---|
| CPRG-201 | Data Structures in C | 3 | In development |
| CPRG-205 | Algorithms and Performance in C | 3 | In development |
| CPRG-210 | Secure and Reliable C | 3 | In development |
| CPRG-220 | Systems Programming on Linux | 3 | In development |
| CYB-101 | Security Fundamentals | 3 | Ready |
Spring term
| Code | Course | Cr | Status |
|---|---|---|---|
| CPRG-230 | Concurrency in C | 3 | In development |
| CPRG-240 | Network Programming in C | 3 | In development |
| CPRG-250 | Embedded C and Microcontrollers | 3 | In development |
| CPRG-260 | Modern C and Interoperability | 3 | In development |
| CPRG-290 | C Programming Capstone | 3 | In development |