Assignment 0: Introduction, warm up
This is a simple warm-up assignment that introduces you to the environment we will use throughout this course, and refresh your git knowledge. This assignment is the way you will register for the course. You will not be able to access further (graded or ungraded) assignments without completing this assignment.
Throughout this course, you will receive and submit your assignments through git repositories on GitHub. Our git usage will be rather simple and straightforward. However, you are recommended to learn, or refresh your knowledge about, basic usage of git (you may use any of the numerous tutorials you can find on the Internet).
How to work on and submit the assignments?
- For every assignment, you will receive a URL. Once you follow the URL, GitHub will create a private repository for you for each assignment.
- The instructions for the assignments will be stored in
README.md
files (and also associated public assignment pages) for each assignment. Your repository may also contain some starter code for other files needed for completing the assignment. - You should clone this repository to your own computer, and work locally for the most part of the assignments.
- For each step of the assignment, commit your changes/additions. You should also commit each bugfix, or later improvements individually. In general, frequent
commit
s andpush
es are good. They also protect you from accidential file deletion and hardware failures. - Your assignment will be graded based only on the final commit before the deadline. You should not worry about the intermediate state of your repository. Your are recommended to commit and push frequently.
The URLs for the later assignments will be posted on the private course repository. You will get access to this repository only after you submit the current assignment. We will use this repository for some of the course material, course discussion and announcements. Make sure you are watching the common repository (visit it and click on the eye icon on top right section of the page).
The exercise
Follow the instruction below for completing this assignment.
0.0 Set up your assignment repository
Follow this link to set up your assignment repository.
After setting up your repository, clone it to your local computer, and work on the following steps using your favorite programming environment.
0.1 ‘Hello world!’, again!
Write a simple Python program that asks the user
- Last name
- First name(s)
- Email address
- Native language(s)
- Other natural languages
- Programming languages
- Student ID (Matrikelnr.)
- Degree program (e.g., ISCL BA)
and prints them out to standard output (screen).
Put your source code under version control (git add <filename>
), and commit your changes (git commit
) after collecting all the input.
0.2 Write output to a file
Modify your code so that the output is written to a UTF8-encoded file named assignment0.txt
in a two-column tab-separated format. The first column should include the labels above (without parts in parentheses), and the second column should be the information you get from the user. Successive runs should overwrite the file.
Test your changes, and commit them (only the source code).
0.3 Provide the information for yourself
Run your application, and answer them correctly, populating the file assignment0.txt
with your own personal data. Make sure the file (and the name) complies the format described in 0.2.
Add the file to the repository, and commit it.
0.4 Give us some natural language data
Add a new text file, called essay.txt
,
where you describe your interest in linguistics and computation
in at least 5 and at most 15 sentences.
Please make sure that the file you created is a plain text file encoded in UTF-8 (or ASCII). Do not use any special formatting (including markdown).
We will use these essays for later class exercises (without revealing the identity of the authors). Please contact the instructor if you are not comfortable with the use of your writing sample for this purpose.
0.5 Push your changes to GitHub
If you have not done so already, make sure that latest versions of all required files (the source code and the text file) are under version control, and push them to your GitHub repository.