Deborah R. Fowler
Resources for
Introduction to Programming
Posted on Aug 29 2018Updated on May 26 2023
Programming in general is a task that should be enjoyed by many/all, however due to social stigma sometimes gets a bad rap.
What is programming? Creating a solution that can be expressed in a language that a computer can follow.
Programming in essence is problem solving! This is a core strength to Visual Effects, and programming is an exercise that can build those muscles.
If you enjoy puzzles, finding solutions, and most importantly to me - seeing the results! (Computer Graphics) you are in the right place.
If you have never studied a programming language, there are an abundance of resources both video/book/documentation form.
Key concepts that we study in VSFX 160:
- variables - to store/put information in - not
explicitly typed like C++ but implicitly ie. try type(3)
- truth statements - to select which code to execute
- looping - this is a concept that will make your life easier, repetition should be done by a computer, not you
- functions - repeating chunks of code and working modularly
- I/O - whether from console or from a file, input and
output
- lists - a way to keep information more efficiently
- classes/objects - a way to store information that is customizable
- OOP - structuring your programs in an object oriented way
These are general concepts and we will be using these in python
to start. Once you have a solid grasp of these concepts it becomes
very easy to learn any other programming language.
Disclaimer: programming != math != proceduralism
These are three distinct concepts, although they play nice together, they are not the same thing!
What is coding, scripting and programming in our context?
These terms are at times used loosely and it is more of a
theoretical question.
- Coding - creating a language specific syntax to a problem solution (algorithm). A program consists of code.
- Algorithm is a solution to a problem in a set of steps to
produce an intended result
- Program - a program is code that is complete and can be run. Programming is the process of writing programsby taking an algorithm and encoding it into a notation (programming language) so that it can be executed by a computer.
- Scripting - smaller programs in interpreted languages like Python. Note that python is a programming language that is also used for scripting.
Course Material
- Class1 - Introduction
- Class2 - Turtle
- Class3 - Algorithm
- Class4 - Functions
- Class5 - I/O
- Class6 - Exercise 1 is due
- Class7 - Lists
- Class8 - Linux
- Class9 - Exercise 2 is due
- Class10 - Review
- Class11 - Review
- Class12 - Houdini
- Class13 - Exercise 3 is due
- Class14 - Houdini
and Tips for E4
- Class15 - Houdini
- Class16 - OOP Intro
- Class17 - OOP and BASH
- Class18 - Studio and OOP if time permits
- Class19 - Exercise 4 is due
- Class20 - In-class OOP Exercise