Entry Level C Programming Career Path Courses:

Learning to program is both fun and easy by taking this brand new and exciting Introduction to Programming for Non-Programmers course! Not only will you learn the foundations of how to program, but you’ll also gain a solid foundation in the world’s most popular computer language: JavaScript.  Without having to install any special software, and using only your web browser and your text editor, you’ll journey into the exacting world of programming. Using an easy to learn training style, you’ll learn about the JavaScript language, functions, variables, making decisions, looping, and more. At the end of the course, you’ll be in a great position to take other introductory programming language course.

View all course details
Video Title
Length
01: Introduction to Programming
16 min
02: Introduction to JavaScript
15 min
Quiz: Introduction to Programming and JavaScript
04: Functions Part 2
17 min
Quiz: Functions
05: Variables
24 min
Quiz: Variables
06: Making Decisions
22 min
Quiz: Making Decisions
07: Repeating Steps
24 min
Quiz: Repeating Steps
08: Course Summary
20 min
09: Capstone Exercise
15 min
Course Survey
View all course details

Module 00: Course Introduction

 

Module 01: Introduction to Programming

  • What is a computer language?
  • Why should you learn a computer language?
  • What computer language should you learn first?
  • Demo: Let's Make our First Statement in JavaScript!
  • Lab Exercise: hello.html

Module 02: Introduction to JavaScript 

  • JavaScript Advantages
  • Web Browser and JavaScript
  • .html File Extension
  • Editing hello.html
  • // and /* … */
  • Demo: Hello World
  • Lab Exercise: Hello World

Module 03: Functions Part 1  

  • About Functions
  • alert() w/o input parameter
  • Semicolon
  • alert() w/Input parameter
  • Strings

Module 04: Functions Part 2 

  • Defining Functions without inputs
  • Defining Functions with inputs
  • Returning values from Functions
  • Demo: Using the Alert Function
  • Lab Exercise: Using the Alert Function

Module 05: Variables 

  • JavaScript Variables
  • var keyword
  • String variables
  • Number variables
  • Operators: +, -, *, /
  • Confirm Function
  • true, false
  • prompt() Function
  • Demo: Using Variables
  • Lab Exercise: Using Variables

Module 06: Making Decisions 

  • if statement
  • if else statement
  • confirm() with if statement
  • confirm() with if-else statement
  • Compare Operators: ==, <. >, <=, >=
  • if-else-if…
  • Demo: Making Decisions
  • Lab Exercise: Making Decisions

Module 07: Repeating Steps 

  • Repeating fixed number of times
  • Repeating variable number of times
  • while statement
  • while statement with prompt()
  • Checking for null
  • Demo: Repeating Steps
  • Lab Exercise: Repeating Steps 

Module 08: Course Summary

  • Put All Skills Together To Write a Javascript App
  • Review the key concepts
  • Write a temperature conversion script!

 

View all course details

The only prerequisite is a basic familiarity with computers, along with an eagerness to learn programming. You do not need any programming experience.

View all course details

This course provides a fundamental understanding of the functions within any modern operating system. Most users of computers, like Windows 10 or Redhat V8, only deal with the GUI (graphical user interface). This course explores the functions used by those GUIs and provides an understanding of what is really happening. Used either stand-alone to gain a basic understanding of operating system concepts or with a companion textbook, Modern Operating Systems by Andrew S. Tanenbaum, while viewing the course or as a resource for later reference, this course provides a solid foundation that would enhance understanding for other courses, such as USB 2.0 Architecture Part 1, Oracle 12c Real Application Clusters Part 2: Performance Tuning, Administration and Backup, PCI Express (PCIe) Overview, Cloud Computing Foundation, and any programming course.  This course is a pre-requisite for the Linux V7 Essentials course.

View all course details
Video Title
Length
01: Introduction to Operating Systems
25 min
02: Operating Systems and Hardware
25 min
03: Operating System Concepts
26 min
04: Operating System Structure
22 min
05: Processes and Threads
24 min
06: Interprocess Communication
22 min
08: Deadlocks
23 min
09: Memory Management
28 min
10: Input/Output
27 min
11: Files Systems
25 min
12: Multimedia Operating Systems
25 min
13: Multiple Processor Systems
27 min
14: Operating System Security
25 min
15: Examples of Operating System Architectures
24 min
16: Course Summary
6 min
Course Survey
View all course details

Module 00: Course Introduction - Fundamentals of Operating Systems

 

Module 01:  Introduction to Operating Systems

  • What is an operating system?
  • History of Operating Systems
  • Types of Operating Systems

