The 21th century is, if anything, becoming a data-driven century. Interaction with everyday objects may yield a wealth of information, especially when correlated: if in an apartment the fridge door is being opened and closed regularly, then presumably apartment is inhabited ; if a drinking glass is subsequently emptied, presumably the inhabitant is alive and well, and, is staying both fresh and hydrated ; if the BBQ or the oven is used frequently, perhaps the inhabitant is either overeating (and so, a potential customer for diet plans) or is entertaining frequently (and so, a a potential customer for party supplies) — something which analysing the usage patterns of the door bell would reveal…

A premise for being able to analyse usage patterns and interactions is, of course, that these physical actions are captured and transformed into data — and, that these data are communicated from everyday objects with and through the Internet, and to the cloud.

And so, the 21th century is necessarily also the connected century: smartphones, watches, fridges, toothbrushes, drinking glasses, coffee machines, medical implants, BBQs, office plants, and forks are all becoming connected objects, generating data — and thus, becoming part of the Internet.

Outside of the consumer market, knowing the state of a machine, of an airplane engine, or of a power substation, permits scheduling predictive maintenance and avoid accidents — embedded sensors able to capture, and communicate, this state is a necessary premise.


Example of a "misunderstood market"As a matter of fact, a company launching a product today that doesn't "run an app" and "connects to the Internet" is a company, which just hasn't grasped the needs (or, at least, the desires) of its market - much as the guy installing the bike rack on the left, clearly misunderstood his "target market".

In order to ensure that YOU do not end up being that gal/guy, building a product miserably missing the market, this course provides you with the core competencies, necessary for developing connected systems.

This course:

    • Offers a pragmatic and practical approach to communicating systems and to computer networking
    • Studies, for each of the four major functional layers in a protocol stack (data-link, internetwork, transport, and application) the fundamental ideas, algorithms, and architectural principles, that apply “from the Internet, and to the IoT”
    • Provides an in-depth tutorial in the principles behind TCP/IP Networking
    • Introduces and decrypts modern Internet and IoT protocols: from IPv6 to 6LoWPAN, from ALOHA through Ethernet and WiFi to LoRa and Bluetooth — and from the WEB and REST to CORE And CoAP
    • Provides practical experience in developing networked applications, and in developing and implementing protocols.

In short, this course provides an in-depth understanding of “how the net works” (pun intended), and gives the necessary baggage for an engineer (regardless of area of exercise) to be able to design communicating systems.

This course is self-contained: it assumes some programming skills, and a lot of curiosity — and will introduce the rest as it goes along. Each lesson will consist of a lecture, followed by 2h of lab (TD). This course is calibrated so that a student should expect to spend 1-2h/week outside of class, reviewing material and/or finishing exercises.

Requirements: A good dose of curiosity is required.
(Having followed INF321 or INF311+411 probably won’t hurt)

Evaluation mechanism: Weekly submissions (either of homework, or of quizzes) worth 50% of the final grade, and a final exam QCM worth the other 50% of the grade.

Language: English (with, at least, bilingual teaching staff)