Intro To Programming
UniTo Master in Economics
1 Welcome to Introduction to Programming
- This website is the home of the course Introduction to Programming.
- This course assumes no prior programming experience.
- Below you will find setup instructions and a syllabus.
- You can obtain all material for this course from the associated github repository at link
1.1 Objectives of this Course
- After this course, we want you to be able to participate or conduct your own research project in an efficient way. Research nowadays means data sciencey stuff in most cases, certainly in Economics.
- We want you to have a basic understanding of how an operating system (in particular, your OS) works.
- We want to be able to achieve a basic level of automation in repetitive tasks.
- We will introduce Python thoroughly.
- We will also show R.
- Maybe, we will have time to look at julia as well.
2 Program
This course has several submodules.
- Installing Software and Preparing environment (you do that at home, see below in Section 3).
- OS Basics: What is an OS, how to work with it.
- Python
- R
- julia (maybe)
I just want to run some python code right away!! 👉 https://github.com/floswald/hello-devcontainer-with-jupyter
Module | Session Number | Topic | Author |
---|---|---|---|
OS Basics | 1 | The Unix Shell | The Software Carpentry Project + Florian Oswald |
OS Basics | 2 | Shell: Files and Directories | The Software Carpentry Project + Florian Oswald |
OS Basics | 3 | Shell: Working with Files and Directories | The Software Carpentry Project + Florian Oswald |
Homework 1: complete and run a bash script on gh-actions | Florian Oswald | ||
Python | 4-12 | Python Intro | The Software Carpentry Project + Florian Oswald |
R | 13 | R Intro |
Florian Oswald |
R | 14 | R {tidyverse} |
[Grant McDermott](https://grantmcdermott. |
R | 15 | R and python generics |
Florian Oswald |
R | 16 | R {data.table} |
Grant McDermott + Florian Oswald |
R | 17 | Building R packages |
Florian Oswald |
R | 18 | Spatial Data with R |
Florian Oswald |
Optional Material
Module | Session Number | Topic | Author |
---|---|---|---|
* |
Shell: Pipes and Filters | The Software Carpentry Project + Florian Oswald | |
* |
Git Version Control |
The Software Carpentry Project + Florian Oswald | |
julia | 19 | julia intro 1 |
Florian Oswald |
julia | 20 | julia intro 2 |
Florian Oswald |
R | 21 | Quick Intro to NLP with R | Florian Oswald |
3 Setup Instructions
- You must bring your own laptop to each class.
- Please make sure you have an up to date operating system, i.e. run a software update before we start.
- I put together a suite of extremely detailed installation instructions. You should follow those here before coming to the first session in class!
- Each Operating System has different instructions to follow.
4 Code of Conduct
If you decide to participate in this course, I expect you to abide by the following minimal code of conduct.
- Be polite to the other class participants.
- While in class, do not spend time on messaging apps, chat rooms, computer games, or similar content.
You can expect your instructor to abide by the same code of conduct, so this is a matter of mutual respect. If you are found in breach of the above you will be given a single warning, and I will ask you to no longer join the course after a second time. Your grade will be “fail”.
5 License
All lectures of this course are derived from the work of the Software Carpentry. Their material is licensed under creative commons license 4.0, whereby I am allowd to share and remix the content, if appropriate attribution is given.
Those terms apply to anyone wanting use material on this website as well. Thank you.
© Florian Oswald, 2025