Welcome and congratulations on your enrollment to Data Science Methodology program at Barcelona School of Economics!
This is the web-page of the programming brush-up course: Introductory and Intermediate Computing for Data Science. The exercises and contents of the course may be updated before the course starts.
Have a look at the syllabus and the welcome email that you’ve got from the program office to learn more about this course.
There are three big parts of the course that we are going to cover:
- Introduction to Shell and Git;
- Programming in Python;
- Programming in R.
All the materials that we are going to use, including lecture materials, exercises, and tests are listed on the Materials page. The exercises are posted on the GitHub classroom as well as the tests will be published there at the end of the course. So, before the course starts, I kindly ask you to fulfill the following requirements to get a headstart with Git, GitHub Classroom and setup your programming tools.
Prerequisites
- Complete the mini Hello World Assignment which will help you to set up your programming tools and prepare for the course. It does not touch the R part of the course though.
- Install R and Rstudio.
- It is crucial that you bring your own laptops. For this course I have no particular hardware requirements, and for the rest of the master’s you might not need a particularly strong machine. The reason is that in order to perform heavy computations or store lots of data you should consider connecting to a server (typically on cloud, such as Amazon Web Services) rather than doing it locally. You will use your laptop on the exam(s) and during the classes.
Comments
- I recommend you to come with a Unix-based Operating System (including MacOS). It is more flexible in terms of different action permissions. In addition, there are some data science tools out there that are designed for Unix/Linux. Although, if you have Windows, then you can still stick with it if you prefer. Just keep in mind that I might not be able to give you optimal assistance if you come with Windows.
- If you would like to install Linux on your machine, there are different options. If you have enough memory on your hard drive, you can install Linux OS alongside with Windows as dual-boot (you can find many tutorials on the Internet on how to do this). If you have a relatively strong machine, a virtual machine with a Linux operating system would work as well. It is also possible to install a Linux OS on an external drive (e.g. SSD) and boot from it. However, I do not really recommend this option since it might be prone to bugs and errors and very much depends on quality of the said external drive.
- In the Hello World assignment you are asked to install Git, a version control system, and create a GitHub account. Basically, Git is a version control environment which you interact with through your system’s command line. Whereas GitHub is a provider of on-line hosting for software development and version control using Git. Pay attention to the instructions on how to connect your GitHub account with your local git.
- Programming and computing is largely learning-by-doing. Hence, the classes will involve a lot of practice. There will be many small computing assignments interspersed throughout the course; and, again, you will need your own laptop to follow these. I will be there to guide you through the process, answer any questions and speed up the learning process.
DataCamp
Note that you have got free access to DataCamp, a platform that provides a lot of online programming courses. I recommend you to make use of this opportunity to practice. There are already some assignments posted in the DataCamp classroom. This is just to let you know which DataCamp courses could be helpful for you in the context of the class.
If you would like to complete a part of the recommended DataCamp courses, I would prioritize Introduction to Python and R.
In case you did not get the invite or have any other questions, do not hesitate to contact me via the email below.
I’m looking forward to meeting you all and do let me know if you have any questions. You can contact me via this email: maxim.fedotov@bse.eu.