MSc thesis supervision
I am supervising students who conduct research in information retrieval and natural language processing. For both research directions, taking a look at papers at recent conferences (such as SIGIR, CIKM, WSDM, EMNLP, ACL) and ongoing benchmark efforts (MSMarco, SQUAD 2.0, GLUE, decaNLP, TREC) will help to figure out a topic of interest.
I also have a set of topics that I am ready to give away:
- Evaluate the usability of Macaw, a recently inroduced Conversational Information Seeking Platform, possibly extend it and run an interactive IR study with it.
- Extend SearchX, a collaborative search engine we built in-house, with shared workspace capabilities and run an interactive IR study with it.
- Analyze the effectiveness of multi-task learning for different IR tasks.
- Evaluate the use of efficient context-sensitive embedding approaches (variations of BERT & Co that do not rely on hundreds of millions of parameters) for different IR tasks and under performance constraints.
- Design, build and evaluate an extension to Visual Studio Code that enables information seeking for programming tasks directly in the IDE.
- Investigate UI elements that make collaborative search in the mobile setting (where screen space is a premium) a real possibility.
Below are the resources I have developed for my courses (some are more up-to-date than others): Big Data Processing, Web and Database Technology and Information Retrieval.
Big Data Processing
Since 2013/2014 I have been teaching the second year Bachelor course Big Data Processing at TU Delft (with 2016/17 being the last time for now). The course covers a range of technologies in the Hadoop ecosystem after a short excursion into the streaming world; I created the material based on a number of great books, including Mining of Massive Datasets, Data-Intensive Text Processing with MapReduce, Hadoop: The Definite Guide, Programming Pig and ZooKeeper.
Slides - 2016/17 Edition
- Streams I
- Streams II
- Algorithm design for MapReduce
- Pig I
- Pig II
- Graph algorithms
- 2 more lecture on Spark completed this course.
Assignments - 2016/17 edition
- Assignment 1: Streaming
- Assignment 2: Streaming and Hadoop
- Assignment 3: Hadoop
- Assignment 4: Pig data
- Assignment 5: Pig data
- Assignment 6: Giraph
- Assignment 7: Spark
A Sample of Previous Exams
- 24 questions on streaming
- 32 questions on MapReduce/Hadoop
- 10 questions on graphs and Giraph
- 12 questions on Pig/Pig Latin
Web (and Database) Technology
Since 2013/2014 I have also been teaching the first year Bachelor course Web and Database Technology (known as TI1506 or CSE1500) at TU Delft, together with Alessandro Bozzon. I teach the Web technology part, which turned out to be quite a challenge due to the wide variety of skill sets our incoming students possess (some work as Web developers, others have never written a single line of HTML before the start of this course). To level the playing field for the more than 300 (or 400, 500, 600,… it is increasing every year) students we have, we rely on the Learning Web App Development book, which introduces the modern Web stack in an accessible and practical manner. The lectures build on the material introduced in the book.
Web Technology Transcripts, Demo code, etc.
In the 2018/19 edition, we have roughly 900 students taking the course and so I finally bit the bullet and made extensive lecture transcripts and demo code and wrote it up all in a GitHub repository: https://github.com/chauff/Web-Teaching.
Feel free to use the materials (with acknowledgement)!
Web Technology Slides - 2017/18 Edition
- HTTP: slide decks 1 and 2
- HTML and Web app design
- Cookies and sessions
- Securing your application
Lab Assignments - 2017/18 Edition
Note: this course has five assignments and at the end the students will have developed a fully functioning Web application (in this year a habit tracker) with a database backend. The assignments build on each other and are executed in groups of two students; interviews with TAs lead to a pass or fail of an assignment.
A Sample of Previous Exams
Note: the samples below include database questions, which are covered in the other half of the course
Slides - 2017/18 Edition
After a few years of not teaching IR, I am back at it. This time, the Information Retrieval course covers core IR topics for half of the lectures and NLP topics (taught by Nava Tintarev) for the other half.
- IR evaluation
- Retrieval models
- Query refinement
- Interactive IR
- Personalization in (Web) search
- Neural models
- Learning to rank
I have also written a blog post about the IR project setup.
Slides - 2011/12 Edition
In 2011/12 I taught my core area of research in a Master course Information Retrieval at TU Delft. This course was my first excursion into the use of Hadoop & Co as part of my teaching, thanks to a grant from Amazon and their (at the time) “AWS Education” scheme - $3500 to allow students to use a real Hadoop cluster for their experiments.
The course material is quite old by now, but it may still be useful to some. It was also my first venture into the teaching of large classes, the structure and design of the course certainly reflects that.