~/

Computing

I advise you to learn several computing languages, as some tools are better at certain things than others. The shell is great to automate tasks, handle file management, etc. I find R particular powerful for “tidying” data, that is putting it in a format which is ready for regressions. Stata is not great for data manipulation, but it’s good for regressions and econometrics, and most of the replication kits are also written in Stata. I strongly recommend you also learn Python which is great for scrapping data (opening sessions, etc.), and a bit of Structured Query Language (SQL) as well. For simulations, Julia is open source and very powerful. However, many macroeconomists still use Matlab to do VARs and such (others use GAUSS, or even RATS).

Language download Directory
julia Julia html
python Python html
R https://julialang.org html
R-markdown R-markdown html
shiny Shiny html
sql Structured Query Language (SQL) html
unix UNIX Shell html

Finally, for Mac users, here are some apps for Mac OSX I’ve found useful over the years.

  • Application software. html

Learn how to use the shell

Whether on MacOSX or Windows, you can use the shell as opposed to the GUI. Why use the shell? The shell has two main advantages:

  1. Record keeping. Using the shell allows you to keep a record of everything you do with your computer: while dragging and dropping is very convenient, it is neither reproducible nor recorded anywhere. Instead, writing mv scp.pdf files/scp.pdf in a text file move.sh you then run through sh move.sh allows you to keep a record, and to potentially do it again in the future. Similarly, installing programs manually implies that if you decide to one day replace your computer, you have to remember everything you installed. Keeping a file_install.sh text file somewhere and installing programs for example through brew install ffmpeg is much better practice.

  2. Automation. Whenever you repeat a task, such as when you rename files from a library from say, file1.pdf to file01.pdf, and file2.pdfto file02.pdf, you are wasting time. The shell has iterative loops which usually allow you to do that very quickly. The shell has very powerful tools such as sed and awk, which are presented in the unix section.

  3. Workflow. Writing economics papers implies a lot of back-and-forth between data handling, combining, modelling, writing tex code which are then compiled, etc. The shell allows you to automate all these task and to create your final output from inputs, using only raw text files.

  4. Additional functionalities. Graphical User Interfaces (GUIs) ultimately write commands to the shell. This means that GUIs only provide a subset of what the shell can provide. For instance, you can in fact open many instances of Stata on Mac, just as on Windows. It is just that the option is not provided by default through the GUIs (at least not the last time I checked). There is a way around it through the shell:

  5. Hidden functionalities. Since only more advanced users know how to use the shell, computer manufacturers also use it as a way to provide two levels of computer access and customization. For example, you may show hidden files on a Mac, using:

Data

You may either use existing datasets, or create your own.

  • List of Datasets (Non-exhaustive). html
  • List of APIs. html

Model

  • HP Filter. R
  • Print Summary function. R