Introduction to programming

Background information

This topic is allocated 13 hours, however it may be integrated into the teaching of other topics.

SL/HL Core

4.3 Introduction to programming (13 hours)

Sub-topics include : Nature of programming languages, Use of programming languages.
Vocabulary includes : retrieve, store, compare, compound operations, meaning, grammar, syntax,
higher level language, machine executable code, translation, compiler, interpreter, virtual machine,
variable, constant, operator, object, comparison operators, mod, div, loops, branching,
collection, re-usability, maintenance, one-dimensional array
Link
Description
Other comments
http://www.csfieldguide.org.nz/ProgrammingLanguages.html
A good starting point for programming. Covers low level language and higher level, how a program works etc
From University of Canterbury CS Field guide
http://www.csfieldguide.org.nz/Algorithms.html
Algorithms. Searching and Sorting algorithms
From University of Canterbury CS Field guide
Link
Processing Java
easy start
Simple Java IDE, multiplatform, with slightly simplified
Java syntax, lots of sample programs with graphics
Link
Javascript IDE
an online JS IDE, simple but
adequate for basic programming tasks
Link
Gambas
Visual Basic clone
A VB clone for linux - easy to install, easy to use
Link
Practice-It
Online Java practice
Free online Java practice. Lots of simple to interesting
programming problems. It compiles and checks your
results critically. Helpful error messages.
http://csunplugged.org/searching-algorithms/
Searching Algorithms activities
From University of Canterbury CS Unplugged website
http://csunplugged.org/sorting-algorithms/
Sorting algorithms activities
From University of Canterbury CS Unplugged website



Videos and podcasts

Video including details

https://www.commoncraft.com/video/algorithms
This is a simple video produced by commoncraft as an entry point explainer for Algorithms.
https://www.commoncraft.com/video/application-programming-interfaces-apis
In a similar vein as the last video, this is an entry point explainer video on programming API's and it illustrates the difference between high level and low level languages
https://www.commoncraft.com/video/programming-languages
This video is introducing the basic concepts of programming languages





Other reading sources


Eck's Java Notes

Other current articles