CS 293D: Information Retrieval and Web Search

This course covers advanced topics on information retrieval, web search, and related scalable information systems. The topics include search engines and advertisements, web crawling, classification, indexing and data serving, ranking and recommendation, user behavior analysis, and online services. This course will also cover system and middleware support for building related large-scale Internet services.

 

CS 293G -- Cryptographic Engineering

Cryptography provides techniques, mechanisms, and tools for private and authenticated communication, and for performing secure and authenticated transactions over the Internet as well as other open networks. It is highly probable that every single bit of information flowing through our networks will have to be either encrypted and decrypted or signed and authenticated in a few years from now. This infrastructure is needed to carry over the legal and contractual certainty from our paper-based offices to our virtual offices existing in the cyberspace.

CS 292C: String Analysis

String manipulation is a crucial part of modern software systems; for example, it is used extensively in input validation and sanitization, and in dynamic code and query generation. The goal of string-analysis techniques is to determine the set of values that string expressions can take during program execution.