Application Lab — Syllabus

Fall 2018, Interactive Media Business @ NYU Shanghai

Christian Grewell
applab
7 min readAug 15, 2018

--

About Application Lab

This is a project-based course where students ideate and develop small application prototypes and test them with potential users multiple times each week. The course is designed to take maximum advantage of NYU Shanghai’s small class sizes, location in mobile-first China, and the opportunities resulting from students and faculty working and learning together under pressure to deliver innovations that push against the frontiers of the recently possible.

That said, the course also seeks to help students acknowledge, criticize and enhance the often mundane forms of innovation and incrementalism that helps sustain the world of ideas and creativity.

This includes a thorough and critical review of the historical and contextual backdrops that we associate with business innovation and a willingness to learn rapid prototyping methods, software and engineering development techniques as well as explore scholarship and practice across many disciplines.

Course Structure

The class meets twice per week, one lecture and one lab. The lecture portion of the class is devoted to introducing topics and concepts, guest speakers, student and group presentations, and discussion of the assigned materials. The attached lab portion of the course focuses on hands-on technology and design labs, punctuated by rapid prototyping and user testing sessions. The professors and invited guests will also be available after class hours and online to provide support and guidance to students in the development of their prototypes and projects.

At the end of this course, students will be able to think critically and holistically about not only what makes iterative creative prototyping tools a medium of expression for ideas and utility, but also how to utilize interactive media technology and ideas to bring innovations into the world of business that respect all stakeholder values and incentives. From a skills standpoint, students will gain a strong understanding of the vernacular of functional and object oriented programming, how to use frameworks and open-source projects to rapidly build prototypes, how to manage complex multi-disciplinary projects and ultimately how to quantitatively and qualitatively evaluate opportunities.

Course Teaching Objectives: The teaching objectives of the course are:

  • To establish an understanding of the fundamental building blocks of creative business applications, products and interfaces and their use as a utility to improve both productivity and livelihoods.
  • To appreciate, understand and articulate how ideas and practices across disciplines can inform innovative solutions.
  • To familiarize students with the concepts and practices of technology innovation in the context of a business operating environment under competitive pressures.
  • To gain exposure to the intersection of real-world scenarios and constraint-based creative opportunities.
  • To develop an understanding of the role of design and innovation as a collaborative, multi-disciplinary team activity.
  • To improve presentation and writing skills in the areas of technical and business feasibility.

Course Learning Outcomes: The following learning outcomes are anticipated upon completion of this course. Students will be able to:

  • Identify and apply the process of innovation and design within a real-world business context (assessed by homework assignments, final presentation, and fieldwork projects).
  • Understand the critical role of design-thinking concepts, including user testing in the design and adoption and acceptance of innovative technology products.
  • Design, program and deploy technology applications within realistic constraints (assessed by homework assignments, final presentation, and fieldwork projects).
  • Work effectively as team members and demonstrate leadership skills (assessed by fieldwork and projects).
  • Communicate effectively (assessed by fieldwork and project reports and presentations).

Teaching Method: The teaching method for the course is comprised of discussion of scholarly materials intended to compliment fieldwork and rapid programming sessions, guest lectures and programming laboratory workshops. The core of the course will have student teams working directly with potential users in order to gain an in-depth understanding of how to design and test a creative technology solution within a real-world context. Students will be taught the basic buildings blocks of digital and physical application prototyping and how creativity via combination and constraint can yield surprisingly innovative results.

Each team will be charged to shape and develop their ideas and integrate their solution(s) into a functional prototype. The professors, mentors, invited guests and industry representatives will serve as coaches throughout the process and serve as a sounding board.

Grading

Individual Assignments — 30%

Completion and thoughtfulness given to the individual weekly discovery and programming assignments.

Quizzes — 10%

Weekly programming quizzes

Group Project (Socrates) — 25%

Work with your team to propose, design and create and test an application.

Journal — 25%

Write-ups, videos and other documentation posted to the course medium.com publication or Slack, from you and your group regarding observations, development sessions and the changes you made as a result of your observations and analysis. Evaluated on the completeness of your product journal, with special emphasis on the quality of your updates over the quantity

Participation — 10%

Do you show up for class? Do you participate in discussions (on and offline)? Evaluated on the basis of: (a) familiarity with the course materials; (b) quality of contributions in class and online; and (c) critical and creative approaches to the issues.

Schedule Overview

subject to minor changes

Below is a summary of the course by week and track (Business, Design and Programming). Programming labs are every Wednesday.

Course Schedule

Week 1: Opportunities and The Big Picture (9/3)

Week 1 is a general overview today’s business, economic, technology and social landscape with a special focus on China and time for discussion. I will also introduce one of the major goals of the Interactive Media Business major at NYU Shanghai — creating π-shaped people, those that have breadth in business and emerging and depth in more than one subject area. The associated programming lab will introduce JavaScript basics.

