Programming Basics Training for Non-Programmers

Nivå: Foundation

This hands-on course is intended for those individuals with little or no software development experience. Starting with the most fundamental elements, this training evolves your skills to produce complete computer applications including the user interface, business logic and data access layers. During the course, attendees will write code using Python, one of the most popular modern languages and highly suitable for beginners. In addition, comparisons with other languages such as Java and C# will be discussed. Development techniques include requirements, design, code generation, testing and debugging. You gain all the pre-requisite skills necessary to carry on to more language-specific training appropriate for the type of applications needed by your organisation be they data science, web development, embedded real-time systems or other.


  • After-Course Instructor Coaching
  • Hands-On Labs Included

Du kommer lära dig att

  • Demonstrate the fundamental aspects of modern programming
  • Design and implement an application using Python
  • Write cohesive object-oriented logic (classes and libraries)
  • Leverage integrated development tools for code editing, execution, testing, and debugging
  • Access data files to save and restore persistent information
  • Distinguish between Python and other languages such as C# or Java

Välj den utbildningsform som passar dig bäst


I klass & Live, Online-utbildning

  • 2-day instructor-led training course
  • After-course instructor coaching benefit
  • Learning Tree end-of-course exam included



  • Använd denna eller någon annan utbildning i ditt företag
  • Fullskalig programutveckling
  • Levereras när, var och hur du vill
  • Blandade utbildningsmodeller
  • Skräddarsytt innehåll
  • Coaching av ett expertteam

Anpassa kurs och innehåll efter teamets behov

Kontakta oss

Utveckla dig och ditt team med anpassade eller öppna kurser alternativt e-learning

Learning Tree erbjuder kundanpassad utbildning hos er, öppna kurser i Stockholm, London eller Washington, möjlighet att delta via våra Anywhere centers (Malmö, Göteborg, Linköping, Stockholm eller Borlänge) eller olika former av e-learning med lärarstöd. Läs mer på .

I klass & Live, Online-utbildning

Note: This course runs for 2 dagar

  • 22 - 23 feb 9:00 - 16:30 GMT Online (AnyWare) Online (AnyWare) Boka Din Kursplats

  • 24 - 25 maj 9:00 - 16:30 BST Online (AnyWare) Online (AnyWare) Boka Din Kursplats

  • 23 - 24 aug 9:00 - 16:30 BST Online (AnyWare) Online (AnyWare) Boka Din Kursplats

  • 7 - 8 feb 15:00 - 22:30 CCET Online (AnyWare) Online (AnyWare) Boka Din Kursplats

  • 21 - 22 mar 14:00 - 21:30 CCET Ottawa / Online (AnyWare) Ottawa / Online (AnyWare) Boka Din Kursplats

  • 20 - 21 apr 15:00 - 22:30 CCST New York / Online (AnyWare) New York / Online (AnyWare) Boka Din Kursplats

  • 9 - 10 maj 15:00 - 22:30 CCST Herndon, VA / Online (AnyWare) Herndon, VA / Online (AnyWare) Boka Din Kursplats

  • 21 - 22 jun 15:00 - 22:30 CCST Ottawa / Online (AnyWare) Ottawa / Online (AnyWare) Boka Din Kursplats

  • 25 - 26 jul 15:00 - 22:30 CCST Herndon, VA / Online (AnyWare) Herndon, VA / Online (AnyWare) Boka Din Kursplats

  • 22 - 23 aug 15:00 - 22:30 CCST New York / Online (AnyWare) New York / Online (AnyWare) Boka Din Kursplats

  • 26 - 27 sep 15:00 - 22:30 CCST Ottawa / Online (AnyWare) Ottawa / Online (AnyWare) Boka Din Kursplats

Kurs med startgaranti

När du ser symbolen för “Guaranteed to Run” vid ett kurstillfälle vet du att kursen blir av. Garanterat.

Important Programming Basics Training for Non-Programmers Information

  • Exam Information

    Learning Tree Exam available at the end of class.

