This document follows the CC4.0 BY-NC-SA license.

For the necessity of privacy protection, all personal names mentioned below have been identifiably anonymized.

The English version is translated by GPT-3.5, polished by myself.

Preface

I am teafrogsf, a senior undergraduate student majoring in CS, and the initiator of the SI 100+ Saving Project. Firstly, I sincerely apologize for needing to explain to everyone that due to my personal health reasons and the new changes in the SI 100B course this year (specific details will be explained later), this project can only be reluctantly introduced to everyone in an early and semi-official form. Early here means that the current expected goals of this project have only achieved a small part of the “expected expectations”. However, because the school (SIST, School of Information Science and Technology) is on vacation now and the urgency brought about by the new changes, we have no way to communicate with all the teaching aspects and perfect our complete plan. Therefore, we can only publish this plan with the most important tasks as the initial goal at the present stage. Semi-official means that this is not a top-down plan supported and endorsed by the school, but a bottom-up plan driven by students, teaching assistants, and instructors who are willing to contribute. This also means that the advancement of this plan will encounter many difficulties, but we no longer have time to prepare in advance.

As mentioned earlier, under the impetus of the school, this year’s SI 100B (Introduction to Information Science) has added a summer course which mainly focuses on the Python part. The school hopes to help students get started with programming and adapt to university life through four weeks of summer teaching. However, based on the original teaching arrangements, we believe that it would be extremely difficult to achieve good teaching results if we were to conduct a 1 VS 300 online course with little change from the normal teaching approach and also include assignments and exercise content. It might even bring unnecessary pressure to the students. Since the arrangement for the summer course has been determined, we have decided to start our plan from there and hope to make every effort to gradually implement our ideas.

Before writing this document, I had sent an email of approximately 3200 words to the Dean, Associate Dean, and Office Director of SIST. In that email, I extensively discussed various issues I perceived in the teaching processes of SI 100B/100F. As of the release date of this document, I have received a response from the Office Director and ideas for further communication. However, I was informed that the school is about to go on vacation, so we are currently unable to proceed with further discussions involving all relevant instructors.

Main Project

The current core focus of the project remains on the Python section. However, this is, in fact, a reluctant decision, as the participants in the project primarily possess expertise and experience concentrated in the Python part. Due to the lack of teaching experience and limited communication with instructors and many former TAs, we have temporarily not detailed plans for other sections. Nevertheless, if you have the capability and willingness to contribute ideas and suggestions for other teaching aspects, we warmly welcome your involvement.

The project is currently centered around driving changes in two areas: teaching design and assistant roles. Regarding teaching design, the Python section consists of only 7-8 class hours, making it challenging to cover the extensive content effectively through lectures alone. Therefore, we hope to improve this aspect by incorporating a large number of practice exercises along with tutoring. Additionally, though teaching 300 students in one class poses significant difficulties, we also aim to make some progress in the teaching approach.

Moreover, a crucial aspect lies in the ratio of assistants to students, as it significantly impacts the course difficulty. In combination with the exercise tutoring mentioned earlier, we intend to increase the number of assistants while standardizing and appropriately distributing their responsibilities, thereby reducing situations where only 1-2 assistants are available to answer questions for the entire class.

These two aspects are likely to be implemented in the next semester’s SI 100B, so our initial attempts will be made during the summer course.

Incoming Plan

The most urgent task is to rapidly establish the teaching framework for the summer course. Fortunately, the summer course itself will not be involved in grading, which gives us greater freedom in designing the course. Currently, we have established a collaboration between GeekPie (the biggest tech club in ShanghaiTech University) and the SI 100B/100F assistant team, and we also welcome anyone willing to contribute to join us.

Future Work

Unfortunately, pushing for further reforms in SI 100B/100F is proving to be immensely challenging. We have proposed some reform plans, but implementing them may encounter or even has encountered significant resistance. Nevertheless, we still hold on to hope and will make efforts to foster communication and exchange between the school, instructors, assistants, and students. We will not give up.

Call for Volunteers

