Extreme Design: CSCI 3033-008
Instructor: Prof. L. Subramanian
312 Warren Weaver Hall,
Tuesday 7-9 PM
The Extreme Design class is an intensive project-oriented class that is specifically designed for students interested in translating cool computing centric ideas to functional end-to-end computer system prototypes (hardware or software) with the goal of encouraging students to pursue bold startup-like ideas. This class is open for students at all levels (PhD, MS and undergraduate) and in specific cases to students in other disciplines (who already have a cool project idea). Right from the beginning, students in the class will form small teams where each team will work on a single project idea that solves an important research or societal problem. Each team is expected to design and implement an end-to-end system prototype that will be showcased at the end of the semester. Specific project ideas will be provided by the instructor and student teams are open to pitch their own ideas. The expected workload per student can be 15-20 hrs a week and teams are expected to constantly interact with other teams to discuss and exchange ideas.
The broad theme for this semester's Extreme Design class is: "Sensing, Crowdsourcing and Data". The class will cover several real-world application problems and scenarios (health, energy, education, medicine) which can be addressed based on the theme of gathering and analyzing data from the physical environment using smart sensing platforms and crowdsourcing systems. With the growing popularity of Internet of Things, there has been a dramatic growth in the number of unique devices, platforms and programming environments with a broad array of capabilities that were not open earlier for prototyping and development. Students will be provided exposure to several tools and platforms that can be leveraged by individual teams in their project design and implementation. Specific topics covered include: basics of programming embedded systems, sensing and actuation platforms, data analytics tools, crowdsourcing systems and relevant material for individual project ideas.
The class is open to students across disciplines but is best suited for students who have a strong background in programming and are passionate towards pursuing startup-like ideas. Since this is an intensive class, class enrollment is limited and interested students should first obtain the permission of the instructor to register. Please send your CV to the instructor and schedule a time to meet with the instructor. For Computer science students, the pre-requisites are the relevant classes so that students are comfortable in design and implementation of systems (for undergraduate CS students, the prerequisite is 202 and for MS students, there are no pre-requisites but are expected to be proficient in operating systems and programming). Students in other disciplines, who have interesting computing centric problems in their domains are welcome to take the class but should first schedule a meeting with the instructor.
The lecture series of the class is going to be dependent on the nature of the projects in the class.
Lecture 1: Introduction to Projects (Project description)
How to choose a project?
Project Ideas discussion: “Sensing, Crowdsourcing and Data”
Lecture 2: Projects Discussion (continuation)
In depth discussion of Class Projects:
Smart Energy Metering in Buildings
Human Trafficking Analytics
Big Data Stream Analytics Platform
Emotion Mapping of Human Faces
Lecture 3: Introduction to Basic Concepts in Machine Learning
Unsupervised Learning: An Introduction
Prof. Bing Liu’s CS583 class (Refer to Lecture 5)
Supervised Learning: An introduction
Prof. Bing Liu’s CS583 class (Refer to Lecture 4)
Lecture 4: Introduction to Basic Concepts in Time Series Analysis
Project Updates – Milestone 1
Refer to Time Series Analysis (Lectures 1 and 2)
Lecture 5: Introduction to Text Analytics Techniques
Prof. Dan Klein’s Statistical NLP class (Refer to Lectures 2,3)
Lecture 6: Text Analytics Techniques (contd)
Prof. Dan Klein’s Statistical NLP class (Refer to Lectures 3,4)
Lecture 7: Image Processing and Vision Techniques Basics
Project Updates – Milestone 2
Prof. Rob Fergus Computer Vision Class (refer to Lectures 2,3,4)
Lecture 8: Introduction to Arduino and Wireless Sensing
Arduino + Microcontroller Basics
Introduction to Zigbee (802.15.4)
Lecture 9: Startup Basics + Pitching your own VC deck
• P. Graham, "How to Start a Startup", Mar 2005
• S. Blank, "The Path to Disaster: The Product Development Model", 2006
• Steve Blank: Lean Launchpad Chapter 2: Customer Development Model. http://www.ctinnovations.com/images/resources/Startup%20Owners%20Manual%20-%20BlankDorf.pdf
• Frank Rimalovski et al. Talking to Humans
• Forbes Notes on the Ultimate Pitch Deck.