- Edwin Solares (Instructor)
Basics -Schedule -Course Components - -Grading -Policies
In this course, we'll explore a number of Software Tools & Techniques that are used commonly by developers in their day-to-day work. You'll learn how to manage files and programs from the command line, and you'll get direct practice (and build muscle memory!) with keyboard shortcuts, tricks, and techniques for managing data and programs. Throughout, you'll exercise and improve your skills in program understanding and debugging.
This web page serves as the main source of announcements and resources for the course, as well as the syllabus.
Basics
Lecture:
- In person: Franklin Antonio Hall 1011, Mon-Thurs (9:30am-10:50am)
- Remote: Discord #livestream channel 11:00am-12:50pm. Recordings from A section available after via Podcasts.
Discussion:
- In person: Franklin Antonio Hall 1450, Mon (11:00am - 12:50pm)
- Remote: Remote: Discord #livestream channel Tuesdays @ 9:00am-10:50am. Recordings available from A sections via Podcasts.
Labs:
- In person: Computer Science Engineering Basem*nt B260 Wednesday (11am or 1pm)
- Remote: https://ucsd.zoom.us/j/92177661143 Wednesday (3pm or 5pm)
PA's/Homework:
- Prairie Learn Link - Under the homework section (autograded)
“Skill Demonstration” Exams: Flexible scheduling in weeks 2,3,4 and 5
- Prairie Test Link - signing up and taking the skill demos (autograded)
- In person: Register TTC slots via Prairietest link above
- Remote: Register via Remote zoom slots via Prairietest link above
Final Exam (used for making up test credit): Flexible scheduling on week 5. Maximum of 1 Make up for Skill Demos.
Podcasts: podcast.ucsd.edu
General Class Q&A Forum: Discord link on Canvas!
Code Q&A Forum: Piazza
Gradescope: https://www.gradescope.com
Textbook/readings: There's no official textbook, but we will link todifferent online resources for you to read to supplement lecture. There are a few good general overall resources if you want others to peruse, but these aren't required:
- Intro to Programming in Python by Soosai Raj, et al. Available for free on Stepik (requires you to create an account).
- Learn AI-Assisted Python Programming by Porter and Zingaro. Available for free as an eBook through the UC San Diego library (requires SSO).
Office Hours Calendar
Schedule
The schedule on the sidebar outlines topics, due dates, and links to assignments. Theschedule of lecture topics might change slightly, but I post a general plan soyou can know roughly where we are headed.
Syllabus
There are several components to the course:
- Lecture sessions
- Weekly quizzes
- Weekly Homework
- Weekly Lab sessions
- Lab reports
- Skill Demonstrations
- Project
Homework
Homework is released on a platform called PrairieLearn, and will generally consist of programming exercises and multiple choice questions. They are due the Sunday after they are released.
Labs
The course's lab component meets for 2 hours. In each lab you'll switch betweenworking on your own, working in pairs, and participating in group discussionsabout your approach, lessons learned, programming problems, and so on.
The lab sessions and groups will be led by TAs and tutors, who will note yourparticipation in these discussions for credit. Note that you mustparticipate, not merely attend, for participation credit. Furthermore, if you do not finish all PrairieLearn tasks by the end of lab, you will have until the day to complete those tasks for lab credit. PrairieLearn tasks and participation both equally contribute to your lab grade.
If you miss lab, you'll still be held accountable for understanding therelevant material via Skill Demonstrations and Lab Reports. You can miss 1 labswithout it impacting your grade (see Grading below). There is noway to make up a lab, even for illness, travel, or emergencies. My preferencewould be to require all 5 labs for an A, and have some kind of excusedabsences. However, tracking excused absences doesn't really scale, so the “onefor any reason” policy is how we handle it. You don't need to justify yourmissed labs. Contact the instructor if you'll miss more than 1 labs forunavoidable reasons.
Lecture Sessions
Lecture sessions are on Monday through Thursday.
For In-Person students: Lecture will take place Mondays-Thursdays at 9:30am at Franklin Antonio Hall 1101. Discussions are at 11am on Mondays at Franklin Antonio Hall 1450.
For Remote students: Livestream will be available Monday-Thursday at 11:00am for lectures. Discussions are on Zoom on Tuesdays at 9am.
In each lecture, we'll have a paper handout (also available electronically) starting Week 1 Tuesday. Atthe end of lecture you'll have a chance submit your handout to Gradescope. Youcan do this by scanning it in the Gradescope app (for iOS and Android) orthrough the web interface. To get participation credit for lecture, you have tosubmit a handout filled in with reasonable effort. It's fine if answers aren'tright, and some days don't have right answers. It's fine if things aren'ttotally complete, and some days we won't finish everything. But it should beclear from what you submit that you followed along and worked on the exercises we did in class.
If you miss class, you can submit them up until the start of the next class aslate submissions. We recommend completing them while watching the podcast.We'll have TAs on hand as backup to collect the physical paper/help you scan andsubmit if you have any issue submitting. See Grading below for therequired submissions and how that impacts your grade.
Discussion
Discussions will take place on Mondays at 11am and are led by your teaching assistants.The purpose of discussions is to review materials covered in lecture, labs, homework, and previous skill demos. There will also be extra coding exercises covered as well. This is the time for you to ask the teaching staff to clarify any questions you may have about the material.Starting from week 2, participation in discussions is mandatory and contibutes towards your Discussion and Lecture Participation grade.
Weekly Quizzes
Each week there will be an online quiz on PrairieLearn. The purpose of this quiz is to make sure everyone has checked in on the concepts we will be using in lab on Wednesday and Thursday. They are open for late submission until the end of the quarter, butsee grading below for how late submissions correspond to grades.
Sometimes quizzes have associated readings or videos to supplement lecture.
Each week there will be an online, untimed, multiple-tries quiz due on Wednesday at 9 am.
Skill Demonstrations
Several times during the quarter, you will complete a skill demonstration via PrairieTest -- this course's version of exams. While skill demos are not explicitly cumulative, topics in programming do build on previous ones, so it is important to remember concepts from earlier in the class.
Rules:
- During your skill demo, you cannot ask any questions related to the content of the exam. However, you may ask questions related to getting set up on your lab computer and opening the exam.During the exam, you are not allowed any resources besides the notes sheet. Communication with other students is also not allowed.
- During week 5, you'll have the opportunity to improve scores for one skill demonstrations. Sign ups for these make up skill demos will be released during week 4. If you miss the skill demonstration for any reason, it counts as a Try Again.
There will be skill demonstrations in weeks 2, 3, 4, and 5 of the quarter. More detailsabout how you'll complete them will be shared in lab.
Skill demonstrations will take place in CSE B250 for Section A (In person section) and on Zoom for Section B (Remote section), unless you have an AFA letter. You must schedule a time to take your exams in advance. To do this, visit prairietest.com and log in with your UCSD-associated Google account. From there, you will be able to see the exams available for reservation. Scheduling of exams will open on every Friday starting week 1.
Students requesting accommodations for this course due to a disability must provide a current Authorization for Accommodation (AFA) letter (paper or electronic) issued by the Office for Students with Disabilities (osd.ucsd.edu). Students are required to discuss accommodation arrangements with instructors and OSD liaisons in the department IN ADVANCE of any exams or assignments. Students with approved accommodations will be taking their exams at the Triton Testing Center. Exams must be scheduled at least 72 hours in advance at http://tritontesting.ucsd.edu.
Project
Details to be announced later in the quarter.
Grading
In order to get an A in the class it is recommended that you get an A in each component of the course. A+'s will be assigned at the end of the quarter and only to students showing exemplary accomplishments across all components of the course, and have shown strong collaboration with their peers.
A table that contains the grading scheme data. Each row contains a name, a maximum percentage, and a minimum percentage.
Letter | GradeRange |
---|---|
A | 100% to 94% |
A- | < 94% to 90% |
B+ | < 90% to 87% |
B | < 87% to 84% |
B- | < 84% to 80% |
C+ | < 80% to 77% |
C | < 77% to 74% |
C- | < 74% to 70% |
D | < 70% to 60% |
F | < 60% |
** A+'s will be assigned to those that performed exemplary throughout the quarter at the instructors discretion** If a student fails to get 55% at any category (shown below) of the class, it will result in an F for the course.
The weighted breakdown of each category is as follows:
Category | Percentage |
---|---|
Discussion and Lecture Participation | 5% |
Quizzes | 15% |
Homeworks | 10% |
Project | 15% |
Skill Demos | 40% |
Lab | 15% |
Policy
Academic Integrity
Individual assignments describe policies specific to the assignment. Somegeneral policies for the course are here.
Artificial Intelligence
You can use an AI assistant like ChatGPT or Copilot to help you write code in this class. If you do, you are required to includea section that shows:
- The prompts you gave to ChatGPT, or the context in which you used Copilotautocomplete
- What its output was and how you changed the output after it was produced
This helps us all learn how these new, powerful, and little-understood toolswork (and don't).
Skill Demonstrations and Academic Integrity
Instructions for skill demonstrations will be posted in the week before they happen.You're free to collaborate with others on preparing forthe skill demonstration, trying things out beforehand, and so on.
You cannot share details of your skill demonstration with others untilafter you receive your grade for it. You cannot communicate with anyone during the skill demonstration.
Quizzes and Academic Integrity
You can work on weekly quizzes with other students.
Anticipated Frequent Questions
Can I attend a lab section other than the one I'm enrolled in?
No, please do not try to do this. The lab sections have limited seating and arefull. We cannot accommodate switching.
How can I switch sections?
You have to drop and re-add (which may involve getting [back on] the waitlist).Sorry.
What do I need to do to get an A?
See the grading section above.
Can I leave lab early if I'm done?
The labs are designed to not be things you can “finish”. Labs have plenty ofextension and exploration activities at the end for you to try out, discuss,and help one another with. Co-located time with other folks learning the samethings is precious and what courses are for. Also, if you need an extrinsicmotivation, you won't get credit for participation if you don't stay, andparticipate, the whole time.
Do I have to come to lab?
Yes, see grading above.
What should I do if I'm on the waitlist?
Attend and complete all the work required while waitlisted (this is consistentwith CSEpolicy).
I missed lecture/have to travel for a lecture, what should I do?
Find the associated handout for the week above, watch thepodcast, and hand in ascan/digital PDF of the handout to Gradescope before the next class.
I missed the late deadline for a lecture handout submission, what should I do?
You cannot submit a lecture handout after the posted deadline on Gradescope;move on and focus on getting to the next ones!
I missed lab, what should I do?
You cannot makeup missed lab credit (but have a few “allowed” misses). Makesure you understand the material from lab because it will be used on skilldemos and lab reports; try to do the parts that don't involve discussion onyour own, and review your group's lab notes.
I missed a quiz deadline, what should I do?
You can submit it late until the end of the quarter. Generally we allow lots(think like 1/3 to 1/2) of the quizzes to be late without it impacting yourgrade, but do take them seriously before lab so you're prepared.
I missed my skill demonstration time, what should I do?
You will need to use your 1 make-up. No other make-ups are allowed.Scheduling: Make-ups will be available in week 5.
Where is the financial aid survey?
We do this for you; as long as you submit a quiz, lecture handout, or do a labparticipation in the first week, we will mark you as commencing academicactivity.