Spiritual sequel to Peter Thiel's CS183
The syllabus is optimized to enable students to iterate on their final projects as soon as possible, with technical material in the first half of the class and entrepreneurial considerations in the second half.
- Introduction and Quickstart
- Tools: VMs, IAAS/PAAS, Unix Command Line, Text Editors, DCVS
- Frontend: HTML/CSS/JS, Wireframing, Market Research
- Backend: SSJS, Databases, Frameworks, Data Pipelines
- APIs: Client-side templating, HTTP, SOA/REST/JSON, API as BizDev
- Devops: Testing, Deployment, CI, Monitoring, Performance
- Dev Scaling: DRY, Reading/Reviewing/Documenting Code, Parallelizing
- Founding: Conception, Composition, Capitalization
- Business Scaling: Promotion, CAC/LTV/Funnel, Regulation, Accounting
- Summary and Demo Week
Familiarity with basic programming at the level of Stanford's CS106B
The first half of the course will cover modern software engineering principles with a focus on mobile HTML5 development, taught via 5-10 minute video lectures with in-class questions, programming assignments, and quizzes. Guest lecturers from top Silicon Valley startups will bring these concepts to life with real engineering problems from their work.
In the second half, you will apply these concepts to develop a simple command line application, expose it as a webservice, and then integrate other students' command line apps and webservices together with yours to create an open-source mobile HTML5 app as a final project. Lectures will continue in the second half, but will be focused on the design, marketing, and logistical aspects of creating and scaling a startup. No other homework will be given in the second half to permit full focus on the final project.
Grading will be based on class participation (10%), homework (40%), and the final project (50%). The best final projects in each category (e.g. genomics, transportation, law, etc.) will qualify for prizes sponsored by startups.