As the summer course is scheduled to start on approximately July 31st August 7th, we need to build our team as soon as possible. If you wish to contribute to this project, we eagerly await your participation.

Positions

  • Teaching

Although delivering lectures in a 1 VS 300 online classroom is an incredibly challenging task, we still hope to provide everyone with the best possible classroom experience. We are seeking individuals with substantial experience in teaching large classes, who understand how to control the pace and structure key points in a non-interactive setting. We can provide reference slides and course outlines, and we warmly welcome your involvement in their design.

Furthermore, as we anticipate focusing on example problems in the latter part of the course, experience in demonstrating code writing from scratch would also be valuable. Your participation in designing example problems and assignments would be greatly appreciated.

If you are interested in contributing to either or both of these two aspects, we look forward to hearing from you. We are looking for 1-2 instructors.

  • Q&A, Office Hour

As practice and Q&A are essential parts of the Python introductory course, we are in great need of teaching assistants to answer students’ questions. We understand that during the Q&A process, you may encounter special situations and potential work and mental pressures. Therefore, we expect to continue using platforms like Piazza for Q&A and Tencent Meeting or similar platforms for Office Hours, with the aim of reducing your workload as much as possible.

We hope you have experience in searching for and answering questions in both Chinese and English (you do not need to have formal English writing skills, but the ability to search for information in English on the internet and express yourself is desired). Additionally, having some available time for Office Hours is necessary. You should have a reasonable understanding of Python syntax and features, but there is no need to be proficient in all aspects. We encourage the exploration and exchange of technical issues. If you frequently help others one-on-one (or in a group), that would be even better.

We are looking for at least 10 or more teaching assistants, and the more, the better.

  • Others

If you are interested in actively promoting long-term reforms for the SI 100B/100F courses, please directly contact us.

Requirements

  • EQUITY, rather than EQUALITY.

Among all the people willing to accept your help, prioritize those who need it the most.

Furthermore, even if you cannot meet the needs of everyone within a specific time frame, do not let that discourage you from providing assistance. You have the freedom to choose whom to help, as long as you genuinely aid others in learning knowledge and skills, rather than simply completing a specific task for them. Additionally, one of the goals of this program is to expand its reach by involving more volunteers and covering as many individuals as possible who are willing to receive help.

  • TEACH, rather than TECH.

We are NOT claiming that the difficulty of teaching SI 100B/100F is unimportant or completely erroneous. Quite the opposite, our main focus is on how to effectively impart the knowledge and skills that freshmen need in SI 100B/100F and how to equip them for success in the academic community.

Therefore, you do not need to be an expert in a specific field, and the level of your expertise in the subject matter may be somewhat orthogonal to your ability to deliver a compelling lecture. What we value most is your accumulated experience in teaching or organizing, as well as your willingness to present complex knowledge in a suitable manner to different students.

  • ALL and EVERYONE.

Please note that this is not about being politically correct. The lack of diversity is a serious issue that has persistently existed in our previous teaching teams.

We welcome and encourage female students (regardless of sex or gender) to participate in our program. Despite the most people in SIST or in ShanghaiTech University are male, from my personal experience in major teaching discussions, the representation of women (especially as women, rather than assimilated into male-dominated community) has often been lacking. We need your support and strength.

We also welcome and encourage non-SIST students to participate in our program. In our past teaching experiences, we observed significant differences in the understanding of this course between SIST students and those from other schools. These discrepancies may be related to their varying perceptions of the course’s relevance. However, we have found that the current teaching content and methods are not entirely suitable for all students. Therefore, we need input and suggestions from non-SIST students to improve the teaching effectiveness of this course.

Contact

If you wish to contribute to this project, please directly email me.

Acknowledgement

Thank you, Clarive (Leader of GeekPie) and GeekPie, for your tremendous support to this project.

Thank you, TAs and Instructors from the Python part, for your support to me.

Thank you, all the friends who reviewed this document and provided valuable feedback for improvement.

And lastly, thank you, for reading until the end.