Introduction to Programming

The Introduction to Programming training course is designed to teach students the art of computer programming. This course targets students who have either never written a computer program, or those who learned to program long ago and are not daily programmers. The course will be taught in Python, a language which is easy to get started with, yet powerful enough that students will likely continue to use it on a regular basis.

The course begins with a brief look at the basics of computer architecture, offering students a high-level understanding of the concepts and terminology of a computer enabling them to understand what’s going on “under the hood.” The course then goes on to explain programs, algorithms, errors, debugging, and the processes necessary for a programmer to take a problem statement and turn it into working code which will solve real-world problems.

Converting problems into code will be a recurring theme throughout the course, and students will have many opportunities to write code through hands-on labs and challenges. At the end of the course, students will have the knowledge and skills necessary to write code, and if desired, enroll in our Introduction/Core programming courses (e.g., Java, JavaScript–or even Python), all of which assume knowledge of programming as a prerequisite.

An optional third day will consist primarily of additional programming exercises and challenges, one-on-one help, and additional material which will further students’ knowledge of programming.

Course Summary

Learn the basics of programming in the beginner friendly language, Python.
Students who have either never written code before, or who learned to program long ago and haven’t written code for some time now. The course is definitely NOT for developers who write code on a regular basis.
Skill Level: 
Learning Style: 

Hands-on training is customized, instructor-led training with an in-depth presentation of a technology and its concepts, featuring such topics as Java, OOAD, and Open Source.

Hands On help
2 Days
Productivity Objectives: 
  • Understand programming terminology (e.g., variables, keywords, statements, conditionals, expressions, loops, functions, algorithms, debugging, etc.)
  • Transform a problem statement into an actionable mental model
  • Write Python code to solve real-world problems
  • Understand/debug Python programs at a beginner level
  • Transition to other programming languages/courses

What You'll Learn

In the Introduction to Programming training course you’ll learn:

  • The basics of computer architecture

    • bits, bytes, binary

    • RAM, CPU, hard drives

  • What is computer programming?

    • What are programs, algorithms, pseudocode

    • What is debugging?

    • Interpreted languages (e.g., Python/Java/bash)

    • …vs. compiled languages

    • Source code vs. object code

    • Syntax vs. semantic vs. run-time errors

  • Introducing Python

    • Hands-on with the Python interpreter

    • The print() function

    • Writing our first program

  • The art of programming

    • Mental models

    • Handling errors

    • Converting a problem into code

    • Debugging strategies

  • Data, variables, and expressions

    • Values and simple data types (int, float, string)

    • Variables

    • Variables names and keywords

    • Evaluating expressions

    • Operators and Operands

    • Boolean expressions/logical operators

    • Type conversion functions

    • String operations

    • Composition

  • Statements

    • Conditionals

    • Chained conditionals

    • Nested conditionals

  • Iteration

    • The for statement

    • The range() operator

    • The while statement

    • The break/continue statements

    • The else clause

    • Middle-test loops (“one and a half loops”)

    • Post-test loops

    • Nested loops

  • Advanced data types/operation

    • Lists (vs. arrays)

    • Slicing

    • Tuples

    • Dictionaries

  • Functions

    • Arguments

    • Scope

    • The return statement

    • Void functions and None

    • Boolean functions

    • Functions can call other functions

  • Modules

    • What are they?

    • Random numbers

    • The math module

    • The time module

  • Wrapping up

    • What have we learned?

    • How can we apply it to larger problems?

    • Where do we go from here?

Meet Your Instructor

Daniel pic

Daniel has been a self-employed developer, teacher and speaker for private businesses, education and government entities since 1999. Daniel also actively teaches programming for the University of New Mexico Continuing Education.

Daniel is a Pomodoro Technique practitioner, and co-founder of the Albuquerque Java User’s Group in Albuquerque, New Mexico. When he’s not supporting other local Java developers, Daniel spends most of his waking hours developing in and around the Java ecosystem, encompassing...

Meet Daniel »
Eric Photo

Eric is a professional trainer and software developer who loves learning new things, sharing what he learns, and helping clients to solve business problems. He holds a BS in Computer Science from the Virginia Military Institute, and numerous software certifications to include the Microsoft Certified Professional Developer certification.Eric has extensive experience providing customized training and software development services for companies around the world for almost 18 years. He provides those services both on-...

Meet Eric »

Dave received a B.S. and an M.S. in Computer Science from the University of California at Santa Barbara, after which he taught in their computer science department for 3 years. He then moved to Colorado to pursue a Ph.D. in Cognitive Psychology. His work experience includes 20+ years in industry and research institutions, including almost 10 years at Tech-X Corporation.

In addition to teaching at the university level, Dave taught for the Navy for 10 years, and at New Vista High School in Boulder.


Meet Dave »

Get Custom Training Quote

We'll work with you to design a custom Introduction to Programming training program that meets your specific needs. A 100% guaranteed plan that works for you, your team, and your budget.

Learn More

Chat with one of our Program Managers from our Boulder, Colorado office to discuss various training options.

DevelopIntelligence has been in the technical/software development learning and training industry for nearly 20 years. We’ve provided learning solutions to more than 48,000 engineers, across 220 organizations worldwide.

About Develop Intelligence
Di Clients
Need help finding the right learning solution?   Call us: 877-629-5631