Uni Graz logo


Introduction to Programming

Gerald Senarclens de Grancy <cms@senarclens.eu>

Computer Programming

Selection of Historic Programming Languages

Different programming languages have different purposes

Selection of Modern Programming Languages

For implementing operating system
Very close to the fundamental aspects of hardware
Better C - with data abstraction, supporting object-oriented and generic programming
C++98, C++03, C++11, C++14
Purely functional programming language
Haskell 98, Haskell 2010
Compiled to bytecode
Programs require a Java Virtual Machine (JVM) to run
JavaScript (ECMAScript)
Behavior in web-based user interfaces
Dialects provide scripting for PDF documents, desktop widgets, Qt applications, LibreOffice, ...
"PHP: Hypertext Preprocessor"
Produces dynamic Web pages
fun to use
"Monty Python's Flying Circus"
General-purpose, interpreted high-level programming language
Also used for scripting various programs including LibreOffice

A professional knows several languages and learns new ones as needed. There is no "one true language" for all people and all applications. In fact, all major systems we can think of use more than one language.
Bjarne Stroustrup

Features of Programming Languages

What properties in a programming language do we consider desirable?


This course is suited for people new to programming - not just new to Python!


Homework and Required Reading

  1. Install the required software on your computer (until the next session!!)
    • If you decide to use the provided Linux virtual machine: install Virtual Box, download the VM image and make sure it works as expected. Then watch this short introductory video.
  2. Ensure it runs properly
    • Type
    • python --version
    • or
    • python3 --version
    • which should output something like
    • Python 3.8.2
    • (on Windows you might need to type sth. like C:\Python38\python --version)
  3. Prepare the first chapter ("Starting to code") of "Head First Programming". If you do not have a copy of the book, work through parts 1 ("Whetting Your Appetite") and 3 ("An Informal Introduction to Python") of the Python tutorial. (Until next week!)


and feedback...

Further Reading

Paul Barry and David Griffiths Head First Programming O'Reilly (2009) buy on Amazon
Mark Pilgrim Dive Into Python 3 (2nd edition) Apress (October 23, 2009)
Python Software Foundation Python Documentation http://docs.python.org/py3k/
Bjarne Stroustrup Programming – Principles and Practice Using C++ Addison Wesley (December 15, 2008)