software engineering for economists initiative

Post on 06-Aug-2015

379 Views

Category:

Education

5 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Software Engineering for

Economists Initiative

Software Engineering

Big DataBig Compute

New Insights

I Big Compute

I Estimation

I Simulation

I Perturbation

I Big Data

I Storage

I Collection

I Collaboration

Relevance for Economic Research

I ... expand the set of possible economic questions to explore

I ... improve transparency of implementations

I ... ensure recomputability of results

I ... build on and contribute to open science projects

I ... learn about drivers of the New Economy

Relevance for Economics Students

I ... acquire skills in high demand in private sector

I ... o�er unique expertise as research assistants

See also the panel on How Big Data is Changing Economics with Susan

Athey and Hal R. Varian at the Becker Friedman Institute. Available at

http://bit.ly/1cSwCGM.

Basic Skills

I Version Control

I Unit Testing

I Debugging and Pro�ling

I Code Documentation

I Design Patterns

I Data Management

I Code Optimization

I Cloud Computing

I Cluster Computing

I · · ·

Initiative

Overview

I Components

I Tools

I Environment

Components

Components

I Course

I Project

I Bootcamp

I Workshop

I Colloquium

I Recruiting

I Course

We acquire fundamental software engineering skills to tackle computer-

intensive economic research projects. These basic techniques allow

us to leverage tools from computational science, increase the trans-

parency of our implementations, and ensure the recomputability of

results. Thus, they expand the set of possible economic questions

that we can address and improve the quality of our answers.

I Project

The Project consists of a contribution to the Quantitiative Economics

project, an open source library for quantitative economic modeling.

We prepare high-quality implementations and documentations of quan-

titative economic models.

I Bootcamp

The Bootcamp introduces students to the basics of the Python pro-

gramming language and the Ubuntu operating system. It is self-

contained but also intended to prepare students for the regular class

Software Engineering for Economists.

I Workshop

The Workshop provides an informal meeting of students working on

computational research projects. Students present their current work

and solicit input from their peers to improve their implementations.

I Computational Economics Colloquium

The Colloquium o�ers students a unique opportunity to learn from

leading scholars who teach economic modeling, numerical methods,

and software engineering. Top researchers in this �eld will share their

innovative approaches throughout the academic year.

I Recruiting

Students familiar with basic software engineering skills o�er unique

expertise as research assistants. Faculty members working on data- or

computation-intensive economic research projects use the opportunity

to advertise their open positions to course participants.

Online Presence

Website http://softEcon.github.io

Repository https://github.com/softEcon

Tools

Tools

I Python

I Ubuntu

I Git and GitHub

I Microsoft Azure

I grmToolbox

I Quantitative Economics

I The Python programming language is accessible to novice program-

mers seeking to develop software engineering skills, and powerful

enough for serious computation. Python is used by computer pro-

grammers and scientists alike. Thus, it provides the tools used in

software engineering as well as numerous libraries for scienti�c com-

puting. In addition, Python is an open source project easily linked

with other languages such as Fortran and C.

Website: https://www.python.org

I Ubuntu is a Linux-based operating system. It is based on the prin-

ciple of open-source development and users are encouraged to use

free software, study how it works, improve upon it, and distribute it.

Using Ubuntu serves as a preparation for the use of high performance

computing clusters, who mostly rely on Linux-based operating system.

Website: http://www.ubuntu.com

I Git is a free and open source distributed version control system de-

signed to handle everything from small to very large projects with

speed and e�ciency. It allows to organize code revision in a log-

ical and coherent way and thus ensures recomputability of results.

GitHub is a web-based Git repository hosting service, which o�ers

all of the distributed revision control and source code management

(SCM) functionality of Git as well as adding its own features.

Websites: http://www.git-scm.com

https://github.com

I Microsoft Azure is a cloud computing platform which provides the

power and scalability required for collaboration, high performance

computation, and data-intensive processing. Class participants re-

ceive access to the cloud using Microsoft Azure Academic Passes for

six months.

Website: http://research.microsoft.com/azure

I The grmToolbox is a computer program for the simulation and esti-

mation of the generalized Roy model (Eisenhauer et al., 2015). It is

designed as a teaching tool to show how, by acquiring software engi-

neering skills, econometricians can more readily absorb research from

computational science, improve the transparency of implementations,

and ensure recomputability of results.

Website: http://grmToolbox.github.io

I The Quantitiative Economics website provides a series of lectures

on quantitative economic modeling using Python. Topics include eco-

nomic theory and empirics, mathematical and statistical concepts re-

lated to quantitative economics, algorithms and numerical methods

for studying economic problems, and coding skills.

Website: http://quant-econ.net

Environment

Environment

I Computation Institute

I Social Science Computing Services

I Research Computing Center

I Computation Institute

The Computation Institute is a joint initiative between the Univer-

sity of Chicago and Argonne National Laboratory to advance science

through innovative computational approaches. It is a resource center

for those collecting and analyzing large quantities of data and detailed

numerical simulations of complex phenomena.

Website: https://www.ci.uchicago.edu

I Social Sciences Computing Services

Social Sciences Computing Services is made up of several distinct

support teams that provide several services to the Social Sciences

Division such as Desktop and Server Support.

Website: https://sscs.uchicago.edu

I Research Computing Center

The Research Computing Center is dedicated to providing the Univer-

sity of Chicago community a full-service high-performance computing

(HPC) center, including visualization resources, access to software,

workshops, one-on-one consulting with domain experts, and complete

data-management strategies to researchers across all departments and

divisions.

Website: https://rcc.uchicago.edu

Next Steps ?

DataScientist

Programmer

Economist

Statistician

Appendix

Contact

Philipp Eisenhauer

Mail eisenhauer@policy-lab.org

Web http://www.policy-lab.org/peisenha

Repository https://github.com/peisenha

References

Eisenhauer, P., Heckman, J. J., and Vytlacil, E. J. (2015). The

Generalized Roy Model and the Cost-Bene�t Analysis of Social

Programs. Journal of Political Economy, 123(2):413�443.

top related