LU-pysem
Seminar: Getting things done with Python
In this seminar you will learn about the Python programming language, its libraries and frameworks.
The goal of the seminar is to give participants an insight into Python programming language and what can be done with it (including how it is used in practice). You will also learn how to use Python for data analysis and visualization.
Specseminārā tiks iepazīta Python programmēšanas valoda kā arī tās bibliotēkas un ietvari. Semināra mērķis ir dot ieskatu gan valodā, tās iespējās, gan plašajā pielietojumu lokā. Seminārā Python tiks lietots dažādu datu apstrādei un vizualizācijai.
Update: the first two lectures (07.02 and 14.02) will be in another place: room 345.
Python seminar will continue in the next (Spring 2020) semester
- It will be in the usual place and time: Fridays @ 14:30 in room 336 (LU, Raiņa bulv. 19)
- First lecture: 07-Feb-2020
- everyone must join Slack and fill out seminar registration form
You can also join if you did not participate in the Python seminar before.
- course registration form (Spring 2020): https://forms.gle/1kNph9X7LkhCdffA6
- Slack channel (discussion space): link for joining Slack
Important links:
Useful links:
- Project signup form: https://forms.gle/kmgjsfeiqWn2KWfv6
- Presentation topic signup form: https://forms.gle/eboGVK8HWVTUKgTJ9
Information and Resources
Seminar takes place on Fridays @ 14:30
- location: room 336 (LU, Raiņa bulv. 19)
Seminar materials
Seminar materials can be found in the GitHub repository:
Course Requirements and Grading
- Group Project (2-3 students preferable) = 60% of course grade (mandatory)
- Project should be a Python program or notebook
- Scope: see examples shown in Sep. 20 lecture for awesome final projects
- Presentations and participation in class = 40% of course grade (optional)
- Presentation on a cool Python library or project = 1..3 points
- 3 points = long and serious presentation (30 min)
- 2 points = medium presentation (10-15 min)
- 1 point = short presentation
- Participation in class = 1 point
- ... or/and Python exercises solved on Project Euler, www.codewars.com, other exercise sites
- Presentation on a cool Python library or project = 1..3 points
- Submitted course evaluation (mandatory)
Note: sign up for presentations ahead of time
Course Project
During the course, students are required to complete a project that accomplishes a non-trivial programming / data processing task using Python tools.
- projects can be developed in teams of 2-3 people or individually.
Possible project topics:
- process, analyze, and/or visualize one or more datasets
- develop a simple game
- web or desktop application
- ... other ideas ...
Data sets can come from a variety of sources, such as kaggle.com, data.gov.lv, or faculty.
All processing and visualization will have to be done in the Python programming language with the appropriate Pyhon libraries.
- you can use libraries covered in the course or/and from outside the course.
Other topics may also be selected with prior agreement with the faculty.
Submit the project:
Final project presentations
Update: projects can also be presented on 15.01.2020 @ 10:30.
- Location: room 444 (4th floor)
Project presentation 08.01.2020 @ 10:30. Location: Auditorium 12.
- You can also present during the last class (22.12.2019)
If a project is not presented on these dates the project grade will be decreased by up to 2 points.
Project presentation = 5-10 min. presentation consisting of:
- Introduction (what the work is about)
- Project realization (what was programmed, what software was used)
- Demonstrations of results
You have to show what the project has done in practice = show code and results.
Each group should send an email to uldis.bojars(at)lu.lv (with text "Python seminar" in the subject line) containing:
- project description (including a list of group members + info about the role of each participant)
- developed source code (or its URL at Github, Gitlab etc)
- work results (e.g. Jupyter notebook)
Why Python?
- Python is easy to use and effective.
- Its code is easy to read and write.
- Python is a flexible language that can support many programming paradigms.
- Suitable for beginners and professionals alike.
- Popular and well-supported.
- Used by large and small companies and organizations worldwide.
- Used in many courses and workshops.
Contents
The seminar consists of two parts:
- Introduction to the Python programming language (What is Python)
- Assumption: participants know the basics of programming and, preferably, already know other programming languages
- Practical applications of Python, with examples (Getting things done with Python)
- Tools, libraries, frameworks ("batteries included")
- Jupyter notebook, IPython environment
- Anaconda Python distribution
- Libraries: NumPy, SciPy, Pandas, Matplotlib, Flask, ...
- Tools, libraries, frameworks ("batteries included")
Organizers
This seminar is lead by Uldis Bojārs and Valdis Saulespurēns.
Experts who might present guest lectures at the seminar:
- Leo Seļāvo (LU DF)
- Jānis Zuters (LU DF, par mašīnmācīšanos)
- Normunds Gruzītis (LU MII, par NLP)
- Pēteris Paikens (LU MII)
- ...
Grading
Grading will be based on your participation in the seminar (and its discussions) and your group project work.
* Participants will do a practical project using Python. Projects can be done in groups of two.
At the end of the course participants must fill out the course evaluation questionnaire in LUIS (this is a formal requirement for all courses).