About this course
During this course, your teaching staff will be accompanying you in discovering how to conceive, and construct, “networked systems”.
That implies, of course, discovering how the net works (pun intended), what a protocol is, what a system is, and what the different acronyms that you might encounter really means: TCP/IP, SMTP, NAT, NATP, etc. It also implies writing programs which communicate over the Internet — who knows, maybe you will be getting the impulse to starting the next Google or FaceBook during this course?
This course will consist of 2 parallel activities, through which your teaching staff (which you can see to the right) will accompany you:
- Basic lectures, which introduce key technological concepts for conceiving network systems
- Lab Exercises, which will take you "from neophyte" to a competent networker, and which will teach you how to write communicating programs, and have them talk to each other across the Internet.
Lectures and lab exercises will (typically) alternate ; homework will be an ongoing activity for you during the course - and, unsurprisingly, the final exam will be the final activity at the very end of the course.
-
Lectures serve to provide an abstract "programmers overview of computer network principles and architectures", and will cover topics such as:
-
How does the Net Work?
-
Network Programming
-
Network Configuration
-
Components of a Computer Network
-
The Domain Name System
-
NAT, NAPT, ...
-
...
-
Lab Exercise Sessionsserves to give you practical experiences in computer networking - in particular, but not exclusively, in how to write programs that communicate over the network. Each lab exercise session will happen in a computer room, and will be structured as follows:
-
Quizzes are (graded) events, during the first 15 min of each lab exercise session, and will cover the material covered in lectures(s) since the previous lab exercise session. These quizzes serve to give you both a motivation for revising the material from previous lectures, as well as to allow you to gauge your level of understanding well in advance of the final exam.
-
Hands-on networking, which will have you either work on a tutorial, or an assignment.
-
Tutorials serve to help you acquire a certain set of skills, in a very guided step-by-step fashion. This may be, for example, how to write a program that communicates over the network, or how to set up a small computer network.
-
Assignments are (graded) more independent and less guided activities, where you will be told what the end-result of your work should be, but not be given a step-by-step tutorial to follow. While you will be working independently, of course your teachers will be present to help you in your design, and implementation, of a communicating system. Assignments will be graded.
-
Homework is what you do between lab exercise sessions - and what we expect you to do is to study the material from the lectures and to finish the assignments, that have been given as part of the lab exercise sessions. This serves to ensure that you get a chance to encounter all possible "difficulties" in a setting, where you will have a chance to (at the next lab exercise session) discuss them with your teachers, and resolve them with their help, before handing in your assignment for grading.
-
The Final Examis, in part, a way to evaluate what you have retained from the course, and to give you a final grade. However more significantly, it is also there to aid your revising of the course material, and thus to reinforce your learning process. The final exam will be a multiple-choice questionnaire, and will - in a nutshell - be a longer version of the quizzes that you have seen during the lab exercise sessions. Thus, if you've prepared continuously for the weekly quizzes, if you've done well in those, and you review the course material diligently, then you should be well prepared also for the final exam.
Evaluation:
Your final grade for this course will be made up from three components:
-
Final exam (50% of your final grade)
-
20 multiple-choice questionnaire "on computer"
-
Covering the entire course syllabus
-
Graded /20
-
Weekly quizzes (25% of your final grade)
-
Max 15 min (timed) at the very start of each lab exercise session
-
On the subjects treated in the lectures since the last lab exercise session.
-
Combined grade /20
-
Graded Assignments (25% of your final grade)
-
Homework == Extended versions of your work done during the lab exercise sessions
-
For each assignment, you will demonstrate your code to a teacher + submit
-
Combined grade /20
Language:
English
Learning outcomes
-
Lectures serve to provide an abstract "programmers overview of computer network principles and architectures", and will cover topics such as:
-
How does the Net Work?
-
Network Programming
-
Network Configuration
-
Components of a Computer Network
-
The Domain Name System
-
NAT, NAPT, ...
-
...
-
Lab Exercise Sessionsserves to give you practical experiences in computer networking - in particular, but not exclusively, in how to write programs that communicate over the network.
Examination
Evaluation:
Your final grade for this course will be made up from three components:
-
Final exam (50% of your final grade)
-
20 multiple-choice questionnaire "on computer"
-
Covering the entire course syllabus
-
Graded /20
-
Weekly quizzes (25% of your final grade)
-
Max 15 min (timed) at the very start of each lab exercise session
-
On the subjects treated in the lectures since the last lab exercise session.
-
Combined grade /20
-
Graded Assignments (25% of your final grade)
-
Homework == Extended versions of your work done during the lab exercise sessions
-
For each assignment, you will demonstrate your code to a teacher + submit
-
Combined grade /20
Resources
Additional information
- More infoCoursepage on website of École Polytechnique
- Contact a coordinator
- CreditsECTS 3
- LevelBachelor
- InstructorsThomas Clausen
- Mode of instructionOnline - at a specific time
Offering(s)
Start date
10 February 2025
- Ends15 July 2025
- Term *BS - 2nd year - Spring semester (S4)
- Instruction language
- Register between29 Oct - 29 Nov 2024
Enrolment openApply now