Programming Basics Training for Non-Programmers Outline

  • Chapter 1 – Starting to Program

    Principles of Programming
    • How computers solve problems
    • Language types and evolution
    • Procedural logic
    • Object Orientation
    • Bugs and other challenges
    Syntax and Semantics
    • About Python
    • Statements and comments
    • Literals, Variables and Data Types
    • Collection Types
    • Expressions and Operators
    • Strings, Concatenation, and type conversion
    • Demo – accessing exercise computers and Py
    • Hands-On Exercise – First Python program using Py
  • Chapter 2 – Development Tools

    Program Layout and Organisation
    • Modules and Packages
    • Integrated Development Environments (IDEs)
    • Introduction to Eclipse and PyDev
    • The course case study
    • Demo – Using Eclipse
    • Hands-On Exercise – Creating a Python Program with PyDev
  • Chapter 3 – Controlling Program Flow

    Making Decisions with Conditionals
    • if/elif/else statements
    • Criteria expressions
    • in and not in
    • Hands-On Exercise 3.1 – Conditional Logic
    Repeating Program Logic with Loops
    • Counting loops and for/Range
    • For-each Loops
    • Iterating a List
    • Loop control
    • break and continue
    • Hands-On Exercise 3.2 – Programming loops
    Writing and Calling Functions
    • Function definition
    • return statement
    • Accepting parameters
    • Returning results
    • Importing modules and functions
    • Cross-module calls
    • Calling library functions
    • Hands-On Exercise 3.3 – Writing Functions
  • Chapter 4 – Object-Oriented Programming

    Why Object Oriented?
    • Challenges with purely procedural code
    • Global variables – not the solution
    • Principles and style of object orientation
    Classes and Objects
    • Defining classes
    • Properties vs local variables
    • Methods vs functions
    • Creating objects
    • Object state and instance data
    • Discussion – object needs of the case study
    • Hands-On Exercise – Defining Classes
    Encapsulation and Constructors
    • Why encapsulate?
    • Specifying Private properties and methods
    • Access from external modules
    • Purpose of __init__(self) method
    • Constructor parameters for required data
    • Discussion – case study object-oriented design
    • Hands-On Exercise – Encapsulation and Constructors
    Code Quality and Testing
    • Discussion – Don’t you just hate when a program does…
    • Improving the user experience
    • Optional Hands-On Exercise – User interface improvement
  • Chapter 5 – User Interfaces and Events

    Graphical UI Frameworks
    • 3-layer model
    • What is a framework?
    • Framework choices
    • GUI Philosophy
    • Why Tkinter (tinker)
    Windows, Frames and Widgets
    • Familiar widgets – from labels to radio buttons
    • The GUI class structure and layout
    • Adding widgets to a form
    • Geometry manager
    • pack(), vs grid() vs place()
    • Adding widgets to a frame
    • Adding a frame to a window
    • Using grids – automatic rows and columns
    • Tk Choice properties
    • Radio button example
    • Hands-On Exercise – Laying out a GUI for the case study
    Events and Event Binding
    • Philosophy of event-driven programming
    • Event types
    • Binding to events using bind()
    • Button click event
    • Keyboard enter-key event
    • Choice widget command options
    • Command response function vs event method
    • Discussion – An event has happened, now what?
    • Hands-On Exercise – Adding events for the case study.
  • Chapter 6 – Input and Output

    Accessing Files
    • Types of data input
    • Flat vs serialisation vs big data vs database
    • I/O streams
    • Opening modes – read, write and append
    • New files vs appending
    • Reading/writing binary, raw and character data
    • Handling exceptions
    • Preventing exceptions
    Manipulating the file system
    • Deleting, renaming and checking file existence
    • path and path.exists examples
    • Hands-On Exercise – Reading and writing a user historical log
    About Relational Databases
    • Why is it relational?
    • Primary and foreign keys
    • Tables and joins
    • SQL Language
    • Non-procedural approach
  • Chapter 7 – Other Languages and Code Quality

    Comparison of Python to other languages
    • Java and C# features
    • Similar concepts, different syntax
    Code and Program Quality
    • What makes a good user experience
    • What is quality code
  • Chapter 8 – Course Summary

    Next Steps
    • For more on Python
    • For more on Java or C#
    • Review of course topics


Programming Basics Training for Non-Programmers FAQs

  • I have no programming knowledge, but my company is asking me to work in software development. Is this the right class for me?

    Yes! Many traditional, non-technical, jobs are being replaced by software developer roles. If you are being asked to, or considering, moving to one of these roles, you will have to demonstrate pre-requisite programming knowledge, and this is the perfect class for that!

  • I am a manager responsible for software development projects, can I take this class? and teams often are bewildered by the technical terms and processes of what they are supervising. They need a fundamental talking-knowledge to effective in their positions.

    Yes! Often managers are bewildered by the technical terms and processes of what they are supervising. This class provides a high-level conceptual understanding of the major aspects of software development, including its terminology and processes.

Online (AnyWare)
Online (AnyWare)
Online (AnyWare)
Online (AnyWare)
Ottawa / Online (AnyWare)
New York / Online (AnyWare)
Herndon, VA / Online (AnyWare)
Ottawa / Online (AnyWare)
Herndon, VA / Online (AnyWare)
New York / Online (AnyWare)
Ottawa / Online (AnyWare)
Why do we require your location?

It allows us to direct your request to the appropriate Customer Care team.

Hur föredrar du att bli kontaktad:

Please Choose a Language

Canada - English

Canada - Français