|Instructor(s)||Cohen, Jeffrey (jeffcohen)|
|Meeting Times||Saturday 1pm - 4pm|
|Fulfills||Elective Specialization - Application Development (APP-1)|
Specifically, students will learn how to:
• Build a live website or web application and deploy it to the public internet
• Use the Ruby on Rails framework to rapidly build a web application
• Write software using the Ruby programming language
• Use a relational database to provide content for dynamic websites
• Follow industry best-practices of modern web software development
• Troubleshoot and resolve the most common problems with web applications
• Essentials of the Ruby programming language
• Essentials of the Rails framework
• Front-end frameworks such as jQuery and Bootstrap
• MVC architecture principles
• Domain modeling and its role in web application development
• Agile and "extreme programming" practices
• Secure user authentication and authorization
Students will be expected to complete:
• Weekly homework (likely for the first four weeks) (20%)
• Midterm around week 6 (30%)
• Final project due by the end of the course (50%)
Projects are chosen from a provided list of "project templates." Students can propose a personal project subject to approval and equivalence with the standard project requirements.
• None required
Students will need a laptop that can run the Ruby on Rails framework, specifically: a Mac running OS X 10.12 (Sierra); Windows 7 or newer; or a recent Linux installation. Students will be provided with specific instructions on how to install the Ruby on Rails framework before the quarter begins.
Students must be fluent in at least one programming language, preferably an object-oriented language.
This class is scheduled at a time that does not conflict with any other classes this quarter.