Welcome to the Rails Decal!

Logistics

  • CS 170 & EE16A
  • CCN
  • Waitlist
  • Piazza
  • Come talk with me after class

History of this class

  • Fourth Semester this is being offered
  • Sponsored by Blueprint
  • Theory vs Practice
  • A different approach to learning

Poll

  • Any web experience involving a database
  • Any HTML + CSS experience
  • None at all

Web Development

  • Static
    • http://www.unboard.io/games.html
  • Dynamic
    • http://www.railsdecal.com/

Static

  • Content
  • Presentation
  • Interaction

Dynamic

  • Has components of static webpage
  • Content changes based on stored information

What we need

  • A way to store data
  • A way to interact with the data
  • A way to present the data

How are we going to do this?

Ruby

  • Programming Language
  • Similar to Python
    • High Level Language
  • "Focus on humans, not machines"
  • Metaprogramming

Rails

  • The Framework
  • Convention over Configuration (CoC)
  • MVC (Model-View-Controller)
  • Very quick to get things up and running
  • Vibrant community

Model

 Objects that are used to interact with the data that is stored in the database. Most of the business logic goes into the model.

View

What the user interacts with. Consists of the HTML, CSS, and javascript to display the data.

Controller

Responds to requests made by an end user.  The connection between the models and the views. It usually takes the model’s data and populates the views with it.

MVC

Goals

  • Learn the basic structure of web applications
  • Use Ruby on Rails to create web apps
  • Learn tools useful for the industry

Tools

  • Git
    • Version Control
  • RVM
    • Easy way to manage multiple Ruby and gem versions

More Logistics

  • Syllabus: http://bit.ly/sp16syllabus
  • Grade Breakdown
    • Attendance: 20%

      • 0-1 absences = 20/20

      • 2 absences = 10/20

      • 3 absences = 0/20

      • 4 or more absences = No Pass

    • Homework: 20%

    • Project 1 (individual): 25%

    • Project 2 (group): 35%

    • A passing grade is 70% or more

Advice

  • Come to office hours. We are here to help!
  • Google your bugs

Junyu Wang

Junior CS major

junyuw@berkeley.edu

OH: Friday 11 AM - 12 PM @ Qualcomm

Juno Morey

Sophomore CS major

j.morey@berkeley.edu

OH: Monday 12 PM - 1 PM @ Qualcomm

Charles Xue

Junior ECCS

charlesx@berkeley.edu

OH: TBD

Warren Shen

Sophomore CS

warrenshen@berkeley.edu

OH: Wednesday 3 PM - 4 PM @ TBD

Daniel Leahy

Freshman CS

daniel_leahy@berkeley.edu

OH: Wednesday 12 PM - 1 PM @ Qualcomm

Sam Lau

Junior EECS

samlau95@gmail.com

OH: Tuesdays 3 PM - 5 PM in BIDS Doe 190

Hubert Pham

Junior EECS

hubqwerty@gmail.com

OH: Monday 12 PM - 1 PM Yali's Cafe

Howard Chen

Senior CS

howardxchen@gmail.com

OH: 3 PM - 4 PM @ BIDS Doe 190

Let's get started!