Module 02: Operating Systems and Hardware

  • Operating Systems Concepts
  • Processor and Processor Features
  • Processor Pipeline and Execution
  • Operating Systems and Processors
  • Memory Overview
  • I/O Devices Overview
  • Operating Systems and Hardware Quiz

Module 03: Operating System Concepts

  • Types of Operating Systems
  • Services Provided by Operating Systems
  • Invoking Operating System Services
  • Operating System Concepts Quiz

Module 04: Operating System Structure

  • Monolithic Systems
  • Layered Systems
  • Virtual Machines
  • Other Structures 
  • Operating System Structure Quiz

Module 05: Processes and Threads

  • The Process Model
  • The Thread Model
  • Implementation Techniques
  • Trade-offs 
  • Processes and Threads Quiz

Module 06:  Interprocess Communication 

  • Types of Interprocess Communication
  • Operating System Implementations
  • Add-on Implementations
  • Interprocess Communication Quiz

Module 07:  Scheduling

  • Introduction to Operating System Scheduling
  • Types of Schedulers
  • Policy Versus Mechanism
  • Thread Scheduling
  • Scheduling Quiz

Module 08:  Deadlocks

  • What are deadlocks?
  • Detection and Recovery
  • Avoidance
  • Prevention
  • Other Issues 
  • Deadlocks Quiz

Module 09:  Memory Management

  • Basics of Memory Management
  • Swapping
  • Paging for Memory Management
  • Paging for Virtual Memory
  • Implementation Issues 
  • Memory Management Quiz

Module 10:  Input/Output

  • Principles of I/O Hardware
  • Principles of I/O Software
  • I/O Software Layers
  • Types of I/O Devices
  • Power Management
  • Input/Output Quiz

Module 11:  Files Systems

  • File Systems Basics 
  • Files
  • Directories
  • Implementation
  • Examples 
  • File Systems Quiz

Module 12:  Multimedia Operating Systems

  • Introduction to Multimedia Operating Systems
  • Multimedia Files
  • Multimedia Process Scheduling
  • Multimedia File Systems
  • Caching
  • Disk Scheduling
  • Multimedia Operating Systems Quiz

Module 13:  Multiple Processor Systems

  • Types of Multiple Processors
  • Multiple Processor Hardware  
  • Multiple Processor Operating Systems
  • Multiple Processor Scheduling
  • Multiple Computers
  • Multiple Processor Systems Quiz 

Module 14:  Operating System Security

  • The Security Environment
  • Basics of Cryptography
  • User Authentication 
  • Security Attacks 
  • Protection Mechanisms
  • Security Quiz

Module 15: Examples of Operating System Architectures

  • Unix and Linux
  • Windows 
  • Others
  • Operating System Architectures Quiz

Module 16: Course Summary

View all course details

Course attendees should have a general understanding of computer use, including starting and using applications, creating and using files, and a basic exposure to using computers connected to some form of network. Some knowledge of programming, computer hardware and application design will be helpful but is not required.  If you do not have this experience, we recommend the following GogoTraining course, C Programming Bootcamp Part 1.

View all course details

This C Programming Bootcamp Part 1 online course, part 1 of a two part series will introduce you to the C programming language.  You will start with the layout of a C program and venture into control statements, loops, and functions. When you complete this course, you will have the skills to be an effective and productive C Programmer. 

View all course details
Video Title
Length
01: What is C?
25 min
Quiz: What is C?
02: A Simple C Program
20 min
Quiz: A Simple C Program
03: A Few More Basics
25 min
Quiz: A Few More Basics
Quiz: Variables
05: DataTypes
15 min
Quiz: DataTypes
06: Arithmetic Operations Part 1
22 min
Quiz: Arithmetic Operations Part 1
07: Arithmetic Operations Part 2
21 min
Quiz: Arithmetic Operations Part 2
08: Lab Exercise Solution: Arithmetic Operations
10 min
09: If Statements Part 1
23 min
Quiz: If Statements Part 1
10: If Statements Part 2
32 min
Quiz: If Statements Part 2
11: Lab Exercise Solution: If Statements
9 min
12: Conditional Expressions and Macros
25 min
Quiz: Conditional Expressions and Macros
13: Switch Statements
23 min
Quiz: Switch Statements
14: Loops
26 min
Quiz: Loops
15: Lab Exercise Solution: Loops
7 min
16: Functions
29 min
Quiz: Functions
17: Lab Exercise Solution: Functions
20 min
Course Survey
View all course details

Module 00: Course Introduction - C Programming Bootcamp Part 1 Online Course

 

Module 01: What is C?

  • History of C
  • Purpose of the Language
  • Basic Features of C

