You are here
Startup Engineering
Date:
Monday, June 17, 2013
Platform:
Course topic:
About the Course
Spiritual sequel to Peter Thiel's CS183 course on startups. Bridges the gap between academic computer science and production software engineering. Fast-paced introduction to key tools and techniques (command line, dotfiles, text editor, distributed version control, debugging, testing, documentation, reading code, deployments), featuring guest appearances by senior engineers from successful startups and large-scale academic projects. Over the course of the class, students will build a command line application, expose it as a web service, and then link other students' applications and services together to build an HTML5 mobile app. General principles are illustrated through modern Javascript and the latest web technologies, including Node, Backbone, Coffeescript, Bootstrap, Git, and Github.
Course Syllabus
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
Recommended Background
Familiarity with basic programming at the level of Stanford's CS106B is required. Some exposure to HTML, CSS, and Javascript will also be helpful.
Suggested Readings
To get a sense of the energy humming through Silicon Valley, the following reading will be helpful:
- First, for the big picture read Why Software is Eating the World, The Rise and Fall of Personal Computing, and Internet Trends.
- Next, look at these articles on Stanford's Facebook class, The Social Network , and Massively Collaborative Mathematics.
- Finally, read Startup = Growth and as much of the CS183 notes as you can.
This class takes up where CS183 left off.
Course Format
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.
FAQ:
- Will I get a certificate after completing this class?
Yes. Students who successfully complete the class will receive a certificate signed by the instructor. - What audiences will benefit most from this class?
The class will be particularly useful for CS undergrads, grad students or alumni in other STEM disciplines, people looking to found or join a startup, and new startup hires. - What resources will I need for this class?
You will need an internet connection and the ability to sign up for free Amazon Web Servicesand Github accounts. - What is the coolest thing I'll learn if I take this class?
You will learn how to turn knowledge into power.
Connect with us