Last updated: Aug 29, 2022
This course will provide a broad understanding of networked systems design and implementation. Topics include techniques for building distributed applications, sockets programming, Remote Procedure Calls, scale-out distributed directories, managing scalability, networked storage, indirection, load balancing, and some basics about the design and implementation of cloud-computing interfaces.
The course will include a series of projects, some optional homeworks, mid-term exam, and a final exam.
We’ll be programming in the Go language, however we do not expect students to have experience in this language prior to taking this course.
CSE 124 is a senior upper-division elective, and CSE 224 is the graduate-level offering aimed primarily at MS students and non-systems Ph.D. students. Note: You cannot receive credit for both CSE 124 and CSE 224.
Course Staff
-
Professor: George Porter
- E-mail: gmporter@cs.ucsd.edu
- Office hour: Wed 11-12pm
- Physical office hour location: CSE 3104
- Zoom office hour link: https://ucsd.zoom.us/j/91759134528
-
TA: Aditya Barsainya
- E-mail: abarsainya@ucsd.edu
- Office hour: Monday & Wednesday 12 pm to 1 pm
- Physical office hour location: EBU3B Room B270A (CSE department basement)
-
TA: Linfang He
- E-mail: L8he@ucsd.edu
- Office hour: Tuesday 3:30pm to 4:30pm Zoom link; Wednesday 10am to 11am (EBU3B B260A)
-
TA: Abhishek Vijeev
- E-mail: avijeev@ucsd.edu
- Office hour: Tuesday and Thursday 10:30 to 11:30am (CSE B250A)
- Zoom link
-
TA: Tianrui Zeng
- E-mail: t2zeng@ucsd.edu
- Office hour: Tuesday 5-6pm and Wednesday 5pm to 6pm
- Zoom link
Logistics
Class: Tu/Thu 8:00am to 9:20am, Center Hall 119
Discussion section: Wed 8-9pm, Center Hall 115
Final exam: Dec 6, 2022, location TBD (check with official course schedule)
This course is being offered as an in-person, synchronous course. Physical attendance during the midterm and final exams is required. If you need to miss the final exam due to illness, you’ll receive an incomplete and will have to re-take the final during the Winter 2023 final exam period.
For office hours, you can attend in person and ask questions (following any required COVID protocols) or you can attend office hours remotely via Zoom. As a courtesy to the professor and TAs, we ask that you turn on your camera and microphone when you are asking questions or talking with the instructional staff.
Textbooks
“The Go Programming Language” by Donovan and Kernighan
- E-copy through the UCSD library: Free
- Paperback from Amazon: $36.49
- Paperback from an independent booksellers via IndieBound: $39.99
“Network Programming with Go Language” by Newmarch and Petty
- E-copy available on campus or via the VPN: Free
- Paperback from Amazon: $42.99
If you would like some additional background on basic networking concepts covered in the first two weeks, consult “Computer Networks” by Andrew Tanenbaum. It is available for free online:
- Available via UCSD library
Grading
- Five Projects: 65%
- Weights: P1: 5%, P2: 12.5%, P3: 20%, P4: 20% P5: 7.5%
- Exams: 35%
- Midterm: 15%
- Final: 20%
Late policy
You can submit assignments up to 48 hours past the deadline in exchange for a 25% point reduction. So as an example, a 10 point assignment turned in 40 hours rs past the deadline could receive a maximum of 7.5 points. In fairness to students who submitted the assignment on time, no help or guidance from the teaching staff will be allowed during these two late days, and you should not post any messages to Piazza during the late days.
Collaboration and academic integrity policy
The projects are to be done individually, and you should not look at another student’s code or let another student look at your code. Do not put your code online (e.g. in a public GitHub repository) during the quarter. You may not use GitHub Co-Pilot or another AI-based code generator as part of your project.
You are free to talk with other students about the Go language itself, about course materials and whatever is covered in lecture, and you are encouraged to study together for exams. When in doubt, please ask the instuctor first.
“Academic Integrity is expected of everyone at UC San Diego. This means that you must be honest, fair, responsible, respectful, and trustworthy in all of your actions. Lying, cheating or any other forms of dishonesty will not be tolerated because they undermine learning and the University’s ability to certify students' knowledge and abilities. Thus, any attempt to get, or help another get, a grade by cheating, lying or dishonesty will be reported to the Academic Integrity Office and will result sanctions. Sanctions can include an F in this class and suspension or dismissal from the University. So, think carefully before you act by asking yourself: a) is what I’m about to do or submit for credit an honest, fair, respectful, responsible & trustworthy representation of my knowledge and abilities at this time and, b) would my instructor approve of my action? You are ultimately the only person responsible for your behavior. So, if you are unsure, don’t ask a friend but rather ask your instructor, instructional assistant, or the Academic Integrity Office.”
You can learn more about academic integrity at academicintegrity.ucsd.edu (Source: Academic Integrity Office, 2018)
Diversity and Inclusion
We are committed to fostering a learning environment for this course that supports a diversity of thoughts, perspectives and experiences, and respects your identities (including race, ethnicity, heritage, gender, sex, class, sexuality, religion, ability, age, educational background, etc.). Our goal is to create a diverse and inclusive learning environment where all students feel comfortable and can thrive.
Our instructional staff will make a concerted effort to be welcoming and inclusive to the wide diversity of students in this course. If there is a way we can make you feel more included please let one of the course staff know, either in person, via email/discussion board, or even in a note under the door. Our learning about diverse perspectives and identities is an ongoing process, and we welcome your perspectives and input.
We also expect that you, as a student in this course, will honor and respect your classmates, abiding by the UCSD Principles of Community (https://ucsd.edu/about/principles.html). Please understand that others' backgrounds, perspectives and experiences may be different than your own, and help us to build an environment where everyone is respected and feels comfortable.
If you experience any sort of harassment or discrimination, please contact the instructor as soon as possible. If you prefer to speak with someone outside of the course, please contact the Office of Prevention of Harassment and Discrimination: https://ophd.ucsd.edu/.
Students with Disabilities
We aim to create an environment in which all students can succeed in this course. If you have a disability, please contact the Office for Students with Disability (OSD), which is located in University Center 202 behind Center Hall, to discuss appropriate accommodations right away. We will work to provide you with the accommodations you need, but you must first provide a current Authorization for Accommodation (AFA) letter issued by the OSD. You are required to present their AFA letters to Faculty (please make arrangements to contact me privately) and to the OSD Liaison in the department in advance so that accommodations may be arranged.
Basic Needs/Food Insecurities
If you are experiencing any basic needs insecurities (food, housing, financial resources), there are resources available on campus to help, including The Hub and the Triton Food Pantry. Please visit http://thehub.ucsd.edu/ for more information.
>> Home