Module 02: A Simple C Program

  • Layout
  • Declarations
  • Body
  • Demo: A Simple C Program

Module 03: A Few More Basics

  • A Quick Look at printf
  • Demo: printf

Module 04: Variables 

  • Characters
  • Integers
  • Floating Point Numbers
  • Naming Variables
  • Variables Quiz

Module 05: DataTypes

  • Basic DataTypes
  • Constants
  • Enumeration
  • DataTypes Quiz

Module 06: Arithmetic Operations Part 1

  • Addition and Subtraction
  • Multiplication and Division
  • Modulus
  • Integer vs. Floating Point Arithmetic
  • Precedence
  • Assignment Operators

Module 07: Arithmetic Operations Part 2

  • Increment Operators
  • Decrement Operators
  • Lab Exercise: Arithmetic Operations

Module 08: Lab Exercise Solution: Arithmetic Operations

 

Module 09: If Statements Part 1

  • if and if-else Statements
  • Relational, Logical and Equality Operators
  • The ! Operator
  • Value of an Expression

Module 10: If Statements Part 2

  • Hazards
  • Using getchar and Checking the Results
  • Demo: getchar
  • Lab Exercise: if Statements

Module 11: Lab Exercise Solution: If Statements

 

Module 12: Conditional Expressions and Macros

  • Conditional Expressions
  • Lab Exercise: Conditional Expressions
  • Lab Exercise Solution: Conditional Expressions
  • Macros

Module 13: Switch Statements

  • Switch Statements
  • Lab Exercise: Switch Statements
  • Lab Exercise Solution: Switch Statements

Module 14: Loops

  • For Loops
  • While Loops
  • Do-While Loops
  • Lab Exercise: Loops

Module 15: Lab Exercise Solution: Loops

 

Module 16: Functions

  • Declaring Functions
  • Returning Values
  • Variables and Scope
  • Understanding the Stack
  • Lab Exercise: Functions

Module 17: Lab Exercise Solution: Functions

View all course details

Students should have experience with a programming language or have taken GogoTraining's Introduction to Programming and Coding for Everyone with JavaScript.  While the syntax of the C language is covered thoroughly in this course, there is an assumption of knowledge and skill with the operating system you will be utilizing, and an underlying knowledge of programming basics.

View all course details

This C Programming Bootcamp Part 2 online course, part 2 of a two part series, will introduce you to the C programming language.  You will start basic I/O and move into more complex data types such as arrays, structures, and pointers using solid programming techniques.  When you complete this course, you will have the skills to be an effective and productive C Programmer. 

View all course details
Video Title
Length
01: Introduction to I/O
13 min
02: Basic Output
16 min
03: Basic Input
32 min
04: Things to Watch Out For in I/O
18 min
05: A Look at Pointers
29 min
06: Using Pointers
18 min
07: Arrays
33 min
08: Advanced Arrays
25 min
09: Structures
35 min
10: Structure Pointers
18 min
11: Arrays of Structures
22 min
12: Advanced Structures
29 min
13: Lab Exercise: Advanced Structures
3 min
15: Character Strings
28 min
16: Multidimensional Arrays
29 min
17: Variables, Types and Scope
16 min
18: More on Variables, Types and Scope
25 min
19: Lab Exercise Solution: More on Variables, Types and Scope
17 min
Course Survey
View all course details

Module 00: Course Introduction - C Programming Bootcamp Part 2 Online Course

Module 01: Introduction to I/O

  • Standard in/out
  • Redirection
  • Demo: Redirection

Module 02: Basic Output

  • Controlling the Output with printf
  • Format Codes
  • Lab Exercise: printf
  • Lab Exercise Solution: printf

Module 03: Basic Input

  • Using scanf
  • & Operator
  • Understanding Memory
  • Demo: scanf

Module 04: Things to Watch Out For in I/O

  • I/O Hazards
  • Lab Exercise: scanf
  • Lab Exercise Solution: scanf
  • Challenge Yourself: I/O Independent Exercise

Module 05: A Look at Pointers

  • Understanding Pointers
  • Declaring and Dereferencing
  • Pointers and Functions

Module 06: Using Pointers

  • Legal Pointer Operations
  • Hazards
  • Lab Exercise: Pointers
  • Lab Exercise Solution: Pointers

Module 07: Arrays

  • Declaring and Initializing Arrays
  • Utilizing Arrays
  • Arrays as a Function Parameter

Module 08: Advanced Arrays

  • Using Pointers to Arrays
  • Lab Exercise: Arrays
  • Lab Exercise Solution: Arrays

