UEI – Computer Science

Overview

  • Practical information
  • Training philosophy
  • Course objectives
  • Evaluation

Practical information

Moodle (link)

  • Main entry point
  • Where all exams must be uploaded

PASS (link)

  • Schedule & classroom numbers
  • Skill evaluations

CS website (link)

  • Main website with all course contents

Discord (link)

  • Ask your questions between classes

Practical information

Who is in charge?

Brest

  • GrĂ©gory Smits – Computer Science (INFO) department
  • Bastien Pasdeloup – Mathematical and Electrical Engineering (MEE) department

Nantes

  • Charles Prud’homme – Automation, Production and Computer Science (DAPI) department
  • Remous-Aris Koutsiamanis – Automation, Production and Computer Science (DAPI) department

Practical information

Who will be teaching?

Teaching philosophy

A common pattern for all sessions

Presentation & objectives

  • Description of the session objectives

Before the class

  • A description of what you should do before arriving in class

During the class

  • A list of articles to study during the class
  • The slides presented during the class
  • A self-assessment quiz
  • A practical activity

After the class

  • A description of what you should finish or prepare before the next session

Teaching philosophy

Customize your learning experience

Compulsory contents

  • Compulsory contents correspond to the minimum expected knowledge of an engineer
  • Everything in these parts is possibly subject to evaluation

To go further

  • For articles, we provide extra contents to go deeper in the subject
  • For practical sessions, there are extra exercises to consolidate the notions

To go beyond

  • For articles, we provide a few links you can explore to continue exploring a topic autonomously
  • For practical sessions, we give extra tasks you can do, with less guidance than in “To go further”

Teaching philosophy

Important remarks

  • In some courses, you will notice corrections to exercises

    • Try to solve the problem / answer the question by yourself before checking them

  • Sometimes there will be no correction provided

    • It is a design choice, not an error!

  • Some articles are not finished yet (especially on advanced topic)

    • We are actively working on it
    • Be patient, they will be completed soon
    • Everything is still a work in progress $\rightarrow$ Don’t hesitate to give us feedback!!!

Course objectives

Main objective of this semester

Consolidate your knowledge in programming, algorithmics and computers in general


  • We will reason at the scale of a single computer

  • You will learn to solve a problem, using algorithms or based on existing data

  • In terms of programming languages, we will mostly use Python (Java examples are also provided)

  • Extending this to an ecosystem of machines is the main goal of S6

Course objectives

Key subjects

Environment

  • Understand your own machine, its operating system, files, permissions, etc.
  • Set up your programming environment

Algorithmics

  • Learn how to go from a problem to an algorithmic solution
  • Discover some properties of algorithms and data structures
  • Pave the way to advanced algorithmic strategies and artificial intelligence

Programming

  • Learn how to translate an algorithmic solution into a well-written program in Python
  • Discover different programming paradigms
  • Learn how to properly make sure a program works well

Course objectives

The project

  • During the whole semester, you will have to work on a small video game project called PyRat
  • More info during the first project session
  • Check the final tournament on YouTube!

Evaluation

Main objectives of this semester

  • Some of the activities will be evaluated to determine your grade

    • A 30mn exercise at the end of programming session 2
    • A MCQ at the beginning of the algorithmics session 5

  • The skills are assessed by the project

    • MCQs at the beginning of sessions (individually)
    • A deliverable from session 3 (in teams)
    • A deliverable from session 5 (in teams)
    • A final presentation (in teams)

Questions?