Internet-of-things Sensors, Systems, And Applications
EECS 395/495 - Winter 2018

Time and Location

11-12:20 TuTh
Tech LG68


Josiah Hester
Email: josiah at northwestern dot edu
Office: L389 Tech
Office hours (weekly in L389 Tech):
Tuesday 1:00-2:30pm
Thursday 1:00-2:00pm
...or by appointment if needed

Course Schedule

Assignments, resources, and readings will be posted on the course schedule, found at the following:

The schedule and syllabus (this site) are a living document and I will be updating the content throughout the semester. Please check it regularly.

Course Resources

  • Course website on Canvas
  • How to Read a Paper by S. Keshav.
  • Writing Reviews for Systems Conferences by Timothy Roscoe.
  • How to Read an Engineering Research Paper by William Griswold.
  • How to Do Great Research, by Nick Feamster and Alex Gray
  • Matt Might's Blog, specifically on Grad School
  • How to Get Your MobiSys Paper Rejected, by Dave Kotz
  • Course Description

    Buildings that recognize and adapt to their occupants, teams of drones that perform search and rescue or survey architectural digs, invisible implantable or wearables devices that support and protect patients in hospitals and homes, swarms of postage-stamp sized satellites orbiting earth supporting global scale space experiments. These applications and others have motivated the development of the Internet-of-Things; a paradigm for computing where trillions of tiny, even invisible computers support daily life, infrastructure, and humanity in general. While promising to revolutionize computing and the world, this vision of computing is far from fully realized–with many challenges in energy efficiency, miniaturization, networking, information retrieval and processing, security and privacy, and many other areas.
    This seminar style course will cover recent exciting work, and important early work in embedded systems, wireless sensor networks, computer architectures and languages, and other IoT related literature. We will investigate energy aware computing on tiny devices, new ultra low power communication paradigms, and emerging hardware platforms and operating systems. We will also discuss and analyze security, privacy, sustainability, and ethical issues that arise from the ubiquitous, invisible information gathering devices of the IoT. Finally, we will propose, exchange, analyze, and defend new ideas, systems, and applications for the future IoT.
    This course aims to: (1) provide an introduction to the research and systems problems encountered at the edge of the IoT, (2) equip students with the ability to conduct original systems research, including generating and communicating ideas, (3) educate on the societal, security, and ecological impacts of ubiquitous computing. We will explore a wide range of challenges that arise when designing computing systems that are untethered, that move, and that have to operate in conditions that change and may be difficult to predict at design time.
    This course is structured around three activities: lectures, group discussions/activities, and written assignments. Students are expected to read, write, thinking critically and creatively, and actively participate in class discussions.


    Reading material for the course will come from selected papers from the mobile systems, sensor networks, and incidental IoT literature. Links to these papers will be posted on the course website and / or Canvas.
    Recommended Reading: Oliver, J. The Incomplete Guide to the Art of Discovery. Columbia University Press. 0-231-07620-7. (1991, 208 pages), PDF. This is a fun and extremely valuable read for any aspiring or current graduate student in the sciences.


    There are no hard prerequisites for this course. An undergraduate level understanding of how software systems are designed and programmed will be helpful. Previous operating systems, networks, computer architecture, or embedded systems courses or experience will be beneficial as well.


    Research Proposal 45%
    Paper Reviews 40%
    Class Participation 15%
    A final score of 90% will get you an A, 80% = B, 70% = C. Grades are not curved. It is possible for everyone to get an A.

    Email Policy

    I get a ton of email and use filtering to keep things sane. Please include the string, "395" or "495" somewhere in the subject line of all class-related emails. During normal working hours (9-5) on week days I check email frequently and I will make every effort to respond soon (hopefully the same day). I do check email on weekends and evenings, but not nearly as frequently. So, you should expect longer delays.
    All work, unless stated otherwise (reading responses) will be turned in to me via email.

    Paper Readings/Reviews/Responses

    Most class periods you will have 2-3 papers to read, in preparation for the class discussion, brainstorming, and activities. You need to write a review for at least two of the papers. The reviews must be entered on the corresponding Canvas discussion topic by 8PM the night before class (so I can integrate them in the discussion the following day) and should be used as reference notes for the in-class discussion.
    How to write a review: Before each class you must read and write a short review of at least two of the assigned papers (however, it is expected you will read all papers). The review should answer the following questions:
  • What is the problem this paper addresses, and why is it important (the motivation)?
  • What is the key idea of this paper?
  • What are the two main strengths of this paper?
  • What are the two main weaknesses of this paper?
  • Which figure or experiment was most compelling in support of the hypothesis, and why?
  • The very best reviews will include discussion of key assumptions, applications of future work not mentioned by the authors, and comparisons to other work. Think about things peripheral to the paper: including future work, applicability to other areas, societal impact, security and privacy concerns etc. We will discuss these topics and more in class.
    Format: Their is no required format, responses should be a few paragraphs, use bulleted lists and other forms of organizations, and be eminently readable. See the course resources for ideas.
    Grading: These responses are completion grades unless I start seeing particularly bad / lazy reviews; I will spot check the review content as we go, push yourselves and your classmates to think deeply so we can have lively discussion, debate, and idea generation. When I see a particularly well written, thoughtful review, I will highlight it here, and on Canvas for emulation.

    Project Proposal

    Students will develop a small research proposal in stages throughout the course. This proposal will require students to formulate ideas, conduct literature searches, collect initial results, and identify opportunities for novel research. This proposal has two goals: (1) for students to leave the class with novel ideas that can be integrated into their own research or implemented in other classes, (2) to expose students to the scientific pursuit, or strengthen their existing research abilities. The initial stages of the proposal will be done individually, and the final stages in small teams.
    Several stages of the project proposals will be peer reviewed by other members of the class. Proposal content will be graded by the instructor and students will be graded on the quality of the reviews they write, not on the reviews they receive.
    Please see the research project proposal document here for more information.

    Late Work

    Work will not be accepted late. If you have a well documented, unforeseeable, and unavoidable crisis, please come talk to me about it, as early as possible.

    Attendance Policy/Participation

    Students may leave after 15 minutes if the professor or guest lecturer does not arrive within that time.
    In-class discussions are a vital part of this course.
    Students are expected to actively participate in discussions. I consider a student to be actively participating if they are asking questions and contributing ideas. Participation grades are based on the number of days a student actively participated. As mentioned above, you can opt-out of discussion up to three times without hurting your grade.

    Students with Disabilities

    In accordance with the University’s policy, I will do my best to provide reasonable accommodations to students with disabilities. Students should contact Student Disability Services and myself to discuss their individual needs for accommodation as early as possible — at least a week before special accommodations are needed.

    Academic Integrity

    Integrity, honor, and dignity are fundamental characteristics of the engineering profession. Engineers strive to exhibit these characteristics while using their knowledge, skills and experience to improve the world around them.
    Violations of academic integrity, including copying on reading response, plagiarism, and anything violating the Academic Integrity policies of Northwestern University, will be taken extremely seriously and will be reported. Violations will also result in a zero grade on the assignment and will most likely result in a failing grade in the course.
    Just don’t do it.