Module 09: Structures

  • Declaring Structures
  • Initializing Structures
  • Structures as Parameters
  • Lab Exercise: Structures
  • Lab Exercise Solution: Structures

Module 10: Structure Pointers

  • Pointers to Structures
  • Structure Pointer Parameters
  • -> Operator

Module 11: Arrays of Structures 

  • Introduction to Arrays of Structures
  • Initializing Structure Arrays
  • Pointers to Arrays of Structures
  • Hazards
  • Lab Exercise: Array of Structures
  • Lab Exercise Solution: Array of Structures

Module 12: Advanced Structures

  • Structures Members
  • Structures in a Structure
  • Math Library

Module 13: Lab Exercise: Advanced Structures

  • Lab Exercise: Math and Structures
  • Lab Exercise Solutions: Math and Structures

Module 14: Character Arrays 

  • Character Arrays
  • Initializing Character Arrays
  • Printing Character Arrays

Module 15: Character Strings

  • Character Strings
  • String Constants
  • Lab Exercise: Character Strings
  • Lab Exercise Solution: Character Strings

Module 16: Multidimensional Arrays

  • Declaration and Initialization
  • Utilizing Multidimensional Arrays
  • Pointers and the Multidimensional Array
  • Lab Exercise: Matrix
  • Lab Exercise Solution: Matrix

Module 17: Variables, Types and Scope

  • Automatic Variables
  • Static variables
  • Registers

Module 18: More on Variables, Types and Scope

  • Local and Global Scope
  • Private Scope
  • Lab Exercise: Variables, Types and Scope

Module 19: Lab Exercise Solution: More on Variables, Types and Scope

View all course details

Students should have experience with a programming language or have taken GogoTraining's Introduction to Programming for Non-Programmers or Introduction to Programming and Coding for Everyone with JavaScript, and C Programming Bootcamp Part 1.  While the syntax of the C language is covered thoroughly in this course, there is an assumption of knowledge and skill with the operating system you will be utilizing, and an underlying knowledge of programming basics.

View all course details

Get Started Learning

Entry Level C Programming Today!

Norman McEntire

Norman McEntire founded Servin Corporation in 1995 to focus on “Software Technology Training for Software Technology Professionals(tm). Since that time, Norman has used his unique  training style to train thousands of software developers in nearly every major technology company, including Avaya, Broadcom, Cubic, Dell, Fidelity, HP, IBM, Intel, Intuit, Motorola, NCR, Qualcomm, Wells Fargo, and many more. With degrees in Computer Engineering, Norman has designed and built everything from low-level chips, boards, and complete computer systems, to software at all levels, including device drivers, systems software, and end-user software for the desktop, web, and mobile.

Tim R. Norton

Dr. Norton has worked with a variety of computer systems of all sizes and many operating systems, including MVS, Windows and Unix/Linux. He has experience with applications design, support, and systems programming. He has done Technology Planning, Capacity Planning and Capacity Modeling for over 20 years at a variety of large companies. He co-foundered and was the Chief Scientist of a start-up company to provide web based capacity planning services for web applications. He has been a full-time Professor at a local university and continues to teach at universities in Colorado Springs. He is active in CMG (Computer Measurement Group), the leading computer performance analysis organization, and has been the Subject Area Chair for every year since 2000. He has participated in Colorado Governor Owens' Technology Summit. He has served on the Academic Advisory Boards for Computer Science at Colorado Technical University and at DeVry University of Colorado. He founded Simalytic Solutions, LLC in 1995 to provide capacity planning and application modeling services using the Simalytic® Modeling Technique and the Response Time Pipe™ that he developed as a result of his doctorial research.

Donna Martin

I am a long time programmer.  I first learned C Programming when I was at the University in 1981.  My professional work has focused on computer graphics/user interfaces, and C is the language I have worked with for almost 3 decades (makes me feel younger than saying 30 years!). 

I have worked in the training field since the 90s, and have taught programming at a University Engineering College as well as provided many training seminars in programming, graphics, and UNIX/Linux for large training companies. The majority of my work has involved UNIX/Linux systems. In addition to being a C Programmer I am a Certified Java 8 Programmer, I program in C#, and Tcl/Tk, and have a working knowledge of many other languages.

Transcript

This course comes with a Transcript that tracks your progress. You can use your transcript to view and monitor your progress and when you complete the course, you can print or email the transcript, or print a course completion certificate.

Letter of Course Attendance

When you complete this course you will receive a Letter of Course Attendance Download Link so you can print and/or email your Letter of Course Attendance.

Sample of Letter of Course Attendance

QA Forum

When you purchase this course you will be able to use the QA Forum and have direct access to the instructor.