Introduction to programming DSBA 2019/2020

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

Notifications

During the second module information about the course will be available at this link

Teachers and assistants

Group 191 192 193
Lecturer Voznesenskaya T.V.

tvoznesenskaya@hse.ru , tg: @tvozn

Workshop Instructor Piatskii G.G.
piatskgeorge@mail.ru , tg: @p_george

Chuvilina A.A.
chuvilinaann@list.ru , tg: @chuvilinaann

Rudakov K.A.
rudakovkirillx@gmail.com , tg: @ArcticBEARD
Tatarnikov A.D.
atatarnikov@hse.ru , tg: @andrewt0301

Zhulikov G.
l8doku@gmail.com , tg: @l8doku

Assistant Azat Kalmykov
azotx12345@gmail.com , tg: @Azatik1000
Sergei Garshin
sagarshin@edu.hse.ru , tg: @Sergei_Garshin
Lev Sushkevich
lasushkevich@edu.hse.ru , tg: @leviusss
Egor Polyakov
evpolyakov@edu.hse.ru , tg: @poegva

Grading system

The ultimate grade G for the whole course is calculated as: G = 0.7 · min(P1, P2) + 0.3 · max(P1, P2) where P1 is a first part final grade, and P2 is a second part final grade. Grade G is rounded (up or down) to an integer number of points before entering them into records. P1 and P2 are also rounded.

The final grade P1 for the first part is calculated as follows: P1 = 0.4 · E1 + 0.6 · OA1 where E1 is a grade of the first part exam, which takes place at the end of the quartile 1 (semester A), OA1 is an ongoing assessment grade of the first part (both 10-point scale). The ongoing assessment OA measures participant’s performance throughout all classes and involves various types of activities.

The final grade P2 for the second part is calculated as follows: P2 = 0.4 · E2 + 0.6 · OA2 where E2 is a grade of the second part exam, which takes place at the end of the quartile 3 (semester B), OA2 is an ongoing assessment grade of the second part (both 10-point scale). The ongoing assessment OA measures participant’s performance throughout all classes and involves various types of activities.

The ongoing assessment grade is accumulated throughout all the classes and is related to a participant’s activity. Every activity is evaluated and grants some points to participants. We consider two sorts of points: 1) regular points (RP) and 2) bonus points (BP). BPs are given for additional efforts and for excellent jobs. RPs and BPs are accumulated during a module. At the end of the module OA is calculated according to the following formula: OA = min([10 · (RP + BP) / RPmax ], 10) where, RPmax denotes the maximum possible number of points that can be taken during the module.

Regular points are granted for contests (1 per task) and control works. Bonus points are granted for extra homework (1 per task), presentations on one of the course-related topics (up to 5), quizzes at the lecture (1 per quiz), activity at almost all workshops (up to 10) and working at the board during the workshop (0.5/1).

Lecture notes

Lecture 1: Introduction

Lecture 2: Simple data types. Dynamic typing. Operations of sequence's, selection, and iteration.

Lecture 3: Real numbers. Python data types. Strings.

Lecture 4: Strings. Tkinter GUI.

Lecture 5: Functions and recursion.

Lecture 6: Lists & tuples

Lecture 7: Files. Zen of python.

Lecture 9: Sets & Dictionaries.

Lecture 10: Sorting algorithms

Lecture 12: Object oriented programming

Workshop notes

PyCharm tutorial (video)

Workshop 1

Workshop 2

Workshop 3

Workshop 4

Workshop 5

Workshop 6

Workshop 7

RegExp*

Pandas*

Visualisation*

BeautifulSoup & BoW*

Workshop 8

Workshop 9

Workshop 10

Workshop 11

Workshop 12

Homeworks

Contests

Number Contest Deadline
1 Contest 1 24.09.2019 23:59
2 Contest 2 01.10.2019 23:59
3 Contest 3 09.10.2019 23:59
4 Contest 4 16.10.2019 23:59
5 Contest 5 20.10.2019 23:59
6 Contest 6 20.10.2019 23:59

Results

Results

Other

Bonus points possibility (up to 3 points). Deadline 27.09.2019 23:59. Take one of your own programs from the Contests 1 or 2. Add code for GUI with the aid of Tkinter, which contains (somewhere): number of contest, name of task from this contest (letter.name), your surname. Send it to the teaching assistant Egor Polyakov (evpolyakov@edu.hse.ru , tg: @poegva) by 27.09.2019 23:59. Assessment: 1 – all, which are described above, is done; 2 – your GUI contains more than 1 elements or some interaction; 3 – your GUI is impressing (while remaining simple).

Syllabus

Course syllabus at HSE website