Skip to main content

WiNDC Summer School 2024: Julia

Course Overview

This three day course is designed to introduce professional economists and graduate students to the Julia programming language. We will introduce concepts from computable general equilibrium modeling and demonstrate their Julia implementation.

This course has several learning objectives:

  1. Understand Julia syntax
  2. Manipulate data using DataFrames.jl
  3. Plot data using Plots.jl
  4. Create optimization models using Julia JuMP
  5. CGE Modeling theory
  6. Complementarity problems in Julia JuMP
  7. Using MPSGE in Julia


To register, use the following Registration Link. Course materials will start to be distributed approximately one week before the course begins. You can register up to the start day of the course.

Course Logistics

The course will be held virtually on Zoom. A Zoom link will be distributed to registered participants. Course content will be recorded and made available some time after the course.

  • Dates: July 22, 23, 24
  • Time: 8:00am - 2:30pm (Central Standard Time)

Each day will be split into three sessions,

  • 8:00am - 9:30am
  • 9:45am - 11:15am
  • 12:30pm - 2:00pm
with time built in for questions or follow up. The full schedule is detailed in the side bar.

Support the Course

Developing courses is a time consuming and difficult process. We at WiNDC have a commitment to open source, this is why all course materials are freely available on GitHub. In order to support future development of such materials we encourage participants make a donation of $500 to the Agricultural and Applied Economics Fund - 112039090 at the University of Wisconsin-Madison. You may donate here. You have the option to give online or by mail.

Why Julia?

Created in 2011, Julia is a modern high-level programming language designed for scientific computing. There are four major reasons all economists should be interested in Julia:

  • Syntax of Python
  • Data manipulation of R
  • Speed of C or Fortran
  • Modeling of GAMS

The tools in Julia allow one to obtain/clean data, build a large model, analyze the results with graphs, and create a report. This is opposed to the WiNDC build which obtains/cleans data in both Python and R, creates models in GAMS, and analyzes results in Excel. Having everything in a single pipeline reduces errors and ensures consistency.

About the Instructor

Mitch Phillipson was a professor of Mathematics for 7 years before joining WiNDC. In that time he taught more than 30 courses, at least 10 virtually. He pioneered innovative techniques for engaging students online, receiving overwhelmingly positive evaluations following the COVID pandemic.

Mitch is using his experience to design an engaging and interactive course. During the course you will be following along with provided code and working carefully created examples.

Pre Course Instructions

Pre Class Instructions

July 22 Materials

July 23 Materials

July 24 Materials