Programming Lab: JavaScript Basics

Homework due Sunday, September 9:

Week 2: Consumer and Ethnographic Research (9/10)

Week 2 begins with a guest presentation from Patricia Sunderland, author of Doing Anthropology in Consumer Research, followed a brief lecture on consumer research methods and an exercise designed to familiarize students with consumer and ethnographic research techniques for new product development.

Programming Lab: Program Flow

There will be a 10 minute, online multiple-choice quiz covering the prior programming lab content.

Homework due Sunday, September 16:

Week 3: Programming History (9/17)

This session will begin with (~8) groups presenting the results of their consumer research followed by a additional programming lab covering functions.

Programming Lab: Arrays and Data Structures

There will be a 10 minute, online multiple-choice quiz covering the prior programming lab content.

Homework due Sunday, October 7:

Week 4: Design Doing (10/8)

In this lecture, we will look at the major innovation of the graphical interface. This directness makes interfaces easier to learn because it enables people to recognize familiar elements. And continuous feedback makes interfaces easier to use, encourages exploration, and prevents errors.

Programming Lab: HTML + CSS

There will be a 10 minute, online multiple-choice quiz covering the prior programming lab content.

Homework due Friday, October 12:

  • CoffeeTawk — Part 4: Proposal

Week 5: Visual + Information Design (10/13)

Now that we have the fundamentals of interface design down, we’ll begin to look at issues in interaction design to help you flesh out your interactive web app prototype. This week will focus on the core elements of user interface: scale, contrast, pattern, shape, color, typography, and layout.

Programming Lab: Front-End JavaScript with ReactJS: JSX

There will be a 10 minute, online multiple-choice quiz covering the prior programming lab content.

Homework due Sunday, October 14:

  • CoffeeTawk — Part 5: The Interface

Week 6: Operations (10/15)

In this session, we will take a look at operations within service industries, with a twist. Specifically, we’ll be playing a well-known operations game, re-imagined as a massively multi-user web app in order to illustrate key operations management concepts, as well as to illustrate how modern web apps can make the learning process more engaging.

Programming Lab: Front End Javascript with ReactJS: Components

There will be a 10 minute, online multiple-choice quiz covering the prior programming lab content.

Homework due Sunday, October 28:

  • CoffeeTawk Final

Week 7: Innovation (10/22)

In this session, we will discuss a number of theories and practices underpinning innovation, including a working definition of a startup firm.

Programming Lab: Create-React-App

There will be a 10 minute, online multiple-choice quiz covering the prior programming lab content.

Homework due Sunday, November 4:

  • Socrates — Part 1

Week 8: Management (10/29)

Week 8 focuses on topics of management, with a specific focus on project management practices for distributed teams.

Programming Lab: React Components

There will be a 10 minute, online multiple-choice quiz covering the prior programming lab content.

Homework due Sunday, November 4:

  • Socrates — Part 2

Week 9: Strategy (11/5)

Guest Lecture: This session we welcome a guest lecture by Prof. Adam Brandenburger on cooperation, competition and strategy.

Programming Lab: React Props

There will be a 10 minute, online multiple-choice quiz covering the prior programming lab content.

Homework due Sunday, November 11:

  • Socrates — Part 3

Week 10: Test (11/12)

Professor Eitan Zemel from NYU Stern will be visiting the class. We’ll use this session to demonstrate our prototypes, validate our user stories and get direct feedback from a stakeholder.

Programming Lab: React State

There will be a 10 minute, online multiple-choice quiz covering the prior programming lab content.

Homework due next session:

  • Socrates — Final

Week 11: New Venture Financing (11/19)

This week we will take a look at how new ventures are financed, including how to build and estimate models for expenses and revenues. By now, students will have a very good understanding of the efforts and resources required to bring an application from concept to reality, which often means finding a way to finance the resourcing of the activity.

Team Lab: Passing Information

Week 12: Communication (11/26)

This week is devoted to a communications workshop with a special focus on public speaking. Each student team will be asked to present on a topic of interest to the class. We’ll take video and dissect with eye towards improving each student’s public speaking ability.

Team Lab: APIs

Week 13: Marketing (12/3)

The final lecture of the course is devoted to a discussion on marketing in the ‘application age’ — that is, how to approach marketing when so much of the world is increasingly focused on screens (even at the expense of broken ankles)

Team Lab: Feedback

Week 14: Final (12/10)

Final student presentations

--

--

Christian Grewell
applab

Hi! My name is Christian Grewell, I grew up in Portland, Oregon playing music, programming video games, building computers and drinking coffee. I live in China.